A class which all plugins must inherit from. More...
#include <common/common.hh>
Public Types | |
| typedef boost::shared_ptr< T > | TPtr |
| plugin pointer type definition More... | |
Public Member Functions | |
| PluginT () | |
| Constructor. More... | |
| virtual | ~PluginT () |
| Destructor. More... | |
| std::string | GetFilename () const |
| Get the name of the handler. More... | |
| std::string | GetHandle () const |
| Get the short name of the handler. More... | |
| PluginType | GetType () const |
| Returns the type of the plugin. More... | |
Static Public Member Functions | |
| static TPtr | Create (const std::string &_filename, const std::string &_name) |
| a class method that creates a plugin from a file name. More... | |
Protected Member Functions | |
| template<typename V > | |
| void | LoadParam (const sdf::ElementPtr &_sdf, const std::string &_name, V &_target, V _defaultValue=V()) const |
| Load parameter value from _sdf and store it to the given reference, using the supplied default value if the element in _sdf is not found. More... | |
| void | LoadParam (sdf::ElementPtr &_sdf, const std::string &_name, std::string &_target, const char *_defaultValue) const |
| Load parameter value from _sdf and store it to the given reference, using the supplied default value if the element in _sdf is not found. More... | |
Protected Attributes | |
| std::string | filename |
| Path to the shared library file. More... | |
| std::string | handleName |
| Short name. More... | |
| PluginType | type |
| Type of plugin. More... | |
A class which all plugins must inherit from.
| typedef boost::shared_ptr<T> TPtr |
plugin pointer type definition
|
inline |
Constructor.
|
inlinevirtual |
Destructor.
|
inlinestatic |
a class method that creates a plugin from a file name.
It locates the shared library and loads it dynamically.
| [in] | _filename | the path to the shared library. |
| [in] | _name | short name of the plugin |
References PluginT< T >::filename, gzerr, and SingletonT< SystemPaths >::Instance().
|
inline |
Get the name of the handler.
References PluginT< T >::filename.
|
inline |
Get the short name of the handler.
References PluginT< T >::handleName.
|
inline |
|
inlineprotected |
Load parameter value from _sdf and store it to the given reference, using the supplied default value if the element in _sdf is not found.
A message is written using gzmsg reporting whether the default value was used or not.
| [in] | _sdf | The SDF element of the plugin. |
| [in] | _name | Name of a tag inside the SDF. |
| [out] | _target | The reference to store the param value to. |
| [in] | _defaultValue | The default value. |
References gzmsg, and PluginT< T >::handleName.
|
inlineprotected |
Load parameter value from _sdf and store it to the given reference, using the supplied default value if the element in _sdf is not found.
A message is written using gzmsg reporting whether the default value was used or not. String specialization to allow accepting const char* values for std::string parameters.
| [in] | _sdf | The SDF element of the plugin. |
| [in] | _name | Name of a tag inside the SDF. |
| [out] | _target | The reference to store the param value to. |
| [in] | _defaultValue | The default value. |
|
protected |
Path to the shared library file.
Referenced by PluginT< T >::Create(), and PluginT< T >::GetFilename().
|
protected |
Short name.
Referenced by PluginT< T >::GetHandle(), and PluginT< T >::LoadParam().
|
protected |
Type of plugin.
Referenced by PluginT< T >::GetType().