#include <CodecFactory.hpp>
Inherits pion::platform::PluginConfig< PluginType >< pion::platform::Codec >.
Definition at line 37 of file CodecFactory.hpp.
Public Member Functions | |
| virtual | ~CodecFactory () |
| virtual destructor | |
| CodecFactory (const VocabularyManager &vocab_mgr) | |
| CodecPtr | getCodec (const std::string &codec_id) |
| void | setCodecConfig (const std::string &codec_id, const xmlNodePtr config_ptr) |
| std::string | addCodec (const xmlNodePtr config_ptr) |
| void | removeCodec (const std::string &codec_id) |
| std::string | getPermissionType (void) const |
| returns the type attribute used for an XML Permission node pertaining to Codecs | |
Static Public Member Functions | |
| static xmlNodePtr | createCodecConfig (const char *buf, std::size_t len) |
Protected Member Functions | |
| virtual void | addPluginNoLock (const std::string &plugin_id, const std::string &plugin_name, const xmlNodePtr config_ptr) |
Classes | |
| class | CodecNotFoundException |
| exception thrown if a Codec cannot be found More... | |
| pion::platform::CodecFactory::CodecFactory | ( | const VocabularyManager & | vocab_mgr | ) | [explicit] |
constructs a new CodecFactory object
| vocab_mgr | the global manager of Vocabularies |
Definition at line 35 of file CodecFactory.cpp.
References pion::platform::ConfigManager::setLogger().
| std::string pion::platform::CodecFactory::addCodec | ( | const xmlNodePtr | config_ptr | ) |
adds a new managed Codec
| config_ptr | pointer to a list of XML nodes containing Codec configuration parameters (must include a Plugin type) |
Definition at line 64 of file CodecFactory.cpp.
Referenced by pion::plugins::ConfigService::operator()().
| virtual void pion::platform::CodecFactory::addPluginNoLock | ( | const std::string & | plugin_id, | |
| const std::string & | plugin_name, | |||
| const xmlNodePtr | config_ptr | |||
| ) | [inline, protected, virtual] |
adds a new plug-in object (without locking or config file updates). This function must be defined properly for any derived classes that wish to use openPluginConfig().
| plugin_id | unique identifier associated with the plug-in | |
| plugin_name | the name of the plug-in to load (searches plug-in directories and appends extensions) | |
| config_ptr | pointer to a list of XML nodes containing plug-in configuration parameters |
Implements pion::platform::PluginConfig< PluginType >.
Definition at line 122 of file CodecFactory.hpp.
References pion::platform::PlatformPlugin::setCodecFactory(), pion::platform::Codec::setConfig(), and pion::platform::PlatformPlugin::setId().
| static xmlNodePtr pion::platform::CodecFactory::createCodecConfig | ( | const char * | buf, | |
| std::size_t | len | |||
| ) | [inline, static] |
uses a memory buffer to generate XML configuration data for a Codec
| buf | pointer to a memory buffer containing configuration data | |
| len | number of bytes available in the memory buffer |
Definition at line 102 of file CodecFactory.hpp.
References pion::platform::ConfigManager::createResourceConfig().
| CodecPtr pion::platform::CodecFactory::getCodec | ( | const std::string & | codec_id | ) |
gets a unique instance of a Codec that may be used for en/decoding
| codec_id | unique identifier associated with the Codec |
Definition at line 41 of file CodecFactory.cpp.
References pion::platform::Codec::clone(), pion::PluginManager< PLUGIN_TYPE >::get(), pion::platform::PluginConfig< PluginType >::m_mutex, and pion::platform::PluginConfig< PluginType >::m_plugins.
Referenced by pion::plugins::ScriptReactor::setConfig(), pion::plugins::LogOutputReactor::setConfig(), pion::plugins::FissionReactor::setConfig(), pion::plugins::ScriptReactor::updateCodecs(), pion::plugins::LogOutputReactor::updateCodecs(), and pion::plugins::FissionReactor::updateCodecs().
| void pion::platform::CodecFactory::removeCodec | ( | const std::string & | codec_id | ) |
removes a managed Codec
| codec_id | unique identifier associated with the Codec |
Definition at line 69 of file CodecFactory.cpp.
Referenced by pion::plugins::ConfigService::operator()().
| void pion::platform::CodecFactory::setCodecConfig | ( | const std::string & | codec_id, | |
| const xmlNodePtr | config_ptr | |||
| ) |
sets configuration parameters for a managed Codec
| codec_id | unique identifier associated with the Codec | |
| config_ptr | pointer to a list of XML nodes containing Codec configuration parameters |
Definition at line 53 of file CodecFactory.cpp.
Referenced by pion::plugins::ConfigService::operator()().
1.4.7