Chombo + EB  3.2
Public Member Functions | Private Types | Private Attributes | List of all members
ArSp::RSIndexer< Rank, DimT > Class Template Reference

Rank > 2 for zero-based subscripts and > 1 for subscript ranges. More...

#include <CHArray.H>

Inheritance diagram for ArSp::RSIndexer< Rank, DimT >:
Inheritance graph
[legend]

Public Member Functions

 RSIndexer ()
 
 RSIndexer (const IIx_t offset, const DimT &dim6, const DimT &dim5, const DimT &dim4, const DimT &dim3, const DimT &dim2, const DimT &dim1, const DimT &dim0)
 
 RSIndexer (const IIx_t offset, const DimT &dim5, const DimT &dim4, const DimT &dim3, const DimT &dim2, const DimT &dim1, const DimT &dim0)
 
 RSIndexer (const IIx_t offset, const DimT &dim4, const DimT &dim3, const DimT &dim2, const DimT &dim1, const DimT &dim0)
 
 RSIndexer (const IIx_t offset, const DimT &dim3, const DimT &dim2, const DimT &dim1, const DimT &dim0)
 
 RSIndexer (const IIx_t offset, const DimT &dim2, const DimT &dim1, const DimT &dim0)
 
 RSIndexer (const IIx_t offset, const DimT &dim1, const DimT &dim0)
 
void ixDefine (const IIx_t offset, const DimT &dim6, const DimT &dim5, const DimT &dim4, const DimT &dim3, const DimT &dim2, const DimT &dim1, const DimT &dim0)
 
void ixDefine (const IIx_t offset, const DimT &dim5, const DimT &dim4, const DimT &dim3, const DimT &dim2, const DimT &dim1, const DimT &dim0)
 
void ixDefine (const IIx_t offset, const DimT &dim4, const DimT &dim3, const DimT &dim2, const DimT &dim1, const DimT &dim0)
 
void ixDefine (const IIx_t offset, const DimT &dim3, const DimT &dim2, const DimT &dim1, const DimT &dim0)
 
void ixDefine (const IIx_t offset, const DimT &dim2, const DimT &dim1, const DimT &dim0)
 
void ixDefine (const IIx_t offset, const DimT &dim1, const DimT &dim0)
 
USz_t ixIndex1D (const USz_t size, const IIx_t i6, const IIx_t i5, const IIx_t i4, const IIx_t i3, const IIx_t i2, const IIx_t i1, const IIx_t i0) const
 
USz_t ixIndex1D (const USz_t size, const IIx_t i5, const IIx_t i4, const IIx_t i3, const IIx_t i2, const IIx_t i1, const IIx_t i0) const
 
USz_t ixIndex1D (const USz_t size, const IIx_t i4, const IIx_t i3, const IIx_t i2, const IIx_t i1, const IIx_t i0) const
 
USz_t ixIndex1D (const USz_t size, const IIx_t i3, const IIx_t i2, const IIx_t i1, const IIx_t i0) const
 
USz_t ixIndex1D (const USz_t size, const IIx_t i2, const IIx_t i1, const IIx_t i0) const
 
USz_t ixIndex1D (const USz_t size, const IIx_t i1, const IIx_t i0) const
 
USz_t ixDimSize (const USz_t size, const unsigned dim) const
 
IIx_t ixLowerBound (const unsigned dim) const
 
IIx_t ixUpperBound (const USz_t size, const unsigned dim) const
 
IIx_t ixTotalOffset () const
 
unsigned ixIV (const unsigned i) const
 

Private Types

typedef IndexerData< Rank, DimT > IxData
 

Private Attributes

RSIndexer< Rank-1, DimT > m_ixNext
 Next lower rank. More...
 
- Private Attributes inherited from ArSp::IndexerData< Rank, DimT >
USz_t m_ixStride
 Stride for this dimension. More...
 

Additional Inherited Members

- Private Member Functions inherited from ArSp::IndexerData< Rank, DimT >
 IndexerData ()
 
 IndexerData (const USz_t stride, const DimT &dim)
 
