LMMS
Loading...
Searching...
No Matches
lmms::AudioJack Class Reference

#include <AudioJack.h>

Inheritance diagram for lmms::AudioJack:
lmms::AudioDevice

Classes

class  setupWidget

Signals

void zombified ()

Public Member Functions

 AudioJack (bool &successful, AudioEngine *audioEngine)
 ~AudioJack () override
AudioJackaddMidiClient (MidiJack *midiClient)
void removeMidiClient ()
jack_client_tjackClient ()
Public Member Functions inherited from lmms::AudioDevice
 AudioDevice (const ch_cnt_t _channels, AudioEngine *audioEngine)
virtual ~AudioDevice ()
void lock ()
void unlock ()
bool supportsCapture () const
sample_rate_t sampleRate () const
void processNextBuffer ()

Static Public Member Functions

static QString name ()

Private Slots

void restartAfterZombified ()

Private Member Functions

bool initJackClient ()
void resizeInputBuffer (jack_nframes_t nframes)
void attemptToConnect (size_t index, const char *lmms_port_type, const char *source_port, const char *destination_port)
void attemptToReconnectOutput (size_t outputIndex, const QString &targetPort)
void attemptToReconnectInput (size_t inputIndex, const QString &sourcePort)
void startProcessing () override
void stopProcessing () override
void registerPort (AudioBusHandle *port) override
void unregisterPort (AudioBusHandle *port) override
void renamePort (AudioBusHandle *port) override
int processCallback (jack_nframes_t nframes)

Static Private Member Functions

static int staticProcessCallback (jack_nframes_t nframes, void *udata)
static void shutdownCallback (void *_udata)

Private Attributes

jack_client_tm_client
bool m_active
std::atomic< bool > m_stopped
std::atomic< MidiJack * > m_midiClient
std::vector< jack_port_t * > m_outputPorts
std::vector< jack_port_t * > m_inputPorts
jack_default_audio_sample_t ** m_tempOutBufs
std::vector< SampleFramem_inputFrameBuffer
SampleFramem_outBuf
f_cnt_t m_framesDoneInCurBuf
f_cnt_t m_framesToDoInCurBuf

Additional Inherited Members

Protected Member Functions inherited from lmms::AudioDevice
virtual void writeBuffer (const SampleFrame *, const f_cnt_t)
f_cnt_t getNextBuffer (SampleFrame *_ab)
int convertToS16 (const SampleFrame *_ab, const f_cnt_t _frames, int_sample_t *_output_buffer, const bool _convert_endian=false)
void clearS16Buffer (int_sample_t *_outbuf, const f_cnt_t _frames)
ch_cnt_t channels () const
void setSampleRate (const sample_rate_t _new_sr)
void setChannels (const ch_cnt_t channels)
AudioEngineaudioEngine ()
Static Protected Member Functions inherited from lmms::AudioDevice
static void stopProcessingThread (QThread *thread)
Protected Attributes inherited from lmms::AudioDevice
bool m_supportsCapture

Constructor & Destructor Documentation

◆ AudioJack()

lmms::AudioJack::AudioJack ( bool & successful,
AudioEngine * audioEngine )

◆ ~AudioJack()

lmms::AudioJack::~AudioJack ( )
override

Member Function Documentation

◆ addMidiClient()

AudioJack * lmms::AudioJack::addMidiClient ( MidiJack * midiClient)

◆ attemptToConnect()

void lmms::AudioJack::attemptToConnect ( size_t index,
const char * lmms_port_type,
const char * source_port,
const char * destination_port )
private

◆ attemptToReconnectInput()

void lmms::AudioJack::attemptToReconnectInput ( size_t inputIndex,
const QString & sourcePort )
private

◆ attemptToReconnectOutput()

void lmms::AudioJack::attemptToReconnectOutput ( size_t outputIndex,
const QString & targetPort )
private

◆ initJackClient()

bool lmms::AudioJack::initJackClient ( )
private

◆ jackClient()

jack_client_t * lmms::AudioJack::jackClient ( )
inline

◆ name()

QString lmms::AudioJack::name ( )
inlinestatic

◆ processCallback()

int lmms::AudioJack::processCallback ( jack_nframes_t nframes)
private

◆ registerPort()

void lmms::AudioJack::registerPort ( AudioBusHandle * port)
overrideprivatevirtual

Reimplemented from lmms::AudioDevice.

◆ removeMidiClient()

void lmms::AudioJack::removeMidiClient ( )
inline

◆ renamePort()

void lmms::AudioJack::renamePort ( AudioBusHandle * port)
overrideprivatevirtual

Reimplemented from lmms::AudioDevice.

◆ resizeInputBuffer()

void lmms::AudioJack::resizeInputBuffer ( jack_nframes_t nframes)
private

◆ restartAfterZombified

void lmms::AudioJack::restartAfterZombified ( )
privateslot

◆ shutdownCallback()

void lmms::AudioJack::shutdownCallback ( void * _udata)
staticprivate

◆ startProcessing()

void lmms::AudioJack::startProcessing ( )
overrideprivatevirtual

Reimplemented from lmms::AudioDevice.

◆ staticProcessCallback()

int lmms::AudioJack::staticProcessCallback ( jack_nframes_t nframes,
void * udata )
staticprivate

◆ stopProcessing()

void lmms::AudioJack::stopProcessing ( )
overrideprivatevirtual

Reimplemented from lmms::AudioDevice.

◆ unregisterPort()

void lmms::AudioJack::unregisterPort ( AudioBusHandle * port)
overrideprivatevirtual

Reimplemented from lmms::AudioDevice.

◆ zombified

void lmms::AudioJack::zombified ( )
signal

Member Data Documentation

◆ m_active

bool lmms::AudioJack::m_active
private

◆ m_client

jack_client_t* lmms::AudioJack::m_client
private

◆ m_framesDoneInCurBuf

f_cnt_t lmms::AudioJack::m_framesDoneInCurBuf
private

◆ m_framesToDoInCurBuf

f_cnt_t lmms::AudioJack::m_framesToDoInCurBuf
private

◆ m_inputFrameBuffer

std::vector<SampleFrame> lmms::AudioJack::m_inputFrameBuffer
private

◆ m_inputPorts

std::vector<jack_port_t*> lmms::AudioJack::m_inputPorts
private

◆ m_midiClient

std::atomic<MidiJack*> lmms::AudioJack::m_midiClient
private

◆ m_outBuf

SampleFrame* lmms::AudioJack::m_outBuf
private

◆ m_outputPorts

std::vector<jack_port_t*> lmms::AudioJack::m_outputPorts
private

◆ m_stopped

std::atomic<bool> lmms::AudioJack::m_stopped
private

◆ m_tempOutBufs

jack_default_audio_sample_t** lmms::AudioJack::m_tempOutBufs
private

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