svcore  1.9
LADSPAPluginInstance Class Reference

#include <LADSPAPluginInstance.h>

Inheritance diagram for LADSPAPluginInstance:
Collaboration diagram for LADSPAPluginInstance:

Public Types

typedef float sample_t
 
typedef std::map< std::string, std::string > ConfigurationPairMap
 

Public Member Functions

virtual ~LADSPAPluginInstance ()
 
virtual bool isOK () const
 
int getClientId () const
 
virtual QString getPluginIdentifier () const
 
int getPosition () const
 
virtual std::string getIdentifier () const
 
virtual std::string getName () const
 
virtual std::string getDescription () const
 
virtual std::string getMaker () const
 
virtual int getPluginVersion () const
 
virtual std::string getCopyright () const
 
virtual void run (const Vamp::RealTime &rt, size_t count=0)
 Run for one block, starting at the given time. More...
 
virtual unsigned int getParameterCount () const
 
virtual void setParameterValue (unsigned int parameter, float value)
 
virtual float getParameterValue (unsigned int parameter) const
 
virtual float getParameterDefault (unsigned int parameter) const
 
virtual int getParameterDisplayHint (unsigned int parameter) const
 
virtual ParameterList getParameterDescriptors () const
 
virtual float getParameter (std::string) const
 
virtual void setParameter (std::string, float)
 
virtual size_t getBufferSize () const
 
virtual size_t getAudioInputCount () const
 
virtual size_t getAudioOutputCount () const
 
virtual sample_t ** getAudioInputBuffers ()
 
virtual sample_t ** getAudioOutputBuffers ()
 
virtual size_t getControlOutputCount () const
 
virtual float getControlOutputValue (size_t n) const
 
virtual bool isBypassed () const
 
virtual void setBypassed (bool bypassed)
 
virtual size_t getLatency ()
 
virtual void silence ()
 
virtual void setIdealChannelCount (size_t channels)
 
virtual std::string getType () const
 
virtual std::string getProgram (int, int) const
 
virtual std::string configure (std::string, std::string)
 
virtual void sendEvent (const Vamp::RealTime &, const void *)
 
virtual void clearEvents ()
 
virtual void discardEvents ()
 
void setFactory (RealTimePluginFactory *f)
 
virtual ConfigurationPairMap getConfigurePairs ()
 

Protected Member Functions

 LADSPAPluginInstance (RealTimePluginFactory *factory, int client, QString identifier, int position, unsigned long sampleRate, size_t blockSize, int idealChannelCount, const LADSPA_Descriptor *descriptor)
 
void init (int idealChannelCount=0)
 
void instantiate (unsigned long sampleRate)
 
void cleanup ()
 
void activate ()
 
void deactivate ()
 
void connectPorts ()
 

Protected Attributes

int m_client
 
int m_position
 
std::vector< LADSPA_Handle > m_instanceHandles
 
size_t m_instanceCount
 
const LADSPA_Descriptor * m_descriptor
 
std::vector< std::pair< unsigned long, LADSPA_Data * > > m_controlPortsIn
 
std::vector< std::pair< unsigned long, LADSPA_Data * > > m_controlPortsOut
 
std::vector< int > m_audioPortsIn
 
std::vector< int > m_audioPortsOut
 
size_t m_blockSize
 
sample_t ** m_inputBuffers
 
sample_t ** m_outputBuffers
 
bool m_ownBuffers
 
size_t m_sampleRate
 
float * m_latencyPort
 
bool m_run
 
bool m_bypassed
 
RealTimePluginFactorym_factory
 
QString m_identifier
 
ConfigurationPairMap m_configurationData
 

Friends

class LADSPAPluginFactory
 

Detailed Description

Definition at line 35 of file LADSPAPluginInstance.h.

Member Typedef Documentation

◆ sample_t

typedef float RealTimePluginInstance::sample_t
inherited

Definition at line 80 of file RealTimePluginInstance.h.

◆ ConfigurationPairMap

typedef std::map<std::string, std::string> RealTimePluginInstance::ConfigurationPairMap
inherited

Definition at line 141 of file RealTimePluginInstance.h.

Constructor & Destructor Documentation

◆ ~LADSPAPluginInstance()

◆ LADSPAPluginInstance()

