Om  1.0.0
A universal framework for multimedia simulation
Public Member Functions | List of all members
om::sound::plugins::PluginManager Class Reference

A class that manages generic access to of any kind of audio plugin. More...

#include <omSoundPluginManager.h>

Public Member Functions

 PluginManager ()
 Create a new default plugin manager which has access to plugins with the PluginType::FILTER type. More...
 
Size getPluginTypeCount () const
 Return the number of plugin types that this plugin manager has access to. More...
 
const PluginTypegetPluginType (Index pluginTypeIndex) const
 Return the plugin type at the specified index that this manager has access to. More...
 
PluginTypeManagergetPluginTypeManager (Index pluginTypeIndex) const
 Return a shared pointer to the plugin type manager at the specified index that this manager has access to. More...
 
PluginTypeManagergetPluginTypeManager (const PluginType &pluginType) const
 Return a shared pointer to the plugin type manager for the given plugin type. More...
 
Bool supportsPluginType (const PluginType &pluginType) const
 Return whether or not this plugin manager supports the specified plugin type. More...
 
Bool addPluginType (PluginTypeManager *newTypeManager)
 Add a new plugin type manager to this plugin manager. More...
 
Bool removePluginType (const PluginType &type)
 Remove the specified plugin type from this plugin manager, along with the associated PluginTypeManager. More...
 
void clearPluginTypes ()
 Remove all previously registered plugin types from this plugin manager. More...
 
Size getPluginCount () const
 Return the total number of plugins that are available to this plugin manager. More...
 
SoundFiltercreatePlugin (const PluginID &pluginID) const
 Create a new plugin of the specified type with the given plugin ID. More...
 
SoundFilterView * createPluginView (const PluginID &pluginID, SoundFilter *filter) const
 Create a new plugin view of the specified type with the given plugin ID. More...
 

Detailed Description

A class that manages generic access to of any kind of audio plugin.

The plugin manager allows the user to register other types of plugins so that the PluginManager can access filters, AU plugins, VST plugins, and others.

Constructor & Destructor Documentation

om::sound::plugins::PluginManager::PluginManager ( )

Create a new default plugin manager which has access to plugins with the PluginType::FILTER type.

Member Function Documentation

Size om::sound::plugins::PluginManager::getPluginTypeCount ( ) const

Return the number of plugin types that this plugin manager has access to.

const PluginType& om::sound::plugins::PluginManager::getPluginType ( Index  pluginTypeIndex) const

Return the plugin type at the specified index that this manager has access to.

If the specified plugin type index is invalid, the PluginType::UNDEFINED is returned.

PluginTypeManager* om::sound::plugins::PluginManager::getPluginTypeManager ( Index  pluginTypeIndex) const

Return a shared pointer to the plugin type manager at the specified index that this manager has access to.

If the specified plugin type index is invalid, a NULL pointer is returned.

PluginTypeManager* om::sound::plugins::PluginManager::getPluginTypeManager ( const PluginType pluginType) const

Return a shared pointer to the plugin type manager for the given plugin type.

If there is no plugin type manager for the given plugin type, a NULL pointer is returned.

Bool om::sound::plugins::PluginManager::supportsPluginType ( const PluginType pluginType) const

Return whether or not this plugin manager supports the specified plugin type.

Bool om::sound::plugins::PluginManager::addPluginType ( PluginTypeManager newTypeManager)

Add a new plugin type manager to this plugin manager.

The method uses the new type manager's PluginType, as returned by PluginTypeManager::getType(), to store the plugin type manager. If there was already a manager for that type, it is replaced with the new one. Otherwise, if the plugin type is new, the manager is added as a new plugin type.

If the method is successful and the new manager is added, TRUE is returned. Otherwise, if the new type manager pointer is NULL or if there is some other error, FALSE is returned.

Bool om::sound::plugins::PluginManager::removePluginType ( const PluginType type)

Remove the specified plugin type from this plugin manager, along with the associated PluginTypeManager.

The method returns whether or not the remove operation was successful.

void om::sound::plugins::PluginManager::clearPluginTypes ( )

Remove all previously registered plugin types from this plugin manager.

Size om::sound::plugins::PluginManager::getPluginCount ( ) const

Return the total number of plugins that are available to this plugin manager.

SoundFilter* om::sound::plugins::PluginManager::createPlugin ( const PluginID pluginID) const

Create a new plugin of the specified type with the given plugin ID.

If there is an error in creating the new plugin, a NULL pointer is returned. This can happen if there is no plugin registered with the given ID, or if an error occurred within the plugin's factory function.

SoundFilterView* om::sound::plugins::PluginManager::createPluginView ( const PluginID pluginID,
SoundFilter filter 
) const

Create a new plugin view of the specified type with the given plugin ID.

If there is an error in creating the new plugin view, a NULL pointer is returned. This can happen if there is no plugin registered with the given type, manufacturer and plugin name, or if an error occurred within the plugin's factory function. The type, manufacturer and plugin name comparisons are case-insensitive.


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