List< Element > Class Template Reference

#include <list.h>

List of all members.

Public Member Functions

 List ()
 List (int n)
 ~List ()
int number ()
void setFirst ()
void setFirstLast ()
void goFirst ()
void goFirstNext ()
void FirstNext ()
void FirstPrev ()
bool isFirstLast ()
void goLastNext ()
void goLast ()
void goNext ()
void goPrev ()
bool isFirst ()
bool isLast ()
void LastNext ()
void LastPrev ()
void go (Pointer< Element > *p)
Element * First ()
Element * Last ()
Element * Next ()
Element * getNext ()
Element * Prev ()
Element * getPrev ()
Element * Current ()
Pointer< Element > * getPointer ()
Pointer< Element > * getFirstPointer ()
Pointer< Element > * getLastPointer ()
int init (int n)
int insert (Element *element)
int insert ()
int append (Element *element)
int append ()
int link (Pointer< Element > *p)
void unlink (Pointer< Element > *p)
int prepend (Element *element)
bool locate (Element *element)
bool locate (Pointer< Element > *pointer)
void moveAfterFirst ()
void swapAfterFirst ()
void moveBehindFirst ()
int erase ()
bool erase (Element *element)
void eraseall ()
bool remove ()
void cleanup ()
void remove (Pointer< Element > *pointer)

Private Attributes

int nelements
struct Pointer< Element > * first
struct Pointer< Element > * last
struct Pointer< Element > * current


Detailed Description

template<class Element>
class List< Element >

Definition at line 24 of file list.h.


Constructor & Destructor Documentation

template<class Element >
List< Element >::List (  )  [inline]

template<class Element >
List< Element >::List ( int  n  ) 

template<class Element >
List< Element >::~List (  )  [inline]

Definition at line 90 of file list.h.

References List< Element >::cleanup().


Member Function Documentation

template<class Element >
int List< Element >::append (  )  [inline]

Definition at line 159 of file list.h.

References Pointer< Element >::element.

Referenced by List< Element >::init().

template<class Element >
int List< Element >::append ( Element *  element  )  [inline]

template<class Element >
void List< Element >::cleanup (  )  [inline]

template<class Element >
Element* List< Element >::Current (  )  [inline]

Definition at line 54 of file list.h.

Referenced by Domain::init().

template<class Element >
bool List< Element >::erase ( Element *  element  )  [inline]

Definition at line 287 of file list.h.

References List< Element >::erase(), and List< Element >::locate().

template<class Element >
int List< Element >::erase (  )  [inline]

template<class Element >
void List< Element >::eraseall (  )  [inline]

template<class Element >
Element* List< Element >::First (  )  [inline]

Definition at line 48 of file list.h.

template<class Element >
void List< Element >::FirstNext (  )  [inline]

Definition at line 36 of file list.h.

template<class Element >
void List< Element >::FirstPrev (  )  [inline]

Definition at line 37 of file list.h.

template<class Element >
Pointer<Element>* List< Element >::getFirstPointer (  )  [inline]

Definition at line 56 of file list.h.

template<class Element >
Pointer<Element>* List< Element >::getLastPointer (  )  [inline]

Definition at line 57 of file list.h.

template<class Element >
Element* List< Element >::getNext (  )  [inline]

Definition at line 51 of file list.h.

template<class Element >
Pointer<Element>* List< Element >::getPointer (  )  [inline]

Definition at line 55 of file list.h.

template<class Element >
Element* List< Element >::getPrev (  )  [inline]

Definition at line 53 of file list.h.

template<class Element >
void List< Element >::go ( Pointer< Element > *  p  )  [inline]

Definition at line 47 of file list.h.

template<class Element >
void List< Element >::goFirst (  )  [inline]

Definition at line 34 of file list.h.

Referenced by Domain::init(), and Domain::injection().

template<class Element >
void List< Element >::goFirstNext (  )  [inline]

Definition at line 35 of file list.h.

template<class Element >
void List< Element >::goLast (  )  [inline]

Definition at line 40 of file list.h.

template<class Element >
void List< Element >::goLastNext (  )  [inline]

Definition at line 39 of file list.h.

template<class Element >
void List< Element >::goNext (  )  [inline]

Definition at line 41 of file list.h.

Referenced by Domain::init().

template<class Element >
void List< Element >::goPrev (  )  [inline]

Definition at line 42 of file list.h.

template<class Element >
int List< Element >::init ( int  n  )  [inline]

Definition at line 106 of file list.h.

References List< Element >::append(), and List< Element >::nelements.

template<class Element >
int List< Element >::insert (  )  [inline]

Definition at line 209 of file list.h.

References Pointer< Element >::element.

template<class Element >
int List< Element >::insert ( Element *  element  )  [inline]

template<class Element >
bool List< Element >::isFirst (  )  [inline]

Definition at line 43 of file list.h.

Referenced by Domain::init().

template<class Element >
bool List< Element >::isFirstLast (  )  [inline]

Definition at line 38 of file list.h.

template<class Element >
bool List< Element >::isLast (  )  [inline]

Definition at line 44 of file list.h.

template<class Element >
Element* List< Element >::Last (  )  [inline]

Definition at line 49 of file list.h.

template<class Element >
void List< Element >::LastNext (  )  [inline]

Definition at line 45 of file list.h.

template<class Element >
void List< Element >::LastPrev (  )  [inline]

Definition at line 46 of file list.h.

template<class Element >
int List< Element >::link ( Pointer< Element > *  p  )  [inline]

template<class Element >
bool List< Element >::locate ( Pointer< Element > *  pointer  )  [inline]

Definition at line 303 of file list.h.

References List< Element >::current, and List< Element >::first.

template<class Element >
bool List< Element >::locate ( Element *  element  )  [inline]

Definition at line 293 of file list.h.

References List< Element >::current, and List< Element >::first.

Referenced by List< Element >::erase(), and List< Element >::remove().

template<class Element >
void List< Element >::moveAfterFirst (  )  [inline]

template<class Element >
void List< Element >::moveBehindFirst (  )  [inline]

template<class Element >
Element* List< Element >::Next (  )  [inline]

Definition at line 50 of file list.h.

template<class Element >
int List< Element >::number (  )  [inline]

Definition at line 31 of file list.h.

Referenced by Domain::init().

template<class Element >
int List< Element >::prepend ( Element *  element  )  [inline]

template<class Element >
Element* List< Element >::Prev (  )  [inline]

Definition at line 52 of file list.h.

template<class Element >
void List< Element >::remove ( Pointer< Element > *  pointer  )  [inline]

DDD: slow but safe

DDD

Definition at line 272 of file list.h.

References List< Element >::current, and List< Element >::locate().

template<class Element >
bool List< Element >::remove (  )  [inline]

template<class Element >
void List< Element >::setFirst (  )  [inline]

Definition at line 32 of file list.h.

template<class Element >
void List< Element >::setFirstLast (  )  [inline]

Definition at line 33 of file list.h.

template<class Element >
void List< Element >::swapAfterFirst (  )  [inline]

Definition at line 313 of file list.h.

References List< Element >::current, and List< Element >::first.

template<class Element >
void List< Element >::unlink ( Pointer< Element > *  p  )  [inline]


Member Data Documentation

template<class Element >
struct Pointer< Element > * List< Element >::current [read, private]

template<class Element >
struct Pointer< Element >* List< Element >::first [read, private]

template<class Element >
struct Pointer< Element > * List< Element >::last [read, private]

template<class Element >
int List< Element >::nelements [private]


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

Generated on Tue May 26 16:10:36 2009 for ReMoDy by  doxygen 1.5.7.1