AudioJACKTarget Class Reference

#include <AudioJACKTarget.h>

Inherits AudioCallbackPlayTarget.

Inheritance diagram for AudioJACKTarget:

Inheritance graph
[legend]
Collaboration diagram for AudioJACKTarget:

Collaboration graph
[legend]
List of all members.

Detailed Description

Definition at line 30 of file AudioJACKTarget.h.

Public Slots

virtual void sourceModelReplaced ()
 The main source model (providing the playback sample rate) has been changed.
virtual void setOutputGain (float gain)
 Set the playback gain (0.0 = silence, 1.0 = levels unmodified).

Public Member Functions

 AudioJACKTarget (AudioCallbackPlaySource *source)
virtual ~AudioJACKTarget ()
virtual void shutdown ()
virtual bool isOK () const
virtual double getCurrentTime () const
float getOutputGain () const

Protected Member Functions

int process (jack_nframes_t nframes)
int xrun ()

Static Protected Member Functions

static int processStatic (jack_nframes_t, void *)
static int xrunStatic (void *)

Protected Attributes

jack_client_t * m_client
std::vector< jack_port_t * > m_outputs
jack_nframes_t m_bufferSize
jack_nframes_t m_sampleRate
QMutex m_mutex
bool m_done
AudioCallbackPlaySourcem_source
float m_outputGain


Constructor & Destructor Documentation

AudioJACKTarget::AudioJACKTarget ( AudioCallbackPlaySource source  ) 

Definition at line 212 of file AudioJACKTarget.cpp.

References AudioCallbackPlaySource::getClientName(), m_bufferSize, m_client, m_sampleRate, AudioCallbackPlayTarget::m_source, MUNLOCKALL, processStatic(), sourceModelReplaced(), and xrunStatic().

AudioJACKTarget::~AudioJACKTarget (  )  [virtual]

Definition at line 258 of file AudioJACKTarget.cpp.

References m_bufferSize, m_client, m_outputs, AudioCallbackPlayTarget::m_source, AudioCallbackPlaySource::setTarget(), and shutdown().


Member Function Documentation

void AudioJACKTarget::shutdown (  )  [virtual]

Implements AudioCallbackPlayTarget.

Definition at line 291 of file AudioJACKTarget.cpp.

References m_done.

Referenced by ~AudioJACKTarget().

bool AudioJACKTarget::isOK (  )  const [virtual]

Implements AudioCallbackPlayTarget.

Definition at line 297 of file AudioJACKTarget.cpp.

References m_client.

double AudioJACKTarget::getCurrentTime (  )  const [virtual]

Implements AudioCallbackPlayTarget.

Definition at line 303 of file AudioJACKTarget.cpp.

References m_client, and m_sampleRate.

void AudioJACKTarget::sourceModelReplaced (  )  [virtual, slot]

The main source model (providing the playback sample rate) has been changed.

The target should query the source's sample rate, set its output sample rate accordingly, and call back on the source's setTargetSampleRate to indicate what sample rate it succeeded in setting at the output. If this differs from the model rate, the source will resample.

Implements AudioCallbackPlayTarget.

Definition at line 325 of file AudioJACKTarget.cpp.

References AudioCallbackPlaySource::getSourceChannelCount(), m_bufferSize, m_client, m_mutex, m_outputs, m_sampleRate, AudioCallbackPlayTarget::m_source, AudioCallbackPlaySource::setTarget(), AudioCallbackPlaySource::setTargetPlayLatency(), and AudioCallbackPlaySource::setTargetSampleRate().

Referenced by AudioJACKTarget().

int AudioJACKTarget::process ( jack_nframes_t  nframes  )  [protected]

Definition at line 392 of file AudioJACKTarget.cpp.

References AudioCallbackPlaySource::getSourceSamples(), m_bufferSize, m_done, m_mutex, AudioCallbackPlayTarget::m_outputGain, m_outputs, and AudioCallbackPlayTarget::m_source.

int AudioJACKTarget::xrun (  )  [protected]

Definition at line 458 of file AudioJACKTarget.cpp.

References AudioCallbackPlaySource::audioProcessingOverload(), and AudioCallbackPlayTarget::m_source.

int AudioJACKTarget::processStatic ( jack_nframes_t  ,
void *   
) [static, protected]

Definition at line 313 of file AudioJACKTarget.cpp.

Referenced by AudioJACKTarget().

int AudioJACKTarget::xrunStatic ( void *   )  [static, protected]

Definition at line 319 of file AudioJACKTarget.cpp.

Referenced by AudioJACKTarget().

float AudioCallbackPlayTarget::getOutputGain (  )  const [inline, inherited]

Definition at line 37 of file AudioCallbackPlayTarget.h.

References AudioCallbackPlayTarget::m_outputGain.

void AudioCallbackPlayTarget::setOutputGain ( float  gain  )  [virtual, slot, inherited]

Set the playback gain (0.0 = silence, 1.0 = levels unmodified).

Definition at line 36 of file AudioCallbackPlayTarget.cpp.

References AudioCallbackPlayTarget::m_outputGain.

Referenced by MainWindow::handleOSCMessage().


Member Data Documentation

jack_client_t* AudioJACKTarget::m_client [protected]

Definition at line 54 of file AudioJACKTarget.h.

Referenced by AudioJACKTarget(), getCurrentTime(), isOK(), sourceModelReplaced(), and ~AudioJACKTarget().

std::vector<jack_port_t *> AudioJACKTarget::m_outputs [protected]

Definition at line 55 of file AudioJACKTarget.h.

Referenced by process(), sourceModelReplaced(), and ~AudioJACKTarget().

jack_nframes_t AudioJACKTarget::m_bufferSize [protected]

Definition at line 56 of file AudioJACKTarget.h.

Referenced by AudioJACKTarget(), process(), sourceModelReplaced(), and ~AudioJACKTarget().

jack_nframes_t AudioJACKTarget::m_sampleRate [protected]

Definition at line 57 of file AudioJACKTarget.h.

Referenced by AudioJACKTarget(), getCurrentTime(), and sourceModelReplaced().

QMutex AudioJACKTarget::m_mutex [protected]

Definition at line 58 of file AudioJACKTarget.h.

Referenced by process(), and sourceModelReplaced().

bool AudioJACKTarget::m_done [protected]

Definition at line 59 of file AudioJACKTarget.h.

Referenced by process(), and shutdown().

AudioCallbackPlaySource* AudioCallbackPlayTarget::m_source [protected, inherited]

Definition at line 58 of file AudioCallbackPlayTarget.h.

Referenced by AudioCallbackPlayTarget::AudioCallbackPlayTarget(), AudioJACKTarget(), AudioPortAudioTarget::AudioPortAudioTarget(), process(), AudioPortAudioTarget::sourceModelReplaced(), sourceModelReplaced(), xrun(), ~AudioJACKTarget(), and AudioPortAudioTarget::~AudioPortAudioTarget().

float AudioCallbackPlayTarget::m_outputGain [protected, inherited]

Definition at line 59 of file AudioCallbackPlayTarget.h.

Referenced by AudioCallbackPlayTarget::getOutputGain(), process(), and AudioCallbackPlayTarget::setOutputGain().


The documentation for this class was generated from the following files:
Generated on Wed Feb 20 15:45:32 2008 for SonicVisualiser by  doxygen 1.5.1