ZeusBase-Library  2.0.4
zeus::IList< T > Class Template Referenceabstract

#include <IList.hpp>

Inheritance diagram for zeus::IList< T >:
zeus::IValueType zeus::IArray< T > zeus::TAtomicLinkedList< T > zeus::TSingleLinkedList< T > zeus::TStringList zeus::TArrayList< T >

Public Member Functions

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

Friends

class TZVariant
 

Detailed Description

template<class T>
class zeus::IList< T >

Abstakter Datentyp Liste. Das Interface IStList beschreibt das Verhalten der Liste.

Member Function Documentation

§ add()

template<class T>
virtual Int MQUALIFIER zeus::IList< T >::add ( const T &  rItem)
pure virtual

Adds an element to the list.

Precondition
no precondition
Postcondition
newSize = oldSize + 1 and element rItem on the place [Length-1]
Before: e0, e1, e2 ... en
After: e0, e1, e2 ... en, rItem
Parameters
rItem: Item to add
Returns
Position of the added item

Implemented in zeus::TArrayList< T >, zeus::TArrayList< zeus::IZVariant *>, zeus::TArrayList< TypeRegFunction >, zeus::TArrayList< char >, zeus::TArrayList< TypeClassRegistry >, zeus::TManagedList< T >, zeus::TManagedList< zeus::IXSynchronAction >, zeus::TSingleLinkedList< T >, zeus::TSingleLinkedList< zeus::ISerializable *>, zeus::TSingleLinkedList< TAutoPtr< T > >, zeus::TSingleLinkedList< zeus::IRemoteMethodCall *>, zeus::TSingleLinkedList< zeus::IXProcTarget *>, zeus::TSingleLinkedList< Uint16 >, zeus::TSingleLinkedList< TKeyType >, zeus::TSingleLinkedList< zeus::TTimerEventGroupContainer *>, zeus::TSingleLinkedList< zeus::TProperty *>, zeus::TSingleLinkedList< zeus::TZippedFileEntry *>, zeus::TSingleLinkedList< TAutoPtr< zeus::IXSynchronAction > >, zeus::TSingleLinkedList< Int >, zeus::TSingleLinkedList< zeus::TEMailAddress >, zeus::TSingleLinkedList< zeus::TypGUID >, zeus::TSingleLinkedList< TValueType >, zeus::TSingleLinkedList< zeus::IFileSystemWatcherObserver *>, zeus::TSingleLinkedList< zeus::INotifyObserver *>, zeus::TSingleLinkedList< zeus::TAbstractSkel::TClientHandlerThread *>, zeus::TSingleLinkedList< zeus::IXObject *>, zeus::TSingleLinkedList< zeus::TString >, zeus::TSingleLinkedList< zeus::TTimerEvent *>, zeus::TSingleLinkedList< zeus::IPeerFinderObserver *>, zeus::TAtomicLinkedList< T >, and zeus::TValueTypeList< T, I >.

§ addAll()

template<class T>
virtual Int MQUALIFIER zeus::IList< T >::addAll ( const IList< T > &  rlstItems)
pure virtual

§ addEmptyItem()

§ clear()

template<class T>
virtual void MQUALIFIER zeus::IList< T >::clear ( )
pure virtual

§ copyToList()

template<class T>
virtual void MQUALIFIER zeus::IList< T >::copyToList ( IList< T > &  rList) const
pure virtual

§ deleteItem()

template<class T>
virtual Retval MQUALIFIER zeus::IList< T >::deleteItem ( Int  iIndex)
pure virtual

Removes an element out of the list

Precondition
iIndex >= 0 and iIndex < Size
Postcondition
newSize = oldSize - 1 and the Element[iIndex] was before at the place lIndex + 1
Before: e0, e1, ... iIndex, iIndex+1 ... en
After: e0, e1, ... iIndex+1, iIndex+2 ... en
Parameters
iIndex: Index of the element to remove
Return values
RET_NOERROR: Element removed
RET_REQUEST_FAILEDCould not remove element

