zeus::TSingleLinkedList< T > Class Template Reference

#include <SingleLinkedList.hpp>

Inheritance diagram for zeus::TSingleLinkedList< T >:

zeus::IList< T > zeus::IValueType zeus::TManagedList< T >

List of all members.

Public Member Functions

 TSingleLinkedList ()
 TSingleLinkedList (const T &rEmptyItem)
 TSingleLinkedList (const TSingleLinkedList< T > &rList)
virtual ~TSingleLinkedList ()
virtual Int MQUALIFIER add (const T &rItem)
virtual Int MQUALIFIER addAll (const IList< T > &rlstItems)
virtual Int MQUALIFIER addEmptyItem ()
virtual void MQUALIFIER copyToList (IList< T > &rList) const
virtual void MQUALIFIER clear ()
virtual Retval MQUALIFIER deleteItem (Int iIndex)
virtual Retval MQUALIFIER remove (const T &rItem)
virtual Retval MQUALIFIER removeAll (const IList< T > &rlstItems)
virtual Int MQUALIFIER getCount () const
virtual T &MQUALIFIER getItem (Int iIndex)
virtual const T &MQUALIFIER getItemConst (Int iIndex) const
virtual bool MQUALIFIER equalsItem (Int iIndex, const T &rItem) const
virtual bool MQUALIFIER equals (const IList< T > &rList) const
virtual Int MQUALIFIER indexOf (const T &rItem) const
virtual Int MQUALIFIER insert (Int iIndex, const T &rItem)
virtual IListIterator< T >
*MQUALIFIER 
getIterator () const
virtual const IListIterator< T >
*MQUALIFIER 
getConstIterator () const
virtual void MQUALIFIER releaseIterator (const IListIterator< T > *pIterator) const
virtual bool MQUALIFIER isEmpty () const
virtual T &MQUALIFIER getFirstItem ()
virtual const T &MQUALIFIER getFirstItemConst () const
virtual T &MQUALIFIER getLastItem ()
virtual const T &MQUALIFIER getLastItemConst () const
virtual bool MQUALIFIER hasItem (const T &rItem) const
virtual bool MQUALIFIER hasAllItems (const IList< T > &rlstItems) const
T & operator[] (Int iIndex)
TSingleLinkedList< T > & operator= (const TSingleLinkedList< T > &rList)
bool operator== (const TSingleLinkedList< T > &rList) const
bool operator!= (const TSingleLinkedList< T > &rList) const
TSingleLinkedListElementgetHeadElement () const
T & getEmptyElement ()

Protected Member Functions

void resetAllIterators ()

Protected Attributes

m_tEmpty
 Empty element in case an error occures.

Classes

struct  TSingleLinkedListElement
class  TSingleListIterator


Detailed Description

template<class T>
class zeus::TSingleLinkedList< T >

Template class for linked lists. The class implements the abstract data type IList and implements it as a single linked list.

Constructor & Destructor Documentation

template<class T>
zeus::TSingleLinkedList< T >::TSingleLinkedList (  )  [inline]

Creates an empty list

template<class T>
zeus::TSingleLinkedList< T >::TSingleLinkedList ( const T &  rEmptyItem  )  [inline]

Creates an empty list with a special empty element. The given element will be returned if an index error occures

Parameters:
rEmptyItem : Empty element

template<class T>
zeus::TSingleLinkedList< T >::TSingleLinkedList ( const TSingleLinkedList< T > &  rList  )  [inline]

Copy constructor

Parameters:
rList : List to copy

template<class T>
zeus::TSingleLinkedList< T >::~TSingleLinkedList (  )  [inline, virtual]

Destroys the list. Objects will be destroyed as well. Pointers must be released before killing the list.


Member Function Documentation

template<class T>
Int MQUALIFIER zeus::TSingleLinkedList< T >::add ( const T &  rItem  )  [inline, virtual]

See also:
IList::add

Implements zeus::IList< T >.

template<class T>
Int MQUALIFIER zeus::TSingleLinkedList< T >::addAll ( const IList< T > &  rlstItems  )  [inline, virtual]

See also:
IList::addAll

Implements zeus::IList< T >.

template<class T>
Int MQUALIFIER zeus::TSingleLinkedList< T >::addEmptyItem (  )  [inline, virtual]

See also:
IList::addEmptyItem

Implements zeus::IList< T >.

template<class T>
void MQUALIFIER zeus::TSingleLinkedList< T >::copyToList ( IList< T > &  rList  )  const [inline, virtual]

See also:
IList::copyToList

Implements zeus::IList< T >.

template<class T>
void MQUALIFIER zeus::TSingleLinkedList< T >::clear (  )  [inline, virtual]

See also:
IList::clear

Implements zeus::IList< T >.

template<class T>
Retval MQUALIFIER zeus::TSingleLinkedList< T >::deleteItem ( Int  iIndex  )  [inline, virtual]

See also:
IList::deleteItem

Implements zeus::IList< T >.

template<class T>
Retval MQUALIFIER zeus::TSingleLinkedList< T >::remove ( const T &  rItem  )  [inline, virtual]

See also:
IList::remove

Implements zeus::IList< T >.

Reimplemented in zeus::TManagedList< T >.

template<class T>
Retval MQUALIFIER zeus::TSingleLinkedList< T >::removeAll ( const IList< T > &  rlstItems  )  [inline, virtual]

