Main Page | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Class Members

MPluginDescriptor Class Reference

A plugin descriptor. More...

#include <MPluginDescriptor.h>

Inheritance diagram for MPluginDescriptor:

MPlugin List of all members.

Public Member Functions

virtual const LADSPA_Descriptor * LADSPADescriptor () const
virtual string LADSPAName () const
virtual string Label () const
virtual unsigned long UniqueID () const
virtual string Maker () const
virtual string Copyright () const
virtual bool IsRealtime () const
virtual bool IsInplaceBroken () const
virtual bool IsHardRTCapable () const
virtual MPluginPortDescriptorAudioInputDescriptor (const unsigned int n) const
virtual MPluginPortDescriptorAudioOutputDescriptor (const unsigned int n) const
virtual MPluginPortDescriptorControlInputDescriptor (const unsigned int n) const
virtual MPluginPortDescriptorControlOutputDescriptor (const unsigned int n) const
virtual unsigned int NumberOfAudioInputs () const
virtual unsigned int NumberOfAudioOutputs () const
virtual unsigned int NumberOfControlInputs () const
virtual unsigned int NumberOfControlOutputs () const
MPluginInstantiate () const
LADSPA_Handle LADSPAInstantiate () const

Static Public Member Functions

static MPluginDescriptorCreateFromLibrary (const string &library, const string &name)
static const LADSPA_Descriptor * GetLADSPADescriptorFromLibrary (const string &library, const string &name)

Protected Member Functions

 MPluginDescriptor (const LADSPA_Descriptor *descriptor)
virtual void createPorts ()
virtual void createAudioInput (const unsigned long portNumber)
virtual void createAudioOutput (const unsigned long portNumber)
virtual void createControlInput (const unsigned long portNumber)
virtual void createControlOutput (const unsigned long portNumber)

Protected Attributes

const LADSPA_Descriptor * _descriptor
vector< MPluginPortDescriptor * > _audioInputDescriptor
vector< MPluginPortDescriptor * > _audioOutputDescriptor
vector< MPluginPortDescriptor * > _controlInputDescriptor
vector< MPluginPortDescriptor * > _controlOutputDescriptor

Detailed Description

This is a wrapper to LADSPA plugin descriptors. It's holding the description of a type of plugin ( and not plugins themselves ).

Plugin descriptors can be instanciated to create plugin modules ( see Instantiate( ) ).


Constructor & Destructor Documentation

MPluginDescriptor::MPluginDescriptor const LADSPA_Descriptor *  descriptor  )  [protected]
 

Creates a plugin descriptor from a LADSPA_Descriptor.


Member Function Documentation

MPluginDescriptor * MPluginDescriptor::CreateFromLibrary const string &  library,
const string &  name
[static]
 

Creates a plugin descriptor from the name of its library and its plugin name.

Returns:
A pointer to the new plugin descriptor or NULL if the creation failed.

const LADSPA_Descriptor * MPluginDescriptor::GetLADSPADescriptorFromLibrary const string &  library,
const string &  name
[static]
 

Gets the LADSPA_Descriptor of the plugin called name in the library library.

const LADSPA_Descriptor * MPluginDescriptor::LADSPADescriptor  )  const [virtual]
 

The LADSPA_Descriptor corresponding to this plugin descriptor.

string MPluginDescriptor::LADSPAName  )  const [virtual]
 

The name of the plugin as given by LADSPA.

string MPluginDescriptor::Label  )  const [virtual]
 

The LADSPA label of the plugin.

unsigned long MPluginDescriptor::UniqueID  )  const [virtual]
 

The LADSPA unique id of the plugin.

string MPluginDescriptor::Maker  )  const [virtual]
 

The maker of the plugin.

string MPluginDescriptor::Copyright  )  const [virtual]
 

The copyright statement of the plugin.

bool MPluginDescriptor::IsRealtime  )  const [virtual]
 

Is the plugin real time dependent ?

This indicates that the plugin has a real-time dependency ( e.g. listens to a MIDI device ) and so its output must not be cached or subject to significant latency.

bool MPluginDescriptor::IsInplaceBroken  )  const [virtual]
 

Is the plugin inplace broken ?

This indicates that the plugin may cease to work correctly if the host elects to use the same data location for both input and output. This should be avoided as enabling this flag makes it impossible for hosts to use the plugin to process audio `in-place.'

bool MPluginDescriptor::IsHardRTCapable  )  const [virtual]
 

Can the plugin perform in hard real-time environment ?

This indicates that the plugin is capable of running not only in a conventional host but also in a `hard real-time' environment.

MPluginPortDescriptor * MPluginDescriptor::AudioInputDescriptor const unsigned int  n  )  const [virtual]
 

