Advanced Multi-Physics (AMP)
On-Line Documentation
Public Types | Public Member Functions | Private Attributes | List of all members
AMP::Mesh::BoxMesh::MeshElementIndexIterator Class Referencefinal

Iterator over a box. More...

#include <BoxMesh.h>

Public Types

using difference_type = ptrdiff_t
 
using iterator_category = std::random_access_iterator_tag
 
using pointer = const MeshElementIndex *
 
using reference = const MeshElementIndex &
 
using value_type = MeshElementIndex
 

Public Member Functions

MeshElementIndexIterator begin () const
 
bool empty () const
 
MeshElementIndexIterator end () const
 
const auto & first () const
 
const auto & last () const
 
 MeshElementIndexIterator ()=default
 
 MeshElementIndexIterator (const MeshElementIndex &first, const MeshElementIndex &last, const AMP::Mesh::BoxMesh *mesh, size_t pos=0)
 
bool operator!= (const MeshElementIndexIterator &rhs) const
 
MeshElementIndex operator* () const
 
MeshElementIndexIteratoroperator++ ()
 
MeshElementIndexIteratoroperator+= (const MeshElementIndexIterator &it)
 
MeshElementIndexIteratoroperator+= (int N)
 
MeshElementIndexIteratoroperator-- ()
 
bool operator== (const MeshElementIndexIterator &rhs) const
 
MeshElementIndexIteratoroperator[] (int)
 
size_t position () const
 
void set (uint32_t i)
 
size_t size () const
 

Private Attributes

bool d_checkBoundary = false
 
MeshElementIndex d_first
 
std::array< int, 3 > d_globalSize = { 0, 0, 0 }
 
std::array< bool, 3 > d_isPeriodic = { false, false, false }
 
MeshElementIndex d_last
 
uint32_t d_pos = { 0 }
 
uint32_t d_size = { 0 }
 

Detailed Description

Iterator over a box.

This class will iterator over a MeshElementIndex box

Definition at line 157 of file BoxMesh.h.

Member Typedef Documentation

◆ difference_type

Definition at line 162 of file BoxMesh.h.

◆ iterator_category

using AMP::Mesh::BoxMesh::MeshElementIndexIterator::iterator_category = std::random_access_iterator_tag

Definition at line 160 of file BoxMesh.h.

◆ pointer

Definition at line 163 of file BoxMesh.h.

◆ reference

Definition at line 164 of file BoxMesh.h.

◆ value_type

Definition at line 161 of file BoxMesh.h.

Constructor & Destructor Documentation

◆ MeshElementIndexIterator() [1/2]

AMP::Mesh::BoxMesh::MeshElementIndexIterator::MeshElementIndexIterator ( )
default

◆ MeshElementIndexIterator() [2/2]

AMP::Mesh::BoxMesh::MeshElementIndexIterator::MeshElementIndexIterator ( const MeshElementIndex first,
const MeshElementIndex last,
const AMP::Mesh::BoxMesh mesh,
size_t  pos = 0 
)

Member Function Documentation

◆ begin()

MeshElementIndexIterator AMP::Mesh::BoxMesh::MeshElementIndexIterator::begin ( ) const

◆ empty()

bool AMP::Mesh::BoxMesh::MeshElementIndexIterator::empty ( ) const
inline

Definition at line 182 of file BoxMesh.h.

References d_size.

◆ end()

MeshElementIndexIterator AMP::Mesh::BoxMesh::MeshElementIndexIterator::end ( ) const

◆ first()

const auto & AMP::Mesh::BoxMesh::MeshElementIndexIterator::first ( ) const
inline

Definition at line 186 of file BoxMesh.h.

References d_first.

◆ last()

const auto & AMP::Mesh::BoxMesh::MeshElementIndexIterator::last ( ) const
inline

Definition at line 187 of file BoxMesh.h.

References d_last.

◆ operator!=()

bool AMP::Mesh::BoxMesh::MeshElementIndexIterator::operator!= ( const MeshElementIndexIterator rhs) const

◆ operator*()

MeshElementIndex AMP::Mesh::BoxMesh::MeshElementIndexIterator::operator* ( ) const

◆ operator++()

MeshElementIndexIterator & AMP::Mesh::BoxMesh::MeshElementIndexIterator::operator++ ( )

◆ operator+=() [1/2]

MeshElementIndexIterator & AMP::Mesh::BoxMesh::MeshElementIndexIterator::operator+= ( const MeshElementIndexIterator it)

◆ operator+=() [2/2]

MeshElementIndexIterator & AMP::Mesh::BoxMesh::MeshElementIndexIterator::operator+= ( int  N)

◆ operator--()

MeshElementIndexIterator & AMP::Mesh::BoxMesh::MeshElementIndexIterator::operator-- ( )

◆ operator==()

bool AMP::Mesh::BoxMesh::MeshElementIndexIterator::operator== ( const MeshElementIndexIterator rhs) const

◆ operator[]()

MeshElementIndexIterator & AMP::Mesh::BoxMesh::MeshElementIndexIterator::operator[] ( int  )

◆ position()

size_t AMP::Mesh::BoxMesh::MeshElementIndexIterator::position ( ) const
inline

Definition at line 185 of file BoxMesh.h.

References d_pos.

◆ set()

void AMP::Mesh::BoxMesh::MeshElementIndexIterator::set ( uint32_t  i)
inline

Definition at line 183 of file BoxMesh.h.

References d_pos.

◆ size()

size_t AMP::Mesh::BoxMesh::MeshElementIndexIterator::size ( ) const
inline

Definition at line 184 of file BoxMesh.h.

References d_size.

Member Data Documentation

◆ d_checkBoundary

bool AMP::Mesh::BoxMesh::MeshElementIndexIterator::d_checkBoundary = false
private

Definition at line 191 of file BoxMesh.h.

◆ d_first

MeshElementIndex AMP::Mesh::BoxMesh::MeshElementIndexIterator::d_first
private

Definition at line 196 of file BoxMesh.h.

Referenced by first().

◆ d_globalSize

std::array<int, 3> AMP::Mesh::BoxMesh::MeshElementIndexIterator::d_globalSize = { 0, 0, 0 }
private

Definition at line 193 of file BoxMesh.h.

◆ d_isPeriodic

std::array<bool, 3> AMP::Mesh::BoxMesh::MeshElementIndexIterator::d_isPeriodic = { false, false, false }
private

Definition at line 192 of file BoxMesh.h.

◆ d_last

MeshElementIndex AMP::Mesh::BoxMesh::MeshElementIndexIterator::d_last
private

Definition at line 197 of file BoxMesh.h.

Referenced by last().

◆ d_pos

uint32_t AMP::Mesh::BoxMesh::MeshElementIndexIterator::d_pos = { 0 }
private

Definition at line 194 of file BoxMesh.h.

Referenced by position(), and set().

◆ d_size

uint32_t AMP::Mesh::BoxMesh::MeshElementIndexIterator::d_size = { 0 }
private

Definition at line 195 of file BoxMesh.h.

Referenced by empty(), and size().


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



Advanced Multi-Physics (AMP)
Oak Ridge National Laboratory
Idaho National Laboratory
Los Alamos National Laboratory
This page automatically produced from the
source code by doxygen
Last updated: Tue Mar 10 2026 13:06:43.
Comments on this page