svcore  1.9
DSSIPluginFactory Class Reference

#include <DSSIPluginFactory.h>

Inheritance diagram for DSSIPluginFactory:
Collaboration diagram for DSSIPluginFactory:

List of all members.

Public Member Functions

virtual ~DSSIPluginFactory ()
virtual void enumeratePlugins (std::vector< QString > &list)
 Append to the given list descriptions of all the available plugins and their ports.
virtual RealTimePluginInstanceinstantiatePlugin (QString identifier, int clientId, int position, unsigned int sampleRate, unsigned int blockSize, unsigned int channels)
 Instantiate a plugin.
virtual void discoverPlugins ()
 Look up the plugin path and find the plugins in it.
virtual const std::vector
< QString > & 
getPluginIdentifiers () const
 Return a reference to a list of all plugin identifiers that can be created by this factory.
virtual const
RealTimePluginDescriptor
getPluginDescriptor (QString identifier) const
 Get some basic information about a plugin (rapidly).
virtual QString getPluginCategory (QString identifier)
 Get category metadata about a plugin (without instantiating it).
float getPortMinimum (const LADSPA_Descriptor *, int port)
float getPortMaximum (const LADSPA_Descriptor *, int port)
float getPortDefault (const LADSPA_Descriptor *, int port)
float getPortQuantization (const LADSPA_Descriptor *, int port)
int getPortDisplayHint (const LADSPA_Descriptor *, int port)

Static Public Member Functions

static RealTimePluginFactoryinstance (QString pluginType)
static RealTimePluginFactoryinstanceFor (QString identifier)
static std::vector< QString > getAllPluginIdentifiers ()
static void enumerateAllPlugins (std::vector< QString > &)
static void setSampleRate (int sampleRate)

Protected Types

typedef std::map< QString, void * > LibraryHandleMap

Protected Member Functions

 DSSIPluginFactory ()
 !!
virtual std::vector< QString > getPluginPath ()
virtual std::vector< QString > getLRDFPath (QString &baseUri)
virtual void discoverPluginsFrom (QString soName)
virtual const LADSPA_Descriptor * getLADSPADescriptor (QString identifier)
virtual const DSSI_Descriptor * getDSSIDescriptor (QString identifier)
virtual void generateTaxonomy (QString uri, QString base)
virtual void generateFallbackCategories ()
virtual void releasePlugin (RealTimePluginInstance *, QString)
void loadLibrary (QString soName)
void unloadLibrary (QString soName)
void unloadUnusedLibraries ()

Protected Attributes

DSSI_Host_Descriptor m_hostDescriptor
std::vector< QString > m_identifiers
std::map< QString,
RealTimePluginDescriptor * > 
m_rtDescriptors
std::map< QString, QString > m_taxonomy
std::map< unsigned long, QString > m_lrdfTaxonomy
std::map< unsigned long,
std::map< int, float > > 
m_portDefaults
std::set
< RealTimePluginInstance * > 
m_instances
LibraryHandleMap m_libraryHandles

Static Protected Attributes

static int m_sampleRate = 48000

Friends

class RealTimePluginFactory
class RealTimePluginInstance

Detailed Description

Definition at line 33 of file DSSIPluginFactory.h.


Member Typedef Documentation

typedef std::map<QString, void *> LADSPAPluginFactory::LibraryHandleMap [protected, inherited]

Definition at line 91 of file LADSPAPluginFactory.h.


Constructor & Destructor Documentation

Definition at line 53 of file DSSIPluginFactory.cpp.


Member Function Documentation

void DSSIPluginFactory::enumeratePlugins ( std::vector< QString > &  list) [virtual]
RealTimePluginInstance * DSSIPluginFactory::instantiatePlugin ( QString  identifier,
int  clientId,
int  position,
unsigned int  sampleRate,
unsigned int  blockSize,
unsigned int  channels 
) [virtual]

Instantiate a plugin.

Reimplemented from LADSPAPluginFactory.

Definition at line 113 of file DSSIPluginFactory.cpp.

References getDSSIDescriptor(), RealTimePluginFactory::instance(), and LADSPAPluginFactory::m_instances.

std::vector< QString > DSSIPluginFactory::getPluginPath ( ) [protected, virtual]

Reimplemented from LADSPAPluginFactory.

Definition at line 206 of file DSSIPluginFactory.cpp.

References DEFAULT_DSSI_PATH, and PATH_SEPARATOR.

Referenced by getLRDFPath().

std::vector< QString > DSSIPluginFactory::getLRDFPath ( QString &  baseUri) [protected, virtual]

Reimplemented from LADSPAPluginFactory.

Definition at line 254 of file DSSIPluginFactory.cpp.

References getPluginPath().

const LADSPA_Descriptor * DSSIPluginFactory::getLADSPADescriptor ( QString  identifier) [protected, virtual]

Reimplemented from LADSPAPluginFactory.

Definition at line 197 of file DSSIPluginFactory.cpp.

References getDSSIDescriptor().

void LADSPAPluginFactory::discoverPlugins ( ) [virtual, inherited]
const std::vector< QString > & LADSPAPluginFactory::getPluginIdentifiers ( ) const [virtual, inherited]

Return a reference to a list of all plugin identifiers that can be created by this factory.

Implements RealTimePluginFactory.

Definition at line 67 of file LADSPAPluginFactory.cpp.

References LADSPAPluginFactory::m_identifiers.

const RealTimePluginDescriptor * LADSPAPluginFactory::getPluginDescriptor ( QString  identifier) const [virtual, inherited]

Get some basic information about a plugin (rapidly).

Implements RealTimePluginFactory.

Definition at line 135 of file LADSPAPluginFactory.cpp.

References LADSPAPluginFactory::m_rtDescriptors.

QString LADSPAPluginFactory::getPluginCategory ( QString  identifier) [virtual, inherited]

Get category metadata about a plugin (without instantiating it).

Implements RealTimePluginFactory.

Definition at line 890 of file LADSPAPluginFactory.cpp.

References LADSPAPluginFactory::m_taxonomy.

void LADSPAPluginFactory::generateTaxonomy ( QString  uri,
QString  base 
) [protected, virtual, inherited]
void RealTimePluginFactory::enumerateAllPlugins ( std::vector< QString > &  list) [static, inherited]
static void RealTimePluginFactory::setSampleRate ( int  sampleRate) [inline, static, inherited]

Definition at line 58 of file RealTimePluginFactory.h.

References RealTimePluginFactory::m_sampleRate.


Friends And Related Function Documentation

friend class RealTimePluginFactory [friend]

Reimplemented from LADSPAPluginFactory.

Definition at line 49 of file DSSIPluginFactory.h.

friend class RealTimePluginInstance [friend, inherited]

Definition at line 104 of file RealTimePluginFactory.h.


Member Data Documentation

DSSI_Host_Descriptor DSSIPluginFactory::m_hostDescriptor [protected]

Definition at line 60 of file DSSIPluginFactory.h.

Referenced by DSSIPluginFactory(), and getDSSIDescriptor().

std::map<unsigned long, QString> LADSPAPluginFactory::m_lrdfTaxonomy [protected, inherited]
std::map<unsigned long, std::map<int, float> > LADSPAPluginFactory::m_portDefaults [protected, inherited]

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