Developer Documentation
Centre for Vision, Speech & Signal Processing
USER IN NAMESPACE AMMA TREE ROOT AMMA SEARCH AMMA HOME
 

  PUBLIC
CombIterC::CombIterC(IntT)
CombIterC::CombIterC(const DListC &,IntT)
CombIterC::CombIterC(const CombIterC &)
CombIterC::operator=(const DListC &)
CombIterC::IsElm(void) const
CombIterC::Data(void)
CombIterC::CombSize(void) const
CombIterC::First(void)
CombIterC::Next(void)
CombIterC::IncrComb(DLIterC>)
CombIterC<class DataT>
 
Combination iterator.
 
include "amma/CombIter.hh"
User Level:Default
Library:MiscAlg
Example:exBnd.cc
Section:Misc
In Scope:std

Comments:
This iterator works from shorter to longer combinations progressively.

SMALL OBJECT

Variables:
IntT combSize;
Number of items in combination.

IntT startLen;
Start length.

DListC> cIter;
List of combination iters.

DListC items;
List of all items.

DListC data;
Current combination.

Methods:
CombIterC(IntT nStartLen = 1)
Default constructor.

CombIterC(const DListC<DataT> & items,IntT nStartLen = 1)
Constructor.

CombIterC(const CombIterC<DataT> & oth)
Copy constructor.
This is a medium depth copy, it only copies enough to get an independant iteration of combination. The items list is NOT copied, so modifying it will affect the iterator.

const CombIterC<DataT> & operator=(const DListC<DataT> & items)
Assign to new list.
Does an implicit First().

BooleanT IsElm() const
Is there a valid combination ?

DListC<DataT> & Data()
Current combination.

IntT CombSize() const
Get number of items in current combination.

BooleanT First()
Goto first combination.
Returns FALSE if none.

BooleanT Next()
Goto next combination.
Returns FALSE if none.

BooleanT IncrComb(DLIterC<DLIterC<DataT>> lst)
Increment combination.


Programmer:Charles Galambos, Documentation by CxxDoc: Tue Mar 20 10:49:27 2001