User Documentation
RAVL, Recognition And Vision Library
DEVELOP HOME PAGE CLASS LIST CONTENTS
Ravl - Core - Lists - IntrDLIterC<class DataT>
 

  PUBLIC
IntrDLIterC::IntrDLIterC(void)
IntrDLIterC::IntrDLIterC(const IntrDListC &)
IntrDLIterC::IsValid(void) const
IntrDLIterC::First(void)
IntrDLIterC::Last(void)
IntrDLIterC::operator bool(void) const
IntrDLIterC::IsElm(void) const
IntrDLIterC::IsFirst(void) const
IntrDLIterC::IsLast(void) const
IntrDLIterC::operator ++(void)
IntrDLIterC::operator ++(int)
IntrDLIterC::operator --(int)
IntrDLIterC::Next(void)
IntrDLIterC::Prev(void)
IntrDLIterC::NextCrc(void)
IntrDLIterC::PrevCrc(void)
IntrDLIterC::operator *(void)
IntrDLIterC::operator *(void) const
IntrDLIterC::operator ->(void)
IntrDLIterC::operator ->(void) const
IntrDLIterC::Data(void)
IntrDLIterC::Data(void) const
IntrDLIterC::Extract(void)
IntrDLIterC::Del(void)
IntrDLIterC::InsertBef(DataT &)
IntrDLIterC::InsertAft(DataT &)
IntrDLIterC::List(void)
IntrDLIterC::List(void) const
IntrDLIterC::Invalidate(void)

   IntrDLIterC<class DataT>   
 
Intrinsic list iterator.
 
include "Ravl/InDLIter.hh"
Created:24/01/2001 
User Level:Advanced
Library:RavlCore
In Scope:RavlN

Comments:
See IntrDListC for more details. FIXME :- of this need not be templated, should make a base class?

Derived Classes: Variables:
Methods:
IntrDLIterC()
Default constructor.
Creates an invalid iterator.

IntrDLIterC(const IntrDListC<DataT> & lst)
Constructor.
Constructs an iterator pointing to the first element in the list.

bool IsValid() const
Is iterator valid ?
true is returned for a valid iterator.

void First()
Goto first element in the list.

void Last()
Goto the last element in the list.

operator bool() const
At a valid node ?

bool IsElm() const
At a valid element in the list ?
AMMA compatibilty function, use operator bool() instread.

bool IsFirst() const
At the first element in the list ?
AMMA compatibilty function.

bool IsLast() const
At the last element in the list ?
AMMA compatibilty function.

void operator ++()
Goto next element in list.

void operator ++(int)
Goto next element in list.

void operator --(int)
Goto previous element in list.

void Next()
Goto next element in list.
AMMA compatibilty function, use operator++() instread.

void Prev()
Goto previous element in list.
AMMA compatibilty function, use operator--() instread.

void NextCrc()
Goto next element in list, skip the head element.
AMMA compatibilty function.

void PrevCrc()
Goto previous element in list, skip the head element.
AMMA compatibilty function.

DataT & operator *()
Access data.
NB. The iterator MUST be valid. check with 'operator bool()'.

const DataT & operator *() const
Constant access to data.
NB. The iterator MUST be valid. check with 'operator bool()'.

DataT * operator ->()
Access data.
NB. The iterator MUST be valid. check with 'operator bool()'.

const DataT * operator ->() const
Constant access to data.
NB. The iterator MUST be valid. check with 'operator bool()'.

DataT & Data()
Access data.
NB. The iterator MUST be valid. check with 'operator bool()'.

const DataT & Data() const
Constant access to data.
NB. The iterator MUST be valid. check with 'operator bool()'.

DataT & Extract()
Extract the current element from the list.
Do not delete it, the user is responsible for ensuring this happens at an approprate time. The iteration is left pointing at the element before the one extracted. The iterator must be valid.

void Del()
Delete the current element from the list.
actuall delete the element where appropriate. The iterator must be valid.

void InsertBef(DataT & dat)
Insert data before current element.
if at the head of the list (i.e. operator bool() failes.) then add at end.

void InsertAft(DataT & dat)
Insert data after current element.
if at the head of the list (i.e. operator bool() failes.) then add at begining.

IntrDListC<DataT> & List()
Access the list we're iterating.

const IntrDListC<DataT> & List() const
Access the list we're iterating.

bool Invalidate()
Point interator at an invalid element.


Maintainer:Radek Marik, Charles Galambos, Created: 24/01/2001, Documentation by CxxDoc: Tue Aug 13 09:59:02 2002