template<int _OuterStrideAtCompileTime, int _InnerStrideAtCompileTime>
Eigen::Stride class

Holds strides information for Map.

Template parameters
_OuterStrideAtCompileTime the outer stride, or Dynamic if you want to specify it at runtime.
_InnerStrideAtCompileTime the inner stride, or Dynamic if you want to specify it at runtime.

This class holds the strides information for mapping arrays with strides with class Map.

It holds two values: the inner stride and the outer stride.

The inner stride is the pointer increment between two consecutive entries within a given row of a row-major matrix or within a given column of a column-major matrix.

The outer stride is the pointer increment between two consecutive rows of a row-major matrix or between two consecutive columns of a column-major matrix.

These two values can be passed either at compile-time as template parameters, or at runtime as arguments to the constructor.

Indeed, this class takes two template parameters: Here is an example:

int array[24];
for(int i = 0; i < 24; ++i) array[i] = i;
cout << Map<MatrixXi, 0, Stride<Dynamic,2> >
         (array, 3, 3, Stride<Dynamic,2>(8, 2))
     << endl;

Output:

 0  8 16
 2 10 18
 4 12 20

Public types

using Index = Eigen::Index deprecated

Constructors, destructors, conversion operators

Stride()
Stride(Index outerStride, Index innerStride)
Stride(const Stride& other)

Public functions

auto inner() const -> Index
auto outer() const -> Index

Typedef documentation

template<int _OuterStrideAtCompileTime, int _InnerStrideAtCompileTime>
typedef Eigen::Index Eigen::Stride<_OuterStrideAtCompileTime, _InnerStrideAtCompileTime>::Index

Function documentation

template<int _OuterStrideAtCompileTime, int _InnerStrideAtCompileTime>
Eigen::Stride<_OuterStrideAtCompileTime, _InnerStrideAtCompileTime>::Stride()

Default constructor, for use when strides are fixed at compile time

template<int _OuterStrideAtCompileTime, int _InnerStrideAtCompileTime>
Eigen::Stride<_OuterStrideAtCompileTime, _InnerStrideAtCompileTime>::Stride(Index outerStride, Index innerStride)

Constructor allowing to pass the strides at runtime

template<int _OuterStrideAtCompileTime, int _InnerStrideAtCompileTime>
Eigen::Stride<_OuterStrideAtCompileTime, _InnerStrideAtCompileTime>::Stride(const Stride& other)

Copy constructor

template<int _OuterStrideAtCompileTime, int _InnerStrideAtCompileTime>
Index Eigen::Stride<_OuterStrideAtCompileTime, _InnerStrideAtCompileTime>::inner() const

Returns the inner stride

template<int _OuterStrideAtCompileTime, int _InnerStrideAtCompileTime>
Index Eigen::Stride<_OuterStrideAtCompileTime, _InnerStrideAtCompileTime>::outer() const

Returns the outer stride