Ardour  9.0-pre0-582-g084a23a80d
ARDOUR::AudioPort Class Reference

#include <audio_port.h>

Inheritance diagram for ARDOUR::AudioPort:
[legend]

Public Member Functions

 ~AudioPort ()
 
DataType type () const
 
void cycle_start (pframes_t)
 
void cycle_end (pframes_t)
 
void cycle_split ()
 
void flush_buffers (pframes_t nframes)
 
void reinit (bool with_ratio)
 
Bufferget_buffer (pframes_t nframes)
 
AudioBufferget_audio_buffer (pframes_t nframes)
 
void set_buffer_size (pframes_t nframes)
 
- Public Member Functions inherited from ARDOUR::Port
 Port (const Port &)=delete
 
Portoperator= (const Port &)=delete
 
virtual ~Port ()
 
std::string name () const
 
std::string pretty_name (bool fallback_to_name=false) const
 
bool set_pretty_name (const std::string &)
 
int set_name (std::string const &)
 
PortFlags flags () const
 
bool receives_input () const
 
bool sends_output () const
 
bool connected () const
 
int disconnect_all ()
 
int get_connections (std::vector< std::string > &) const
 
bool connected_to (std::string const &) const
 
int connect (std::string const &)
 
int disconnect (std::string const &)
 
bool connected_to (Port *) const
 
virtual int connect (Port *)
 
int disconnect (Port *)
 
void request_input_monitoring (bool)
 
void ensure_input_monitoring (bool)
 
bool monitoring_input () const
 
int reestablish ()
 
int reconnect ()
 
bool last_monitor () const
 
void set_last_monitor (bool yn)
 
PortEngine::PortHandle port_handle ()
 
void get_connected_latency_range (LatencyRange &range, bool playback) const
 
void collect_latency_from_backend (LatencyRange &range, bool playback) const
 
void set_private_latency_range (LatencyRange &range, bool playback)
 
const LatencyRangeprivate_latency_range (bool playback) const
 
void set_public_latency_range (LatencyRange const &range, bool playback) const
 
LatencyRange public_latency_range (bool playback) const
 
virtual void reset ()
 
virtual void transport_stopped ()
 
virtual void realtime_locate (bool for_loop_end)
 
bool has_ext_connection () const
 
bool physically_connected () const
 
bool in_cycle () const
 
uint32_t externally_connected () const
 
uint32_t internally_connected () const
 
void increment_external_connections ()
 
void decrement_external_connections ()
 
void increment_internal_connections ()
 
void decrement_internal_connections ()
 
virtual XMLNodeget_state () const
 
virtual int set_state (const XMLNode &, int version)
 

Protected Member Functions

 AudioPort (std::string const &, PortFlags)
 
Sampleengine_get_whole_audio_buffer ()
 
- Protected Member Functions inherited from ARDOUR::Port
 Port (std::string const &, DataType, PortFlags)
 

Private Attributes

AudioBuffer_buffer
 
ArdourZita::VMResampler _src
 
Sample_data
 
bool _buf_valid
 

Friends

class PortManager
 

Additional Inherited Members

- Static Public Member Functions inherited from ARDOUR::Port
static void set_connecting_blocked (bool yn)
 
static bool connecting_blocked ()
 
static void set_varispeed_ratio (double s)
 
static bool set_engine_ratio (double session, double engine)
 
static void set_cycle_samplecnt (pframes_t n)
 
static samplecnt_t port_offset ()
 
static void set_global_port_buffer_offset (pframes_t off)
 
static void increment_global_port_buffer_offset (pframes_t n)
 
static pframes_t cycle_nframes ()
 
static double speed_ratio ()
 
static double engine_ratio ()
 
static double resample_ratio ()
 
static uint32_t resampler_quality ()
 
static uint32_t resampler_latency ()
 
static bool can_varispeed ()
 
static bool setup_resampler (uint32_t q=17)
 
- Public Attributes inherited from ARDOUR::Port
PBD::Signal< void(bool)> MonitorInputChanged
 
PBD::Signal< void(std::shared_ptr< Port >, std::shared_ptr< Port >, bool)> ConnectedOrDisconnected
 
- Static Public Attributes inherited from ARDOUR::Port
static PBD::Signal< void()> PortDrop
 
static PBD::Signal< void()> PortSignalDrop
 
static PBD::Signal< void()> ResamplerQualityChanged
 
static std::string state_node_name
 
- Protected Attributes inherited from ARDOUR::Port
PortEngine::PortPtr _port_handle
 
LatencyRange _private_playback_latency
 
LatencyRange _private_capture_latency
 
- Static Protected Attributes inherited from ARDOUR::Port
static bool _connecting_blocked
 
static pframes_t _cycle_nframes
 
static pframes_t _global_port_buffer_offset
 
static double _speed_ratio
 
static double _engine_ratio
 
static double _resample_ratio
 

Detailed Description

Definition at line 31 of file audio_port.h.

Constructor & Destructor Documentation

◆ ~AudioPort()

ARDOUR::AudioPort::~AudioPort ( )

◆ AudioPort()

ARDOUR::AudioPort::AudioPort ( std::string const &  ,
PortFlags   
)
protected

Member Function Documentation

◆ cycle_end()

void ARDOUR::AudioPort::cycle_end ( pframes_t  )
virtual

Reimplemented from ARDOUR::Port.

◆ cycle_split()

void ARDOUR::AudioPort::cycle_split ( )
virtual

Implements ARDOUR::Port.

◆ cycle_start()

void ARDOUR::AudioPort::cycle_start ( pframes_t  )
virtual

Reimplemented from ARDOUR::Port.

◆ engine_get_whole_audio_buffer()

Sample* ARDOUR::AudioPort::engine_get_whole_audio_buffer ( )
protected

◆ flush_buffers()

void ARDOUR::AudioPort::flush_buffers ( pframes_t  nframes)
virtual

Reimplemented from ARDOUR::Port.

◆ get_audio_buffer()

AudioBuffer& ARDOUR::AudioPort::get_audio_buffer ( pframes_t  nframes)

◆ get_buffer()

Buffer& ARDOUR::AudioPort::get_buffer ( pframes_t  nframes)
inlinevirtual

Implements ARDOUR::Port.

Definition at line 49 of file audio_port.h.

◆ reinit()

void ARDOUR::AudioPort::reinit ( bool  with_ratio)
virtual

Reimplemented from ARDOUR::Port.

◆ set_buffer_size()

void ARDOUR::AudioPort::set_buffer_size ( pframes_t  nframes)
virtual

Reimplemented from ARDOUR::Port.

◆ type()

DataType ARDOUR::AudioPort::type ( ) const
inlinevirtual

Implements ARDOUR::Port.

Definition at line 36 of file audio_port.h.

Friends And Related Function Documentation

◆ PortManager

friend class PortManager
friend

Definition at line 57 of file audio_port.h.

Member Data Documentation

◆ _buf_valid

bool ARDOUR::AudioPort::_buf_valid
private

Definition at line 68 of file audio_port.h.

◆ _buffer

AudioBuffer* ARDOUR::AudioPort::_buffer
private

Definition at line 65 of file audio_port.h.

◆ _data

Sample* ARDOUR::AudioPort::_data
private

Definition at line 67 of file audio_port.h.

◆ _src

ArdourZita::VMResampler ARDOUR::AudioPort::_src
private

Definition at line 66 of file audio_port.h.


The documentation for this class was generated from the following file: