Om
1.0.0
A universal framework for multimedia simulation
|
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 PluginType & | getPluginType (Index pluginTypeIndex) const |
Return the plugin type at the specified index that this manager has access to. More... | |
PluginTypeManager * | getPluginTypeManager (Index pluginTypeIndex) const |
Return a shared pointer to the plugin type manager at the specified index that this manager has access to. More... | |
PluginTypeManager * | getPluginTypeManager (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... | |
SoundFilter * | createPlugin (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... | |
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.
om::sound::plugins::PluginManager::PluginManager | ( | ) |
Create a new default plugin manager which has access to plugins with the PluginType::FILTER type.
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.