63 template<
class T,
class TAlloc = XnLinkedNodeDefaultAllocatorT<T> >
248 for (ConstIterator it = other.
Begin(); it != other.
End(); ++it)
275 return ConstIterator(const_cast<LinkedNode*>(
m_anchor.
pNext));
291 return ConstIterator(const_cast<LinkedNode*>(&
m_anchor));
307 return ConstIterator(const_cast<LinkedNode*>(
m_anchor.
pPrev));
323 return ConstIterator(const_cast<LinkedNode*>(&
m_anchor));
339 return XN_STATUS_ILLEGAL_POSITION;
358 return XN_STATUS_ILLEGAL_POSITION;
361 return InsertAfter(where.m_pCurrent->pPrev, value);
395 ConstIterator
Find(T
const& value)
const
397 ConstIterator iter =
Begin();
398 for (; iter !=
End(); ++iter)
415 ConstIterator iter =
const_cast<const XnListT<T>*
>(
this)->
Find(value);
416 return Iterator(iter.m_pCurrent);
431 return XN_STATUS_ILLEGAL_POSITION;
443 TAlloc::Deallocate(pToRemove);
457 ConstIterator it =
Find(value);
464 return XN_STATUS_NO_MATCH;
503 XN_ASSERT(pArray != NULL);
506 for (ConstIterator iter =
Begin(); iter !=
End(); ++iter, ++i)
525 if (pNewNode == NULL)
528 return XN_STATUS_ALLOC_FAILED;
530 pNewNode->
pPrev = pAfter;
535 pAfter->
pNext = pNewNode;
556 #endif // _XNLISTT_H_