LMMS
Loading...
Searching...
No Matches
lmms::RemotePluginClient Class Referenceabstract

#include <RemotePluginClient.h>

Inheritance diagram for lmms::RemotePluginClient:
lmms::RemotePluginBase RemoteZynAddSubFx lmms::RemoteVstPlugin

Public Member Functions

 RemotePluginClient (const char *socketPath)
 ~RemotePluginClient () override
const VstSyncDatagetVstSyncData ()
bool processMessage (const message &_m) override
virtual void process (const SampleFrame *_in_buf, SampleFrame *_out_buf)=0
virtual void processMidiEvent (const MidiEvent &, const f_cnt_t)
virtual void updateSampleRate ()
virtual void updateBufferSize ()
sample_rate_t sampleRate () const
f_cnt_t bufferSize () const
void setInputCount (int _i)
void setOutputCount (int _i)
void setInputOutputCount (int i, int o)
virtual int inputCount () const
virtual int outputCount () const
void debugMessage (const std::string &_s)
Public Member Functions inherited from lmms::RemotePluginBase
 RemotePluginBase ()
virtual ~RemotePluginBase ()
int sendMessage (const message &_m)
message receiveMessage ()
bool isInvalid () const
message waitForMessage (const message &_m, bool _busy_waiting=false)
message fetchAndProcessNextMessage ()
int32_t readInt ()
void writeInt (const int32_t &_i)
std::string readString ()
void writeString (const std::string &_s)
bool messagesLeft ()
void fetchAndProcessAllMessages ()

Private Member Functions

void setShmKey (const std::string &key)
void doProcessing ()

Private Attributes

SharedMemory< float[]> m_audioBuffer
SharedMemory< const VstSyncDatam_vstSyncData
int m_inputCount
int m_outputCount
sample_rate_t m_sampleRate
f_cnt_t m_bufferSize

Additional Inherited Members

Static Public Member Functions inherited from lmms::RemotePluginBase
static bool isMainThreadWaiting ()
Protected Member Functions inherited from lmms::RemotePluginBase
void invalidate ()
Protected Attributes inherited from lmms::RemotePluginBase
int m_socket

Constructor & Destructor Documentation

◆ RemotePluginClient()

lmms::RemotePluginClient::RemotePluginClient ( const char * socketPath)

◆ ~RemotePluginClient()

lmms::RemotePluginClient::~RemotePluginClient ( )
override

Member Function Documentation

◆ bufferSize()

f_cnt_t lmms::RemotePluginClient::bufferSize ( ) const
inline

◆ debugMessage()

void lmms::RemotePluginClient::debugMessage ( const std::string & _s)
inline

◆ doProcessing()

void lmms::RemotePluginClient::doProcessing ( )
private

◆ getVstSyncData()

const VstSyncData * lmms::RemotePluginClient::getVstSyncData ( )

◆ inputCount()

virtual int lmms::RemotePluginClient::inputCount ( ) const
inlinevirtual

Reimplemented in lmms::RemoteVstPlugin.

◆ outputCount()

virtual int lmms::RemotePluginClient::outputCount ( ) const
inlinevirtual

Reimplemented in lmms::RemoteVstPlugin.

◆ process()

virtual void lmms::RemotePluginClient::process ( const SampleFrame * _in_buf,
SampleFrame * _out_buf )
pure virtual

◆ processMessage()

bool lmms::RemotePluginClient::processMessage ( const message & _m)
overridevirtual

◆ processMidiEvent()

virtual void lmms::RemotePluginClient::processMidiEvent ( const MidiEvent & ,
const f_cnt_t  )
inlinevirtual

Reimplemented in lmms::RemoteVstPlugin, and RemoteZynAddSubFx.

◆ sampleRate()

sample_rate_t lmms::RemotePluginClient::sampleRate ( ) const
inline

◆ setInputCount()

void lmms::RemotePluginClient::setInputCount ( int _i)
inline

◆ setInputOutputCount()

void lmms::RemotePluginClient::setInputOutputCount ( int i,
int o )
inline

◆ setOutputCount()

void lmms::RemotePluginClient::setOutputCount ( int _i)
inline

◆ setShmKey()

void lmms::RemotePluginClient::setShmKey ( const std::string & key)
private

◆ updateBufferSize()

virtual void lmms::RemotePluginClient::updateBufferSize ( )
inlinevirtual

Reimplemented in lmms::RemoteVstPlugin, and RemoteZynAddSubFx.

◆ updateSampleRate()

virtual void lmms::RemotePluginClient::updateSampleRate ( )
inlinevirtual

Reimplemented in lmms::RemoteVstPlugin, and RemoteZynAddSubFx.

Member Data Documentation

◆ m_audioBuffer

SharedMemory<float[]> lmms::RemotePluginClient::m_audioBuffer
private

◆ m_bufferSize

f_cnt_t lmms::RemotePluginClient::m_bufferSize
private

◆ m_inputCount

int lmms::RemotePluginClient::m_inputCount
private

◆ m_outputCount

int lmms::RemotePluginClient::m_outputCount
private

◆ m_sampleRate

sample_rate_t lmms::RemotePluginClient::m_sampleRate
private

◆ m_vstSyncData

SharedMemory<const VstSyncData> lmms::RemotePluginClient::m_vstSyncData
private

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