LADSPAPluginInstance::LADSPAPluginInstance ( RealTimePluginFactory factory,
int  client,
QString  identifier,
int  position,
unsigned long  sampleRate,
size_t  blockSize,
int  idealChannelCount,
const LADSPA_Descriptor *  descriptor 
)
protected

Member Function Documentation

◆ isOK()

virtual bool LADSPAPluginInstance::isOK ( ) const
inlinevirtual

Implements RealTimePluginInstance.

Definition at line 40 of file LADSPAPluginInstance.h.

References m_instanceHandles.

Referenced by LADSPAPluginInstance(), setIdealChannelCount(), and silence().

◆ getClientId()

int LADSPAPluginInstance::getClientId ( ) const
inline

Definition at line 42 of file LADSPAPluginInstance.h.

References m_client.

◆ getPluginIdentifier()

virtual QString LADSPAPluginInstance::getPluginIdentifier ( ) const
inlinevirtual

Implements RealTimePluginInstance.

Definition at line 43 of file LADSPAPluginInstance.h.

References RealTimePluginInstance::m_identifier.

◆ getPosition()

int LADSPAPluginInstance::getPosition ( ) const
inline

Definition at line 44 of file LADSPAPluginInstance.h.

References m_position.

◆ getIdentifier()

std::string LADSPAPluginInstance::getIdentifier ( ) const
virtual

Definition at line 86 of file LADSPAPluginInstance.cpp.

References m_descriptor.

◆ getName()

std::string LADSPAPluginInstance::getName ( ) const
virtual

Definition at line 92 of file LADSPAPluginInstance.cpp.

References m_descriptor.

◆ getDescription()

std::string LADSPAPluginInstance::getDescription ( ) const
virtual

Definition at line 98 of file LADSPAPluginInstance.cpp.

◆ getMaker()

std::string LADSPAPluginInstance::getMaker ( ) const
virtual

Definition at line 104 of file LADSPAPluginInstance.cpp.

References m_descriptor.

◆ getPluginVersion()

int LADSPAPluginInstance::getPluginVersion ( ) const
virtual

Definition at line 110 of file LADSPAPluginInstance.cpp.

◆ getCopyright()

std::string LADSPAPluginInstance::getCopyright ( ) const
virtual

Definition at line 116 of file LADSPAPluginInstance.cpp.

References m_descriptor.

◆ run()

void LADSPAPluginInstance::run ( const Vamp::RealTime &  blockStartTime,
size_t  count = 0 
)
virtual

Run for one block, starting at the given time.

The start time may be of interest to synths etc that may have queued events waiting. Other plugins can ignore it. The count, if zero, defaults to our fixed buffer size.

Implements RealTimePluginInstance.

Definition at line 534 of file LADSPAPluginInstance.cpp.

References m_blockSize, m_descriptor, m_instanceHandles, and m_run.

Referenced by getLatency().

◆ getParameterCount()

unsigned int LADSPAPluginInstance::getParameterCount ( ) const
virtual

Implements RealTimePluginInstance.

Definition at line 468 of file LADSPAPluginInstance.cpp.

References m_controlPortsIn.

◆ setParameterValue()

void LADSPAPluginInstance::setParameterValue ( unsigned int  parameter,
float  value 
)
virtual

◆ getParameterValue()

float LADSPAPluginInstance::getParameterValue ( unsigned int  parameter) const
virtual

Implements RealTimePluginInstance.

Definition at line 501 of file LADSPAPluginInstance.cpp.

References m_controlPortsIn.

Referenced by getParameter().

◆ getParameterDefault()

float LADSPAPluginInstance::getParameterDefault ( unsigned int  parameter) const
virtual

◆ getParameterDisplayHint()

int LADSPAPluginInstance::getParameterDisplayHint ( unsigned int  parameter) const
virtual

◆ getParameterDescriptors()

◆ getParameter()

float LADSPAPluginInstance::getParameter ( std::string  id) const
virtual

Definition at line 194 of file LADSPAPluginInstance.cpp.

References getParameterValue(), m_controlPortsIn, and m_descriptor.

◆ setParameter()

void LADSPAPluginInstance::setParameter ( std::string  id,
float  value 
)
virtual

Definition at line 206 of file LADSPAPluginInstance.cpp.

References m_controlPortsIn, m_descriptor, setParameterValue(), and SVDEBUG.

◆ getBufferSize()

virtual size_t LADSPAPluginInstance::getBufferSize ( ) const
inlinevirtual

Implements RealTimePluginInstance.