void ixDefineLowerBound (const DimT &dim)
 
IIx_t ixLowerBound () const
 
bool ixValidBounds (const IIx_t i, const USz_t size) const
 
IIx_t ixDimOffset () const
 

Detailed Description

template<unsigned Rank, typename DimT>
class ArSp::RSIndexer< Rank, DimT >

Rank > 2 for zero-based subscripts and > 1 for subscript ranges.

Member Typedef Documentation

◆ IxData

template<unsigned Rank, typename DimT >
typedef IndexerData<Rank, DimT> ArSp::RSIndexer< Rank, DimT >::IxData
private

Constructor & Destructor Documentation

◆ RSIndexer() [1/7]

template<unsigned Rank, typename DimT >
ArSp::RSIndexer< Rank, DimT >::RSIndexer ( )
inline

◆ RSIndexer() [2/7]

template<unsigned Rank, typename DimT >
ArSp::RSIndexer< Rank, DimT >::RSIndexer ( const IIx_t  offset,
const DimT &  dim6,
const DimT &  dim5,
const DimT &  dim4,
const DimT &  dim3,
const DimT &  dim2,
const DimT &  dim1,
const DimT &  dim0 
)
inline

◆ RSIndexer() [3/7]

template<unsigned Rank, typename DimT >
ArSp::RSIndexer< Rank, DimT >::RSIndexer ( const IIx_t  offset,
const DimT &  dim5,
const DimT &  dim4,
const DimT &  dim3,
const DimT &  dim2,
const DimT &  dim1,
const DimT &  dim0 
)
inline

◆ RSIndexer() [4/7]

template<unsigned Rank, typename DimT >
ArSp::RSIndexer< Rank, DimT >::RSIndexer ( const IIx_t  offset,
const DimT &  dim4,
const DimT &  dim3,
const DimT &  dim2,
const DimT &  dim1,
const DimT &  dim0 
)
inline

◆ RSIndexer() [5/7]

template<unsigned Rank, typename DimT >
ArSp::RSIndexer< Rank, DimT >::RSIndexer ( const IIx_t  offset,
const DimT &  dim3,
const DimT &  dim2,
const DimT &  dim1,
const DimT &  dim0 
)
inline

◆ RSIndexer() [6/7]

template<unsigned Rank, typename DimT >
ArSp::RSIndexer< Rank, DimT >::RSIndexer ( const IIx_t  offset,
const DimT &  dim2,
const DimT &  dim1,
const DimT &  dim0 
)
inline

◆ RSIndexer() [7/7]

template<unsigned Rank, typename DimT >
ArSp::RSIndexer< Rank, DimT >::RSIndexer ( const IIx_t  offset,
const DimT &  dim1,
const DimT &  dim0 
)
inline

Member Function Documentation

◆ ixDefine() [1/6]

template<unsigned Rank, typename DimT >
void ArSp::RSIndexer< Rank, DimT >::ixDefine ( const IIx_t  offset,
const DimT &  dim6,
const DimT &  dim5,
const DimT &  dim4,
const DimT &  dim3,
const DimT &  dim2,
const DimT &  dim1,
const DimT &  dim0 
)
inline

◆ ixDefine() [2/6]

template<unsigned Rank, typename DimT >
void ArSp::RSIndexer< Rank, DimT >::ixDefine ( const IIx_t  offset,
const DimT &  dim5,
const DimT &  dim4,
const DimT &  dim3,
const DimT &  dim2,
const DimT &  dim1,
const DimT &  dim0 
)
inline

◆ ixDefine() [3/6]

template<unsigned Rank, typename DimT >
void ArSp::RSIndexer< Rank, DimT >::ixDefine ( const IIx_t  offset,
const DimT &  dim4,
const DimT &  dim3,
const DimT &  dim2,
const DimT &  dim1,
const DimT &  dim0 
)
inline

◆ ixDefine() [4/6]

template<unsigned Rank, typename DimT >
void ArSp::RSIndexer< Rank, DimT >::ixDefine ( const IIx_t  offset,
const DimT &  dim3,
const DimT &  dim2,
const DimT &  dim1,
const DimT &  dim0 
)
inline

