Changeset 2784 for code/trunk/src/core/ObjectListBase.h
- Timestamp:
- Mar 15, 2009, 1:26:23 AM (16 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
code/trunk/src/core/ObjectListBase.h
r2171 r2784 38 38 #define _ObjectListBase_H__ 39 39 40 #include < list>40 #include <vector> 41 41 42 42 #include "CorePrereqs.h" … … 110 110 inline Export rend() { return ObjectListBase::Export(this, 0); } 111 111 112 inline std::list<void*>::iterator registerIterator(void* iterator) { return this->iterators_.insert(this->iterators_.begin(), iterator); } 113 inline void unregisterIterator(const std::list<void*>::iterator& iterator) { this->iterators_.erase(iterator); } 114 inline std::list<void*>::iterator registerObjectListIterator(void* iterator) { return this->objectListIterators_.insert(this->objectListIterators_.begin(), iterator); } 115 inline void unregisterObjectListIterator(const std::list<void*>::iterator& iterator) { this->objectListIterators_.erase(iterator); } 112 inline void registerIterator(void* iterator) { this->iterators_.push_back(iterator); } 113 inline void unregisterIterator(void* iterator) 114 { 115 for (unsigned int i = 0; i < this->iterators_.size(); ++i) 116 { 117 if (iterators_[i] == iterator) 118 { 119 iterators_.erase(iterators_.begin() + i); 120 break; 121 } 122 } 123 } 124 inline void registerObjectListIterator(void* iterator) { this->objectListIterators_.push_back(iterator); } 125 inline void unregisterObjectListIterator(void* iterator) 126 { 127 for (unsigned int i = 0; i < this->objectListIterators_.size(); ++i) 128 { 129 if (objectListIterators_[i] == iterator) 130 { 131 objectListIterators_.erase(objectListIterators_.begin() + i); 132 break; 133 } 134 } 135 } 116 136 void notifyIterators(OrxonoxClass* object) const; 117 137 … … 122 142 ObjectListBaseElement* first_; //!< The first element in the list 123 143 ObjectListBaseElement* last_; //!< The last element in the list 124 std:: list<void*> iterators_; //!< A list of Iterators pointing on an element in this list125 std:: list<void*> objectListIterators_; //!< A list of ObjectListIterators pointing on an element in this list144 std::vector<void*> iterators_; //!< A list of Iterators pointing on an element in this list 145 std::vector<void*> objectListIterators_; //!< A list of ObjectListIterators pointing on an element in this list 126 146 }; 127 147 }
Note: See TracChangeset
for help on using the changeset viewer.