42 #define AFF_STRIDEDSTEPPER_CC_VERSION \ 43 "AFF_STRIDEDSTEPPER_DEF_H V1.2" 53 Mshape(strided), Mcurrent(strided.first_offset()),
54 Mindex(strided.first()), Mcarry(0), Mvalid(true),
55 Mfirst_offset(strided.first_offset()),
56 Mlast_offset(strided.last_offset())
StridedStepper & decr()
decrement offset - return reference to itself
Root namespace of library.
Shape for a rectangular array layout.
StridedStepper(const Strided &strided)
only non-copy constructor
Tsubscript Mcurrent
hold current position offset to memory
bool more() const
returns true if there are more elements in incr-direction
StridedStepper & incr()
increment offset - return reference to itself
Stepper class for strided shapes (prototypes)
const Tsubscript & first(const Tsubscript &i) const
first index of dimension
const Tsize & stride(const Tsubscript &i) const
stride of dimension
static const Tdim Mmax_dimen
instantiate static member (otherwise the linker won't find it)
TIndexVec Mindex
hold current index vector
TSizeVec Mcarry
hold carry values
Tsize size() const
total number of mapped elements
A stepper for all strided shapes.
ptrdiff_t Tsubscript
Type to hold an array's subscript value.
bool less() const
returns true if there are more elements in decr-direction
const Tshape & Mshape
hold reference to shape
const Tsubscript & last(const Tsubscript &i) const
last index of dimension