2 #ifndef _PROTO_DATA_INDEX_ 3 #define _PROTO_DATA_INDEX_ 9 class DisjointBoxLayout;
25 friend std::ostream& operator<<(std::ostream& a_os, const DataIndex<PP>& a_index);
33 inline DataIndex(
const std::shared_ptr<P> a_partition,
unsigned int a_index)
36 "DataIndex::Constructor | Error: Partition object pointer is null.");
80 inline operator int()
const {
return local(); };
bool operator!=(const DataIndex< P > &a_di) const
Inequality Operator.
Definition: Proto_DataIndex.H:67
int local() const
Local Value.
Definition: Proto_DataIndex.H:86
Distributed Data Iterator.
Definition: Proto_DataIndex.H:10
bool compatible(const DataIndex< P > &a_index) const
Compatibility Query.
Definition: Proto_DataIndex.H:103
~DataIndex()
Destructor.
Definition: Proto_DataIndex.H:55
Disjoint Box Layout.
Definition: Proto_DisjointBoxLayout.H:30
DataIndex(const DataIndex &other)
Copy constructor.
Definition: Proto_DataIndex.H:42
DataIndex & operator=(const DataIndex &other)
Copy assignment.
Definition: Proto_DataIndex.H:46
const P & partition() const
Definition: Proto_DataIndex.H:114
int procID()
Get Local Process ID.
Definition: Proto_SPMD.H:39
#define PROTO_ASSERT(stmt, args...)
Definition: Proto_PAssert.H:48
Definition: Proto_Array.H:17
int m_currentInt
Definition: Proto_DataIndex.H:119
Data Index.
Definition: Proto_DataIndex.H:20
DataIndex()
Default Constructor.
Definition: Proto_DataIndex.H:30
bool operator==(const DataIndex< P > &a_di) const
Equality Operator.
Definition: Proto_DataIndex.H:58
shared_ptr< P > m_partition
Definition: Proto_DataIndex.H:118
DataIndex(const std::shared_ptr< P > a_partition, unsigned int a_index)
Explicit Constructor.
Definition: Proto_DataIndex.H:33
bool compatible(const P &a_partition) const
Compatibility Query.
Definition: Proto_DataIndex.H:111
int global() const
Local Value.
Definition: Proto_DataIndex.H:96