Emergency 20 Dokumentation  4.2.0
em5::SpecsGroupManager Class Reference

Specs group manager class. More...

#include <SpecsGroupManager.h>

Inheritance diagram for em5::SpecsGroupManager:
qsf::ParameterGroupManager qsf::PluginableManager qsf::Manager

Public Member Functions

 SpecsGroupManager ()
 Default constructor. More...
 
virtual ~SpecsGroupManager ()
 Destructor. More...
 
void loadSpecsFile ()
 Loads the spec file from harddrive and fill the different specs groups with values, can called at runtime to override the specs. More...
 
- Public Member Functions inherited from qsf::ParameterGroupManager
virtual ~ParameterGroupManager ()
 Destructor. More...
 
void setParametersToDefaultValues ()
 Set all parameters to their default values. More...
 
bool loadByAbsoluteFilename (const std::string &filename, const std::string *formatTypeOverride=nullptr, bool showMessageBoxOnParserError=false, bool setToDefaults=true)
 Load a parameter group by using a given absolute filename. More...
 
bool saveByAbsoluteFilename (const std::string &filename, bool differenceToDefault=false)
 Save the parameter group by using a given absolute filename. More...
 
const std::string & getFilename () const
 Return the absolute filename of the parameter group. More...
 
- Public Member Functions inherited from qsf::PluginableManager
virtual ~PluginableManager ()
 Destructor. More...
 
const std::vector< PluginableBase * > & getPluginableList () const
 Return the list of all available pluginable instances. More...
 
template<typename T >
const std::vector< T * > & getList () const
 Return the list of all available pluginable instances. More...
 
PluginableBasegetPluginableByCampClass (const camp::Class &campClass) const
 Return a pluginable instance by using a given CAMP reflection class. More...
 
PluginableBasegetPluginableById (const StringHash &id) const
 Return a pointer to a pluginable instance by using its unique identifier. More...
 
template<typename T >
T * get () const
 Return a pointer to a pluginable instance of a certain type. More...
 
template<typename T >
T * getById (const StringHash &id) const
 Return a pointer to a pluginable instance by using its unique identifier. More...
 
template<typename T >
T & getSafe () const
 Return a reference to a pluginable instance of a certain type. More...
 
template<typename T >
T & getByIdSafe (const StringHash &id) const
 Return a reference to a pluginable instance by using its unique identifier. More...
 

Protected Member Functions

virtual void classAdded (const camp::Class &added) override
 Called after a new CAMP class has been registered. More...
 
- Protected Member Functions inherited from qsf::ParameterGroupManager
 ParameterGroupManager ()
 Default constructor. More...
 
- Protected Member Functions inherited from qsf::PluginableManager
 PluginableManager ()
 Default constructor. More...
 
void registerPluginables ()
 Register all known and supported CAMP pluginable classes. More...
 
PluginableBaseregisterPluginable (const camp::Class &added)
 Register the given CAMP pluginable class. More...
 
void injectPluginable (uint32 id, PluginableBase &pluginableBase)
 Insert the given pluginable in the internal data structure of the pluginable manager. More...
 
virtual void createPluginableInstance (const camp::Class &added, camp::UserObject &campUserObject)
 Create an instance of the given CAMP pluginable class. More...
 
virtual void unregisterPluginables ()
 Unregister all known and supported CAMP pluginable classes. More...
 
- Protected Member Functions inherited from qsf::Manager
 Manager ()
 Default constructor. More...
 
virtual ~Manager ()
 Destructor. More...
 

Additional Inherited Members

- Public Attributes inherited from qsf::ParameterGroupManager
boost::signals2::signal< void(const ParameterGroup &, uint32)> PropertyChanged
 This Boost signal is emitted when a property of one of the parameter groups was changed; parameter: parameter group instance, unique class property ID inside the parameter group class. More...
 
- Protected Attributes inherited from qsf::PluginableManager
std::vector< PluginableBase * > mPluginables
 List of all available pluginable instances, we have to destroy the instances if we no longer need them. More...
 
boost::container::flat_map< uint32, PluginableBase * > mPluginableMap
 Pluginable map with unique pluginable identifier as key and pointer to the pluginable as value. More...
 

Detailed Description

Specs group manager class.

Remarks
The specs group manager is automatically able to use all CAMP classes which are derived from "em5::SpecsGroup".

Constructor & Destructor Documentation

em5::SpecsGroupManager::SpecsGroupManager ( )

Default constructor.

virtual em5::SpecsGroupManager::~SpecsGroupManager ( )
virtual

Destructor.

Member Function Documentation

virtual void em5::SpecsGroupManager::classAdded ( const camp::Class &  added)
overrideprotectedvirtual

Called after a new CAMP class has been registered.

Parameters
[in]addedNew new CAMP class
Note
  • The default implementation is empty

Reimplemented from qsf::PluginableManager.

void em5::SpecsGroupManager::loadSpecsFile ( )

Loads the spec file from harddrive and fill the different specs groups with values, can called at runtime to override the specs.

/


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