|
Orxonox
0.0.5 Codename: Arcturus
|
Identifiable is needed to create the class-hierarchy at startup and to store the Identifier. More...
#include </home/jenkins/workspace/orxonox_doxygen_trunk/src/libraries/core/class/Identifiable.h>
Public Member Functions | |
| Identifiable () | |
| Constructor: Sets the default values. More... | |
| virtual | ~Identifiable () |
| ORX_FORCEINLINE void * | getDerivedPointer (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... | |
| Identifier * | getIdentifier () 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 Attributes | |
| Identifier * | identifier_ |
| The Identifier of the object. More... | |
| std::vector< std::pair< unsigned int, void * > > | objectPointers_ |
| 'Fast map' that holds this-pointers of all derived types More... | |
Friends | |
| template<class T > | |
| class | ClassIdentifier |
Identifiable is needed to create the class-hierarchy at startup and to store the Identifier.
| orxonox::Identifiable::Identifiable | ( | ) |
Constructor: Sets the default values.
|
inlinevirtual |
|
inline |
Returns a valid pointer of any derived type that is registered in the class hierarchy.
|
inline |
Version of getDerivedPointer with template.
|
inline |
Const version of getDerivedPointer with template.
|
inline |
Returns the Identifier of the object.
| bool orxonox::Identifiable::isA | ( | const Identifier * | identifier | ) |
Returns true if the object's class is of the given type or a derivative.
|
inline |
Returns true if the object's class is of the given type or a derivative.
| bool orxonox::Identifiable::isA | ( | const Identifiable * | object | ) |
Returns true if the object's class is of the given type or a derivative.
| bool orxonox::Identifiable::isChildOf | ( | const Identifier * | identifier | ) |
Returns true if the object's class is a child of the given type.
|
inline |
Returns true if the object's class is a child of the given type.
| bool orxonox::Identifiable::isChildOf | ( | const Identifiable * | object | ) |
Returns true if the object's class is a child of the given type.
| bool orxonox::Identifiable::isDirectChildOf | ( | const Identifier * | identifier | ) |
Returns true if the object's class is a direct child of the given type.
|
inline |
Returns true if the object's class is a direct child of the given type.
| bool orxonox::Identifiable::isDirectChildOf | ( | const Identifiable * | object | ) |
Returns true if the object's class is a direct child of the given type.
| bool orxonox::Identifiable::isDirectParentOf | ( | const Identifier * | identifier | ) |
Returns true if the object's class is a direct parent of the given type.
|
inline |
Returns true if the object's class is a direct parent of the given type.
| bool orxonox::Identifiable::isDirectParentOf | ( | const Identifiable * | object | ) |
Returns true if the object's class is a direct child of the given type.
| bool orxonox::Identifiable::isExactlyA | ( | const Identifier * | identifier | ) |
Returns true if the object's class is exactly of the given type.
|
inline |
Returns true if the object's class is exactly of the given type.
| bool orxonox::Identifiable::isExactlyA | ( | const Identifiable * | object | ) |
Returns true if the object's class is exactly of the given type.
| bool orxonox::Identifiable::isParentOf | ( | const Identifier * | identifier | ) |
Returns true if the object's class is a parent of the given type.
|
inline |
Returns true if the object's class is a parent of the given type.
| bool orxonox::Identifiable::isParentOf | ( | const Identifiable * | object | ) |
Returns true if the object's class is a parent of the given type.
|
friend |
|
private |
The Identifier of the object.
|
private |
'Fast map' that holds this-pointers of all derived types
1.8.11