mmcfilters
Public API documentation
Loading...
Searching...
No Matches
Public Types | Public Member Functions | List of all members
mmcfilters::MorphologicalTree::AliveNodeIterator Class Reference

Iterator over live node ids in the dense internal-node domain. More...

#include <MorphologicalTree.hpp>

Public Types

using iterator_category = std::input_iterator_tag
 Standard iterator category exposed for STL compatibility.
 
using value_type = NodeId
 Node id yielded by the iterator.
 
using difference_type = std::ptrdiff_t
 Signed distance type exposed for STL compatibility.
 
using pointer = const NodeId *
 Pointer type exposed for STL compatibility.
 
using reference = const NodeId &
 Reference type exposed for STL compatibility.
 

Public Member Functions

 AliveNodeIterator ()=default
 Creates the end/sentinel iterator.
 
 AliveNodeIterator (const MorphologicalTree *tree, NodeId current, NodeId end, std::size_t expectedVersion)
 Creates an iterator over [current, end) with fail-fast version checking.
 
AliveNodeIteratoroperator++ ()
 Advances to the next live node slot.
 
NodeId operator* () const
 Returns the current live node id.
 
bool operator== (const AliveNodeIterator &other) const
 Compares iterator positions.
 
bool operator!= (const AliveNodeIterator &other) const
 Compares iterator positions for inequality.
 

Detailed Description

Iterator over live node ids in the dense internal-node domain.

Definition at line 3072 of file MorphologicalTree.hpp.

Member Typedef Documentation

◆ difference_type

Signed distance type exposed for STL compatibility.

Definition at line 3106 of file MorphologicalTree.hpp.

◆ iterator_category

Standard iterator category exposed for STL compatibility.

Definition at line 3102 of file MorphologicalTree.hpp.

◆ pointer

Pointer type exposed for STL compatibility.

Definition at line 3108 of file MorphologicalTree.hpp.

◆ reference

Reference type exposed for STL compatibility.

Definition at line 3110 of file MorphologicalTree.hpp.

◆ value_type

Node id yielded by the iterator.

Definition at line 3104 of file MorphologicalTree.hpp.

Constructor & Destructor Documentation

◆ AliveNodeIterator()

mmcfilters::MorphologicalTree::AliveNodeIterator::AliveNodeIterator ( const MorphologicalTree tree,
NodeId  current,
NodeId  end,
std::size_t  expectedVersion 
)
inline

Creates an iterator over [current, end) with fail-fast version checking.

Parameters
treeTree topology.
currentCurrent iterator or traversal position.
endExclusive end position.
expectedVersionMutation version required by the operation.

Definition at line 3125 of file MorphologicalTree.hpp.

Member Function Documentation

◆ operator!=()

bool mmcfilters::MorphologicalTree::AliveNodeIterator::operator!= ( const AliveNodeIterator other) const
inline

Compares iterator positions for inequality.

Parameters
otherObject to compare with or transfer from.
Returns
True when the documented condition holds; otherwise false.

Definition at line 3168 of file MorphologicalTree.hpp.

◆ operator*()

NodeId mmcfilters::MorphologicalTree::AliveNodeIterator::operator* ( ) const
inline

Returns the current live node id.

Returns
The current live node id.

Definition at line 3149 of file MorphologicalTree.hpp.

◆ operator++()

AliveNodeIterator & mmcfilters::MorphologicalTree::AliveNodeIterator::operator++ ( )
inline

Advances to the next live node slot.

Returns
Mutable reference to the updated object.

Definition at line 3135 of file MorphologicalTree.hpp.

◆ operator==()

bool mmcfilters::MorphologicalTree::AliveNodeIterator::operator== ( const AliveNodeIterator other) const
inline

Compares iterator positions.

Parameters
otherObject to compare with or transfer from.
Returns
True when the documented condition holds; otherwise false.

Definition at line 3160 of file MorphologicalTree.hpp.


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