Implemented in zeus::TArrayList< T >, zeus::TArrayList< zeus::IZVariant *>, zeus::TArrayList< TypeRegFunction >, zeus::TArrayList< char >, zeus::TArrayList< TypeClassRegistry >, zeus::TSingleLinkedList< T >, zeus::TSingleLinkedList< zeus::ISerializable *>, zeus::TSingleLinkedList< TAutoPtr< T > >, zeus::TSingleLinkedList< zeus::IRemoteMethodCall *>, zeus::TSingleLinkedList< zeus::IXProcTarget *>, zeus::TSingleLinkedList< Uint16 >, zeus::TSingleLinkedList< TKeyType >, zeus::TSingleLinkedList< zeus::TTimerEventGroupContainer *>, zeus::TSingleLinkedList< zeus::TProperty *>, zeus::TSingleLinkedList< zeus::TZippedFileEntry *>, zeus::TSingleLinkedList< TAutoPtr< zeus::IXSynchronAction > >, zeus::TSingleLinkedList< Int >, zeus::TSingleLinkedList< zeus::TEMailAddress >, zeus::TSingleLinkedList< zeus::TypGUID >, zeus::TSingleLinkedList< TValueType >, zeus::TSingleLinkedList< zeus::IFileSystemWatcherObserver *>, zeus::TSingleLinkedList< zeus::INotifyObserver *>, zeus::TSingleLinkedList< zeus::TAbstractSkel::TClientHandlerThread *>, zeus::TSingleLinkedList< zeus::IXObject *>, zeus::TSingleLinkedList< zeus::TString >, zeus::TSingleLinkedList< zeus::TTimerEvent *>, zeus::TSingleLinkedList< zeus::IPeerFinderObserver *>, zeus::TAtomicLinkedList< T >, zeus::TStringList, and zeus::TValueTypeList< T, I >.

§ equals()

template<class T>
virtual bool MQUALIFIER zeus::IList< T >::equals ( const IList< T > &  rList) const
pure virtual

§ equalsItem()

template<class T>
virtual bool MQUALIFIER zeus::IList< T >::equalsItem ( Int  iIndex,
const T &  rItem 
) const
pure virtual

§ getConstIterator()

template<class T>
virtual const IListIterator<T>* MQUALIFIER zeus::IList< T >::getConstIterator ( ) const
pure virtual

Returns the const iterator of this list object. This iterator is used to traverse the list. The iterator will be allocated inside this method and must be released through the method releaseIterator(). Its possible to use the method as nested calls. The order of the releasing doesn't has to mach the getIterator() calls.

Returns
pointer to a allocated iterator.

Implemented in zeus::TArrayList< T >, zeus::TArrayList< zeus::IZVariant *>, zeus::TArrayList< TypeRegFunction >, zeus::TArrayList< char >, zeus::TArrayList< TypeClassRegistry >, zeus::TSingleLinkedList< T >, zeus::TSingleLinkedList< zeus::ISerializable *>, zeus::TSingleLinkedList< TAutoPtr< T > >, zeus::TSingleLinkedList< zeus::IRemoteMethodCall *>, zeus::TSingleLinkedList< zeus::IXProcTarget *>, zeus::TSingleLinkedList< Uint16 >, zeus::TSingleLinkedList< TKeyType >, zeus::TSingleLinkedList< zeus::TTimerEventGroupContainer *>, zeus::TSingleLinkedList< zeus::TProperty *>, zeus::TSingleLinkedList< zeus::TZippedFileEntry *>, zeus::TSingleLinkedList< TAutoPtr< zeus::IXSynchronAction > >, zeus::TSingleLinkedList< Int >, zeus::TSingleLinkedList< zeus::TEMailAddress >, zeus::TSingleLinkedList< zeus::TypGUID >, zeus::TSingleLinkedList< TValueType >, zeus::TSingleLinkedList< zeus::IFileSystemWatcherObserver *>, zeus::TSingleLinkedList< zeus::INotifyObserver *>, zeus::TSingleLinkedList< zeus::TAbstractSkel::TClientHandlerThread *>, zeus::TSingleLinkedList< zeus::IXObject *>, zeus::TSingleLinkedList< zeus::TString >, zeus::TSingleLinkedList< zeus::TTimerEvent *>, zeus::TSingleLinkedList< zeus::IPeerFinderObserver *>, zeus::TAtomicLinkedList< T >, zeus::TStringList, and zeus::TValueTypeList< T, I >.

§ getCount()

template<class T>
virtual Int MQUALIFIER zeus::IList< T >::getCount ( ) const
pure virtual

Returns the number of items