Definition at line 65 of file LADSPAPluginInstance.h.

References m_blockSize.

◆ getAudioInputCount()

virtual size_t LADSPAPluginInstance::getAudioInputCount ( ) const
inlinevirtual

Implements RealTimePluginInstance.

Definition at line 66 of file LADSPAPluginInstance.h.

References m_audioPortsIn, and m_instanceCount.

Referenced by getLatency().

◆ getAudioOutputCount()

virtual size_t LADSPAPluginInstance::getAudioOutputCount ( ) const
inlinevirtual

Implements RealTimePluginInstance.

Definition at line 67 of file LADSPAPluginInstance.h.

References m_audioPortsOut, and m_instanceCount.

◆ getAudioInputBuffers()

virtual sample_t** LADSPAPluginInstance::getAudioInputBuffers ( )
inlinevirtual

Implements RealTimePluginInstance.

Definition at line 68 of file LADSPAPluginInstance.h.

References m_inputBuffers.

◆ getAudioOutputBuffers()

virtual sample_t** LADSPAPluginInstance::getAudioOutputBuffers ( )
inlinevirtual

Implements RealTimePluginInstance.

Definition at line 69 of file LADSPAPluginInstance.h.

References m_outputBuffers.

◆ getControlOutputCount()

virtual size_t LADSPAPluginInstance::getControlOutputCount ( ) const
inlinevirtual

Implements RealTimePluginInstance.

Definition at line 71 of file LADSPAPluginInstance.h.

References m_controlPortsOut.

◆ getControlOutputValue()

float LADSPAPluginInstance::getControlOutputValue ( size_t  n) const
virtual

Implements RealTimePluginInstance.

Definition at line 494 of file LADSPAPluginInstance.cpp.

References m_controlPortsOut.

◆ isBypassed()

virtual bool LADSPAPluginInstance::isBypassed ( ) const
inlinevirtual

Implements RealTimePluginInstance.

Definition at line 74 of file LADSPAPluginInstance.h.

References m_bypassed.

◆ setBypassed()

virtual void LADSPAPluginInstance::setBypassed ( bool  bypassed)
inlinevirtual

Implements RealTimePluginInstance.

Definition at line 75 of file LADSPAPluginInstance.h.

References m_bypassed.

◆ getLatency()

size_t LADSPAPluginInstance::getLatency ( )
virtual

◆ silence()

void LADSPAPluginInstance::silence ( )
virtual

Implements RealTimePluginInstance.

Definition at line 310 of file LADSPAPluginInstance.cpp.

References activate(), deactivate(), and isOK().

Referenced by setIdealChannelCount().

◆ setIdealChannelCount()

void LADSPAPluginInstance::setIdealChannelCount ( size_t  channels)
virtual

!! don't we need to reallocate inputBuffers and outputBuffers?

Implements RealTimePluginInstance.

Definition at line 319 of file LADSPAPluginInstance.cpp.

References activate(), cleanup(), connectPorts(), deactivate(), instantiate(), isOK(), m_audioPortsIn, m_instanceCount, m_sampleRate, and silence().

◆ getType()

virtual std::string LADSPAPluginInstance::getType ( ) const
inlinevirtual

Reimplemented from RealTimePluginInstance.

Definition at line 82 of file LADSPAPluginInstance.h.

◆ init()

void LADSPAPluginInstance::init ( int  idealChannelCount = 0)
protected

◆ instantiate()

void LADSPAPluginInstance::instantiate ( unsigned long  sampleRate)
protected

◆ cleanup()

void LADSPAPluginInstance::cleanup ( )
protected

Definition at line 561 of file LADSPAPluginInstance.cpp.

References m_descriptor, and m_instanceHandles.

Referenced by setIdealChannelCount(), and ~LADSPAPluginInstance().

◆ activate()

void LADSPAPluginInstance::activate ( )
protected

Definition at line 404 of file LADSPAPluginInstance.cpp.

References m_descriptor, and m_instanceHandles.

Referenced by LADSPAPluginInstance(), setIdealChannelCount(), and silence().

◆ deactivate()

void LADSPAPluginInstance::deactivate ( )
protected

Definition at line 550 of file LADSPAPluginInstance.cpp.

References m_descriptor, and m_instanceHandles.

Referenced by setIdealChannelCount(), silence(), and ~LADSPAPluginInstance().

◆ connectPorts()

