Computer Assited Medical Intervention Tool Kit  version 5.0
AtomIterator Class Reference

Allow iteration over a set of atoms given by a target list (component name or index list) More...

#include <AtomIterator.h>

+ Collaboration diagram for AtomIterator:

Public Member Functions

 AtomIterator (PhysicalModel *pml, std::string targetList)
 constructor More...
 
void begin ()
 place iterator on first atom More...
 
AtomcurrentAtom ()
 return current atom More...
 
bool end ()
 return true if iterator is over the last atom More...
 
void next ()
 if iteration is not finished, advance to next atom More...
 
void operator++ ()
 redefinition of ++ operator, advance iterator to next atom More...
 
 ~AtomIterator ()=default
 destructor More...
 

Private Attributes

std::vector< Atom * > atoms
 atoms list More...
 
unsigned int index
 current atom index More...
 

Detailed Description

Allow iteration over a set of atoms given by a target list (component name or index list)

Constructor & Destructor Documentation

◆ AtomIterator()

AtomIterator::AtomIterator ( PhysicalModel pml,
std::string  targetList 
)

constructor

References a, atoms, PhysicalModel::getAtom(), PhysicalModel::getComponentByName(), TargetList::getIndexedTarget(), TargetList::getNamedTarget(), StructuralComponent::getNumberOfStructures(), TargetList::getNumberOfTargets(), StructuralComponent::getStructure(), index, and TargetList::indexedTargets().

+ Here is the call graph for this function:

◆ ~AtomIterator()

AtomIterator::~AtomIterator ( )
default

destructor

Member Function Documentation

◆ begin()

◆ currentAtom()

◆ end()

◆ next()

void AtomIterator::next ( )

if iteration is not finished, advance to next atom

References end(), and index.

Referenced by MonitorNormDisplacement::calculate(), MonitorDistanceY::calculate(), MonitorDistanceZ::calculate(), MonitorGeometricDeviation::calculate(), MonitorPosition::calculate(), MonitorPointSetDistance::calculate(), MonitorDisplacement::calculate(), MonitorRen::calculate(), MonitorDistanceX::calculate(), MonitorPointToTriangleMeshDistanceFinal::calculate(), MonitorPointFinalSetDistance::calculate(), Position::calculate(), Reference::getDistanceToTriangularMesh(), Reference::getNearest(), and Monitor::Monitor().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ operator++()

void AtomIterator::operator++ ( )

redefinition of ++ operator, advance iterator to next atom

References end(), and index.

+ Here is the call graph for this function:

Member Data Documentation

◆ atoms

std::vector<Atom*> AtomIterator::atoms
private

atoms list

Referenced by AtomIterator(), currentAtom(), and end().

◆ index

unsigned int AtomIterator::index
private

current atom index

Referenced by AtomIterator(), begin(), currentAtom(), end(), next(), and operator++().


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