Changes between Version 1 and Version 2 of code/doc/ClassIdentifier
- Timestamp:
- Feb 24, 2008, 11:53:20 PM (17 years ago)
Legend:
- Unmodified
- Added
- Removed
- Modified
-
code/doc/ClassIdentifier
v1 v2 3 3 == Description == 4 4 5 The ClassIdentifier is a template, inherited from [wiki:Identifier], containing all class 5 The ClassIdentifier is a template, inherited from [wiki:Identifier], containing all class-specific functions for the class represented by the [wiki:Identifier]. In fact this is only the [wiki:ObjectList]. 6 6 7 7 The constructor of ClassIdentifier is private. Only [wiki:IdentifierDistributor] is allowed to create and distribute new instances. (In fact only '''one''' instance per template-class. This is '''very''' important.) 8 8 9 You can't access the ClassIdentifier of a class directly. Use [wiki:ClassManager]< ClassName>::getIdentifier() instead. The macro Class(classname) (include [wiki:CoreIncludes CoreIncludes.h] to use it) returns the ClassIdentifier of the given class. In fact this is only an abbreviation of ClassManager<ClassName>::getIdentifier().9 You can't access the ClassIdentifier of a class directly. Use [wiki:ClassManager]<!ClassName>::getIdentifier() instead.[[br]] The macro Class(classname) (include [wiki:CoreIncludes CoreIncludes.h] to use it) returns the ClassIdentifier of the given class. In fact this is only an abbreviation of ClassManager<!ClassName>::getIdentifier(). 10 10 11 11 Every class that uses the !RegisterObject(classname) or !RegisterRootObject(interfacename) macro (see [wiki:CoreIncludes]) is represented by an [wiki:Identifier], that stores all objects of this class (and of all inherited classes) in a [wiki:ObjectList]. The object gets removed from the list if it gets deleted. This is handled by the destructor of [wiki:OrxonoxClass] and the [wiki:MetaObjectList].