Changeset 1502 for code/trunk/src/core/OrxonoxClass.h
- Timestamp:
- Jun 1, 2008, 3:54:20 PM (17 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
code/trunk/src/core/OrxonoxClass.h
r1062 r1502 43 43 #include <string> 44 44 45 #include "MetaObjectList.h"46 #include "Iterator.h"47 48 45 namespace orxonox 49 46 { … … 75 72 76 73 /** @brief Returns the MetaObjectList of the object, containing a link to all ObjectLists and ObjectListElements the object is registered in. @return The list */ 77 inline MetaObjectList& getMetaList() { return this->metaList_; }74 inline MetaObjectList& getMetaList() { return (*this->metaList_); } 78 75 79 76 80 /** @brief Returns true if the objects class is of the given type or a derivative. */ 81 inline bool isA(const Identifier* identifier) 82 { return this->getIdentifier()->isA(identifier); } 83 /** @brief Returns true if the objects class is exactly of the given type. */ 84 inline bool isExactlyA(const Identifier* identifier) 85 { return this->getIdentifier()->isExactlyA(identifier); } 86 /** @brief Returns true if the objects class is a child of the given type. */ 87 inline bool isChildOf(const Identifier* identifier) 88 { return this->getIdentifier()->isChildOf(identifier); } 89 /** @brief Returns true if the objects class is a direct child of the given type. */ 90 inline bool isDirectChildOf(const Identifier* identifier) 91 { return this->getIdentifier()->isDirectChildOf(identifier); } 92 /** @brief Returns true if the objects class is a parent of the given type. */ 93 inline bool isParentOf(const Identifier* identifier) 94 { return this->getIdentifier()->isParentOf(identifier); } 95 /** @brief Returns true if the objects class is a direct parent of the given type. */ 96 inline bool isDirectParentOf(const Identifier* identifier) 97 { return this->getIdentifier()->isDirectParentOf(identifier); } 77 bool isA(const Identifier* identifier); 78 bool isExactlyA(const Identifier* identifier); 79 bool isChildOf(const Identifier* identifier); 80 bool isDirectChildOf(const Identifier* identifier); 81 bool isParentOf(const Identifier* identifier); 82 bool isDirectParentOf(const Identifier* identifier); 98 83 84 bool isA(const SubclassIdentifier<class B>* identifier); 85 bool isExactlyA(const SubclassIdentifier<class B>* identifier); 86 bool isChildOf(const SubclassIdentifier<class B>* identifier); 87 bool isDirectChildOf(const SubclassIdentifier<class B>* identifier); 88 bool isParentOf(const SubclassIdentifier<class B>* identifier); 89 bool isDirectParentOf(const SubclassIdentifier<class B>* identifier); 99 90 100 /** @brief Returns true if the objects class is of the given type or a derivative. */ 101 inline bool isA(const SubclassIdentifier<class B>* identifier) 102 { return this->getIdentifier()->isA(identifier->getIdentifier()); } 103 /** @brief Returns true if the objects class is exactly of the given type. */ 104 inline bool isExactlyA(const SubclassIdentifier<class B>* identifier) 105 { return this->getIdentifier()->isExactlyA(identifier->getIdentifier()); } 106 /** @brief Returns true if the objects class is a child of the given type. */ 107 inline bool isChildOf(const SubclassIdentifier<class B>* identifier) 108 { return this->getIdentifier()->isChildOf(identifier->getIdentifier()); } 109 /** @brief Returns true if the objects class is a direct child of the given type. */ 110 inline bool isDirectChildOf(const SubclassIdentifier<class B>* identifier) 111 { return this->getIdentifier()->isDirectChildOf(identifier->getIdentifier()); } 112 /** @brief Returns true if the objects class is a parent of the given type. */ 113 inline bool isParentOf(const SubclassIdentifier<class B>* identifier) 114 { return this->getIdentifier()->isParentOf(identifier->getIdentifier()); } 115 /** @brief Returns true if the objects class is a direct parent of the given type. */ 116 inline bool isDirectParentOf(const SubclassIdentifier<class B>* identifier) 117 { return this->getIdentifier()->isDirectParentOf(identifier->getIdentifier()); } 91 bool isA(const SubclassIdentifier<class B> identifier); 92 bool isExactlyA(const SubclassIdentifier<class B> identifier); 93 bool isChildOf(const SubclassIdentifier<class B> identifier); 94 bool isDirectChildOf(const SubclassIdentifier<class B> identifier); 95 bool isParentOf(const SubclassIdentifier<class B> identifier); 96 bool isDirectParentOf(const SubclassIdentifier<class B> identifier); 118 97 119 120 /** @brief Returns true if the objects class is of the given type or a derivative. */ 121 inline bool isA(const SubclassIdentifier<class B> identifier) 122 { return this->getIdentifier()->isA(identifier.getIdentifier()); } 123 /** @brief Returns true if the objects class is exactly of the given type. */ 124 inline bool isExactlyA(const SubclassIdentifier<class B> identifier) 125 { return this->getIdentifier()->isExactlyA(identifier.getIdentifier()); } 126 /** @brief Returns true if the objects class is a child of the given type. */ 127 inline bool isChildOf(const SubclassIdentifier<class B> identifier) 128 { return this->getIdentifier()->isChildOf(identifier.getIdentifier()); } 129 /** @brief Returns true if the objects class is a direct child of the given type. */ 130 inline bool isDirectChildOf(const SubclassIdentifier<class B> identifier) 131 { return this->getIdentifier()->isDirectChildOf(identifier.getIdentifier()); } 132 /** @brief Returns true if the objects class is a parent of the given type. */ 133 inline bool isParentOf(const SubclassIdentifier<class B> identifier) 134 { return this->getIdentifier()->isParentOf(identifier.getIdentifier()); } 135 /** @brief Returns true if the objects class is a direct parent of the given type. */ 136 inline bool isDirectParentOf(const SubclassIdentifier<class B> identifier) 137 { return this->getIdentifier()->isDirectParentOf(identifier.getIdentifier()); } 138 139 140 /** @brief Returns true if the objects class is of the given type or a derivative. */ 141 inline bool isA(const OrxonoxClass* object) 142 { return this->getIdentifier()->isA(object->getIdentifier()); } 143 /** @brief Returns true if the objects class is exactly of the given type. */ 144 inline bool isExactlyA(const OrxonoxClass* object) 145 { return this->getIdentifier()->isExactlyA(object->getIdentifier()); } 146 /** @brief Returns true if the objects class is a child of the given type. */ 147 inline bool isChildOf(const OrxonoxClass* object) 148 { return this->getIdentifier()->isChildOf(object->getIdentifier()); } 149 /** @brief Returns true if the objects class is a direct child of the given type. */ 150 inline bool isDirectChildOf(const OrxonoxClass* object) 151 { return this->getIdentifier()->isDirectChildOf(object->getIdentifier()); } 152 /** @brief Returns true if the objects class is a parent of the given type. */ 153 inline bool isParentOf(const OrxonoxClass* object) 154 { return this->getIdentifier()->isParentOf(object->getIdentifier()); } 155 /** @brief Returns true if the objects class is a direct child of the given type. */ 156 inline bool isDirectParentOf(const OrxonoxClass* object) 157 { return this->getIdentifier()->isDirectParentOf(object->getIdentifier()); } 98 bool isA(const OrxonoxClass* object); 99 bool isExactlyA(const OrxonoxClass* object); 100 bool isChildOf(const OrxonoxClass* object); 101 bool isDirectChildOf(const OrxonoxClass* object); 102 bool isParentOf(const OrxonoxClass* object); 103 bool isDirectParentOf(const OrxonoxClass* object); 158 104 159 105 private: 160 Identifier* identifier_; 106 Identifier* identifier_; //!< The Identifier of the object 161 107 std::set<const Identifier*>* parents_; //!< List of all parents of the object 162 MetaObjectList metaList_;//!< MetaObjectList, containing all ObjectLists and ObjectListElements the object is registered in108 MetaObjectList* metaList_; //!< MetaObjectList, containing all ObjectLists and ObjectListElements the object is registered in 163 109 }; 164 110 }
Note: See TracChangeset
for help on using the changeset viewer.