Returns
number of items

Implemented in zeus::TArrayList< T >, zeus::TArrayList< zeus::IZVariant *>, zeus::TArrayList< TypeRegFunction >, zeus::TArrayList< char >, zeus::TArrayList< TypeClassRegistry >, zeus::IArray< T >, zeus::IArray< TypeRegFunction >, zeus::IArray< zeus::IZVariant * >, zeus::IArray< char >, zeus::IArray< TypeClassRegistry >, zeus::TSingleLinkedList< T >, zeus::TSingleLinkedList< zeus::ISerializable *>, zeus::TSingleLinkedList< TAutoPtr< T > >, zeus::TSingleLinkedList< zeus::IRemoteMethodCall *>, zeus::TSingleLinkedList< zeus::IXProcTarget *>, zeus::TSingleLinkedList< Uint16 >, zeus::TSingleLinkedList< TKeyType >, zeus::TSingleLinkedList< zeus::TTimerEventGroupContainer *>, zeus::TSingleLinkedList< zeus::TProperty *>, zeus::TSingleLinkedList< zeus::TZippedFileEntry *>, zeus::TSingleLinkedList< TAutoPtr< zeus::IXSynchronAction > >, zeus::TSingleLinkedList< Int >, zeus::TSingleLinkedList< zeus::TEMailAddress >, zeus::TSingleLinkedList< zeus::TypGUID >, zeus::TSingleLinkedList< TValueType >, zeus::TSingleLinkedList< zeus::IFileSystemWatcherObserver *>, zeus::TSingleLinkedList< zeus::INotifyObserver *>, zeus::TSingleLinkedList< zeus::TAbstractSkel::TClientHandlerThread *>, zeus::TSingleLinkedList< zeus::IXObject *>, zeus::TSingleLinkedList< zeus::TString >, zeus::TSingleLinkedList< zeus::TTimerEvent *>, zeus::TSingleLinkedList< zeus::IPeerFinderObserver *>, zeus::TAtomicLinkedList< T >, zeus::TStringList, and zeus::TValueTypeList< T, I >.

§ getFirstItem()

§ getFirstItemConst()

template<class T>
virtual const T& MQUALIFIER zeus::IList< T >::getFirstItemConst ( ) const
pure virtual

§ getItem()

template<class T>
virtual T& MQUALIFIER zeus::IList< T >::getItem ( Int  iIndex)
pure virtual

Returns the indexed item at position iIndex

Precondition
iIndex >= 0 und iIndex < Size
Postcondition
no changes on the list
Parameters
iIndex: Index of requested item
Return values
Emptyelement : Could not find the item at iIndex
Element[iIndex]: item at [iIndex]

Implemented in zeus::TArrayList< T >, zeus::TArrayList< zeus::IZVariant *>, zeus::TArrayList< TypeRegFunction >, zeus::TArrayList< char >, zeus::TArrayList< TypeClassRegistry >, zeus::TSingleLinkedList< T >, zeus::TSingleLinkedList< zeus::ISerializable *>, zeus::TSingleLinkedList< TAutoPtr< T > >, zeus::TSingleLinkedList< zeus::IRemoteMethodCall *>, zeus::TSingleLinkedList< zeus::IXProcTarget *>, zeus::TSingleLinkedList< Uint16 >, zeus::TSingleLinkedList< TKeyType >, zeus::TSingleLinkedList< zeus::TTimerEventGroupContainer *>, zeus::TSingleLinkedList< zeus::TProperty *>, zeus::TSingleLinkedList< zeus::TZippedFileEntry *>, zeus::TSingleLinkedList< TAutoPtr< zeus::IXSynchronAction > >, zeus::TSingleLinkedList< Int >, zeus::TSingleLinkedList< zeus::TEMailAddress >, zeus::TSingleLinkedList< zeus::TypGUID >, zeus::TSingleLinkedList< TValueType >, zeus::TSingleLinkedList< zeus::IFileSystemWatcherObserver *>, zeus::TSingleLinkedList< zeus::INotifyObserver *>, zeus::TSingleLinkedList< zeus::TAbstractSkel::TClientHandlerThread *>, zeus::TSingleLinkedList< zeus::IXObject *>, zeus::TSingleLinkedList< zeus::TString >, zeus::TSingleLinkedList< zeus::TTimerEvent *>, zeus::TSingleLinkedList< zeus::IPeerFinderObserver *>, zeus::TAtomicLinkedList< T >, zeus::TStringList, and zeus::TValueTypeList< T, I >.

