Changeset 4574 in orxonox.OLD for orxonox/trunk
- Timestamp:
- Jun 10, 2005, 1:50:37 AM (19 years ago)
- Location:
- orxonox/trunk/src
- Files:
-
- 4 edited
Legend:
- Unmodified
- Added
- Removed
-
orxonox/trunk/src/lib/coord/p_node.cc
r4571 r4574 426 426 PNode* pn = iterator->nextElement(); 427 427 while( pn != NULL) 428 429 428 { 429 /* if this node has changed, make sure, that all children are updated also */ 430 430 if( this->bRelCoorChanged || this->bAbsCoorChanged) 431 431 pn->parentCoorChanged (); … … 436 436 pn = iterator->nextElement(); 437 437 } 438 438 delete iterator; 439 439 this->bRelCoorChanged = false; 440 440 this->bAbsCoorChanged = false; … … 446 446 /** 447 447 \brief displays some information about this pNode 448 */ 449 void PNode::debug(unsigned int depth) const 450 { 451 PRINTF(2)("PNode::debug() - absCoord: (%f, %f, %f)\n", 452 this->absCoordinate.x, 453 this->absCoordinate.y, 454 this->absCoordinate.z); 448 \param depth The deph into which to debug the children of this PNode to. 449 (0: all children will be debugged, 1: only this PNode, 2: this and direct children...) 450 \param level The n-th level of the Node we draw (this is internal and only for nice output) 451 */ 452 void PNode::debug(unsigned int depth, unsigned int level) const 453 { 454 for (unsigned int i = 0; i < level; i++) 455 PRINT(0)("|"); 456 if (this->children->getSize() > 0) 457 PRINT(0)("+"); 458 PRINT(0)("PNode(%s::%s) - absCoord: (%0.2f, %0.2f, %0.2f), relCoord(%0.2f, %0.2f, %0.2f)\n", 459 this->getClassName(), 460 this->getName(), 461 this->absCoordinate.x, 462 this->absCoordinate.y, 463 this->absCoordinate.z, 464 this->relCoordinate.x, 465 this->relCoordinate.y, 466 this->relCoordinate.z ); 467 if (depth >= 2 || depth == 0) 468 { 469 tIterator<PNode>* iterator = this->children->getIterator(); 470 //PNode* pn = this->children->enumerate (); 471 PNode* pn = iterator->nextElement(); 472 while( pn != NULL) 473 { 474 if (depth == 0) 475 pn->debug(0, level + 1); 476 else 477 pn->debug(depth - 1, level +1); 478 pn = iterator->nextElement(); 479 } 480 delete iterator; 481 } 455 482 } 456 483 -
orxonox/trunk/src/lib/coord/p_node.h
r4571 r4574 32 32 template<class T> class tList; 33 33 34 //! enumeration for the different translation-binding-types35 //typedef enum parentingMode {PNODE_LOCAL_ROTATE, PNODE_ROTATE_MOVEMENT, PNODE_ALL, PNODE_MOVEMENT, PNODE_ROTATE_AND_MOVE};36 34 // linkage modes 37 35 #define PNODE_LOCAL_ROTATE 1 //!< Rotates all the children around their centers. … … 94 92 void update (float dt); 95 93 96 void debug (unsigned int depth = 1 ) const;94 void debug (unsigned int depth = 1, unsigned int level = 0) const; 97 95 void debugDraw(float size = 1.0) const; 98 96 -
orxonox/trunk/src/lib/util/list.h
r4508 r4574 14 14 15 15 16 //! a list element of the tList, 16 //! a list element of the tList, 17 17 template<class T> struct listElement 18 18 { … … 32 32 tIterator(listElement<T>* startElement); 33 33 ~tIterator(); 34 34 35 35 T* nextElement(); 36 36 … … 45 45 \param startElement: the first list element from the tList 46 46 47 normaly you will use it like this: 47 normaly you will use it like this: 48 48 49 49 tIterator<char>* nameIterator = nameList->getIterator(); 50 char name* = nameIterator->nextElement(); 50 char name* = nameIterator->nextElement(); 51 51 while( name != NULL) 52 52 { 53 53 PRINTF(3)("found name: %s in list\n", name); 54 name = nameIterator->nextElement(); 54 name = nameIterator->nextElement(); 55 55 } 56 delete nameIterator; 57 */ 58 template<class T> 59 inline tIterator<T>::tIterator (listElement<T>* startElement) 56 delete nameIterator; 57 */ 58 template<class T> 59 inline tIterator<T>::tIterator (listElement<T>* startElement) 60 60 { 61 61 this->currentEl = startElement; … … 96 96 you will use this as a generic list for all type of objects 97 97 */ 98 template<class T> class tList 98 template<class T> class tList 99 99 { 100 100 public: … … 127 127 */ 128 128 template<class T> 129 inline tList<T>::tList () 129 inline tList<T>::tList () 130 130 { 131 131 this->first = NULL; … … 138 138 \brief the deconstructor 139 139 140 this will delete only the list. ATTENTION: the list is deleted, but the objects in the list will 140 this will delete only the list. ATTENTION: the list is deleted, but the objects in the list will 141 141 not be deleted 142 142 */ 143 143 template<class T> 144 inline tList<T>::~tList () 144 inline tList<T>::~tList () 145 145 { 146 146 this->currentEl = this->first; … … 191 191 { 192 192 if( unlikely(this->currentEl->curr == entity)) 193 { 194 195 196 197 198 199 200 201 202 203 193 { 194 if( unlikely(this->currentEl->prev == NULL)) this->first = this->currentEl->next; 195 else this->currentEl->prev->next = this->currentEl->next; 196 197 if( unlikely(this->currentEl->next == NULL)) this->last = this->currentEl->prev; 198 else this->currentEl->next->prev = this->currentEl->prev; 199 200 delete this->currentEl; 201 this->size--; 202 return; 203 } 204 204 this->currentEl = this->currentEl->next; 205 205 } … … 266 266 template<class T> 267 267 inline bool tList<T>::inList(T* entity) 268 { 268 { 269 269 // pre checks 270 270 if(this->size == 0) return false; … … 277 277 278 278 // post checks 279 if(this->currentEl == NULL) 279 if(this->currentEl == NULL) 280 280 return false; 281 281 else -
orxonox/trunk/src/story_entities/world.cc
r4571 r4574 519 519 520 520 new PhysicsConnection(testEntity, gravity); 521 522 523 NullParent::getInstance()->debug(0); 521 524 } 522 525
Note: See TracChangeset
for help on using the changeset viewer.