37 #ifndef ijkAddressing_H 38 #define ijkAddressing_H 71 inline ijkAddressing(
const label ni,
const label nj,
const label nk);
79 inline bool empty()
const;
88 inline label
size()
const;
97 inline void reset(
const label ni,
const label nj,
const label nk);
103 inline label
index(
const label i,
const label j,
const label
k)
const;
121 const bool allowExtra =
false 129 const bool allowExtra =
false 139 inline void checkSizes(
const label nTotal)
const;
label k
Boltzmann constant.
void reset(const label ni, const label nj, const label nk)
Change the sizing parameters.
void checkSizes() const
Check that all components of sizes() are non-negative.
const labelVector & sizes() const
The (i,j,k) addressing dimensions.
label index(const label i, const label j, const label k) const
Linear addressing index (offset) for an (i,j,k) position.
void checkIndex(const label i, const label j, const label k, const bool allowExtra=false) const
Check indices are within ni,nj,nk range.
ijkAddressing()
Construct zero-size addressing.
A simple i-j-k (row-major order) to linear addressing.
void clear()
Reset to (0,0,0) sizing.
bool empty() const
Addressing is considered empty if any component is zero.
label size() const
Return the total i*j*k size.
components
Component labeling enumeration.