LADSPAPluginInstance Class Reference

#include <LADSPAPluginInstance.h>

Inherits RealTimePluginInstance.

Inheritance diagram for LADSPAPluginInstance:

Inheritance graph
[legend]
Collaboration diagram for LADSPAPluginInstance:

Collaboration graph
[legend]
List of all members.

Detailed Description

Definition at line 35 of file LADSPAPluginInstance.h.

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)
 Run for one block, starting at the given time.
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
class PluginFactory


Member Typedef Documentation

typedef float RealTimePluginInstance::sample_t [inherited]

Definition at line 78 of file RealTimePluginInstance.h.

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

Definition at line 137 of file RealTimePluginInstance.h.


Constructor & Destructor Documentation

LADSPAPluginInstance::~LADSPAPluginInstance (  )  [virtual]

Definition at line 341 of file LADSPAPluginInstance.cpp.

References cleanup(), deactivate(), m_audioPortsIn, m_audioPortsOut, m_controlPortsIn, m_controlPortsOut, m_inputBuffers, m_instanceCount, m_instanceHandles, m_outputBuffers, and m_ownBuffers.

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

Definition at line 36 of file LADSPAPluginInstance.cpp.

References activate(), connectPorts(), init(), instantiate(), isOK(), m_audioPortsIn, m_audioPortsOut, m_inputBuffers, m_instanceCount, m_outputBuffers, and m_ownBuffers.


Member Function Documentation

virtual bool LADSPAPluginInstance::isOK (  )  const [inline, virtual]

Implements RealTimePluginInstance.

Definition at line 40 of file LADSPAPluginInstance.h.

References m_instanceHandles.

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

int LADSPAPluginInstance::getClientId (  )  const [inline]

Definition at line 42 of file LADSPAPluginInstance.h.

References m_client.

virtual QString LADSPAPluginInstance::getPluginIdentifier (  )  const [inline, virtual]

Implements RealTimePluginInstance.

Definition at line 43 of file LADSPAPluginInstance.h.

References RealTimePluginInstance::m_identifier.

int LADSPAPluginInstance::getPosition (  )  const [inline]

Definition at line 44 of file LADSPAPluginInstance.h.

References m_position.

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

Definition at line 86 of file LADSPAPluginInstance.cpp.

References m_descriptor.

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

Definition at line 92 of file LADSPAPluginInstance.cpp.

References m_descriptor.

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

Definition at line 98 of file LADSPAPluginInstance.cpp.

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

Definition at line 104 of file LADSPAPluginInstance.cpp.

References m_descriptor.

int LADSPAPluginInstance::getPluginVersion (  )  const [virtual]

Definition at line 110 of file LADSPAPluginInstance.cpp.

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

Definition at line 116 of file LADSPAPluginInstance.cpp.

References m_descriptor.

