OpenBarnyard
 
Loading...
Searching...
No Matches
T2SList< T, Unknown > Class Template Reference

#include <T2SList.h>

Inheritance diagram for T2SList< T, Unknown >:
T2GenericSList

Classes

class  Node
 

Public Member Functions

 T2_DEFINE_ITERATOR_FRIEND ()
 
 T2_DEFINE_ITERATOR (T, T2GenericSList::Node)
 
 T2SList ()
 
 ~T2SList ()
 
void Delete (Iterator iter)
 
void DeleteAll ()
 
Iterator Begin () const
 
Iterator RBegin () const
 
Iterator End () const
 
Iterator REnd () const
 
Iterator Head () const
 
Iterator Back () const
 
Iterator FindNodeBefore (Iterator a_Node)
 
Iterator PopBack ()
 
Iterator PopFront ()
 
Iterator Erase (Iterator a_Iterator)
 
Iterator Erase (Iterator a_From, Iterator a_To)
 
Iterator Transfer (Node *a_pNode, T2GenericSList &a_rList)
 
- Public Member Functions inherited from T2GenericSList
 T2GenericSList ()=default
 
 ~T2GenericSList ()=default
 
void Reset ()
 
NodeBegin () const
 
NodeRBegin () const
 
NodeEnd () const
 
NodeREnd () const
 
TBOOL IsLinked () const
 
TBOOL IsEmpty () const
 
NodeBack () const
 
NodeFindNodeBefore (Node *a_pNode)
 
void PushBack (Node *a_pNode)
 
void PushFront (Node *a_pNode)
 
NodePopBack ()
 
NodePopFront ()
 
NodeErase (Node *a_pFrom, Node *a_pTo)
 
void Clear ()
 
TUINT Size () const
 
NodeTransfer (Node *a_pNode, T2GenericSList &a_rList)
 

Detailed Description

template<class T, TINT Unknown = 0>
class T2SList< T, Unknown >

Definition at line 206 of file T2SList.h.

Constructor & Destructor Documentation

◆ T2SList()

template<class T, TINT Unknown = 0>
T2SList< T, Unknown >::T2SList ( )
inline

Definition at line 228 of file T2SList.h.

228{}

◆ ~T2SList()

template<class T, TINT Unknown = 0>
T2SList< T, Unknown >::~T2SList ( )
inline

Definition at line 229 of file T2SList.h.

229{ Clear(); }
void Clear()
Definition T2SList.h:156

Member Function Documentation

◆ Back()

template<class T, TINT Unknown = 0>
Iterator T2SList< T, Unknown >::Back ( ) const
inline

Definition at line 252 of file T2SList.h.

252{ return T2GenericSList::Back(); }
Node * Back() const
Definition T2SList.h:87

◆ Begin()

template<class T, TINT Unknown = 0>
Iterator T2SList< T, Unknown >::Begin ( ) const
inline

Definition at line 245 of file T2SList.h.

245{ return T2GenericSList::Begin(); }
Node * Begin() const
Definition T2SList.h:57

◆ Delete()

template<class T, TINT Unknown = 0>
void T2SList< T, Unknown >::Delete ( Iterator iter)
inline

Definition at line 231 of file T2SList.h.

232 {
233 iter->Remove();
234 delete TSTATICCAST( T, iter );
235 }
#define TSTATICCAST(POINTERTYPE, VALUE)
Definition Defines.h:69

◆ DeleteAll()

template<class T, TINT Unknown = 0>
void T2SList< T, Unknown >::DeleteAll ( )
inline

Definition at line 237 of file T2SList.h.

238 {
239 while ( Begin() != End() )
240 {
241 Delete( Begin() );
242 }
243 }
Iterator End() const
Definition T2SList.h:248
void Delete(Iterator iter)
Definition T2SList.h:231
Iterator Begin() const
Definition T2SList.h:245

◆ End()

template<class T, TINT Unknown = 0>
Iterator T2SList< T, Unknown >::End ( ) const
inline

Definition at line 248 of file T2SList.h.

248{ return T2GenericSList::End(); }
Node * End() const
Definition T2SList.h:67

◆ Erase() [1/2]

template<class T, TINT Unknown = 0>
Iterator T2SList< T, Unknown >::Erase ( Iterator a_From,
Iterator a_To )
inline

Definition at line 260 of file T2SList.h.

260{ return T2GenericSList::Erase( a_From, a_To ); }
Node * Erase(Node *a_pFrom, Node *a_pTo)
Definition T2SList.h:141

◆ Erase() [2/2]

template<class T, TINT Unknown = 0>
Iterator T2SList< T, Unknown >::Erase ( Iterator a_Iterator)
inline

Definition at line 259 of file T2SList.h.

259{ return T2GenericSList::Erase( a_Iterator, a_Iterator.Next() ); }

◆ FindNodeBefore()

template<class T, TINT Unknown = 0>
Iterator T2SList< T, Unknown >::FindNodeBefore ( Iterator a_Node)
inline

Definition at line 254 of file T2SList.h.

Node * FindNodeBefore(Node *a_pNode)
Definition T2SList.h:99

◆ Head()

template<class T, TINT Unknown = 0>
Iterator T2SList< T, Unknown >::Head ( ) const
inline

Definition at line 251 of file T2SList.h.

251{ return T2GenericSList::Begin(); }

◆ PopBack()

template<class T, TINT Unknown = 0>
Iterator T2SList< T, Unknown >::PopBack ( )
inline

Definition at line 256 of file T2SList.h.

256{ return T2GenericSList::PopBack(); }
Node * PopBack()
Definition T2SList.h:122

◆ PopFront()

template<class T, TINT Unknown = 0>
Iterator T2SList< T, Unknown >::PopFront ( )
inline

Definition at line 257 of file T2SList.h.

257{ return T2GenericSList::PopFront(); }
Node * PopFront()
Definition T2SList.h:133

◆ RBegin()

template<class T, TINT Unknown = 0>
Iterator T2SList< T, Unknown >::RBegin ( ) const
inline

Definition at line 246 of file T2SList.h.

246{ return T2GenericSList::RBegin(); }
Node * RBegin() const
Definition T2SList.h:62

◆ REnd()

template<class T, TINT Unknown = 0>
Iterator T2SList< T, Unknown >::REnd ( ) const
inline

Definition at line 249 of file T2SList.h.

249{ return T2GenericSList::REnd(); }
Node * REnd() const
Definition T2SList.h:72

◆ T2_DEFINE_ITERATOR()

template<class T, TINT Unknown = 0>
T2SList< T, Unknown >::T2_DEFINE_ITERATOR ( T ,
T2GenericSList::Node  )

◆ T2_DEFINE_ITERATOR_FRIEND()

template<class T, TINT Unknown = 0>
T2SList< T, Unknown >::T2_DEFINE_ITERATOR_FRIEND ( )

◆ Transfer()

template<class T, TINT Unknown = 0>
Iterator T2SList< T, Unknown >::Transfer ( Node * a_pNode,
T2GenericSList & a_rList )
inline

Definition at line 261 of file T2SList.h.

Node * Transfer(Node *a_pNode, T2GenericSList &a_rList)
Definition T2SList.h:182

The documentation for this class was generated from the following file: