Changeset 220 for code/branches/objecthierarchie/src/IdentifierIncludes.h
- Timestamp:
- Nov 19, 2007, 11:01:25 PM (16 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
code/branches/objecthierarchie/src/IdentifierIncludes.h
r219 r220 6 6 7 7 8 #define registerRootObject(ClassName) \ 9 std::cout << "*** Register Root-Object: " << #ClassName << "\n"; \ 8 #define internRegisterRootObject(ClassName, bAbstract) \ 10 9 if (Identifier::isCreatingHierarchy() && !this->getParents()) \ 11 10 this->setParents(new IdentifierList()); \ 12 if (this->getIdentifier()) \ 13 this->getIdentifier()->removeObject(this); \ 14 this->setIdentifier(ClassIdentifier<ClassName>::registerClass(this->getParents(), #ClassName, true, false)); \ 11 this->setIdentifier(ClassIdentifier<ClassName>::registerClass(this->getParents(), #ClassName, true, bAbstract)); \ 15 12 if (Identifier::isCreatingHierarchy() && this->getParents()) \ 16 13 this->getParents()->add(this->getIdentifier()); \ 17 14 this->getIdentifier()->addObject(this) 18 15 16 #define registerRootObject(ClassName) \ 17 std::cout << "*** Register Root-Object: " << #ClassName << "\n"; \ 18 internRegisterRootObject(ClassName, false) 19 19 20 #define registerAbstractRootObject(ClassName) \ 20 std::cout << "*** Register Root-Object: " << #ClassName << "\n"; \ 21 if (Identifier::isCreatingHierarchy() && !this->getParents()) \ 22 this->setParents(new IdentifierList()); \ 23 if (this->getIdentifier()) \ 24 this->getIdentifier()->removeObject(this); \ 25 this->setIdentifier(ClassIdentifier<ClassName>::registerClass(this->getParents(), #ClassName, true, true)); \ 21 std::cout << "*** Register abstract Root-Object: " << #ClassName << "\n"; \ 22 internRegisterRootObject(ClassName, true) 23 24 #define internRegisterObject(ClassName, bAbstract) \ 25 this->setIdentifier(ClassIdentifier<ClassName>::registerClass(this->getParents(), #ClassName, false, bAbstract)); \ 26 26 if (Identifier::isCreatingHierarchy() && this->getParents()) \ 27 27 this->getParents()->add(this->getIdentifier()); \ … … 30 30 #define registerObject(ClassName) \ 31 31 std::cout << "*** Register Object: " << #ClassName << "\n"; \ 32 this->getIdentifier()->removeObject(this); \ 33 this->setIdentifier(ClassIdentifier<ClassName>::registerClass(this->getParents(), #ClassName, false, false)); \ 34 if (Identifier::isCreatingHierarchy() && this->getParents()) \ 35 this->getParents()->add(this->getIdentifier()); \ 36 this->getIdentifier()->addObject(this) 32 internRegisterObject(ClassName, false) 37 33 38 34 #define registerAbstractObject(ClassName) \ 39 std::cout << "*** Register Object: " << #ClassName << "\n"; \ 40 this->getIdentifier()->removeObject(this); \ 41 this->setIdentifier(ClassIdentifier<ClassName>::registerClass(this->getParents(), #ClassName, false, true)); \ 42 if (Identifier::isCreatingHierarchy() && this->getParents()) \ 43 this->getParents()->add(this->getIdentifier()); \ 44 this->getIdentifier()->addObject(this) 35 std::cout << "*** Register abstract Object: " << #ClassName << "\n"; \ 36 internRegisterObject(ClassName, true) 45 37 46 38 #define unregisterObject() \
Note: See TracChangeset
for help on using the changeset viewer.