 |
OpenNI 1.5.7
|
Go to the documentation of this file.
83 template<
class T,
class TAlloc = XnLinkedNodeDefaultAllocatorT<T> >
268 for (ConstIterator it = other.
Begin(); it != other.
End(); ++it)
293 ConstIterator
Begin()
const
295 return ConstIterator(const_cast<LinkedNode*>(
m_anchor.
pNext));
309 ConstIterator
End()
const
311 return ConstIterator(const_cast<LinkedNode*>(&
m_anchor));
327 return ConstIterator(const_cast<LinkedNode*>(
m_anchor.
pPrev));
343 return ConstIterator(const_cast<LinkedNode*>(&
m_anchor));
359 return XN_STATUS_ILLEGAL_POSITION;
378 return XN_STATUS_ILLEGAL_POSITION;
381 return InsertAfter(where.m_pCurrent->pPrev, value);
415 ConstIterator
Find(T
const& value)
const
417 ConstIterator iter =
Begin();
418 for (; iter !=
End(); ++iter)
433 Iterator
Find(T
const& value)
435 ConstIterator iter =
const_cast<const XnListT<T>*
>(
this)->
Find(value);
436 return Iterator(iter.m_pCurrent);
451 return XN_STATUS_ILLEGAL_POSITION;
463 TAlloc::Deallocate(pToRemove);
477 ConstIterator it =
Find(value);
484 return XN_STATUS_NO_MATCH;
510 XnUInt32
Size()
const
521 void CopyTo(T* pArray)
const
523 XN_ASSERT(pArray != NULL);
526 for (ConstIterator iter =
Begin(); iter !=
End(); ++iter, ++i)
545 if (pNewNode == NULL)
548 return XN_STATUS_ALLOC_FAILED;
550 pNewNode->pPrev = pAfter;
551 pNewNode->pNext = pAfter->pNext;
554 pAfter->pNext->pPrev = pNewNode;
555 pAfter->pNext = pNewNode;
576 #endif // _XNLISTT_H_
T TValue
Definition: XnListT.h:87
XnStatus Clear()
Definition: XnListT.h:490
ConstIterator()
Definition: XnListT.h:96
Iterator End()
Definition: XnListT.h:300
ConstIterator & operator++()
Definition: XnListT.h:105
struct XnLinkedNodeT< T > * pNext
Definition: XnListT.h:64
XnLinkedNodeT< T > LinkedNode
Definition: XnListT.h:86
#define XN_STATUS_OK
Definition: XnStatus.h:35
XnStatus Remove(ConstIterator where)
Definition: XnListT.h:445
T const & operator*() const
Definition: XnListT.h:163
ConstIterator & operator--()
Definition: XnListT.h:124
Iterator & operator++()
Definition: XnListT.h:198
XnUInt32 XnStatus
Definition: XnStatus.h:32
ConstIterator Find(T const &value) const
Definition: XnListT.h:414
Iterator & operator--()
Definition: XnListT.h:217
XnLinkedNodeT< T > LinkedNode
Definition: XnListT.h:62
#define XN_NEW(type,...)
Definition: XnOS.h:328
static LinkedNode * Allocate(T const &value)
Definition: XnListT.h:64
XnStatus InsertAfter(LinkedNode *pAfter, T const &val)
Definition: XnListT.h:540
TAlloc TAllocator
Definition: XnListT.h:88
T value
Definition: XnListT.h:65
~XnListT()
Definition: XnListT.h:276
struct XnLinkedNodeT< T > * pPrev
Definition: XnListT.h:63
XnListT & operator=(const XnListT &other)
Definition: XnListT.h:261
T const * operator->() const
Definition: XnListT.h:171
XnListT()
Definition: XnListT.h:250
XnBool operator!=(const ConstIterator &other) const
Definition: XnListT.h:155
static void Deallocate(LinkedNode *pNode)
Definition: XnListT.h:69
Iterator ReverseEnd()
Definition: XnListT.h:332
XnStatus AddBefore(ConstIterator where, T const &value)
Definition: XnListT.h:373
XnBool operator==(const ConstIterator &other) const
Definition: XnListT.h:145
XnStatus AddLast(T const &value)
Definition: XnListT.h:402
T & operator*() const
Definition: XnListT.h:235
XnBool IsEmpty() const
Definition: XnListT.h:501
LinkedNode * m_pCurrent
Definition: XnListT.h:180
LinkedNode m_anchor
Definition: XnListT.h:562
void CopyTo(T *pArray) const
Definition: XnListT.h:520
XnUInt32 Size() const
Definition: XnListT.h:509
#define XN_DELETE(p)
Definition: XnOS.h:338
XnUInt32 m_nSize
Definition: XnListT.h:564
XnLinkedNodeT()
Definition: XnListT.h:60
Iterator ReverseBegin()
Definition: XnListT.h:316
T * operator->() const
Definition: XnListT.h:243
Iterator()
Definition: XnListT.h:189
Definition: XnListT.h:186
Iterator Begin()
Definition: XnListT.h:284
XnStatus AddAfter(ConstIterator where, T const &value)
Definition: XnListT.h:354
XnStatus AddFirst(T const &value)
Definition: XnListT.h:390