◆ ixDefine() [5/6]

template<unsigned Rank, typename DimT >
void ArSp::RSIndexer< Rank, DimT >::ixDefine ( const IIx_t  offset,
const DimT &  dim2,
const DimT &  dim1,
const DimT &  dim0 
)
inline

◆ ixDefine() [6/6]

template<unsigned Rank, typename DimT >
void ArSp::RSIndexer< Rank, DimT >::ixDefine ( const IIx_t  offset,
const DimT &  dim1,
const DimT &  dim0 
)
inline

References ArSp::sizeOfDim().

◆ ixIndex1D() [1/6]

template<unsigned Rank, typename DimT >
USz_t ArSp::RSIndexer< Rank, DimT >::ixIndex1D ( const USz_t  size,
const IIx_t  i6,
const IIx_t  i5,
const IIx_t  i4,
const IIx_t  i3,
const IIx_t  i2,
const IIx_t  i1,
const IIx_t  i0 
) const
inline

References CH_assert.

◆ ixIndex1D() [2/6]

template<unsigned Rank, typename DimT >
USz_t ArSp::RSIndexer< Rank, DimT >::ixIndex1D ( const USz_t  size,
const IIx_t  i5,
const IIx_t  i4,
const IIx_t  i3,
const IIx_t  i2,
const IIx_t  i1,
const IIx_t  i0 
) const
inline

References CH_assert.

◆ ixIndex1D() [3/6]

template<unsigned Rank, typename DimT >
USz_t ArSp::RSIndexer< Rank, DimT >::ixIndex1D ( const USz_t  size,
const IIx_t  i4,
const IIx_t  i3,
const IIx_t  i2,
const IIx_t  i1,
const IIx_t  i0 
) const
inline

References CH_assert.

◆ ixIndex1D() [4/6]

template<unsigned Rank, typename DimT >
USz_t ArSp::RSIndexer< Rank, DimT >::ixIndex1D ( const USz_t  size,
const IIx_t  i3,
const IIx_t  i2,
const IIx_t  i1,
const IIx_t  i0 
) const
inline

References CH_assert.

◆ ixIndex1D() [5/6]

template<unsigned Rank, typename DimT >
USz_t ArSp::RSIndexer< Rank, DimT >::ixIndex1D ( const USz_t  size,
const IIx_t  i2,
const IIx_t  i1,
const IIx_t  i0 
) const
inline

References CH_assert.

◆ ixIndex1D() [6/6]

template<unsigned Rank, typename DimT >
USz_t ArSp::RSIndexer< Rank, DimT >::ixIndex1D ( const USz_t  size,
const IIx_t  i1,
const IIx_t  i0 
) const
inline

References CH_assert.

◆ ixDimSize()

template<unsigned Rank, typename DimT >
USz_t ArSp::RSIndexer< Rank, DimT >::ixDimSize ( const USz_t  size,
const unsigned  dim 
) const
inline

◆ ixLowerBound()

template<unsigned Rank, typename DimT >
IIx_t ArSp::RSIndexer< Rank, DimT >::ixLowerBound ( const unsigned  dim) const
inline

◆ ixUpperBound()

template<unsigned Rank, typename DimT >
IIx_t ArSp::RSIndexer< Rank, DimT >::ixUpperBound ( const USz_t  size,
const unsigned  dim 
) const
inline

◆ ixTotalOffset()

template<unsigned Rank, typename DimT >
IIx_t ArSp::RSIndexer< Rank, DimT >::ixTotalOffset ( ) const
inline

◆ ixIV()

template<unsigned Rank, typename DimT >
unsigned ArSp::RSIndexer< Rank, DimT >::ixIV ( const unsigned  i) const
inline

References SpaceDim.

Member Data Documentation

◆ m_ixNext

template<unsigned Rank, typename DimT >
RSIndexer<Rank-1, DimT> ArSp::RSIndexer< Rank, DimT >::m_ixNext
private

Next lower rank.


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