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

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

Inheritance diagram for orxonox::CoreConfig:
orxonox::Configurable orxonox::Listable orxonox::Identifiable

Public Member Functions

 CoreConfig ()
 
long long getLastLevelTimestamp () const
 
long long getOgreConfigTimestamp () const
 
bool getStartIOConsole () const
 
bool inDevMode (void) const
 Developers bit. If returns false, some options are not available as to not confuse the normal user. More...
 
void setConfigValues ()
 Function to collect the SetConfigValue-macro calls. More...
 
void updateLastLevelTimestamp ()
 
void updateOgreConfigTimestamp ()
 
- 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 devModeChanged ()
 Callback function for changes in the dev mode that affect debug levels. More...
 
void initRandomNumberGenerator ()
 
void languageChanged ()
 Callback function if the language has changed. More...
 

Private Attributes

bool bDevMode_
 Developers bit. If set to false, some options are not available as to not confuse the normal user. More...
 
bool bInitRandomNumberGenerator_
 If true, srand(time(0)) is called. More...
 
bool bStartIOConsole_
 Set to false if you don't want to use the IOConsole. More...
 
std::string language_
 The language. More...
 
long long lastLevelTimestamp_
 Timestamp when the last level was started. More...
 
long long ogreConfigTimestamp_
 Timestamp wehen the ogre config level was modified. More...
 

Constructor & Destructor Documentation

orxonox::CoreConfig::CoreConfig ( )

Member Function Documentation

void orxonox::CoreConfig::devModeChanged ( )
private

Callback function for changes in the dev mode that affect debug levels.

The function behaves according to these rules:

  • 'normal' mode is defined based on where the program was launched: if the launch path was the build directory, development mode on is normal, otherwise normal means development mode off.
  • Debug levels should not be hard configured (config instead of tconfig) in non 'normal' mode to avoid strange behaviour.
  • Changing the development mode from 'normal' to the other state will immediately change the debug levels to predefined values which can be reconfigured with tconfig.
    Note
    The debug levels for the IOConsole and the InGameConsole can be found in the Shell class. The same rules apply.
long long orxonox::CoreConfig::getLastLevelTimestamp ( ) const
inline
long long orxonox::CoreConfig::getOgreConfigTimestamp ( ) const
inline
bool orxonox::CoreConfig::getStartIOConsole ( ) const
inline
bool orxonox::CoreConfig::inDevMode ( void  ) const
inline

Developers bit. If returns false, some options are not available as to not confuse the normal user.

void orxonox::CoreConfig::initRandomNumberGenerator ( )
private
void orxonox::CoreConfig::languageChanged ( )
private

Callback function if the language has changed.

void orxonox::CoreConfig::setConfigValues ( void  )

Function to collect the SetConfigValue-macro calls.

void orxonox::CoreConfig::updateLastLevelTimestamp ( )
void orxonox::CoreConfig::updateOgreConfigTimestamp ( )

Member Data Documentation

bool orxonox::CoreConfig::bDevMode_
private

Developers bit. If set to false, some options are not available as to not confuse the normal user.

bool orxonox::CoreConfig::bInitRandomNumberGenerator_
private

If true, srand(time(0)) is called.

bool orxonox::CoreConfig::bStartIOConsole_
private

Set to false if you don't want to use the IOConsole.

std::string orxonox::CoreConfig::language_
private

The language.

long long orxonox::CoreConfig::lastLevelTimestamp_
private

Timestamp when the last level was started.

long long orxonox::CoreConfig::ogreConfigTimestamp_
private

Timestamp wehen the ogre config level was modified.


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