WPILibC++ 2023.4.3-108-ge5452e3
Eigen::Stride< _OuterStrideAtCompileTime, _InnerStrideAtCompileTime > Class Template Reference

Holds strides information for Map. More...

#include </home/runner/work/allwpilib/allwpilib/wpimath/src/main/native/thirdparty/eigen/include/Eigen/src/Core/Stride.h>

Public Types

enum  { InnerStrideAtCompileTime = _InnerStrideAtCompileTime , OuterStrideAtCompileTime = _OuterStrideAtCompileTime }
 
typedef Eigen::Index Index
 

Public Member Functions

EIGEN_DEVICE_FUNC Stride ()
 Default constructor, for use when strides are fixed at compile time. More...
 
EIGEN_DEVICE_FUNC Stride (Index outerStride, Index innerStride)
 Constructor allowing to pass the strides at runtime. More...
 
EIGEN_DEVICE_FUNC Stride (const Stride &other)
 Copy constructor. More...
 
EIGEN_DEVICE_FUNC EIGEN_CONSTEXPR Index outer () const
 
EIGEN_DEVICE_FUNC EIGEN_CONSTEXPR Index inner () const
 

Protected Attributes

internal::variable_if_dynamic< Index, OuterStrideAtCompileTimem_outer
 
internal::variable_if_dynamic< Index, InnerStrideAtCompileTimem_inner
 

Detailed Description

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

Holds strides information for Map.

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:

Template Parameters
_OuterStrideAtCompileTimethe outer stride, or Dynamic if you want to specify it at runtime.
_InnerStrideAtCompileTimethe inner stride, or Dynamic if you want to specify it at runtime.

Here is an example:

Output:

Both strides can be negative, however, a negative stride of -1 cannot be specified at compiletime because of the ambiguity with Dynamic which is defined to -1 (historically, negative strides were not allowed).

See also
class InnerStride, class OuterStride, TopicStorageOrders

Member Typedef Documentation

◆ Index

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

Member Enumeration Documentation

◆ anonymous enum

template<int _OuterStrideAtCompileTime, int _InnerStrideAtCompileTime>
anonymous enum
Enumerator
InnerStrideAtCompileTime 
OuterStrideAtCompileTime 

Constructor & Destructor Documentation

◆ Stride() [1/3]

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

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

◆ Stride() [2/3]

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

Constructor allowing to pass the strides at runtime.

◆ Stride() [3/3]

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

Copy constructor.

Member Function Documentation

◆ inner()

template<int _OuterStrideAtCompileTime, int _InnerStrideAtCompileTime>
EIGEN_DEVICE_FUNC EIGEN_CONSTEXPR Index Eigen::Stride< _OuterStrideAtCompileTime, _InnerStrideAtCompileTime >::inner ( ) const
inline
Returns
the inner stride

◆ outer()

template<int _OuterStrideAtCompileTime, int _InnerStrideAtCompileTime>
EIGEN_DEVICE_FUNC EIGEN_CONSTEXPR Index Eigen::Stride< _OuterStrideAtCompileTime, _InnerStrideAtCompileTime >::outer ( ) const
inline
Returns
the outer stride

Member Data Documentation

◆ m_inner

template<int _OuterStrideAtCompileTime, int _InnerStrideAtCompileTime>
internal::variable_if_dynamic<Index, InnerStrideAtCompileTime> Eigen::Stride< _OuterStrideAtCompileTime, _InnerStrideAtCompileTime >::m_inner
protected

◆ m_outer

template<int _OuterStrideAtCompileTime, int _InnerStrideAtCompileTime>
internal::variable_if_dynamic<Index, OuterStrideAtCompileTime> Eigen::Stride< _OuterStrideAtCompileTime, _InnerStrideAtCompileTime >::m_outer
protected

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