OPAL (Object Oriented Parallel Accelerator Library) 2024.2
OPAL
DomainMap< Key, T, Touches, Contains, Split >::touch_iterator Class Reference

#include <DomainMap.h>

Collaboration diagram for DomainMap< Key, T, Touches, Contains, Split >::touch_iterator:

Public Types

typedef std::forward_iterator_tag iterator_category
typedef DomainMap_t::value_type value_type
typedef DomainMap_t::value_typepointer
typedef DomainMap_t::value_typereference
typedef ptrdiff_t difference_type

Public Member Functions

 touch_iterator ()
bool operator== (const touch_iterator &rhs) const
bool operator!= (const touch_iterator &rhs) const
value_typeoperator* ()
value_typeoperator-> ()
 operator iterator ()
touch_iteratoroperator++ ()

Private Member Functions

void op_pp ()

Private Attributes

Nodep
Node::cont_type::iterator v
Key TouchThis

Friends

class DomainMap< Key, T, Touches, Contains, Split >

Detailed Description

template<class Key, class T, class Touches, class Contains, class Split>
class DomainMap< Key, T, Touches, Contains, Split >::touch_iterator

Definition at line 378 of file DomainMap.h.

Member Typedef Documentation

◆ difference_type

template<class Key, class T, class Touches, class Contains, class Split>
typedef ptrdiff_t DomainMap< Key, T, Touches, Contains, Split >::touch_iterator::difference_type

Definition at line 386 of file DomainMap.h.

◆ iterator_category

template<class Key, class T, class Touches, class Contains, class Split>
typedef std::forward_iterator_tag DomainMap< Key, T, Touches, Contains, Split >::touch_iterator::iterator_category

Definition at line 382 of file DomainMap.h.

◆ pointer

template<class Key, class T, class Touches, class Contains, class Split>
typedef DomainMap_t::value_type* DomainMap< Key, T, Touches, Contains, Split >::touch_iterator::pointer

Definition at line 384 of file DomainMap.h.

◆ reference

template<class Key, class T, class Touches, class Contains, class Split>
typedef DomainMap_t::value_type& DomainMap< Key, T, Touches, Contains, Split >::touch_iterator::reference

Definition at line 385 of file DomainMap.h.

◆ value_type

template<class Key, class T, class Touches, class Contains, class Split>
typedef DomainMap_t::value_type DomainMap< Key, T, Touches, Contains, Split >::touch_iterator::value_type

Definition at line 383 of file DomainMap.h.

Constructor & Destructor Documentation

◆ touch_iterator()

template<class Key, class T, class Touches, class Contains, class Split>
DomainMap< Key, T, Touches, Contains, Split >::touch_iterator::touch_iterator ( )
inline

Definition at line 389 of file DomainMap.h.

References p.

Referenced by operator!=(), operator++(), and operator==().

Member Function Documentation

◆ op_pp()

template<class Key, class T, class Touches, class Contains, class Split>
void DomainMap< Key, T, Touches, Contains, Split >::touch_iterator::op_pp ( )
inlineprivate

Definition at line 427 of file DomainMap.h.

References DomainMap< Key, T, Touches, Contains, Split >::Node::Left, DomainMap< Key, T, Touches, Contains, Split >::Node::MyDomain, p, DomainMap< Key, T, Touches, Contains, Split >::Node::Parent, PAssert, DomainMap< Key, T, Touches, Contains, Split >::Node::Right, Touches< Dim >::test(), TouchThis, and v.

Referenced by operator++().

Here is the call graph for this function:

◆ operator iterator()

template<class Key, class T, class Touches, class Contains, class Split>
DomainMap< Key, T, Touches, Contains, Split >::touch_iterator::operator iterator ( )
inline

Definition at line 415 of file DomainMap.h.

References DomainMap< Key, T, Touches, Contains, Split >::iterator, p, and v.

Here is the call graph for this function:

◆ operator!=()

template<class Key, class T, class Touches, class Contains, class Split>
bool DomainMap< Key, T, Touches, Contains, Split >::touch_iterator::operator!= ( const touch_iterator & rhs) const
inline

Definition at line 396 of file DomainMap.h.

References touch_iterator().

Here is the call graph for this function:

◆ operator*()

template<class Key, class T, class Touches, class Contains, class Split>
value_type & DomainMap< Key, T, Touches, Contains, Split >::touch_iterator::operator* ( )
inline

Definition at line 402 of file DomainMap.h.

References p, PAssert, and v.

◆ operator++()

template<class Key, class T, class Touches, class Contains, class Split>
touch_iterator & DomainMap< Key, T, Touches, Contains, Split >::touch_iterator::operator++ ( )
inline

Definition at line 421 of file DomainMap.h.

References op_pp(), and touch_iterator().

Here is the call graph for this function:

◆ operator->()

template<class Key, class T, class Touches, class Contains, class Split>
value_type * DomainMap< Key, T, Touches, Contains, Split >::touch_iterator::operator-> ( )
inline

Definition at line 408 of file DomainMap.h.

References p, and PAssert.

◆ operator==()

template<class Key, class T, class Touches, class Contains, class Split>
bool DomainMap< Key, T, Touches, Contains, Split >::touch_iterator::operator== ( const touch_iterator & rhs) const
inline

Definition at line 392 of file DomainMap.h.

References p, touch_iterator(), and v.

Here is the call graph for this function:

◆ DomainMap< Key, T, Touches, Contains, Split >

template<class Key, class T, class Touches, class Contains, class Split>
friend class DomainMap< Key, T, Touches, Contains, Split >
friend

Definition at line 373 of file DomainMap.h.

References v.

Member Data Documentation

◆ p

template<class Key, class T, class Touches, class Contains, class Split>
Node* DomainMap< Key, T, Touches, Contains, Split >::touch_iterator::p
private

◆ TouchThis

template<class Key, class T, class Touches, class Contains, class Split>
Key DomainMap< Key, T, Touches, Contains, Split >::touch_iterator::TouchThis
private

◆ v

template<class Key, class T, class Touches, class Contains, class Split>
Node::cont_type::iterator DomainMap< Key, T, Touches, Contains, Split >::touch_iterator::v
private

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