§ getItemConst()

template<class T>
virtual const T& MQUALIFIER zeus::IList< T >::getItemConst ( Int  iIndex) const
pure virtual

§ getIterator()

template<class T>
virtual IListIterator<T>* MQUALIFIER zeus::IList< T >::getIterator ( ) const
pure virtual

Returns the iterator of this list object. This iterator is used to traverse the list. The iterator will be allocated inside this method and must be released through the method releaseIterator(). Its possible to use the method as nested calls. The order of the releasing doesn't has to mach the getIterator() calls.

Returns
pointer to a allocated iterator.

Implemented in zeus::TArrayList< T >, zeus::TArrayList< zeus::IZVariant *>, zeus::TArrayList< TypeRegFunction >, zeus::TArrayList< char >, zeus::TArrayList< TypeClassRegistry >, zeus::TSingleLinkedList< T >, zeus::TSingleLinkedList< zeus::ISerializable *>, zeus::TSingleLinkedList< TAutoPtr< T > >, zeus::TSingleLinkedList< zeus::IRemoteMethodCall *>, zeus::TSingleLinkedList< zeus::IXProcTarget *>, zeus::TSingleLinkedList< Uint16 >, zeus::TSingleLinkedList< TKeyType >, zeus::TSingleLinkedList< zeus::TTimerEventGroupContainer *>, zeus::TSingleLinkedList< zeus::TProperty *>, zeus::TSingleLinkedList< zeus::TZippedFileEntry *>, zeus::TSingleLinkedList< TAutoPtr< zeus::IXSynchronAction > >, zeus::TSingleLinkedList< Int >, zeus::TSingleLinkedList< zeus::TEMailAddress >, zeus::TSingleLinkedList< zeus::TypGUID >, zeus::TSingleLinkedList< TValueType >, zeus::TSingleLinkedList< zeus::IFileSystemWatcherObserver *>, zeus::TSingleLinkedList< zeus::INotifyObserver *>, zeus::TSingleLinkedList< zeus::TAbstractSkel::TClientHandlerThread *>, zeus::TSingleLinkedList< zeus::IXObject *>, zeus::TSingleLinkedList< zeus::TString >, zeus::TSingleLinkedList< zeus::TTimerEvent *>, zeus::TSingleLinkedList< zeus::IPeerFinderObserver *>, zeus::TAtomicLinkedList< T >, zeus::TStringList, and zeus::TValueTypeList< T, I >.

§ getLastItem()

§ getLastItemConst()

template<class T>
virtual const T& MQUALIFIER zeus::IList< T >::getLastItemConst ( ) const
pure virtual

§ hasAllItems()

template<class T>
virtual bool MQUALIFIER zeus::IList< T >::hasAllItems ( const IList< T > &  rlstItems) const
pure virtual

§ hasItem()

template<class T>
virtual bool MQUALIFIER zeus::IList< T >::hasItem ( const T &  rItem) const
pure virtual

§ indexOf()

template<class T>
virtual Int MQUALIFIER zeus::IList< T >::indexOf ( const T &  rItem) const
pure virtual

§ insert()

template<class T>
virtual Int MQUALIFIER zeus::IList< T >::insert ( Int  iIndex,
const T &  rItem 
)
pure virtual

Inserts an item into the list at position iIndex.

Precondition
iIndex must be valid (>= 0).
Postcondition
if iIndex = 0, then the rItem is placed in the front (prepend); if the iIndex == count, the item is placed at the end (append); else the rItem is placed at position iIndex:
Parameters
rItem: Item to insert
iIndex: insert position
Return values
INVALID_INDEX: Could not insert the element (invalid insert position)
>=0: Item inserted. The return value is the insert position

