LMMS
Loading...
Searching...
No Matches
CarlaEngineRtAudio Class Reference
Inheritance diagram for CarlaEngineRtAudio:

Classes

struct  MidiInPort
struct  MidiOutPort
struct  RtMidiEvent
struct  RtMidiEvents

Public Member Functions

 CarlaEngineRtAudio (const RtAudio::Api api)
 ~CarlaEngineRtAudio () override
bool init (const char *const clientName) override
bool close () override
bool hasIdleOnMainThread () const noexcept override
bool isRunning () const noexcept override
bool isOffline () const noexcept override
EngineType getType () const noexcept override
const char * getCurrentDriverName () const noexcept override
template<class Graph>
bool refreshExternalGraphPorts (Graph *const graph, const bool sendHost, const bool sendOSC)
bool patchbayRefresh (const bool sendHost, const bool sendOSC, const bool external) override

Protected Member Functions

void handleAudioProcessCallback (void *outputBuffer, void *inputBuffer, uint nframes, double streamTime, RtAudioStreamStatus status)
void handleBufferSizeCallback (const uint newBufferSize)
void handleMidiCallback (double timeStamp, std::vector< uchar > *const message)
bool connectExternalGraphPort (const uint connectionType, const uint portId, const char *const portName) override
bool disconnectExternalGraphPort (const uint connectionType, const uint portId, const char *const portName) override

Static Private Member Functions

static int carla_rtaudio_process_callback (void *outputBuffer, void *inputBuffer, uint nframes, double streamTime, RtAudioStreamStatus status, void *userData)
static bool carla_rtaudio_buffer_size_callback (unsigned int bufferSize, void *userData)
static void carla_rtmidi_callback (double timeStamp, std::vector< uchar > *message, void *userData)

Private Attributes

RtAudio fAudio
bool fAudioInterleaved
uint fAudioInCount
uint fAudioOutCount
uint64_t fLastEventTime
CarlaString fDeviceName
float * fAudioIntBufIn
float * fAudioIntBufOut
LinkedList< MidiInPortfMidiIns
RtMidiEvents fMidiInEvents
LinkedList< MidiOutPortfMidiOuts
CarlaMutex fMidiOutMutex
std::vector< uint8_tfMidiOutVector

Constructor & Destructor Documentation

◆ CarlaEngineRtAudio()

CarlaEngineRtAudio::CarlaEngineRtAudio ( const RtAudio::Api api)
inline

◆ ~CarlaEngineRtAudio()

CarlaEngineRtAudio::~CarlaEngineRtAudio ( )
inlineoverride

Member Function Documentation

◆ carla_rtaudio_buffer_size_callback()

bool CarlaEngineRtAudio::carla_rtaudio_buffer_size_callback ( unsigned int bufferSize,
void * userData )
inlinestaticprivate

◆ carla_rtaudio_process_callback()

int CarlaEngineRtAudio::carla_rtaudio_process_callback ( void * outputBuffer,
void * inputBuffer,
uint nframes,
double streamTime,
RtAudioStreamStatus status,
void * userData )
inlinestaticprivate

◆ carla_rtmidi_callback()

void CarlaEngineRtAudio::carla_rtmidi_callback ( double timeStamp,
std::vector< uchar > * message,
void * userData )
inlinestaticprivate

◆ close()

bool CarlaEngineRtAudio::close ( )
inlineoverride

◆ connectExternalGraphPort()

bool CarlaEngineRtAudio::connectExternalGraphPort ( const uint connectionType,
const uint portId,
const char *const portName )
inlineoverrideprotected

◆ disconnectExternalGraphPort()

bool CarlaEngineRtAudio::disconnectExternalGraphPort ( const uint connectionType,
const uint portId,
const char *const portName )
inlineoverrideprotected

◆ getCurrentDriverName()

const char * CarlaEngineRtAudio::getCurrentDriverName ( ) const
inlineoverridenoexcept

◆ getType()

EngineType CarlaEngineRtAudio::getType ( ) const
inlineoverridenoexcept

◆ handleAudioProcessCallback()

void CarlaEngineRtAudio::handleAudioProcessCallback ( void * outputBuffer,
void * inputBuffer,
uint nframes,
double streamTime,
RtAudioStreamStatus status )
inlineprotected

◆ handleBufferSizeCallback()

void CarlaEngineRtAudio::handleBufferSizeCallback ( const uint newBufferSize)
inlineprotected

◆ handleMidiCallback()

void CarlaEngineRtAudio::handleMidiCallback ( double timeStamp,
std::vector< uchar > *const message )
inlineprotected

◆ hasIdleOnMainThread()

bool CarlaEngineRtAudio::hasIdleOnMainThread ( ) const
inlineoverridenoexcept

◆ init()

bool CarlaEngineRtAudio::init ( const char *const clientName)
inlineoverride

◆ isOffline()

bool CarlaEngineRtAudio::isOffline ( ) const
inlineoverridenoexcept

◆ isRunning()

bool CarlaEngineRtAudio::isRunning ( ) const
inlineoverridenoexcept

◆ patchbayRefresh()

bool CarlaEngineRtAudio::patchbayRefresh ( const bool sendHost,
const bool sendOSC,
const bool external )
inlineoverride

◆ refreshExternalGraphPorts()

template<class Graph>
bool CarlaEngineRtAudio::refreshExternalGraphPorts ( Graph *const graph,
const bool sendHost,
const bool sendOSC )
inline

Member Data Documentation

◆ fAudio

RtAudio CarlaEngineRtAudio::fAudio
private

◆ fAudioInCount

uint CarlaEngineRtAudio::fAudioInCount
private

◆ fAudioIntBufIn

float* CarlaEngineRtAudio::fAudioIntBufIn
private

◆ fAudioIntBufOut

float* CarlaEngineRtAudio::fAudioIntBufOut
private

◆ fAudioInterleaved

bool CarlaEngineRtAudio::fAudioInterleaved
private

◆ fAudioOutCount

uint CarlaEngineRtAudio::fAudioOutCount
private

◆ fDeviceName

CarlaString CarlaEngineRtAudio::fDeviceName
private

◆ fLastEventTime

uint64_t CarlaEngineRtAudio::fLastEventTime
private

◆ fMidiInEvents

RtMidiEvents CarlaEngineRtAudio::fMidiInEvents
private

◆ fMidiIns

LinkedList<MidiInPort> CarlaEngineRtAudio::fMidiIns
private

◆ fMidiOutMutex

CarlaMutex CarlaEngineRtAudio::fMidiOutMutex
private

◆ fMidiOuts

LinkedList<MidiOutPort> CarlaEngineRtAudio::fMidiOuts
private

◆ fMidiOutVector

std::vector<uint8_t> CarlaEngineRtAudio::fMidiOutVector
private

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