See also:
IList::removeAll

Implements zeus::IList< T >.

template<class T>
Int MQUALIFIER zeus::TSingleLinkedList< T >::getCount (  )  const [inline, virtual]

See also:
IList::getCount

Implements zeus::IList< T >.

template<class T>
T &MQUALIFIER zeus::TSingleLinkedList< T >::getItem ( Int  iIndex  )  [inline, virtual]

See also:
IList::getItem

Implements zeus::IList< T >.

template<class T>
const T &MQUALIFIER zeus::TSingleLinkedList< T >::getItemConst ( Int  iIndex  )  const [inline, virtual]

See also:
IList::getItemConst

Implements zeus::IList< T >.

template<class T>
bool MQUALIFIER zeus::TSingleLinkedList< T >::equalsItem ( Int  iIndex,
const T &  rItem 
) const [inline, virtual]

See also:
IList::equalsItem

Implements zeus::IList< T >.

Reimplemented in zeus::TManagedList< T >.

template<class T>
bool MQUALIFIER zeus::TSingleLinkedList< T >::equals ( const IList< T > &  rList  )  const [inline, virtual]

See also:
IList::equals

Implements zeus::IList< T >.

template<class T>
Int MQUALIFIER zeus::TSingleLinkedList< T >::indexOf ( const T &  rItem  )  const [inline, virtual]

See also:
IList::indexOf

Implements zeus::IList< T >.

Reimplemented in zeus::TManagedList< T >.

template<class T>
Int MQUALIFIER zeus::TSingleLinkedList< T >::insert ( Int  iIndex,
const T &  rItem 
) [inline, virtual]

See also:
IList::insert

Implements zeus::IList< T >.

template<class T>
IListIterator< T > *MQUALIFIER zeus::TSingleLinkedList< T >::getIterator (  )  const [inline, virtual]

See also:
IList::getIterator

Implements zeus::IList< T >.

template<class T>
const IListIterator< T > *MQUALIFIER zeus::TSingleLinkedList< T >::getConstIterator (  )  const [inline, virtual]

template<class T>
void MQUALIFIER zeus::TSingleLinkedList< T >::releaseIterator ( const IListIterator< T > *  pIterator  )  const [inline, virtual]

template<class T>
bool MQUALIFIER zeus::TSingleLinkedList< T >::isEmpty (  )  const [inline, virtual]

See also:
IList::isEmpty

Implements zeus::IList< T >.

template<class T>
T &MQUALIFIER zeus::TSingleLinkedList< T >::getFirstItem (  )  [inline, virtual]

See also:
IList::getFirstItem

Implements zeus::IList< T >.

template<class T>
const T &MQUALIFIER zeus::TSingleLinkedList< T >::getFirstItemConst (  )  const [inline, virtual]

template<class T>
T &MQUALIFIER zeus::TSingleLinkedList< T >::getLastItem (  )  [inline, virtual]

See also:
IList::getLastItem

Implements zeus::IList< T >.

template<class T>
const T &MQUALIFIER zeus::TSingleLinkedList< T >::getLastItemConst (  )  const [inline, virtual]

template<class T>
bool MQUALIFIER zeus::TSingleLinkedList< T >::hasItem ( const T &  rItem  )  const [inline, virtual]

See also:
IList::hasItem

Implements zeus::IList< T >.

Reimplemented in zeus::TManagedList< T >.

template<class T>
bool MQUALIFIER zeus::TSingleLinkedList< T >::hasAllItems ( const IList< T > &  rlstItems  )  const [inline, virtual]

See also:
IList::hasAllItems

Implements zeus::IList< T >.

template<class T>
T & zeus::TSingleLinkedList< T >::operator[] ( Int  iIndex  )  [inline]

Operator for selection an indexed item

Parameters:
iIndex : Index of the item
Returns:
indexed item

template<class T>
TSingleLinkedList< T > & zeus::TSingleLinkedList< T >::operator= ( const TSingleLinkedList< T > &  rList  )  [inline]

Operator to copy from a list

Parameters:
rList : List to copy
Returns:
returns the copied list

template<class T>
bool zeus::TSingleLinkedList< T >::operator== ( const TSingleLinkedList< T > &  rList  )  const [inline]

Operator to check equality of two lists

Parameters:
list : list to check
Return values:
true : Equal
false : not equal

template<class T>
bool zeus::TSingleLinkedList< T >::operator!= ( const TSingleLinkedList< T > &  rList  )  const [inline]

Checks if two list are not equal

Parameters:
rList : list to check

template<class T>
TSingleLinkedList< T >::TSingleLinkedListElement * zeus::TSingleLinkedList< T >::getHeadElement (  )  const [inline]

Gets the Headelement of the list

template<class T>
T & zeus::TSingleLinkedList< T >::getEmptyElement (  )  [inline]

Gets the Empty data element

template<class T>
void zeus::TSingleLinkedList< T >::resetAllIterators (  )  [inline, protected]

Resets all iterators


Member Data Documentation

template<class T>
T zeus::TSingleLinkedList< T >::m_tEmpty [protected]

Empty element in case an error occures.


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


Written by Benjamin Hadorn http://www.xatlantis.ch.
Last change made on Wed Oct 28 21:42:35 2009