Public Member Functions | Friends

zeus::IList< T > Class Template Reference

#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 >

List of all members.

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

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

template<class T>
virtual Int MQUALIFIER zeus::IList< T >::addAll ( const IList< T > &  rlstItems ) [pure virtual]
template<class T>
virtual Int MQUALIFIER zeus::IList< T >::addEmptyItem (  ) [pure virtual]
template<class T>
virtual void MQUALIFIER zeus::IList< T >::clear (  ) [pure virtual]
template<class T>
virtual void MQUALIFIER zeus::IList< T >::copyToList ( IList< T > &  rList ) const [pure virtual]
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_FAILED,:Could not remove element

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

template<class T>
virtual bool MQUALIFIER zeus::IList< T >::equals ( const IList< T > &  rList ) const [pure virtual]
template<class T>
virtual bool MQUALIFIER zeus::IList< T >::equalsItem ( Int  iIndex,
const T &  rItem 
) const [pure virtual]
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::TAtomicLinkedList< T >, zeus::TSingleLinkedList< T >, zeus::TStringList, zeus::TValueTypeList< T, I >, zeus::TArrayList< IZVariant * >, zeus::TArrayList< TypeRegFunction >, zeus::TArrayList< char >, zeus::TArrayList< TypeClassRegistry >, zeus::TSingleLinkedList< INotifyObserver * >, zeus::TSingleLinkedList< TAutoPtr< T > >, zeus::TSingleLinkedList< Uint16 >, zeus::TSingleLinkedList< TKeyType >, zeus::TSingleLinkedList< TAutoPtr< IXSynchronAction > >, zeus::TSingleLinkedList< ISerializable * >, zeus::TSingleLinkedList< TString >, zeus::TSingleLinkedList< Int >, zeus::TSingleLinkedList< IRemoteMethodCall * >, zeus::TSingleLinkedList< IFileSystemWatcherObserver * >, zeus::TSingleLinkedList< TProperty * >, zeus::TSingleLinkedList< TClientHandlerThread * >, zeus::TSingleLinkedList< TValueType >, zeus::TSingleLinkedList< TZippedFileEntry * >, zeus::TSingleLinkedList< TypGUID >, zeus::TSingleLinkedList< IXProcTarget * >, zeus::TSingleLinkedList< TTimerEvent * >, zeus::TSingleLinkedList< IPeerFinderObserver * >, zeus::TSingleLinkedList< TTimerEventGroupContainer * >, zeus::TSingleLinkedList< TEMailAddress >, and zeus::TSingleLinkedList< IXObject * >.

template<class T>
virtual Int MQUALIFIER zeus::IList< T >::getCount (  ) const [pure virtual]
template<class T>
virtual T& MQUALIFIER zeus::IList< T >::getFirstItem (  ) [pure virtual]
template<class T>
virtual const T& MQUALIFIER zeus::IList< T >::getFirstItemConst (  ) const [pure virtual]
template<class T>
virtual T& MQUALIFIER zeus::IList< T >::getItem ( Int  iIndex ) [pure virtual]
template<class T>
virtual const T& MQUALIFIER zeus::IList< T >::getItemConst ( Int  iIndex ) const [pure virtual]
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::TAtomicLinkedList< T >, zeus::TSingleLinkedList< T >, zeus::TStringList, zeus::TValueTypeList< T, I >, zeus::TArrayList< IZVariant * >, zeus::TArrayList< TypeRegFunction >, zeus::TArrayList< char >, zeus::TArrayList< TypeClassRegistry >, zeus::TSingleLinkedList< INotifyObserver * >, zeus::TSingleLinkedList< TAutoPtr< T > >, zeus::TSingleLinkedList< Uint16 >, zeus::TSingleLinkedList< TKeyType >, zeus::TSingleLinkedList< TAutoPtr< IXSynchronAction > >, zeus::TSingleLinkedList< ISerializable * >, zeus::TSingleLinkedList< TString >, zeus::TSingleLinkedList< Int >, zeus::TSingleLinkedList< IRemoteMethodCall * >, zeus::TSingleLinkedList< IFileSystemWatcherObserver * >, zeus::TSingleLinkedList< TProperty * >, zeus::TSingleLinkedList< TClientHandlerThread * >, zeus::TSingleLinkedList< TValueType >, zeus::TSingleLinkedList< TZippedFileEntry * >, zeus::TSingleLinkedList< TypGUID >, zeus::TSingleLinkedList< IXProcTarget * >, zeus::TSingleLinkedList< TTimerEvent * >, zeus::TSingleLinkedList< IPeerFinderObserver * >, zeus::TSingleLinkedList< TTimerEventGroupContainer * >, zeus::TSingleLinkedList< TEMailAddress >, and zeus::TSingleLinkedList< IXObject * >.

