- Timestamp:
- Aug 23, 2005, 11:07:40 PM (19 years ago)
- Location:
- trunk/src
- Files:
-
- 27 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/lib/collision_detection/cd_engine.cc
r5047 r5110 80 80 tIterator<WorldEntity>* iterator1 = entityList->getIterator(); 81 81 tIterator<WorldEntity>* iterator2 = entityList->getIterator(); 82 WorldEntity* entity1 = iterator1-> nextElement();82 WorldEntity* entity1 = iterator1->firstElement(); 83 83 WorldEntity* entity2 = iterator2->seekElement(entity1); 84 84 PRINTF(3)("checking for collisions\n"); 85 while( entity1 != NULL)85 /* while( entity1 != NULL) 86 86 { 87 87 if( likely(entity1 != this->terrain)) … … 101 101 entity2 = iterator2->seekElement(entity1); 102 102 103 } 103 }*/ 104 104 delete iterator1; 105 105 delete iterator2; … … 133 133 134 134 tIterator<WorldEntity>* iterator = entityList->getIterator(); 135 WorldEntity* entity = iterator-> nextElement();135 WorldEntity* entity = iterator->firstElement(); 136 136 while( entity != NULL) 137 137 { -
trunk/src/lib/collision_detection/obb_tree_node.cc
r5046 r5110 574 574 575 575 iterator = partition1.getIterator(); 576 element = iterator-> nextElement();576 element = iterator->firstElement(); 577 577 index = 0; 578 578 while( element != NULL) … … 592 592 593 593 iterator = partition2.getIterator(); 594 element = iterator-> nextElement();594 element = iterator->firstElement(); 595 595 index = 0; 596 596 while( element != NULL) -
trunk/src/lib/coord/p_node.cc
r5108 r5110 79 79 { 80 80 tIterator<PNode>* iterator = this->children->getIterator(); 81 PNode* pn = iterator-> nextElement();81 PNode* pn = iterator->firstElement(); 82 82 while( pn != NULL) 83 83 { … … 435 435 436 436 tIterator<PNode>* iterator = this->children->getIterator(); 437 PNode* pn = iterator-> nextElement();437 PNode* pn = iterator->firstElement(); 438 438 439 439 while( pn != NULL) … … 605 605 { 606 606 tIterator<PNode>* iterator = this->children->getIterator(); 607 PNode* pn = iterator-> nextElement();607 PNode* pn = iterator->firstElement(); 608 608 while( pn != NULL) 609 609 { … … 615 615 616 616 pn->update(dt); 617 //pn = this->children->nextElement();618 617 pn = iterator->nextElement(); 619 618 } … … 656 655 tIterator<PNode>* iterator = this->children->getIterator(); 657 656 //PNode* pn = this->children->enumerate (); 658 PNode* pn = iterator-> nextElement();657 PNode* pn = iterator->firstElement(); 659 658 while( pn != NULL) 660 659 { … … 722 721 if (depth >= 2 || depth == 0) 723 722 { 723 Vector childColor = Color::HSVtoRGB(Color::RGBtoHSV(color)+Vector(20,0,.0)); 724 724 725 tIterator<PNode>* iterator = this->children->getIterator(); 725 //PNode* pn = this->children->enumerate (); 726 Vector childColor = Color::HSVtoRGB(Color::RGBtoHSV(color)+Vector(20,0,.0)); 727 PNode* pn = iterator->nextElement(); 726 PNode* pn = iterator->firstElement(); 728 727 while( pn != NULL) 729 728 { -
trunk/src/lib/graphics/importer/model.cc
r4844 r5110 192 192 193 193 tIterator<Material>* tmpIt = this->materialList->getIterator(); 194 Material* material = tmpIt-> nextElement();194 Material* material = tmpIt->firstElement(); 195 195 //! @todo do we really have to delete this material?? 196 196 while(material) … … 413 413 { 414 414 tIterator<Material>* tmpIt = this->materialList->getIterator(); 415 Material* material = tmpIt-> nextElement();415 Material* material = tmpIt->firstElement(); 416 416 while(material) 417 417 { -
trunk/src/lib/graphics/render2D/element_2d.cc
r5108 r5110 55 55 56 56 tIterator<Element2D>* iterator = this->children->getIterator(); 57 Element2D* pn = iterator-> nextElement();57 Element2D* pn = iterator->firstElement(); 58 58 while( pn != NULL) 59 59 { … … 479 479 { 480 480 tIterator<Element2D>* iterator = this->children->getIterator(); 481 Element2D* pn = iterator-> nextElement();481 Element2D* pn = iterator->firstElement(); 482 482 483 483 while( pn != NULL) … … 687 687 { 688 688 tIterator<Element2D>* iterator = this->children->getIterator(); 689 Element2D* pn = iterator-> nextElement();689 Element2D* pn = iterator->firstElement(); 690 690 while( pn != NULL) 691 691 { … … 697 697 698 698 pn->update2D(dt); 699 //pn = this->children->nextElement();700 699 pn = iterator->nextElement(); 701 700 } … … 735 734 { 736 735 tIterator<Element2D>* iterator = this->children->getIterator(); 737 Element2D* pn = iterator-> nextElement();736 Element2D* pn = iterator->firstElement(); 738 737 while( pn != NULL) 739 738 { -
trunk/src/lib/graphics/render2D/render_2d.cc
r5078 r5110 105 105 { 106 106 tIterator<Element2D>* iterator = this->element2DList[i]->getIterator(); 107 Element2D* elem = iterator-> nextElement();107 Element2D* elem = iterator->firstElement(); 108 108 while (elem != NULL) 109 109 { … … 131 131 { 132 132 tIterator<Element2D>* iterator = this->element2DList[i]->getIterator(); 133 Element2D* elem = iterator-> nextElement();133 Element2D* elem = iterator->firstElement(); 134 134 while (elem != NULL) 135 135 { -
trunk/src/lib/graphics/spatial_separation/quadtree_node.cc
r5075 r5110 253 253 counter = 0; 254 254 iterator = listA->getIterator(); 255 tempTri = iterator-> nextElement();255 tempTri = iterator->firstElement(); 256 256 while( tempTri) 257 257 { … … 262 262 counter = 0; 263 263 iterator = listB->getIterator(); 264 tempTri = iterator-> nextElement();264 tempTri = iterator->firstElement(); 265 265 while( tempTri) 266 266 { … … 271 271 counter = 0; 272 272 iterator = listC->getIterator(); 273 tempTri = iterator-> nextElement();273 tempTri = iterator->firstElement(); 274 274 while( tempTri) 275 275 { … … 280 280 counter = 0; 281 281 iterator = listD->getIterator(); 282 tempTri = iterator-> nextElement();282 tempTri = iterator->firstElement(); 283 283 while( tempTri) 284 284 { -
trunk/src/lib/graphics/text_engine.cc
r5106 r5110 845 845 846 846 tIterator<BaseObject>* textIterator = ClassList::getList(CL_TEXT)->getIterator(); 847 Text* text = dynamic_cast<Text*>(textIterator-> nextElement());847 Text* text = dynamic_cast<Text*>(textIterator->firstElement()); 848 848 while( text != NULL) 849 849 { -
trunk/src/lib/lang/class_list.cc
r5106 r5110 208 208 { 209 209 tIterator<BaseObject>* iterator = tmp->objectList->getIterator(); 210 BaseObject* enumBO = iterator-> nextElement();210 BaseObject* enumBO = iterator->firstElement(); 211 211 const char* tmpName; 212 212 while (enumBO != NULL) … … 249 249 { 250 250 tIterator<BaseObject>* iterator = tmp->objectList->getIterator(); 251 BaseObject* enumBO = iterator-> nextElement();251 BaseObject* enumBO = iterator->firstElement(); 252 252 while (enumBO != NULL) 253 253 { … … 362 362 PRINT(0)("| Listing Instances:\n"); 363 363 tIterator<BaseObject>* iterator = tmp->objectList->getIterator(); 364 BaseObject* enumBO = iterator-> nextElement();364 BaseObject* enumBO = iterator->firstElement(); 365 365 while (enumBO) 366 366 { -
trunk/src/lib/particles/particle_engine.cc
r4836 r5110 53 53 // delete all remaining systems 54 54 tIterator<ParticleSystem>* sysIt = this->systemList->getIterator(); 55 ParticleSystem* tmpSys = sysIt-> nextElement();55 ParticleSystem* tmpSys = sysIt->firstElement(); 56 56 while(tmpSys) 57 57 { … … 64 64 // delete all remaining emitters 65 65 tIterator<ParticleEmitter>* emitIt = this->emitterList->getIterator(); 66 ParticleEmitter* tmpEmit = emitIt-> nextElement();66 ParticleEmitter* tmpEmit = emitIt->firstElement(); 67 67 while(tmpEmit) 68 68 { … … 147 147 // look, if we have already added this connection 148 148 tIterator<ParticleConnection>* tmpConIt = connectionList->getIterator(); 149 ParticleConnection* tmpConnection = tmpConIt-> nextElement();149 ParticleConnection* tmpConnection = tmpConIt->firstElement(); 150 150 while(tmpConnection) 151 151 { … … 178 178 // remove any connections, that have this system within 179 179 tIterator<ParticleConnection>* tmpConIt = connectionList->getIterator(); 180 ParticleConnection* tmpConnection = tmpConIt-> nextElement();180 ParticleConnection* tmpConnection = tmpConIt->firstElement(); 181 181 while(tmpConnection) 182 182 { … … 199 199 // remove any connections, that have this emitter within 200 200 tIterator<ParticleConnection>* tmpConIt = connectionList->getIterator(); 201 ParticleConnection* tmpConnection = tmpConIt-> nextElement();201 ParticleConnection* tmpConnection = tmpConIt->firstElement(); 202 202 while(tmpConnection) 203 203 { … … 224 224 // look, if we have already added this connection 225 225 tIterator<ParticleConnection>* tmpConIt = connectionList->getIterator(); 226 ParticleConnection* tmpConnection = tmpConIt-> nextElement();226 ParticleConnection* tmpConnection = tmpConIt->firstElement(); 227 227 while(tmpConnection) 228 228 { … … 260 260 // ticks all the ParticleSystems 261 261 tIterator<ParticleSystem>* tmpIt = systemList->getIterator(); 262 ParticleSystem* tmpSys = tmpIt-> nextElement();262 ParticleSystem* tmpSys = tmpIt->firstElement(); 263 263 while(tmpSys) 264 264 { … … 270 270 // add new Particles to each System connected to an Emitter. 271 271 tIterator<ParticleConnection>* tmpConIt = connectionList->getIterator(); 272 ParticleConnection* tmpConnection = tmpConIt-> nextElement();272 ParticleConnection* tmpConnection = tmpConIt->firstElement(); 273 273 while(tmpConnection) 274 274 { … … 285 285 { 286 286 tIterator<ParticleSystem>* tmpIt = systemList->getIterator(); 287 ParticleSystem* tmpSys = tmpIt-> nextElement();287 ParticleSystem* tmpSys = tmpIt->firstElement(); 288 288 while(tmpSys) 289 289 { … … 302 302 { 303 303 tIterator<ParticleSystem>* tmpIt = systemList->getIterator(); 304 ParticleSystem* tmpSys = tmpIt-> nextElement();304 ParticleSystem* tmpSys = tmpIt->firstElement(); 305 305 while(tmpSys) 306 306 { … … 324 324 int count = 0; 325 325 tIterator<ParticleSystem>* tmpIt = systemList->getIterator(); 326 ParticleSystem* tmpSys = tmpIt-> nextElement();326 ParticleSystem* tmpSys = tmpIt->firstElement(); 327 327 while(tmpSys) 328 328 { … … 346 346 { 347 347 tIterator<ParticleEmitter>* tmpIt = emitterList->getIterator(); 348 ParticleEmitter* tmpEmit = tmpIt-> nextElement();348 ParticleEmitter* tmpEmit = tmpIt->firstElement(); 349 349 while(tmpEmit) 350 350 { … … 369 369 int count = 0; 370 370 tIterator<ParticleEmitter>* tmpIt = emitterList->getIterator(); 371 ParticleEmitter* tmpEmit = tmpIt-> nextElement();371 ParticleEmitter* tmpEmit = tmpIt->firstElement(); 372 372 while(tmpEmit) 373 373 { … … 402 402 403 403 tIterator<ParticleConnection>* tmpConIt = connectionList->getIterator(); 404 ParticleConnection* tmpConnection = tmpConIt-> nextElement();404 ParticleConnection* tmpConnection = tmpConIt->firstElement(); 405 405 while(tmpConnection) 406 406 { … … 414 414 { 415 415 tIterator<ParticleSystem>* tmpIt = systemList->getIterator(); 416 ParticleSystem* tmpSys = tmpIt-> nextElement();416 ParticleSystem* tmpSys = tmpIt->firstElement(); 417 417 while(tmpSys) 418 418 { … … 429 429 { 430 430 tIterator<ParticleEmitter>* tmpIt = emitterList->getIterator(); 431 ParticleEmitter* tmpEmit = tmpIt-> nextElement();431 ParticleEmitter* tmpEmit = tmpIt->firstElement(); 432 432 while(tmpEmit) 433 433 { -
trunk/src/lib/physics/physics_engine.cc
r4836 r5110 52 52 { 53 53 // delete all PhysicsConnections that are still in existence 54 tIterator<PhysicsConnection>* itPC = this->connections->getIterator();55 PhysicsConnection* enumPC = itPC->nextElement();56 while (enumPC)57 {58 delete enumPC;59 enumPC = itPC->nextElement();60 }61 delete itPC;62 delete this->connections;63 64 // delete all PhysicsInterfaces, still in existence (this could be dangerous)65 tIterator<PhysicsInterface>* itPI = this->interfaces->getIterator();66 PhysicsInterface* enumPI = itPI->nextElement();67 while (enumPI)68 {69 delete enumPI;70 71 enumPI = itPI->nextElement();72 }73 delete itPI;74 delete this->interfaces;75 76 // delete all PhysicsFields, still in existence (this could be dangerous)77 tIterator<Field>* itF = this->fields->getIterator();78 Field* enumF = itF->nextElement();79 while (enumF)80 {81 delete enumF;82 83 enumF = itF->nextElement();84 }85 delete itF;86 delete this->fields;54 // tIterator<PhysicsConnection>* itPC = this->connections->getIterator(); 55 // PhysicsConnection* enumPC = itPC->firstElement(); 56 // while (enumPC) 57 // { 58 // delete enumPC; 59 // enumPC = itPC->nextElement(); 60 // } 61 // delete itPC; 62 // delete this->connections; 63 // 64 // // delete all PhysicsInterfaces, still in existence (this could be dangerous) 65 // tIterator<PhysicsInterface>* itPI = this->interfaces->getIterator(); 66 // PhysicsInterface* enumPI = itPI->firstElement(); 67 // while (enumPI) 68 // { 69 // delete enumPI; 70 // 71 // enumPI = itPI->nextElement(); 72 // } 73 // delete itPI; 74 // delete this->interfaces; 75 // 76 // // delete all PhysicsFields, still in existence (this could be dangerous) 77 // tIterator<Field>* itF = this->fields->getIterator(); 78 // Field* enumF = itF->firstElement(); 79 // while (enumF) 80 // { 81 // delete enumF; 82 // 83 // enumF = itF->nextElement(); 84 // } 85 // delete itF; 86 // delete this->fields; 87 87 88 88 … … 163 163 { 164 164 tIterator<PhysicsInterface>* tmpIt = interfaces->getIterator(); 165 PhysicsInterface* tmpInt = tmpIt-> nextElement();165 PhysicsInterface* tmpInt = tmpIt->firstElement(); 166 166 while(tmpInt) 167 167 { … … 206 206 { 207 207 tIterator<Field>* tmpIt = fields->getIterator(); 208 Field* tmpField = tmpIt-> nextElement();208 Field* tmpField = tmpIt->firstElement(); 209 209 while(tmpField) 210 210 { … … 251 251 { 252 252 tIterator<PhysicsConnection>* tmpIt = connections->getIterator(); 253 PhysicsConnection* tmpConn = tmpIt-> nextElement();253 PhysicsConnection* tmpConn = tmpIt->firstElement(); 254 254 while(tmpConn) 255 255 { … … 278 278 meaning let the fields work */ 279 279 tIterator<PhysicsConnection>* itPC = this->connections->getIterator(); 280 PhysicsConnection* enumPC = itPC-> nextElement();280 PhysicsConnection* enumPC = itPC->firstElement(); 281 281 while (enumPC) 282 282 { … … 289 289 /* actually tick all the PhysicsInterfaces. Move the objects around */ 290 290 tIterator<PhysicsInterface>* itPI = this->interfaces->getIterator(); 291 PhysicsInterface* enumPI = itPI-> nextElement();291 PhysicsInterface* enumPI = itPI->firstElement(); 292 292 while (enumPI) 293 293 { -
trunk/src/lib/physics/physics_interface.cc
r4836 r5110 68 68 69 69 tIterator<PNode>* iterator = massCalcPNode->children->getIterator(); 70 PNode* pn = iterator-> nextElement();70 PNode* pn = iterator->firstElement(); 71 71 while( pn != NULL) 72 72 { -
trunk/src/lib/sound/sound_engine.cc
r4986 r5110 215 215 { 216 216 tIterator<BaseObject>* sourceIterator = this->sourceList->getIterator(); 217 SoundSource* enumSource = (SoundSource*)sourceIterator-> nextElement();217 SoundSource* enumSource = (SoundSource*)sourceIterator->firstElement(); 218 218 while (enumSource) 219 219 { … … 228 228 { 229 229 tIterator<BaseObject>* bufferIterator = this->bufferList->getIterator(); 230 SoundBuffer* enumBuffer = (SoundBuffer*)bufferIterator-> nextElement();230 SoundBuffer* enumBuffer = (SoundBuffer*)bufferIterator->firstElement(); 231 231 while (enumBuffer) 232 232 { … … 298 298 // look if there are any sources that have the buffer still loaded 299 299 tIterator<BaseObject>* sourceIterator = this->sourceList->getIterator(); 300 SoundSource* enumSource = (SoundSource*)sourceIterator-> nextElement();300 SoundSource* enumSource = (SoundSource*)sourceIterator->firstElement(); 301 301 while (enumSource) 302 302 { … … 345 345 { 346 346 tIterator<BaseObject>* iterator = this->sourceList->getIterator(); 347 SoundSource* enumSource = (SoundSource*)iterator-> nextElement();347 SoundSource* enumSource = (SoundSource*)iterator->firstElement(); 348 348 while (enumSource) 349 349 { … … 373 373 { 374 374 tIterator<BaseObject>* bufferIterator = this->bufferList->getIterator(); 375 SoundBuffer* enumBuffer = (SoundBuffer*)bufferIterator-> nextElement();375 SoundBuffer* enumBuffer = (SoundBuffer*)bufferIterator->firstElement(); 376 376 while (enumBuffer) 377 377 { 378 378 tIterator<BaseObject>* sourceIterator = this->sourceList->getIterator(); 379 SoundSource* enumSource = (SoundSource*)sourceIterator-> nextElement();379 SoundSource* enumSource = (SoundSource*)sourceIterator->firstElement(); 380 380 while (enumSource) 381 381 { … … 401 401 { 402 402 tIterator<BaseObject>* bufferIterator = this->bufferList->getIterator(); 403 SoundBuffer* enumBuffer = (SoundBuffer*)bufferIterator-> nextElement();403 SoundBuffer* enumBuffer = (SoundBuffer*)bufferIterator->firstElement(); 404 404 while (enumBuffer) 405 405 { … … 419 419 { 420 420 tIterator<BaseObject>* Iterator = this->sourceList->getIterator(); 421 SoundSource* enumSource = (SoundSource*)Iterator-> nextElement();421 SoundSource* enumSource = (SoundSource*)Iterator->firstElement(); 422 422 while (enumSource) 423 423 { -
trunk/src/lib/util/ini_parser.cc
r5031 r5110 58 58 { 59 59 tIterator<IniSection>* sectionIt = this->sections->getIterator(); 60 IniSection* sectionEnum = sectionIt-> nextElement();60 IniSection* sectionEnum = sectionIt->firstElement(); 61 61 while (sectionEnum) 62 62 { 63 63 tIterator<IniEntry>* entryIt = sectionEnum->entries->getIterator(); 64 IniEntry* entryEnum = entryIt-> nextElement();64 IniEntry* entryEnum = entryIt->firstElement(); 65 65 while (entryEnum) 66 66 { … … 192 192 { 193 193 tIterator<IniSection>* sectionIt = this->sections->getIterator(); 194 IniSection* sectionEnum = sectionIt-> nextElement();194 IniSection* sectionEnum = sectionIt->firstElement(); 195 195 while (sectionEnum) 196 196 { … … 198 198 199 199 tIterator<IniEntry>* entryIt = sectionEnum->entries->getIterator(); 200 IniEntry* entryEnum = entryIt-> nextElement();200 IniEntry* entryEnum = entryIt->firstElement(); 201 201 while (entryEnum) 202 202 { … … 246 246 { 247 247 tIterator<IniSection>* sectionIt = this->sections->getIterator(); 248 IniSection* sectionEnum = sectionIt-> nextElement();248 IniSection* sectionEnum = sectionIt->firstElement(); 249 249 while (sectionEnum) 250 250 { … … 347 347 { 348 348 tIterator<IniSection>* sectionIt = this->sections->getIterator(); 349 IniSection* sectionEnum = sectionIt-> nextElement();349 IniSection* sectionEnum = sectionIt->firstElement(); 350 350 while (sectionEnum) 351 351 { … … 395 395 { 396 396 tIterator<IniSection>* sectionIt = this->sections->getIterator(); 397 IniSection* sectionEnum = sectionIt-> nextElement();397 IniSection* sectionEnum = sectionIt->firstElement(); 398 398 while (sectionEnum) 399 399 { … … 401 401 { 402 402 tIterator<IniEntry>* entryIt = sectionEnum->entries->getIterator(); 403 IniEntry* entryEnum = entryIt-> nextElement();403 IniEntry* entryEnum = entryIt->firstElement(); 404 404 while (entryEnum) 405 405 { … … 452 452 { 453 453 tIterator<IniSection>* sectionIt = this->sections->getIterator(); 454 IniSection* sectionEnum = sectionIt-> nextElement();454 IniSection* sectionEnum = sectionIt->firstElement(); 455 455 while (sectionEnum) 456 456 { … … 458 458 459 459 tIterator<IniEntry>* entryIt = sectionEnum->entries->getIterator(); 460 IniEntry* entryEnum = entryIt-> nextElement();460 IniEntry* entryEnum = entryIt->firstElement(); 461 461 while (entryEnum) 462 462 { -
trunk/src/lib/util/list.h
r5103 r5110 12 12 #endif 13 13 14 14 template<class T> class tIterator; 15 15 16 16 //! a list element of the tList, … … 23 23 24 24 /** 25 * an iterator class26 27 this enables the user to iterate through a list very easely28 */29 template<class T> class tIterator30 {31 public:32 tIterator(listElement<T>* startElement);33 ~tIterator();34 35 T* nextElement();36 T* seekElement(T* element);37 38 private:39 listElement<T>* currentEl; //!< pointer to the current list element in the iterator40 listElement<T>* tmpEl; //!< temp listElemnt pointer41 listElement<T>* startElement; //!< pointer to the start of the list42 };43 44 45 /**46 * iterator constructor47 * @param startElement: the first list element from the tList48 49 normaly you will use it like this:50 51 tIterator<char>* nameIterator = nameList->getIterator();52 char name* = nameIterator->nextElement();53 while( name != NULL)54 {55 PRINTF(3)("found name: %s in list\n", name);56 name = nameIterator->nextElement();57 }58 delete nameIterator;59 */60 template<class T>61 inline tIterator<T>::tIterator (listElement<T>* startElement)62 {63 this->currentEl = startElement;64 this->tmpEl = NULL;65 this->startElement = startElement;66 }67 68 69 /**70 * the destructor71 */72 template<class T>73 inline tIterator<T>::~tIterator ()74 {75 this->currentEl = NULL;76 }77 78 79 /**80 * use it to iterate through the list81 * @returns next list element82 */83 template<class T>84 inline T* tIterator<T>::nextElement ()85 {86 if( this->currentEl == NULL)87 return NULL;88 89 this->tmpEl = this->currentEl;90 this->currentEl = this->currentEl->next;91 return this->tmpEl->curr;92 }93 94 /**95 * gets the element after the selected one, sets the iterator to this point in the list96 * @param element the element to seek97 * @returns next list element98 99 Attention: if you seek an element, the iterator pointer will point to the NEXT listelement after the argument!100 */101 template<class T>102 inline T* tIterator<T>::seekElement (T* element)103 {104 for(this->tmpEl = this->startElement; this->tmpEl != NULL; this->tmpEl = this->tmpEl->next)105 {106 if( unlikely(this->tmpEl->curr == element))107 {108 if( this->tmpEl->next != NULL)109 {110 this->currentEl = this->tmpEl->next->next;111 return this->tmpEl->next->curr;112 }113 return NULL;114 }115 }116 return NULL;117 }118 119 120 121 /**122 25 * the list template class 123 26 … … 126 29 template<class T> class tList 127 30 { 31 friend class tIterator<T>; 32 128 33 public: 129 34 tList (); … … 374 279 inline tIterator<T>* tList<T>::getIterator() const 375 280 { 376 tIterator<T>* iterator = new tIterator<T>(this->first); 377 return iterator; 281 return new tIterator<T>(this); 378 282 } 379 283 … … 414 318 } 415 319 320 321 322 323 /** 324 * an iterator class 325 326 this enables the user to iterate through a list very easely 327 */ 328 template<class T> class tIterator 329 { 330 public: 331 tIterator(const tList<T>* list); 332 ~tIterator(); 333 334 T* firstElement(); 335 T* nextElement(); 336 T* seekElement(T* element); 337 338 private: 339 listElement<T>* currentEl; //!< pointer to the current list element in the iterator 340 listElement<T>* tmpEl; //!< temp listElemnt pointer 341 const tList<T>* list; //!< The List, that we want to iterate through 342 }; 343 344 345 /** 346 * iterator constructor 347 * @param startElement: the first list element from the tList 348 349 normaly you will use it like this: 350 351 tIterator<char>* nameIterator = nameList->getIterator(); 352 char name* = nameIterator->nextElement(); 353 while( name != NULL) 354 { 355 PRINTF(3)("found name: %s in list\n", name); 356 name = nameIterator->nextElement(); 357 } 358 delete nameIterator; 359 */ 360 template<class T> 361 inline tIterator<T>::tIterator (const tList<T>* list) 362 { 363 this->currentEl = list->first; 364 this->tmpEl = NULL; 365 this->list = list; 366 } 367 368 369 /** 370 * the destructor 371 */ 372 template<class T> 373 inline tIterator<T>::~tIterator () 374 { 375 this->currentEl = NULL; 376 } 377 378 template<class T> 379 inline T* tIterator<T>::firstElement () 380 { 381 this->currentEl = this->list->first; 382 if (this->currentEl == NULL) 383 return NULL; 384 else 385 return this->currentEl->curr; 386 } 387 388 389 /** 390 * use it to iterate through the list 391 * @returns next list element 392 */ 393 template<class T> 394 inline T* tIterator<T>::nextElement () 395 { 396 if( this->currentEl == NULL || this->currentEl->next == NULL) 397 { 398 this->currentEl = NULL; 399 return NULL; 400 } 401 402 this->currentEl = this->currentEl->next; 403 return this->currentEl->curr; 404 } 405 406 /** 407 * gets the element after the selected one, sets the iterator to this point in the list 408 * @param element the element to seek 409 * @returns next list element 410 411 Attention: if you seek an element, the iterator pointer will point to the NEXT listelement after the argument! 412 */ 413 template<class T> 414 inline T* tIterator<T>::seekElement (T* element) 415 { 416 for(this->tmpEl = this->list->first; this->tmpEl != NULL; this->tmpEl = this->tmpEl->next) 417 { 418 if( unlikely(this->tmpEl->curr == element)) 419 { 420 if( this->tmpEl->next != NULL) 421 { 422 this->currentEl = this->tmpEl; 423 return this->tmpEl->next->curr; 424 } 425 return NULL; 426 } 427 } 428 return NULL; 429 } 430 416 431 #endif /* _LIST_H */ -
trunk/src/story_entities/campaign.cc
r4836 r5110 154 154 */ 155 155 tIterator<StoryEntity>* it = this->entities->getIterator(); 156 se = it-> nextElement();156 se = it->firstElement(); 157 157 while( se != NULL) 158 158 { … … 284 284 285 285 tIterator<StoryEntity>* iterator = this->entities->getIterator(); 286 StoryEntity* entity = iterator-> nextElement();286 StoryEntity* entity = iterator->firstElement(); 287 287 while( entity != NULL) 288 288 { -
trunk/src/story_entities/world.cc
r5098 r5110 864 864 865 865 tIterator<WorldEntity>* iterator = this->entities->getIterator(); 866 WorldEntity* entity = iterator-> nextElement();866 WorldEntity* entity = iterator->firstElement(); 867 867 while( entity != NULL) 868 868 { … … 951 951 glLoadIdentity(); 952 952 tIterator<WorldEntity>* iterator = this->entities->getIterator(); 953 entity = iterator-> nextElement();953 entity = iterator->firstElement(); 954 954 while( entity != NULL ) 955 955 { -
trunk/src/subprojects/benchmark.cc
r4942 r5110 352 352 /*give list out */ 353 353 tIterator<char>* iterator = list->getIterator(); 354 name = iterator-> nextElement();354 name = iterator->firstElement(); 355 355 printf(" List Elements: \t\t"); 356 356 while( name != NULL) … … 373 373 /*give list out */ 374 374 iterator = list->getIterator(); 375 name = iterator-> nextElement();375 name = iterator->firstElement(); 376 376 printf(" List Elements: \t\t"); 377 377 while( name != NULL) … … 433 433 /*give list out */ 434 434 iterator = list->getIterator(); 435 name = iterator-> nextElement();435 name = iterator->firstElement(); 436 436 printf(" List Elements: \t\t"); 437 437 while( name != NULL) -
trunk/src/subprojects/collision_detection/collision_detection.cc
r5034 r5110 235 235 236 236 tIterator<WorldEntity>* iterator = entityList->getIterator(); 237 WorldEntity* entity = iterator-> nextElement();237 WorldEntity* entity = iterator->firstElement(); 238 238 while( entity != NULL) 239 239 { … … 251 251 252 252 tIterator<WorldEntity>* iterator = entityList->getIterator(); 253 WorldEntity* entity = iterator-> nextElement();253 WorldEntity* entity = iterator->firstElement(); 254 254 while( entity != NULL) 255 255 { -
trunk/src/util/animation/animation3d.cc
r5062 r5110 58 58 // delete all the KeyFrames 59 59 tIterator<KeyFrame3D>* itKF = keyFrameList->getIterator(); 60 KeyFrame3D* enumKF = itKF-> nextElement();60 KeyFrame3D* enumKF = itKF->firstElement(); 61 61 while (enumKF) 62 62 { -
trunk/src/util/animation/animation_player.cc
r4836 r5110 86 86 // deleting the Animation List AND all the elements of the List 87 87 tIterator<Animation>* animIt = this->animationList->getIterator(); 88 Animation* anim = animIt-> nextElement();88 Animation* anim = animIt->firstElement(); 89 89 while( anim != NULL) 90 90 { … … 109 109 // iterate through all the animations and tick them. 110 110 tIterator<Animation>* animIt = this->animationList->getIterator(); 111 Animation* anim = animIt-> nextElement();111 Animation* anim = animIt->firstElement(); 112 112 while( anim != NULL) 113 113 { … … 147 147 { 148 148 tIterator<Animation>* animIt = this->animationList->getIterator(); 149 Animation* anim = animIt-> nextElement();149 Animation* anim = animIt->firstElement(); 150 150 while( anim != NULL) 151 151 { … … 176 176 // Per ANIMATION DEBUG 177 177 tIterator<Animation>* animIt = this->animationList->getIterator(); 178 Animation* anim = animIt-> nextElement();178 Animation* anim = animIt->firstElement(); 179 179 while( anim != NULL) 180 180 { -
trunk/src/util/animation/t_animation.h
r5039 r5110 108 108 // delete all the KeyFrames 109 109 tIterator<KeyFrameF>* itKF = keyFrameList->getIterator(); 110 KeyFrameF* enumKF = itKF-> nextElement();110 KeyFrameF* enumKF = itKF->firstElement(); 111 111 while (enumKF) 112 112 { -
trunk/src/util/garbage_collector.cc
r4979 r5110 156 156 // 157 157 // tIterator<WorldEntity>* iterator = list->getIterator(); 158 // WorldEntity* entity = iterator-> nextElement();158 // WorldEntity* entity = iterator->firstElement(); 159 159 // while( entity != NULL) 160 160 // { -
trunk/src/util/loading/load_param.cc
r5102 r5110 295 295 296 296 tIterator<LoadParamDescription>* iterator = this->paramList->getIterator(); 297 LoadParamDescription* enumParamDesc = iterator-> nextElement();297 LoadParamDescription* enumParamDesc = iterator->firstElement(); 298 298 while (enumParamDesc) 299 299 { … … 314 314 { 315 315 tIterator<LoadClassDescription>* iterator = LoadClassDescription::classList->getIterator(); 316 LoadClassDescription* enumClassDesc = iterator-> nextElement();316 LoadClassDescription* enumClassDesc = iterator->firstElement(); 317 317 while (enumClassDesc) 318 318 { … … 336 336 { 337 337 tIterator<LoadParamDescription>* iterator = this->paramList->getIterator(); 338 LoadParamDescription* enumParamDesc = iterator-> nextElement();338 LoadParamDescription* enumParamDesc = iterator->firstElement(); 339 339 while (enumParamDesc) 340 340 { … … 362 362 PRINT(3)(" Listing all the Loadable Options (loaded since Game started).\n\n"); 363 363 tIterator<LoadClassDescription>* classIT = LoadClassDescription::classList->getIterator(); 364 LoadClassDescription* enumClassDesc = classIT-> nextElement();364 LoadClassDescription* enumClassDesc = classIT->firstElement(); 365 365 while (enumClassDesc) 366 366 { 367 367 PRINT(3)("<%s>\n", enumClassDesc->className); 368 368 tIterator<LoadParamDescription>* paramIT = enumClassDesc->paramList->getIterator(); 369 LoadParamDescription* enumParamDesc = paramIT-> nextElement();369 LoadParamDescription* enumParamDesc = paramIT->firstElement(); 370 370 while (enumParamDesc) 371 371 { … … 394 394 395 395 tIterator<LoadClassDescription>* iterator = LoadClassDescription::classList->getIterator(); 396 LoadClassDescription* enumClassDesc = iterator-> nextElement();396 LoadClassDescription* enumClassDesc = iterator->firstElement(); 397 397 while (enumClassDesc) 398 398 { … … 412 412 // { 413 413 // tIterator<LoadClassDescription>* iterator = LoadClassDescription::classList->getIterator(); 414 // LoadClassDescription* enumClassDesc = iterator-> nextElement();414 // LoadClassDescription* enumClassDesc = iterator->firstElement(); 415 415 // while (enumClassDesc) 416 416 // { -
trunk/src/util/resource_manager.cc
r5101 r5110 74 74 // deleting the Directorie Lists 75 75 tIterator<char>* tmpIt = imageDirs->getIterator(); 76 char* tmpDir = tmpIt-> nextElement();76 char* tmpDir = tmpIt->firstElement(); 77 77 while(tmpDir) 78 78 { … … 144 144 // check if the Directory has been added before 145 145 tIterator<char>* tmpImageDirs = imageDirs->getIterator(); 146 char* tmpDir = tmpImageDirs-> nextElement();146 char* tmpDir = tmpImageDirs->firstElement(); 147 147 while(tmpDir) 148 148 { … … 363 363 { 364 364 tIterator<char>* iterator = imageDirs->getIterator(); 365 tmpDir = iterator->nextElement(); 366 //tmpDir = imageDirs->enumerate(); 365 tmpDir = iterator->firstElement(); 367 366 while(tmpDir) 368 367 { … … 492 491 { 493 492 tIterator<Resource>* iterator = resourceList->getIterator(); 494 Resource* enumRes = iterator-> nextElement();493 Resource* enumRes = iterator->firstElement(); 495 494 while (enumRes) 496 495 { … … 521 520 // Resource* enumRes = resourceList->enumerate(); 522 521 tIterator<Resource>* iterator = resourceList->getIterator(); 523 Resource* enumRes = iterator-> nextElement();522 Resource* enumRes = iterator->firstElement(); 524 523 while (enumRes) 525 524 { … … 603 602 // Resource* enumRes = resourceList->enumerate(); 604 603 tIterator<Resource>* iterator = resourceList->getIterator(); 605 Resource* enumRes = iterator-> nextElement();604 Resource* enumRes = iterator->firstElement(); 606 605 while (enumRes) 607 606 { … … 799 798 PRINT(0)(" List of Image-Directories: "); 800 799 tIterator<char>* tmpIt = imageDirs->getIterator(); 801 char* tmpDir = tmpIt-> nextElement();800 char* tmpDir = tmpIt->firstElement(); 802 801 while(tmpDir) 803 802 { … … 810 809 PRINT(0)("List of all stored Resources:\n"); 811 810 tIterator<Resource>* iterator = resourceList->getIterator(); 812 Resource* enumRes = iterator-> nextElement();811 Resource* enumRes = iterator->firstElement(); 813 812 while (enumRes) 814 813 { -
trunk/src/util/shell.cc
r5108 r5110 91 91 // delete all the Chars in the Buffers 92 92 tIterator<char>* charIterator = this->buffer->getIterator(); 93 char* charElem = charIterator-> nextElement();93 char* charElem = charIterator->firstElement(); 94 94 while (charElem != NULL) 95 95 { … … 191 191 // delete all the Chars in the Buffers 192 192 tIterator<char>* charIterator = this->buffer->getIterator(); 193 char* charElem = charIterator-> nextElement();193 char* charElem = charIterator->firstElement(); 194 194 195 195 while (charElem != NULL) … … 289 289 { 290 290 tIterator<char>* charIterator = this->buffer->getIterator(); 291 char* charElem = charIterator-> nextElement();291 char* charElem = charIterator->firstElement(); 292 292 293 293 int i = 1; … … 606 606 addLength = strlen(addString); 607 607 tIterator<const char>* charIterator = stringList->getIterator(); 608 const char* charElem = charIterator-> nextElement();608 const char* charElem = charIterator->firstElement(); 609 609 while (charElem != NULL) 610 610 { … … 655 655 656 656 tIterator<const char>* iterator = inputList->getIterator(); 657 const char* enumString = iterator-> nextElement();657 const char* enumString = iterator->firstElement(); 658 658 while (enumString != NULL) 659 659 { … … 687 687 688 688 tIterator<BaseObject>* iterator = inputList->getIterator(); 689 BaseObject* enumBO = iterator-> nextElement();689 BaseObject* enumBO = iterator->firstElement(); 690 690 while (enumBO != NULL) 691 691 { -
trunk/src/util/track/track_manager.cc
r5079 r5110 79 79 { 80 80 tIterator<TrackElement>* iterator = this->children->getIterator(); 81 TrackElement* enumElem = iterator-> nextElement();81 TrackElement* enumElem = iterator->firstElement(); 82 82 while (enumElem) 83 83 { … … 104 104 { 105 105 tIterator<TrackElement>* iterator = this->children->getIterator(); 106 TrackElement* enumElem = iterator-> nextElement();106 TrackElement* enumElem = iterator->firstElement(); 107 107 TrackElement* tmpElem; 108 108 while (enumElem) … … 133 133 { 134 134 tIterator<TrackElement>* iterator = this->children->getIterator(); 135 TrackElement* enumElem = iterator-> nextElement();135 TrackElement* enumElem = iterator->firstElement(); 136 136 TrackElement* tmpElem; 137 137 while (enumElem) … … 179 179 { 180 180 tIterator<TrackElement>* iterator = this->children->getIterator(); 181 TrackElement* enumElem = iterator-> nextElement();181 TrackElement* enumElem = iterator->firstElement(); 182 182 while (enumElem) 183 183 { … … 206 206 207 207 tIterator<TrackElement>* iterator = this->children->getIterator(); 208 TrackElement* enumElem = iterator-> nextElement();208 TrackElement* enumElem = iterator->firstElement(); 209 209 for (int i = 0; i < childCount; i++) 210 210 enumElem = iterator->nextElement(); … … 234 234 //TrackElement* enumElem = this->children->enumerate(); 235 235 tIterator<TrackElement>* iterator = this->children->getIterator(); 236 TrackElement* enumElem = iterator-> nextElement();236 TrackElement* enumElem = iterator->firstElement(); 237 237 while (enumElem) 238 238 { … … 331 331 //TrackElement* enumElem = this->children->enumerate(); 332 332 tIterator<TrackElement>* iterator = this->children->getIterator(); 333 TrackElement* enumElem = iterator-> nextElement();333 TrackElement* enumElem = iterator->firstElement(); 334 334 while (enumElem) 335 335 { … … 975 975 //TrackElement* enumElem = firstJoint->children->enumerate(); 976 976 tIterator<TrackElement>* iterator = firstJoint->children->getIterator(); 977 TrackElement* enumElem = iterator-> nextElement();977 TrackElement* enumElem = iterator->firstElement(); 978 978 while (enumElem) 979 979 { … … 1001 1001 { 1002 1002 tIterator<TrackElement>* iterator = tmpElem->children->getIterator(); 1003 TrackElement* enumElem = iterator-> nextElement();1003 TrackElement* enumElem = iterator->firstElement(); 1004 1004 //TrackElement* enumElem = tmpElem->children->enumerate(); 1005 1005 while (enumElem)
Note: See TracChangeset
for help on using the changeset viewer.