Horus Doc || C++ Reference || Class Overview   Pixels   Images   Detector   Geometry   Registry || Doxygen's quick Index  

HxImageSeqIter Class Reference

Class definition for an iterator over an HxImageSeq. More...

#include <HxImageSeqIter.h>

List of all members.

Public Methods

 HxImageSeqIter ()
 Constructor. More...

 HxImageSeqIter (HxImageSeq *hisf, int framenum)
 Constructor for random access. More...

 HxImageSeqIter (const HxImageSeqIter &rhs)
 Copy constrcutor. More...

virtual ~HxImageSeqIter ()
 Destructor. More...

HxImageSeqIter & operator= (const HxImageSeqIter &rhs)
 Assignment. More...

HxImageSeqIter & operator++ ()
 Increment (prefix). More...

HxImageSeqIter & operator++ (int)
 Increment (postfix). More...

HxImageSeqIter & operator-- ()
 Decrement (prefix). More...

HxImageSeqIter & operator-- (int)
 Decrement (postfix). More...

HxImageSeqIter & operator+= (int)
 Increment with value (may be negative). More...

HxImageRep operator * ()
 Dereferencing: get the current frame. More...

HxImageSeqIter * clone () const
 Make a copy. More...

bool operator== (const HxImageSeqIter &)
 Equal. More...

bool operator!= (const HxImageSeqIter &)
 Not equal. More...


Detailed Description

Class definition for an iterator over an HxImageSeq.


Constructor & Destructor Documentation

HxImageSeqIter::HxImageSeqIter  
 

Constructor.

00018                                : _sequence(0), _framenum(0)
00019 {
00020 }

HxImageSeqIter::HxImageSeqIter HxImageSeq   hisf,
int    framenum
 

Constructor for random access.

00023     : _sequence(hisf->pointee())
00024 {
00025     _framenum = hisf->nrFrames();
00026 
00027     if ((framenum >= 0) && (framenum < _framenum))
00028         _framenum = framenum;
00029     
00030 }

HxImageSeqIter::HxImageSeqIter const HxImageSeqIter &    rhs
 

Copy constrcutor.

00033     : _sequence(rhs._sequence), _framenum(rhs._framenum)
00034 {
00035 }

HxImageSeqIter::~HxImageSeqIter   [virtual]
 

Destructor.

00038 {
00039 }


Member Function Documentation

HxImageSeqIter & HxImageSeqIter::operator= const HxImageSeqIter &    rhs
 

Assignment.

00043 {
00044      _sequence = rhs._sequence;
00045      _framenum = rhs._framenum;
00046      return *this;
00047 }

HxImageSeqIter & HxImageSeqIter::operator++  
 

Increment (prefix).

00051 {
00052     _framenum++;
00053     if (_framenum > _sequence->nrFrames())
00054         _framenum = _sequence->nrFrames();
00055     return *this;
00056 }

HxImageSeqIter & HxImageSeqIter::operator++ int   
 

Increment (postfix).

00060 {
00061     _framenum++;
00062     if (_framenum > _sequence->nrFrames())
00063         _framenum = _sequence->nrFrames();
00064     return *this;
00065 }

HxImageSeqIter & HxImageSeqIter::operator--  
 

Decrement (prefix).

00069 { 
00070     _framenum--;
00071     if (_framenum < 0)
00072         _framenum = 0;
00073     return *this;
00074 }

HxImageSeqIter & HxImageSeqIter::operator-- int   
 

Decrement (postfix).

00078 { 
00079     _framenum--;
00080     if (_framenum < 0)
00081         _framenum = 0;
00082     return *this;
00083 }

HxImageSeqIter & HxImageSeqIter::operator+= int    t
 

Increment with value (may be negative).

00087 {
00088     _framenum += t;
00089     if (_framenum > _sequence->nrFrames())
00090         _framenum = _sequence->nrFrames();
00091     if (_framenum < 0)
00092         _framenum = 0;
00093     return *this;
00094 }

HxImageRep HxImageSeqIter::operator *  
 

Dereferencing: get the current frame.

00098 {
00099     return _sequence->getFrame(_framenum);
00100 }

HxImageSeqIter * HxImageSeqIter::clone   const
 

Make a copy.

00104 {
00105     return new HxImageSeqIter (*this);
00106 }

bool HxImageSeqIter::operator== const HxImageSeqIter &    x
 

Equal.

00110 {
00111     return _framenum == (x._framenum);
00112 }

bool HxImageSeqIter::operator!= const HxImageSeqIter &    x
 

Not equal.

00116 {
00117     return _framenum != (x._framenum);
00118 }


The documentation for this class was generated from the following files:
Generated on Tue Feb 3 14:18:56 2004 for C++Reference by doxygen1.2.12 written by Dimitri van Heesch, © 1997-2001