svcore  1.9
DSSIPluginFactory Class Reference

#include <DSSIPluginFactory.h>

Inheritance diagram for DSSIPluginFactory:
Collaboration diagram for DSSIPluginFactory:

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. More...
 
virtual RealTimePluginInstanceinstantiatePlugin (QString identifier, int clientId, int position, unsigned int sampleRate, unsigned int blockSize, unsigned int channels)
 Instantiate a plugin. More...
 
virtual void discoverPlugins ()
 Look up the plugin path and find the plugins in it. More...
 
virtual const std::vector< QString > & getPluginIdentifiers () const
 Return a reference to a list of all plugin identifiers that can be created by this factory. More...
 
virtual const RealTimePluginDescriptorgetPluginDescriptor (QString identifier) const
 Get some basic information about a plugin (rapidly). More...
 
virtual QString getPluginCategory (QString identifier)
 Get category metadata about a plugin (without instantiating it). More...
 
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 ()
 !! More...
 
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
 

Detailed Description

Definition at line 33 of file DSSIPluginFactory.h.

Member Typedef Documentation

◆ LibraryHandleMap

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

Definition at line 91 of file LADSPAPluginFactory.h.

Constructor & Destructor Documentation

◆ ~DSSIPluginFactory()

DSSIPluginFactory::~DSSIPluginFactory ( )
virtual

Definition at line 53 of file DSSIPluginFactory.cpp.

◆ DSSIPluginFactory()

DSSIPluginFactory::DSSIPluginFactory ( )
protected

Member Function Documentation

◆ enumeratePlugins()

void DSSIPluginFactory::enumeratePlugins ( std::vector< QString > &  list)
virtual

◆ instantiatePlugin()

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.

◆ getPluginPath()

std::vector< QString > DSSIPluginFactory::getPluginPath ( )
protectedvirtual

Reimplemented from LADSPAPluginFactory.

Definition at line 206 of file DSSIPluginFactory.cpp.

References DEFAULT_DSSI_PATH, and PATH_SEPARATOR.

Referenced by getLRDFPath().

◆ getLRDFPath()

std::vector< QString > DSSIPluginFactory::getLRDFPath ( QString &  baseUri)
protectedvirtual

Reimplemented from LADSPAPluginFactory.

Definition at line 254 of file DSSIPluginFactory.cpp.

References getPluginPath().

◆ discoverPluginsFrom()

◆ getLADSPADescriptor()

const LADSPA_Descriptor * DSSIPluginFactory::getLADSPADescriptor ( QString  identifier)
protectedvirtual

Reimplemented from LADSPAPluginFactory.

Definition at line 197 of file DSSIPluginFactory.cpp.

References getDSSIDescriptor().

◆ getDSSIDescriptor()

const DSSI_Descriptor * DSSIPluginFactory::getDSSIDescriptor ( QString  identifier)
protectedvirtual

◆ discoverPlugins()

void LADSPAPluginFactory::discoverPlugins ( )
virtualinherited

◆ getPluginIdentifiers()

const std::vector< QString > & LADSPAPluginFactory::getPluginIdentifiers ( ) const
virtualinherited

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.

◆ getPluginDescriptor()

const RealTimePluginDescriptor * LADSPAPluginFactory::getPluginDescriptor ( QString  identifier) const
virtualinherited

Get some basic information about a plugin (rapidly).

Implements RealTimePluginFactory.

Definition at line 135 of file LADSPAPluginFactory.cpp.

References LADSPAPluginFactory::m_rtDescriptors.

◆ getPluginCategory()

QString LADSPAPluginFactory::getPluginCategory ( QString  identifier)
virtualinherited

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

Implements RealTimePluginFactory.

Definition at line 890 of file LADSPAPluginFactory.cpp.

References LADSPAPluginFactory::m_taxonomy.

◆ getPortMinimum()

◆ getPortMaximum()

◆ getPortDefault()

◆ getPortQuantization()

float LADSPAPluginFactory::getPortQuantization ( const LADSPA_Descriptor *  descriptor,
int  port 
)
inherited

◆ getPortDisplayHint()

int LADSPAPluginFactory::getPortDisplayHint ( const LADSPA_Descriptor *  descriptor,
int  port 
)
inherited

◆ generateTaxonomy()

void LADSPAPluginFactory::generateTaxonomy ( QString  uri,
QString  base 
)
protectedvirtualinherited

◆ generateFallbackCategories()

void LADSPAPluginFactory::generateFallbackCategories ( )
protectedvirtualinherited

◆ releasePlugin()

void LADSPAPluginFactory::releasePlugin ( RealTimePluginInstance instance,
QString  identifier 
)
protectedvirtualinherited

◆ loadLibrary()

void LADSPAPluginFactory::loadLibrary ( QString  soName)
protectedinherited

◆ unloadLibrary()

void LADSPAPluginFactory::unloadLibrary ( QString  soName)
protectedinherited

◆ unloadUnusedLibraries()

◆ instance()

◆ instanceFor()

◆ getAllPluginIdentifiers()

std::vector< QString > RealTimePluginFactory::getAllPluginIdentifiers ( )
staticinherited

◆ enumerateAllPlugins()

void RealTimePluginFactory::enumerateAllPlugins ( std::vector< QString > &  list)
staticinherited

◆ setSampleRate()

static void RealTimePluginFactory::setSampleRate ( int  sampleRate)
inlinestaticinherited

Definition at line 58 of file RealTimePluginFactory.h.

References RealTimePluginFactory::m_sampleRate.

Friends And Related Function Documentation

◆ RealTimePluginFactory

friend class RealTimePluginFactory
friend

Definition at line 49 of file DSSIPluginFactory.h.

Member Data Documentation

◆ m_hostDescriptor

DSSI_Host_Descriptor DSSIPluginFactory::m_hostDescriptor
protected

Definition at line 60 of file DSSIPluginFactory.h.

Referenced by DSSIPluginFactory(), and getDSSIDescriptor().

◆ m_identifiers

std::vector<QString> LADSPAPluginFactory::m_identifiers
protectedinherited

◆ m_rtDescriptors

std::map<QString, RealTimePluginDescriptor *> LADSPAPluginFactory::m_rtDescriptors
protectedinherited

◆ m_taxonomy

◆ m_lrdfTaxonomy

std::map<unsigned long, QString> LADSPAPluginFactory::m_lrdfTaxonomy
protectedinherited

◆ m_portDefaults

std::map<unsigned long, std::map<int, float> > LADSPAPluginFactory::m_portDefaults
protectedinherited

◆ m_instances

◆ m_libraryHandles

◆ m_sampleRate

int RealTimePluginFactory::m_sampleRate = 48000
staticprotectedinherited

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