◆ getProgram()

virtual std::string RealTimePluginInstance::getProgram ( int  ,
int   
) const
inlinevirtualinherited

Reimplemented in DSSIPluginInstance.

Definition at line 111 of file RealTimePluginInstance.h.

◆ configure()

virtual std::string RealTimePluginInstance::configure ( std::string  ,
std::string   
)
inlinevirtualinherited

◆ sendEvent()

virtual void RealTimePluginInstance::sendEvent ( const Vamp::RealTime &  ,
const void *   
)
inlinevirtualinherited

Reimplemented in DSSIPluginInstance.

Definition at line 123 of file RealTimePluginInstance.h.

◆ clearEvents()

virtual void RealTimePluginInstance::clearEvents ( )
inlinevirtualinherited

Reimplemented in DSSIPluginInstance.

Definition at line 125 of file RealTimePluginInstance.h.

◆ discardEvents()

virtual void RealTimePluginInstance::discardEvents ( )
inlinevirtualinherited

Reimplemented in DSSIPluginInstance.

Definition at line 134 of file RealTimePluginInstance.h.

◆ setFactory()

void RealTimePluginInstance::setFactory ( RealTimePluginFactory f)
inlineinherited

Definition at line 137 of file RealTimePluginInstance.h.

References RealTimePluginInstance::m_factory.

◆ getConfigurePairs()

virtual ConfigurationPairMap RealTimePluginInstance::getConfigurePairs ( )
inlinevirtualinherited

Friends And Related Function Documentation

◆ LADSPAPluginFactory

friend class LADSPAPluginFactory
friend

Definition at line 86 of file LADSPAPluginInstance.h.

Member Data Documentation

◆ m_client

int LADSPAPluginInstance::m_client
protected

Definition at line 109 of file LADSPAPluginInstance.h.

Referenced by getClientId().

◆ m_position

int LADSPAPluginInstance::m_position
protected

Definition at line 110 of file LADSPAPluginInstance.h.

Referenced by getPosition().

◆ m_instanceHandles

std::vector<LADSPA_Handle> LADSPAPluginInstance::m_instanceHandles
protected

◆ m_instanceCount

size_t LADSPAPluginInstance::m_instanceCount
protected

◆ m_descriptor

◆ m_controlPortsIn

std::vector<std::pair<unsigned long, LADSPA_Data*> > LADSPAPluginInstance::m_controlPortsIn
protected

◆ m_controlPortsOut

std::vector<std::pair<unsigned long, LADSPA_Data*> > LADSPAPluginInstance::m_controlPortsOut
protected

◆ m_audioPortsIn

std::vector<int> LADSPAPluginInstance::m_audioPortsIn
protected

◆ m_audioPortsOut

std::vector<int> LADSPAPluginInstance::m_audioPortsOut
protected

◆ m_blockSize

size_t LADSPAPluginInstance::m_blockSize
protected

Definition at line 121 of file LADSPAPluginInstance.h.

Referenced by getBufferSize(), getLatency(), and run().

◆ m_inputBuffers

sample_t** LADSPAPluginInstance::m_inputBuffers
protected

◆ m_outputBuffers

sample_t** LADSPAPluginInstance::m_outputBuffers
protected

◆ m_ownBuffers

bool LADSPAPluginInstance::m_ownBuffers
protected

Definition at line 124 of file LADSPAPluginInstance.h.

Referenced by LADSPAPluginInstance(), and ~LADSPAPluginInstance().

◆ m_sampleRate

size_t LADSPAPluginInstance::m_sampleRate
protected

Definition at line 125 of file LADSPAPluginInstance.h.

Referenced by setIdealChannelCount().

◆ m_latencyPort

float* LADSPAPluginInstance::m_latencyPort
protected

Definition at line 126 of file LADSPAPluginInstance.h.

Referenced by getLatency(), and init().

◆ m_run

bool LADSPAPluginInstance::m_run
protected

Definition at line 127 of file LADSPAPluginInstance.h.

Referenced by getLatency(), and run().

◆ m_bypassed

bool LADSPAPluginInstance::m_bypassed
protected

Definition at line 129 of file LADSPAPluginInstance.h.

Referenced by isBypassed(), and setBypassed().

◆ m_factory

◆ m_identifier

◆ m_configurationData

ConfigurationPairMap RealTimePluginInstance::m_configurationData
protectedinherited

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