KrisLibrary  1.0.0
Classes | Public Member Functions | Public Attributes | List of all members
Stripe3Indices Struct Reference

A 3D lattice indexing into a linear sequence, in a striping pattern. More...

#include <indexing.h>

Classes

struct  iterator
 

Public Member Functions

 Stripe3Indices (const Stripe3Indices &rhs)
 
 Stripe3Indices (int isize, int jsize, int ksize, int base=0, int istride=1, int jstride=1, int kstride=1)
 
 Stripe3Indices (const Range3Indices &rhs)
 
 Stripe3Indices (int isize, int jsize, int ksize, const Range3Indices &subRange)
 
 Stripe3Indices (const RangeIndices &irange, const RangeIndices &jrange, const RangeIndices &krange)
 
void enumerate (std::vector< int > &indices)
 
int operator() (int i, int j, int k) const
 
int operator() (const IntTriple &t) const
 
bool contains (int index) const
 
IntTriple indexToElement (int index) const
 
void setRange (const Stripe3Indices &stripe, const Range3Indices &inds)
 
bool operator== (const Stripe3Indices &stripe) const
 
bool operator!= (const Stripe3Indices &stripe) const
 
iterator begin () const
 
iterator end () const
 

Public Attributes

int base
 
int isize
 
int jsize
 
int ksize
 
int istride
 
int jstride
 
int kstride
 

Detailed Description

A 3D lattice indexing into a linear sequence, in a striping pattern.

Typically used for 3D arrays laid out by face/row/column. Iterator class gives fast iteration over the range.


The documentation for this struct was generated from the following files: