Developer Documentation
RAVL, Recognition And Vision Library
USER HOME PAGE CLASS LIST CONTENTS
Ravl - Core - Arrays - 2D - Array2dSqr3111Iter4C<class Data1T,class Data2T,class Data3T,class Data4T>
 

  PUBLIC
Array2dSqr3111Iter4C::Array2dSqr3111Iter4C(void)
Array2dSqr3111Iter4C::Array2dSqr3111Iter4C(const Array2dC &,const Array2dC &,const Array2dC &,const Array2dC &)
Array2dSqr3111Iter4C::First(void)
Array2dSqr3111Iter4C::Next(void)
Array2dSqr3111Iter4C::IsElm(void) const
Array2dSqr3111Iter4C::operator bool(void) const
Array2dSqr3111Iter4C::operator ++(void)
Array2dSqr3111Iter4C::operator ++(int)
Array2dSqr3111Iter4C::DataBL1(void)
Array2dSqr3111Iter4C::DataBL1(void) const
Array2dSqr3111Iter4C::DataBM1(void)
Array2dSqr3111Iter4C::DataBM1(void) const
Array2dSqr3111Iter4C::DataBR1(void)
Array2dSqr3111Iter4C::DataBR1(void) const
Array2dSqr3111Iter4C::DataML1(void)
Array2dSqr3111Iter4C::DataML1(void) const
Array2dSqr3111Iter4C::DataMM1(void)
Array2dSqr3111Iter4C::DataMM1(void) const
Array2dSqr3111Iter4C::Data1(void)
Array2dSqr3111Iter4C::Data1(void) const
Array2dSqr3111Iter4C::DataMR1(void)
Array2dSqr3111Iter4C::DataMR1(void) const
Array2dSqr3111Iter4C::DataTL1(void)
Array2dSqr3111Iter4C::DataTL1(void) const
Array2dSqr3111Iter4C::DataTM1(void)
Array2dSqr3111Iter4C::DataTM1(void) const
Array2dSqr3111Iter4C::DataTR1(void)
Array2dSqr3111Iter4C::DataTR1(void) const
Array2dSqr3111Iter4C::Data2(void)
Array2dSqr3111Iter4C::Data2(void) const
Array2dSqr3111Iter4C::Data3(void)
Array2dSqr3111Iter4C::Data3(void) const
Array2dSqr3111Iter4C::Data4(void)
Array2dSqr3111Iter4C::Data4(void) const
BufferAccess2dIter4C::First(const RangeBufferAccessC> &,const IndexRangeC &,const RangeBufferAccessC> &,const IndexRangeC &,const RangeBufferAccessC> &,const IndexRangeC &,const RangeBufferAccessC> &,const IndexRangeC &)
BufferAccess2dIter4C::First(const SizeBufferAccessC> &,SizeT,const SizeBufferAccessC> &,SizeT,const SizeBufferAccessC> &,SizeT,const SizeBufferAccessC> &,SizeT)
BufferAccess2dIter4C::Next(void)
BufferAccess2dIter4C::NextCol(int)
BufferAccess2dIter4C::NextRow(void)
BufferAccess2dIter4C::IsElm(void) const
BufferAccess2dIter4C::operator bool(void) const
BufferAccess2dIter4C::operator ++(void)
BufferAccess2dIter4C::operator ++(int)
BufferAccess2dIter4C::Data1(void)
BufferAccess2dIter4C::Data1(void) const
BufferAccess2dIter4C::Data2(void)
BufferAccess2dIter4C::Data2(void) const
BufferAccess2dIter4C::Data3(void)
BufferAccess2dIter4C::Data3(void) const
BufferAccess2dIter4C::Data4(void)
BufferAccess2dIter4C::Data4(void) const
BufferAccess2dIter4C::RowIndex(const BufferAccessC *) const
BufferAccess2dIter4C::ColIndex(void) const
BufferAccess2dIter4C::Index(const BufferAccessC *) const

   Array2dSqr3111Iter4C<class Data1T,class Data2T,class Data3T,class Data4T>   
 
Iterate through an array accessing 3x3 area.
 
include "Ravl/Array2dSqr3111Iter4.hh"
Source file:Ravl/Core/Container/Array/Array2dSqr3111Iter4.hh
User Level:Normal
Library:RavlCore
In Scope:RavlN

Comments:
The square can be accessed with DataBL,DataBR etc... which access the following array elements.

TL TM TR
ML MM MR
BL BM BR
for the first array.

Parent Classes: Variables:
Array2dC array1;

Array2dC array2;

Array2dC array3;

Array2dC array4;

Data1T * up;

Data1T * dn;

Methods:
Array2dSqr3111Iter4C()
Default constructor.

Array2dSqr3111Iter4C(const Array2dC<Data1T> & narray1,const Array2dC<Data2T> & narray2,const Array2dC<Data3T> & narray3,const Array2dC<Data4T> & narray4)
Constructor.

bool First()
Goto first element in the array.

bool Next()
Goto next element.

bool IsElm() const
Test if iterator is at a valid element.

operator bool() const
Test if iterator is at a valid element.

void operator ++()
Goto next element.

void operator ++(int)
Goto next element.

Data1T & DataBL1()
Access bottom left data element

const Data1T & DataBL1() const
Access bottom left data element

Data1T & DataBM1()
Access bottom mid data element

const Data1T & DataBM1() const
Access bottom mid data element

Data1T & DataBR1()
Access bottom right data element

const Data1T & DataBR1() const
Access bottom right data element

Data1T & DataML1()
Access middle left data element

const Data1T & DataML1() const
Access middle left data element

Data1T & DataMM1()
Access middle data element

const Data1T & DataMM1() const
Access middle data element

Data1T & Data1()
Access middle data element

const Data1T & Data1() const
Access middle data element

Data1T & DataMR1()
Access middle right data element

const Data1T & DataMR1() const
Access middle right data element

Data1T & DataTL1()
Access top left data element.

const Data1T & DataTL1() const
Access top left data element

Data1T & DataTM1()
Access top middle element

const Data1T & DataTM1() const
Access top middle element

Data1T & DataTR1()
Access top right data element

const Data1T & DataTR1() const
Access top right data element

Data2T & Data2()
Access middle data element of second array.

const Data2T & Data2() const
Access middle data element of second array.

Data3T & Data3()
Access middle data element of 3rd array.

const Data3T & Data3() const
Access middle data element of 3rd array.

Data4T & Data4()
Access middle data element of 4th array.

const Data4T & Data4() const
Access middle data element of 4th array.

#include "Ravl/BfAcc2Iter4.hh"
bool First(const RangeBufferAccessC<BufferAccessC<Data1T>> & pbuf1,const IndexRangeC & nrng1,const RangeBufferAccessC<BufferAccessC<Data2T>> & pbuf2,const IndexRangeC & nrng2,const RangeBufferAccessC<BufferAccessC<Data3T>> & pbuf3,const IndexRangeC & nrng3,const RangeBufferAccessC<BufferAccessC<Data4T>> & pbuf4,const IndexRangeC & nrng4)
Goto first element.
returns true if there is one.

bool First(const SizeBufferAccessC<BufferAccessC<Data1T>> & pbuf1,SizeT size1,const SizeBufferAccessC<BufferAccessC<Data2T>> & pbuf2,SizeT size2,const SizeBufferAccessC<BufferAccessC<Data3T>> & pbuf3,SizeT size3,const SizeBufferAccessC<BufferAccessC<Data4T>> & pbuf4,SizeT size4)
Goto first element.
returns true if there is one.

bool Next()
Goto next element.
returns true if on the same row.

void NextCol(int skip)
Go forward 'skip' columns, without checking for row change.
Use with care.

bool NextRow()
Go to the begining of the next row.
Returns true if the iterator is begining of a valid row, and false if it is at the end of the array.

bool IsElm() const
At a valid element ?

operator bool() const
At a valid element ?

void operator ++()
Goto next element.

void operator ++(int)
Goto next element.

Data1T & Data1()
Access data from array 1.

const Data1T & Data1() const
Access data from array 1.

Data2T & Data2()
Access data from array 2.

const Data2T & Data2() const
Access data from array 2.

Data3T & Data3()
Access data from array 3.

const Data3T & Data3() const
Access data from array 3.

Data4T & Data4()
Access data from array 4.

const Data4T & Data4() const
Access data from array 4.

IntT RowIndex(const BufferAccessC<Data1T> * row1Begin) const
Work out the current row number

IntT ColIndex() const
Work out the current column number

Index2dC Index(const BufferAccessC<Data1T> * row1Begin) const
Get index of current location.
Has to be calculate, and so is slightly slow.


Maintainer:Charles Galambos, Documentation by CxxDoc: Tue Aug 13 09:59:30 2002