Implemented in zeus::TManagedList< T >, zeus::TManagedList< zeus::IXSynchronAction >, zeus::TArrayList< T >, zeus::TArrayList< zeus::IZVariant *>, zeus::TArrayList< TypeRegFunction >, zeus::TArrayList< char >, zeus::TArrayList< TypeClassRegistry >, zeus::TSingleLinkedList< T >, zeus::TSingleLinkedList< zeus::ISerializable *>, zeus::TSingleLinkedList< TAutoPtr< T > >, zeus::TSingleLinkedList< zeus::IRemoteMethodCall *>, zeus::TSingleLinkedList< zeus::IXProcTarget *>, zeus::TSingleLinkedList< Uint16 >, zeus::TSingleLinkedList< TKeyType >, zeus::TSingleLinkedList< zeus::TTimerEventGroupContainer *>, zeus::TSingleLinkedList< zeus::TProperty *>, zeus::TSingleLinkedList< zeus::TZippedFileEntry *>, zeus::TSingleLinkedList< TAutoPtr< zeus::IXSynchronAction > >, zeus::TSingleLinkedList< Int >, zeus::TSingleLinkedList< zeus::TEMailAddress >, zeus::TSingleLinkedList< zeus::TypGUID >, zeus::TSingleLinkedList< TValueType >, zeus::TSingleLinkedList< zeus::IFileSystemWatcherObserver *>, zeus::TSingleLinkedList< zeus::INotifyObserver *>, zeus::TSingleLinkedList< zeus::TAbstractSkel::TClientHandlerThread *>, zeus::TSingleLinkedList< zeus::IXObject *>, zeus::TSingleLinkedList< zeus::TString >, zeus::TSingleLinkedList< zeus::TTimerEvent *>, zeus::TSingleLinkedList< zeus::IPeerFinderObserver *>, zeus::TAtomicLinkedList< T >, and zeus::TValueTypeList< T, I >.

§ isEmpty()

§ releaseIterator()

template<class T>
virtual void MQUALIFIER zeus::IList< T >::releaseIterator ( const IListIterator< T > *  pIterator) const
pure virtual

§ remove()

template<class T>
virtual Retval MQUALIFIER zeus::IList< T >::remove ( const T &  rItem)
pure virtual

Removes the element rItem out of the list.

Precondition
no precondition
Postcondition
see deleteItem()
Parameters
rItem: Element to remove
Return values
RET_NOERROR: Element removed
RET_REQUEST_FAILEDCould not remove element

Implemented in zeus::TArrayList< T >, zeus::TArrayList< zeus::IZVariant *>, zeus::TArrayList< TypeRegFunction >, zeus::TArrayList< char >, zeus::TArrayList< TypeClassRegistry >, zeus::TSingleLinkedList< T >, zeus::TSingleLinkedList< zeus::ISerializable *>, zeus::TSingleLinkedList< TAutoPtr< T > >, zeus::TSingleLinkedList< zeus::IRemoteMethodCall *>, zeus::TSingleLinkedList< zeus::IXProcTarget *>, zeus::TSingleLinkedList< Uint16 >, zeus::TSingleLinkedList< TKeyType >, zeus::TSingleLinkedList< zeus::TTimerEventGroupContainer *>, zeus::TSingleLinkedList< zeus::TProperty *>, zeus::TSingleLinkedList< zeus::TZippedFileEntry *>, zeus::TSingleLinkedList< TAutoPtr< zeus::IXSynchronAction > >, zeus::TSingleLinkedList< Int >, zeus::TSingleLinkedList< zeus::TEMailAddress >, zeus::TSingleLinkedList< zeus::TypGUID >, zeus::TSingleLinkedList< TValueType >, zeus::TSingleLinkedList< zeus::IFileSystemWatcherObserver *>, zeus::TSingleLinkedList< zeus::INotifyObserver *>, zeus::TSingleLinkedList< zeus::TAbstractSkel::TClientHandlerThread *>, zeus::TSingleLinkedList< zeus::IXObject *>, zeus::TSingleLinkedList< zeus::TString >, zeus::TSingleLinkedList< zeus::TTimerEvent *>, zeus::TSingleLinkedList< zeus::IPeerFinderObserver *>, zeus::TAtomicLinkedList< T >, and zeus::TValueTypeList< T, I >.

§ removeAll()

template<class T>
virtual Retval MQUALIFIER zeus::IList< T >::removeAll ( const IList< T > &  rlstItems)
pure virtual

Friends And Related Function Documentation

§ TZVariant

template<class T>
friend class TZVariant
friend

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


Written by Benjamin Hadorn http://www.xatlantis.ch.
Last change made on Tue Sep 13 2016 22:31:34