The descriptor of the nth audio input port ( MPluginPortDescriptor ) of the plugin.

Precondition:
n < NumberOfAudioInputs( )
Postcondition:
result != NULL

MPluginPortDescriptor * MPluginDescriptor::AudioOutputDescriptor const unsigned int  n  )  const [virtual]
 

The descriptor of the nth audio output port ( MPluginPortDescriptor ) of the plugin.

Precondition:
n < NumberOfAudioOutputs( )
Postcondition:
result != NULL

MPluginPortDescriptor * MPluginDescriptor::ControlInputDescriptor const unsigned int  n  )  const [virtual]
 

The descriptor of the nth control input port ( MPluginPortDescriptor ) of the plugin.

Precondition:
n < NumberOfControlInputs( )
Postcondition:
result != NULL

MPluginPortDescriptor * MPluginDescriptor::ControlOutputDescriptor const unsigned int  n  )  const [virtual]
 

The descriptor of the nth control output port ( MPluginPortDescriptor ) of the plugin.

Precondition:
n < NumberOfControlOutputs( )
Postcondition:
result != NULL

unsigned int MPluginDescriptor::NumberOfAudioInputs  )  const [virtual]
 

The number of audio input ports ( MPluginPortDescriptor ) of the plugin.

Reimplemented in MPlugin.

unsigned int MPluginDescriptor::NumberOfAudioOutputs  )  const [virtual]
 

The number of audio output ports ( MPluginPortDescriptor ) of the plugin.

Reimplemented in MPlugin.

unsigned int MPluginDescriptor::NumberOfControlInputs  )  const [virtual]
 

The number of control input ports ( MPluginPortDescriptor ) of the plugin.

Reimplemented in MPlugin.

unsigned int MPluginDescriptor::NumberOfControlOutputs  )  const [virtual]
 

The number of control output ports ( MPluginPortDescriptor ) of the plugin.

Reimplemented in MPlugin.

MPlugin * MPluginDescriptor::Instantiate  )  const
 

Instantiate the plugin descriptor.

Returns:
A pointer to a new plugin instance ( MPlugin ) of this plugin descriptor.

LADSPA_Handle MPluginDescriptor::LADSPAInstantiate  )  const
 

Instantiate the plugin descriptor, LADSPA version.

Returns:
The LADSPA_Handle of a new plugin instance of this plugin descriptor.
Note:
This shouldn't be use, use Instantiate( ) instead to get a real MPlugin object.

void MPluginDescriptor::createPorts  )  [protected, virtual]
 

Scans the LADSPA_Descriptor and asks to create the corresponding ports for the plugin.

void MPluginDescriptor::createAudioInput const unsigned long  portNumber  )  [protected, virtual]
 

Creates a new port descriptor for an audio input port.

Creates a new MPluginPortDescriptor for the portNumberth port of the plugin descriptor. This port describes an audio input port.

Reimplemented in MPlugin.

void MPluginDescriptor::createAudioOutput const unsigned long  portNumber  )  [protected, virtual]
 

Creates a new port descriptor for an audio output port.

Creates a new MPluginPortDescriptor for the portNumberth port of the plugin descriptor. This port describes an audio output port.

Reimplemented in MPlugin.

void MPluginDescriptor::createControlInput const unsigned long  portNumber  )  [protected, virtual]
 

Creates a new port descriptor for a control input port.

Creates a new MPluginPortDescriptor for the portNumberth port of the plugin descriptor. This port describes an control input port.

Reimplemented in MPlugin.

void MPluginDescriptor::createControlOutput const unsigned long  portNumber  )  [protected, virtual]
 

Creates a new port descriptor for a control output port.

Creates a new MPluginPortDescriptor for the portNumberth port of the plugin descriptor. This port describes an control output port.

Reimplemented in MPlugin.


Member Data Documentation

const LADSPA_Descriptor* MPluginDescriptor::_descriptor [protected]
 

The LADSPA_Descriptor of the plugin descriptor.

vector< MPluginPortDescriptor * > MPluginDescriptor::_audioInputDescriptor [protected]
 

The audio input port descriptors.

vector< MPluginPortDescriptor * > MPluginDescriptor::_audioOutputDescriptor [protected]
 

The audio output port descriptors.

vector< MPluginPortDescriptor * > MPluginDescriptor::_controlInputDescriptor [protected]
 

The control input port descriptors.

vector< MPluginPortDescriptor * > MPluginDescriptor::_controlOutputDescriptor [protected]
 

The control output port descriptors.


The documentation for this class was generated from the following files:
Generated on Mon Jan 31 12:43:31 2005 for la Marmite by Doxygen 1.4.1