Isis 3 Programmer Reference
Isis::ProcessByBrick::ProcessIterator Class Reference

This class is designed to iterate over all brick positions in a cube. More...

Inheritance diagram for Isis::ProcessByBrick::ProcessIterator:
Inheritance graph
Collaboration diagram for Isis::ProcessByBrick::ProcessIterator:
Collaboration graph

Public Member Functions

 ProcessIterator (int position)
 Initialize a process iterator given a position.
 
 ProcessIterator (const ProcessIterator &other)
 This class fully supports copy construction.
 
virtual ~ProcessIterator ()
 Destructor.
 
ProcessIteratoroperator++ ()
 Increment the process iterator to the next position.
 
bool operator== (const ProcessIterator &rhs)
 Compare equality of two iterator positions.
 
bool operator!= (const ProcessIterator &rhs)
 Compare inequality of two iterator positions.
 
void swap (ProcessIterator &other)
 Exception-safe swap method.
 
ProcessIteratoroperator= (const ProcessIterator &rhs)
 Assignment of these iterators is fully supported.
 
int operator* () const
 Convert this iterator into a position.
 

Private Attributes

int m_currentPosition
 The current iterator's position/value.
 

Detailed Description

This class is designed to iterate over all brick positions in a cube.

This isn't using a BigInt because Brick::Bricks() isn't, so a performance penalty would be incurred for no reason.

Author
2012-02-22 Steven Lambright

Definition at line 751 of file ProcessByBrick.h.

Constructor & Destructor Documentation

◆ ProcessIterator() [1/2]

Isis::ProcessByBrick::ProcessIterator::ProcessIterator ( int position)

Initialize a process iterator given a position.

Parameters
positionThe process iterator position to initialize with.

Definition at line 1123 of file ProcessByBrick.cpp.

◆ ProcessIterator() [2/2]

Isis::ProcessByBrick::ProcessIterator::ProcessIterator ( const ProcessIterator & other)

This class fully supports copy construction.

Parameters
otherThe process iterator to copy

Definition at line 1133 of file ProcessByBrick.cpp.

◆ ~ProcessIterator()

Isis::ProcessByBrick::ProcessIterator::~ProcessIterator ( )
virtual

Destructor.

Definition at line 1142 of file ProcessByBrick.cpp.

Member Function Documentation

◆ operator!=()

bool Isis::ProcessByBrick::ProcessIterator::operator!= ( const ProcessIterator & rhs)
inline

Compare inequality of two iterator positions.

Parameters
rhsThe right hand side of the '!=' operator
Returns
True if this and rhs are not equal

Definition at line 776 of file ProcessByBrick.h.

◆ operator*()

int Isis::ProcessByBrick::ProcessIterator::operator* ( ) const
inline

Convert this iterator into a position.

An integer is sufficient.

Returns
The brick position to use

Definition at line 808 of file ProcessByBrick.h.

References m_currentPosition.

◆ operator++()

ProcessByBrick::ProcessIterator & Isis::ProcessByBrick::ProcessIterator::operator++ ( )

Increment the process iterator to the next position.

Returns
*this

Definition at line 1152 of file ProcessByBrick.cpp.

◆ operator=()

ProcessIterator & Isis::ProcessByBrick::ProcessIterator::operator= ( const ProcessIterator & rhs)
inline

Assignment of these iterators is fully supported.

Parameters
rhsThe right hand side of the '=' operator.
Returns
*this

Definition at line 797 of file ProcessByBrick.h.

References swap().

◆ operator==()

bool Isis::ProcessByBrick::ProcessIterator::operator== ( const ProcessIterator & rhs)
inline

Compare equality of two iterator positions.

Parameters
rhsThe right hand side of the '==' operator
Returns
True if this and rhs are equal

Definition at line 766 of file ProcessByBrick.h.

References m_currentPosition.

◆ swap()

void Isis::ProcessByBrick::ProcessIterator::swap ( ProcessIterator & other)
inline

Exception-safe swap method.

Parameters
otherThe instance to swap with

Definition at line 786 of file ProcessByBrick.h.

References m_currentPosition.

Referenced by operator=().

Member Data Documentation

◆ m_currentPosition

int Isis::ProcessByBrick::ProcessIterator::m_currentPosition
private

The current iterator's position/value.

Definition at line 814 of file ProcessByBrick.h.

Referenced by operator*(), operator==(), and swap().


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