Orxonox  0.0.5 Codename: Arcturus
Public Member Functions | Private Member Functions | Private Attributes | Static Private Attributes | Friends | List of all members
orxonox::PluginManager Class Reference

#include </home/jenkins/workspace/orxonox_doxygen_trunk/src/libraries/core/module/PluginManager.h>

Inheritance diagram for orxonox::PluginManager:
orxonox::Singleton< PluginManager > orxonox::Configurable orxonox::Listable orxonox::Identifiable

Public Member Functions

 PluginManager ()
 
 ~PluginManager ()
 
void dereferencePlugin (const std::string &name)
 
void findPlugins ()
 
void loadPlugin (const std::string &name)
 Console command to manually load a plugin. More...
 
void referencePlugin (const std::string &name)
 
void setConfigValues ()
 
void unloadPlugin (const std::string &name)
 Console command to unload a plugin if it was previously loaded manually by calling loadPlugin. More...
 
- Public Member Functions inherited from orxonox::Configurable
 Configurable ()
 
void setConfigValues ()
 Function to collect the SetConfigValue-macro calls. More...
 
- Public Member Functions inherited from orxonox::Listable
 Listable ()
 Constructor: Allocates space in the element list. More...
 
 Listable (Context *context)
 Constructor: Allocates space in the element list and assigns the context. More...
 
virtual ~Listable ()
 Destructor: Removes the object from the object-lists. More...
 
ContextgetContext () const
 
void setContext (Context *context)
 Changes the context. More...
 
void unregisterObject ()
 Removes this object from the object-lists. More...
 
- Public Member Functions inherited from orxonox::Identifiable
 Identifiable ()
 Constructor: Sets the default values. More...
 
virtual ~Identifiable ()
 
ORX_FORCEINLINE voidgetDerivedPointer (unsigned int classID)
 Returns a valid pointer of any derived type that is registered in the class hierarchy. More...
 
template<class T >
ORX_FORCEINLINE T * getDerivedPointer (unsigned int classID)
 Version of getDerivedPointer with template. More...
 
template<class T >
ORX_FORCEINLINE const T * getDerivedPointer (unsigned int classID) const
 Const version of getDerivedPointer with template. More...
 
IdentifiergetIdentifier () const
 Returns the Identifier of the object. More...
 
bool isA (const Identifier *identifier)
 Returns true if the object's class is of the given type or a derivative. More...
 
template<class B >
bool isA (const SubclassIdentifier< B > *identifier)
 Returns true if the object's class is of the given type or a derivative. More...
 
bool isA (const Identifiable *object)
 Returns true if the object's class is of the given type or a derivative. More...
 
bool isChildOf (const Identifier *identifier)
 Returns true if the object's class is a child of the given type. More...
 
template<class B >
bool isChildOf (const SubclassIdentifier< B > *identifier)
 Returns true if the object's class is a child of the given type. More...
 
bool isChildOf (const Identifiable *object)
 Returns true if the object's class is a child of the given type. More...
 
bool isDirectChildOf (const Identifier *identifier)
 Returns true if the object's class is a direct child of the given type. More...
 
template<class B >
bool isDirectChildOf (const SubclassIdentifier< B > *identifier)
 Returns true if the object's class is a direct child of the given type. More...
 
bool isDirectChildOf (const Identifiable *object)
 Returns true if the object's class is a direct child of the given type. More...
 
bool isDirectParentOf (const Identifier *identifier)
 Returns true if the object's class is a direct parent of the given type. More...
 
template<class B >
bool isDirectParentOf (const SubclassIdentifier< B > *identifier)
 Returns true if the object's class is a direct parent of the given type. More...
 
bool isDirectParentOf (const Identifiable *object)
 Returns true if the object's class is a direct child of the given type. More...
 
bool isExactlyA (const Identifier *identifier)
 Returns true if the object's class is exactly of the given type. More...
 
template<class B >
bool isExactlyA (const SubclassIdentifier< B > *identifier)
 Returns true if the object's class is exactly of the given type. More...
 
bool isExactlyA (const Identifiable *object)
 Returns true if the object's class is exactly of the given type. More...
 
bool isParentOf (const Identifier *identifier)
 Returns true if the object's class is a parent of the given type. More...
 
template<class B >
bool isParentOf (const SubclassIdentifier< B > *identifier)
 Returns true if the object's class is a parent of the given type. More...
 
bool isParentOf (const Identifiable *object)
 Returns true if the object's class is a parent of the given type. More...
 

Private Member Functions

void changedConfigValue ()
 

Private Attributes

bool bMerelyDeactivatePlugins_
 
std::map< std::string, Plugin * > plugins_
 
std::map< std::string, PluginReference * > references_
 

Static Private Attributes

static PluginManagersingletonPtr_s = nullptr
 

Friends

class Singleton< PluginManager >
 

Additional Inherited Members

- Static Public Member Functions inherited from orxonox::Singleton< PluginManager >
static bool exists ()
 Tells whether the singleton has been created. More...
 
static PluginManagergetInstance ()
 Returns a reference to the singleton instance. More...
 
- Protected Member Functions inherited from orxonox::Singleton< PluginManager >
 Singleton ()
 Constructor sets the singleton instance pointer. More...
 
virtual ~Singleton ()
 Destructor resets the singleton instance pointer. More...
 

Constructor & Destructor Documentation

orxonox::PluginManager::PluginManager ( )
orxonox::PluginManager::~PluginManager ( )

Member Function Documentation

void orxonox::PluginManager::changedConfigValue ( )
private
void orxonox::PluginManager::dereferencePlugin ( const std::string &  name)
void orxonox::PluginManager::findPlugins ( )
void orxonox::PluginManager::loadPlugin ( const std::string &  name)

Console command to manually load a plugin.

The plugin stays loaded until unloadPlugin is called.

void orxonox::PluginManager::referencePlugin ( const std::string &  name)
void orxonox::PluginManager::setConfigValues ( void  )
void orxonox::PluginManager::unloadPlugin ( const std::string &  name)

Console command to unload a plugin if it was previously loaded manually by calling loadPlugin.

Does not unload the plugin immediately if it is still used by another PluginReference (e.g. by a Level).

Friends And Related Function Documentation

friend class Singleton< PluginManager >
friend

Member Data Documentation

bool orxonox::PluginManager::bMerelyDeactivatePlugins_
private
std::map<std::string, Plugin*> orxonox::PluginManager::plugins_
private
std::map<std::string, PluginReference*> orxonox::PluginManager::references_
private
PluginManager * orxonox::PluginManager::singletonPtr_s = nullptr
staticprivate

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