void LADSPAPluginInstance::run ( const Vamp::RealTime &  rt  )  [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.

Implements RealTimePluginInstance.

Definition at line 532 of file LADSPAPluginInstance.cpp.

References m_blockSize, m_descriptor, m_instanceHandles, and m_run.

Referenced by getLatency().

unsigned int LADSPAPluginInstance::getParameterCount (  )  const [virtual]

Implements RealTimePluginInstance.

Definition at line 466 of file LADSPAPluginInstance.cpp.

References m_controlPortsIn.

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

Implements RealTimePluginInstance.

Definition at line 472 of file LADSPAPluginInstance.cpp.

References LADSPAPluginFactory::getPortMaximum(), LADSPAPluginFactory::getPortMinimum(), m_controlPortsIn, m_descriptor, and RealTimePluginInstance::m_factory.

Referenced by setParameter().

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

Implements RealTimePluginInstance.

Definition at line 499 of file LADSPAPluginInstance.cpp.

References m_controlPortsIn.

Referenced by getParameter().

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

Implements RealTimePluginInstance.

Definition at line 506 of file LADSPAPluginInstance.cpp.

References LADSPAPluginFactory::getPortDefault(), m_controlPortsIn, m_descriptor, and RealTimePluginInstance::m_factory.

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

Implements RealTimePluginInstance.

Definition at line 519 of file LADSPAPluginInstance.cpp.

References LADSPAPluginFactory::getPortDisplayHint(), m_controlPortsIn, m_descriptor, RealTimePluginInstance::m_factory, and PortHint::NoHint.

LADSPAPluginInstance::ParameterList LADSPAPluginInstance::getParameterDescriptors (  )  const [virtual]

Definition at line 122 of file LADSPAPluginInstance.cpp.

References LADSPAPluginFactory::getPortDefault(), LADSPAPluginFactory::getPortMaximum(), LADSPAPluginFactory::getPortMinimum(), LADSPAPluginFactory::getPortQuantization(), m_controlPortsIn, m_descriptor, and RealTimePluginInstance::m_factory.

float LADSPAPluginInstance::getParameter ( std::string   )  const [virtual]

Definition at line 193 of file LADSPAPluginInstance.cpp.

References getParameterValue(), m_controlPortsIn, and m_descriptor.

void LADSPAPluginInstance::setParameter ( std::string  ,
float   
) [virtual]

Definition at line 205 of file LADSPAPluginInstance.cpp.

References m_controlPortsIn, m_descriptor, and setParameterValue().

virtual size_t LADSPAPluginInstance::getBufferSize (  )  const [inline, virtual]

Implements RealTimePluginInstance.

Definition at line 65 of file LADSPAPluginInstance.h.

References m_blockSize.

virtual size_t LADSPAPluginInstance::getAudioInputCount (  )  const [inline, virtual]

Implements RealTimePluginInstance.

Definition at line 66 of file LADSPAPluginInstance.h.

References m_audioPortsIn, and m_instanceCount.

Referenced by getLatency().

virtual size_t LADSPAPluginInstance::getAudioOutputCount (  )  const [inline, virtual]

Implements RealTimePluginInstance.

Definition at line 67 of file LADSPAPluginInstance.h.

References m_audioPortsOut, and m_instanceCount.

virtual sample_t** LADSPAPluginInstance::getAudioInputBuffers (  )  [inline, virtual]

Implements RealTimePluginInstance.

Definition at line 68 of file LADSPAPluginInstance.h.

References m_inputBuffers.

virtual sample_t** LADSPAPluginInstance::getAudioOutputBuffers (  )  [inline, virtual]

Implements RealTimePluginInstance.

Definition at line 69 of file LADSPAPluginInstance.h.

References m_outputBuffers.

virtual size_t LADSPAPluginInstance::getControlOutputCount (  )  const [inline, virtual]

Implements RealTimePluginInstance.

Definition at line 71 of file LADSPAPluginInstance.h.

References m_controlPortsOut.

float LADSPAPluginInstance::getControlOutputValue ( size_t  n  )  const [virtual]

Implements RealTimePluginInstance.

Definition at line 492 of file LADSPAPluginInstance.cpp.

References m_controlPortsOut.

virtual bool LADSPAPluginInstance::isBypassed (  )  const [inline, virtual]

Implements RealTimePluginInstance.

Definition at line 74 of file LADSPAPluginInstance.h.

References m_bypassed.

virtual void LADSPAPluginInstance::setBypassed ( bool  bypassed  )  [inline, virtual]

Implements RealTimePluginInstance.

Definition at line 75 of file LADSPAPluginInstance.h.

References m_bypassed.

size_t LADSPAPluginInstance::getLatency (  )  [virtual]

Implements RealTimePluginInstance.

Definition at line 292 of file LADSPAPluginInstance.cpp.

References getAudioInputCount(), m_blockSize, m_inputBuffers, m_latencyPort, m_run, and run().

void LADSPAPluginInstance::silence (  )  [virtual]

Implements RealTimePluginInstance.

Definition at line 309 of file LADSPAPluginInstance.cpp.

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

Referenced by setIdealChannelCount().

void LADSPAPluginInstance::setIdealChannelCount ( size_t  channels  )  [virtual]

Implements RealTimePluginInstance.

Definition at line 318 of file LADSPAPluginInstance.cpp.

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

virtual std::string LADSPAPluginInstance::getType (  )  const [inline, virtual]

Reimplemented from RealTimePluginInstance.

Definition at line 82 of file LADSPAPluginInstance.h.

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

Definition at line 220 of file LADSPAPluginInstance.cpp.

References m_audioPortsIn, m_audioPortsOut, and m_descriptor.

Referenced by LADSPAPluginInstance().

void LADSPAPluginInstance::instantiate ( unsigned long  sampleRate  )  [protected]

Definition at line 380 of file LADSPAPluginInstance.cpp.

References m_descriptor, m_instanceCount, and m_instanceHandles.

Referenced by LADSPAPluginInstance(), and setIdealChannelCount().

void LADSPAPluginInstance::cleanup (  )  [protected]

Definition at line 557 of file LADSPAPluginInstance.cpp.

References m_descriptor, and m_instanceHandles.

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

void LADSPAPluginInstance::activate (  )  [protected]

Definition at line 402 of file LADSPAPluginInstance.cpp.

References m_descriptor, and m_instanceHandles.

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

void LADSPAPluginInstance::deactivate (  )  [protected]

Definition at line 546 of file LADSPAPluginInstance.cpp.

References m_descriptor, and m_instanceHandles.

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

void LADSPAPluginInstance::connectPorts (  )  [protected]

Definition at line 413 of file LADSPAPluginInstance.cpp.

References LADSPAPluginFactory::getPortDefault(), m_audioPortsIn, m_audioPortsOut, m_controlPortsIn, m_controlPortsOut, m_descriptor, RealTimePluginInstance::m_factory, m_inputBuffers, m_instanceHandles, and m_outputBuffers.

Referenced by LADSPAPluginInstance(), and setIdealChannelCount().

virtual std::string RealTimePluginInstance::getProgram ( int  ,
int   
) const [inline, virtual, inherited]

Reimplemented in DSSIPluginInstance.

Definition at line 107 of file RealTimePluginInstance.h.

Referenced by AudioGenerator::loadPlugin().

virtual std::string RealTimePluginInstance::configure ( std::string  ,
std::string   
) [inline, virtual, inherited]

Reimplemented in DSSIPluginInstance.

Definition at line 117 of file RealTimePluginInstance.h.

Referenced by PluginXml::setParameters(), TransformFactory::setPluginParameters(), and AudioGenerator::setSampleDir().

virtual void RealTimePluginInstance::sendEvent ( const Vamp::RealTime &  ,
const void *   
) [inline, virtual, inherited]

Reimplemented in DSSIPluginInstance.

Definition at line 119 of file RealTimePluginInstance.h.

Referenced by AudioGenerator::mixNoteModel(), and AudioGenerator::mixSparseOneDimensionalModel().

virtual void RealTimePluginInstance::clearEvents (  )  [inline, virtual, inherited]

Reimplemented in DSSIPluginInstance.

Definition at line 121 of file RealTimePluginInstance.h.

virtual void RealTimePluginInstance::discardEvents (  )  [inline, virtual, inherited]

Reimplemented in DSSIPluginInstance.

Definition at line 130 of file RealTimePluginInstance.h.

void RealTimePluginInstance::setFactory ( RealTimePluginFactory f  )  [inline, inherited]

Definition at line 133 of file RealTimePluginInstance.h.

References RealTimePluginInstance::m_factory.

virtual ConfigurationPairMap RealTimePluginInstance::getConfigurePairs (  )  [inline, virtual, inherited]

Definition at line 138 of file RealTimePluginInstance.h.

References RealTimePluginInstance::m_configurationData.

Referenced by TransformFactory::setParametersFromPlugin(), and PluginXml::toXml().


Friends And Related Function Documentation

friend class LADSPAPluginFactory [friend]

Definition at line 86 of file LADSPAPluginInstance.h.

friend class PluginFactory [friend, inherited]

Definition at line 151 of file RealTimePluginInstance.h.


Member Data Documentation

int LADSPAPluginInstance::m_client [protected]

Definition at line 109 of file LADSPAPluginInstance.h.

Referenced by getClientId().

int LADSPAPluginInstance::m_position [protected]

Definition at line 110 of file LADSPAPluginInstance.h.

Referenced by getPosition().

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

Definition at line 111 of file LADSPAPluginInstance.h.

Referenced by activate(), cleanup(), connectPorts(), deactivate(), instantiate(), isOK(), run(), and ~LADSPAPluginInstance().

size_t LADSPAPluginInstance::m_instanceCount [protected]

Definition at line 112 of file LADSPAPluginInstance.h.

Referenced by getAudioInputCount(), getAudioOutputCount(), instantiate(), LADSPAPluginInstance(), setIdealChannelCount(), and ~LADSPAPluginInstance().

const LADSPA_Descriptor* LADSPAPluginInstance::m_descriptor [protected]

Definition at line 113 of file LADSPAPluginInstance.h.

Referenced by activate(), cleanup(), connectPorts(), deactivate(), getCopyright(), getIdentifier(), getMaker(), getName(), getParameter(), getParameterDefault(), getParameterDescriptors(), getParameterDisplayHint(), init(), instantiate(), run(), setParameter(), and setParameterValue().

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

Definition at line 115 of file LADSPAPluginInstance.h.

Referenced by connectPorts(), getParameter(), getParameterCount(), getParameterDefault(), getParameterDescriptors(), getParameterDisplayHint(), getParameterValue(), setParameter(), setParameterValue(), and ~LADSPAPluginInstance().

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

Definition at line 116 of file LADSPAPluginInstance.h.

Referenced by connectPorts(), getControlOutputCount(), getControlOutputValue(), and ~LADSPAPluginInstance().

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

Definition at line 118 of file LADSPAPluginInstance.h.

Referenced by connectPorts(), getAudioInputCount(), init(), LADSPAPluginInstance(), setIdealChannelCount(), and ~LADSPAPluginInstance().

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

Definition at line 119 of file LADSPAPluginInstance.h.

Referenced by connectPorts(), getAudioOutputCount(), init(), LADSPAPluginInstance(), and ~LADSPAPluginInstance().

size_t LADSPAPluginInstance::m_blockSize [protected]

Definition at line 121 of file LADSPAPluginInstance.h.

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

sample_t** LADSPAPluginInstance::m_inputBuffers [protected]

Definition at line 122 of file LADSPAPluginInstance.h.

Referenced by connectPorts(), getAudioInputBuffers(), getLatency(), LADSPAPluginInstance(), and ~LADSPAPluginInstance().

sample_t** LADSPAPluginInstance::m_outputBuffers [protected]

Definition at line 123 of file LADSPAPluginInstance.h.

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

bool LADSPAPluginInstance::m_ownBuffers [protected]

Definition at line 124 of file LADSPAPluginInstance.h.

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

size_t LADSPAPluginInstance::m_sampleRate [protected]

Definition at line 125 of file LADSPAPluginInstance.h.

Referenced by setIdealChannelCount().

float* LADSPAPluginInstance::m_latencyPort [protected]

Definition at line 126 of file LADSPAPluginInstance.h.

Referenced by getLatency().

bool LADSPAPluginInstance::m_run [protected]

Definition at line 127 of file LADSPAPluginInstance.h.

Referenced by getLatency(), and run().

bool LADSPAPluginInstance::m_bypassed [protected]

Definition at line 129 of file LADSPAPluginInstance.h.

Referenced by isBypassed(), and setBypassed().

RealTimePluginFactory* RealTimePluginInstance::m_factory [protected, inherited]

Definition at line 146 of file RealTimePluginInstance.h.

Referenced by connectPorts(), DSSIPluginInstance::connectPorts(), getParameterDefault(), DSSIPluginInstance::getParameterDefault(), getParameterDescriptors(), DSSIPluginInstance::getParameterDescriptors(), getParameterDisplayHint(), DSSIPluginInstance::getParameterDisplayHint(), RealTimePluginInstance::setFactory(), setParameterValue(), DSSIPluginInstance::setParameterValue(), and RealTimePluginInstance::~RealTimePluginInstance().

QString RealTimePluginInstance::m_identifier [protected, inherited]

Definition at line 147 of file RealTimePluginInstance.h.

Referenced by DSSIPluginInstance::cleanup(), DSSIPluginInstance::deactivate(), DSSIPluginInstance::detachFromGroup(), getPluginIdentifier(), DSSIPluginInstance::getPluginIdentifier(), DSSIPluginInstance::initialiseGroupMembership(), DSSIPluginInstance::runGrouped(), and RealTimePluginInstance::~RealTimePluginInstance().

ConfigurationPairMap RealTimePluginInstance::m_configurationData [protected, inherited]

Definition at line 149 of file RealTimePluginInstance.h.

Referenced by DSSIPluginInstance::configure(), and RealTimePluginInstance::getConfigurePairs().


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