NL3D::CQuadTree< T >::CBaseNode Class Reference

Inheritance diagram for NL3D::CQuadTree< T >::CBaseNode:

NL3D::CQuadTree< T >::CNode

template<class T>
class NL3D::CQuadTree< T >::CBaseNode


Public Member Functions

 CBaseNode ()
void clear ()
bool isSelected ()
virtual ~CBaseNode ()

Data Fields

CBaseNodeNext
CBaseNodePrev
CBaseNodeQuadNexts [4]
CBaseNodeQuadPrevs [4]

Constructor & Destructor Documentation

template<class T>
NL3D::CQuadTree< T >::CBaseNode::CBaseNode  )  [inline]
 

Definition at line 243 of file quad_tree.h.

References NL3D::CQuadTree< T >::CBaseNode::QuadNexts, and NL3D::CQuadTree< T >::CBaseNode::QuadPrevs.

00244                 {
00245                         Prev=Next=NULL;
00246                         QuadPrevs[0]= QuadPrevs[1]= QuadPrevs[2]= QuadPrevs[3]= NULL;
00247                         QuadNexts[0]= QuadNexts[1]= QuadNexts[2]= QuadNexts[3]= NULL;
00248                 }

template<class T>
virtual NL3D::CQuadTree< T >::CBaseNode::~CBaseNode  )  [inline, virtual]
 

Definition at line 249 of file quad_tree.h.

00249 {}              // Empty destructor, but declare it as virtual...


Member Function Documentation

template<class T>
void NL3D::CQuadTree< T >::CBaseNode::clear void   )  [inline]
 

Definition at line 250 of file quad_tree.h.

References NL3D::CQuadTree< T >::CBaseNode::Next, nlassert, NL3D::CQuadTree< T >::CBaseNode::Prev, NL3D::CQuadTree< T >::CBaseNode::QuadNexts, NL3D::CQuadTree< T >::CBaseNode::QuadPrevs, and uint.

Referenced by NL3D::CQuadTree< T >::CQuadNode::clear(), and NL3D::CQuadTree< T >::erase().

00251                 {
00252                         // On le retire de la selection.
00253                         if(Prev)        Prev->Next= Next;
00254                         if(Next)        Next->Prev= Prev;
00255                         Prev=Next=NULL;
00256                         // On le retire des listes dans les quads.
00257                         for(uint i=0;i<4;i++)
00258                         {
00259                                 if(QuadPrevs[i])        {nlassert(QuadPrevs[i]->QuadNexts[i]==this); QuadPrevs[i]->QuadNexts[i]= QuadNexts[i];}
00260                                 if(QuadNexts[i])        {nlassert(QuadNexts[i]->QuadPrevs[i]==this); QuadNexts[i]->QuadPrevs[i]= QuadPrevs[i];}
00261                                 QuadPrevs[i]=NULL;
00262                                 QuadNexts[i]=NULL;
00263                         }
00264                 }

template<class T>
bool NL3D::CQuadTree< T >::CBaseNode::isSelected  )  [inline]
 

Definition at line 265 of file quad_tree.h.

Referenced by NL3D::CQuadTree< T >::CQuadNode::selectLocalNodes().

00266                 {
00267                         return Prev!=NULL;
00268                 }


Field Documentation

template<class T>
CBaseNode * NL3D::CQuadTree< T >::CBaseNode::Next
 

Definition at line 236 of file quad_tree.h.

Referenced by NL3D::CQuadTree< T >::begin(), NL3D::CQuadTree< T >::clear(), NL3D::CQuadTree< T >::CBaseNode::clear(), NL3D::CQuadTree< T >::clearSelection(), NL3D::CQuadTree< T >::CQuadTree(), NL3D::CQuadTree< T >::CIterator::operator++(), NL3D::CQuadTree< T >::const_iterator::operator++(), and NL3D::CQuadTree< T >::CQuadNode::selectLocalNodes().

template<class T>
CBaseNode* NL3D::CQuadTree< T >::CBaseNode::Prev
 

Definition at line 236 of file quad_tree.h.

Referenced by NL3D::CQuadTree< T >::CBaseNode::clear(), NL3D::CQuadTree< T >::clearSelection(), NL3D::CQuadTree< T >::CIterator::operator--(), NL3D::CQuadTree< T >::const_iterator::operator--(), and NL3D::CQuadTree< T >::CQuadNode::selectLocalNodes().

template<class T>
CBaseNode* NL3D::CQuadTree< T >::CBaseNode::QuadNexts[4]
 

Definition at line 239 of file quad_tree.h.

Referenced by NL3D::CQuadTree< T >::CQuadNode::addElement(), NL3D::CQuadTree< T >::CBaseNode::CBaseNode(), NL3D::CQuadTree< T >::CQuadNode::clear(), NL3D::CQuadTree< T >::CBaseNode::clear(), and NL3D::CQuadTree< T >::CQuadNode::selectLocalNodes().

template<class T>
CBaseNode* NL3D::CQuadTree< T >::CBaseNode::QuadPrevs[4]
 

Definition at line 238 of file quad_tree.h.

Referenced by NL3D::CQuadTree< T >::CQuadNode::addElement(), NL3D::CQuadTree< T >::CBaseNode::CBaseNode(), and NL3D::CQuadTree< T >::CBaseNode::clear().


The documentation for this class was generated from the following file:
Generated on Tue Mar 16 07:36:03 2004 for NeL by doxygen 1.3.6