template<class T>
virtual T& MQUALIFIER zeus::IList< T >::getLastItem (  ) [pure virtual]
template<class T>
virtual const T& MQUALIFIER zeus::IList< T >::getLastItemConst (  ) const [pure virtual]
template<class T>
virtual bool MQUALIFIER zeus::IList< T >::hasAllItems ( const IList< T > &  rlstItems ) const [pure virtual]
template<class T>
virtual bool MQUALIFIER zeus::IList< T >::hasItem ( const T &  rItem ) const [pure virtual]
template<class T>
virtual Int MQUALIFIER zeus::IList< T >::indexOf ( const T &  rItem ) const [pure virtual]
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::TArrayList< T >, zeus::TAtomicLinkedList< T >, zeus::TManagedList< T >, zeus::TSingleLinkedList< T >, zeus::TValueTypeList< T, I >, zeus::TArrayList< IZVariant * >, zeus::TArrayList< TypeRegFunction >, zeus::TArrayList< char >, zeus::TArrayList< TypeClassRegistry >, zeus::TManagedList< IXSynchronAction >, zeus::TSingleLinkedList< INotifyObserver * >, zeus::TSingleLinkedList< TAutoPtr< T > >, zeus::TSingleLinkedList< Uint16 >, zeus::TSingleLinkedList< TKeyType >, zeus::TSingleLinkedList< TAutoPtr< IXSynchronAction > >, zeus::TSingleLinkedList< ISerializable * >, zeus::TSingleLinkedList< TString >, zeus::TSingleLinkedList< Int >, zeus::TSingleLinkedList< IRemoteMethodCall * >, zeus::TSingleLinkedList< IFileSystemWatcherObserver * >, zeus::TSingleLinkedList< TProperty * >, zeus::TSingleLinkedList< TClientHandlerThread * >, zeus::TSingleLinkedList< TValueType >, zeus::TSingleLinkedList< TZippedFileEntry * >, zeus::TSingleLinkedList< TypGUID >, zeus::TSingleLinkedList< IXProcTarget * >, zeus::TSingleLinkedList< TTimerEvent * >, zeus::TSingleLinkedList< IPeerFinderObserver * >, zeus::TSingleLinkedList< TTimerEventGroupContainer * >, zeus::TSingleLinkedList< TEMailAddress >, and zeus::TSingleLinkedList< IXObject * >.

template<class T>
virtual bool MQUALIFIER zeus::IList< T >::isEmpty (  ) const [pure virtual]
template<class T>
virtual void MQUALIFIER zeus::IList< T >::releaseIterator ( const IListIterator< T > *  pIterator ) const [pure virtual]
template<class T>
virtual Retval MQUALIFIER zeus::IList< T >::remove ( const T &  rItem ) [pure virtual]
template<class T>
virtual Retval MQUALIFIER zeus::IList< T >::removeAll ( const IList< T > &  rlstItems ) [pure virtual]

Friends And Related Function Documentation

template<class T>
friend class TZVariant [friend]

The documentation for this class was generated from the following file:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines


Written by Benjamin Hadorn http://www.xatlantis.ch.
Last change made on Sun Jan 22 2012 15:28:35