#include <fast_ptr_list.h>
Inheritance diagram for NL3D::CFastPtrList< T >:

Nevrax France
Definition at line 120 of file fast_ptr_list.h.
Public Member Functions | |
| T ** | begin () |
| Get the head on the array of elements. NULL if none. | |
| CFastPtrList () | |
| Constructor. | |
| void | clear () |
| clear the list | |
| bool | empty () const |
| void | erase (CFastPtrListNode *node) |
| erase an element in the list through its Node, unlinking older if necessary | |
| void | insert (void *element, CFastPtrListNode *node) |
| insert an element in the list through its Node, unlinking older if necessary | |
| void | insert (T *element, CFastPtrListNode *node) |
| insert an element in the list through its Node, unlinking older if necessary | |
| uint | size () const |
| get the number of elements | |
| ~CFastPtrList () | |
|
|||||||||
|
Constructor.
Definition at line 124 of file fast_ptr_list.h.
00124 {}
|
|
|||||||||
|
Definition at line 125 of file fast_ptr_list.h.
00125 {}
|
|
|||||||||
|
Get the head on the array of elements. NULL if none.
Reimplemented from NL3D::CFastPtrListBase. Definition at line 133 of file fast_ptr_list.h. Referenced by NL3D::CQuadGridClipManager::traverseClip().
00133 {return (T**)CFastPtrListBase::begin();}
|
|
|||||||||
|
clear the list
Reimplemented from NL3D::CFastPtrListBase. Definition at line 139 of file fast_ptr_list.h.
00139 {CFastPtrListBase::clear();}
|
|
|||||||||
|
Reimplemented from NL3D::CFastPtrListBase. Definition at line 136 of file fast_ptr_list.h.
00136 {return CFastPtrListBase::empty();}
|
|
||||||||||
|
erase an element in the list through its Node, unlinking older if necessary
Reimplemented from NL3D::CFastPtrListBase. Definition at line 130 of file fast_ptr_list.h.
00130 {CFastPtrListBase::erase(node);}
|
|
||||||||||||
|
insert an element in the list through its Node, unlinking older if necessary
Definition at line 67 of file fast_ptr_list.cpp. References NL3D::CFastPtrListBase::_Elements, NL3D::CFastPtrListNode::_IndexInOwner, NL3D::CFastPtrListBase::_Nodes, NL3D::CFastPtrListNode::_Owner, nlassert, and NL3D::CFastPtrListNode::unlink().
00068 {
00069 nlassert(element);
00070 nlassert(node);
00071
00072 // if this node is already linked to me, no-op!
00073 if(node->_Owner==this)
00074 return;
00075
00076 // first unlink the node from its older list if any.
00077 node->unlink();
00078
00079 // then add the elements to the list, and update node info
00080 _Elements.push_back(element);
00081 _Nodes.push_back(node);
00082 node->_Owner= this;
00083 node->_IndexInOwner= _Nodes.size()-1;
00084 }
|
|
||||||||||||||||
|
insert an element in the list through its Node, unlinking older if necessary
Definition at line 128 of file fast_ptr_list.h. Referenced by NL3D::CQuadGridClipManager::linkModel().
00128 {CFastPtrListBase::insert(element, node);}
|
|
|||||||||
|
get the number of elements
Reimplemented from NL3D::CFastPtrListBase. Definition at line 135 of file fast_ptr_list.h. Referenced by NL3D::CQuadGridClipManager::traverseClip().
00135 {return CFastPtrListBase::size();}
|
1.3.6