Ardour  9.0-pre0-582-g084a23a80d
ARDOUR::AlsaAudioBackend::AudioSlave Class Reference
Inheritance diagram for ARDOUR::AlsaAudioBackend::AudioSlave:
[legend]

Public Types

enum  DuplexMode { HalfDuplexIn = 1 , HalfDuplexOut = 2 , FullDuplex = 3 }
 

Public Member Functions

 AudioSlave (const char *device, DuplexMode duplex, unsigned int master_rate, unsigned int master_samples_per_period, unsigned int slave_rate, unsigned int slave_samples_per_period, unsigned int periods_per_cycle)
 
 ~AudioSlave ()
 
- Public Member Functions inherited from ARDOUR::AlsaDeviceReservation
 AlsaDeviceReservation ()
 
 AlsaDeviceReservation (const char *device_name)
 
 ~AlsaDeviceReservation ()
 
bool acquire_device (const char *device_name, bool silent=false)
 
void release_device ()
 
- Public Member Functions inherited from ARDOUR::AlsaAudioSlave
 AlsaAudioSlave (const char *play_name, const char *capt_name, unsigned int master_rate, unsigned int master_samples_per_period, unsigned int slave_rate, unsigned int slave_samples_per_period, unsigned int periods_per_cycle)
 
virtual ~AlsaAudioSlave ()
 
bool start ()
 
void stop ()
 
void cycle_start (double, double, bool)
 
void cycle_end ()
 
uint32_t capt_chan (uint32_t chn, float *dst, uint32_t n_samples)
 
uint32_t play_chan (uint32_t chn, float *src, uint32_t n_samples)
 
bool running () const
 
void freewheel (bool)
 
int state (void) const
 
uint32_t nplay (void) const
 
uint32_t ncapt (void) const
 

Public Attributes

bool active
 
bool halt
 
bool dead
 
std::vector< BackendPortPtrinputs
 
std::vector< BackendPortPtroutputs
 
PBD::Signal< void()> UpdateLatency
 
PBD::ScopedConnection latency_connection
 
- Public Attributes inherited from ARDOUR::AlsaAudioSlave
PBD::Signal< void()> Halted
 

Protected Member Functions

void update_latencies (uint32_t, uint32_t)
 

Private Member Functions

void halted ()
 

Private Attributes

PBD::ScopedConnection _halted_connection
 

Detailed Description

Definition at line 370 of file alsa_audiobackend.h.

Member Enumeration Documentation

◆ DuplexMode

Enumerator
HalfDuplexIn 
HalfDuplexOut 
FullDuplex 

Definition at line 372 of file alsa_audiobackend.h.

Constructor & Destructor Documentation

◆ AudioSlave()

ARDOUR::AlsaAudioBackend::AudioSlave::AudioSlave ( const char *  device,
DuplexMode  duplex,
unsigned int  master_rate,
unsigned int  master_samples_per_period,
unsigned int  slave_rate,
unsigned int  slave_samples_per_period,
unsigned int  periods_per_cycle 
)

◆ ~AudioSlave()

ARDOUR::AlsaAudioBackend::AudioSlave::~AudioSlave ( )

Member Function Documentation

◆ halted()

void ARDOUR::AlsaAudioBackend::AudioSlave::halted ( )
private

◆ update_latencies()

void ARDOUR::AlsaAudioBackend::AudioSlave::update_latencies ( uint32_t  ,
uint32_t   
)
protectedvirtual

Member Data Documentation

◆ _halted_connection

PBD::ScopedConnection ARDOUR::AlsaAudioBackend::AudioSlave::_halted_connection
private

Definition at line 403 of file alsa_audiobackend.h.

◆ active

bool ARDOUR::AlsaAudioBackend::AudioSlave::active

Definition at line 389 of file alsa_audiobackend.h.

◆ dead

bool ARDOUR::AlsaAudioBackend::AudioSlave::dead

Definition at line 391 of file alsa_audiobackend.h.

◆ halt

bool ARDOUR::AlsaAudioBackend::AudioSlave::halt

Definition at line 390 of file alsa_audiobackend.h.

◆ inputs

std::vector<BackendPortPtr> ARDOUR::AlsaAudioBackend::AudioSlave::inputs

Definition at line 393 of file alsa_audiobackend.h.

◆ latency_connection

PBD::ScopedConnection ARDOUR::AlsaAudioBackend::AudioSlave::latency_connection

Definition at line 397 of file alsa_audiobackend.h.

◆ outputs

std::vector<BackendPortPtr> ARDOUR::AlsaAudioBackend::AudioSlave::outputs

Definition at line 394 of file alsa_audiobackend.h.

◆ UpdateLatency

PBD::Signal<void()> ARDOUR::AlsaAudioBackend::AudioSlave::UpdateLatency

Definition at line 396 of file alsa_audiobackend.h.


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