diff --git a/include/eigenpy/stride.hpp b/include/eigenpy/stride.hpp index ab43349bf76647b8a14c1ecf1a9669f9b760eead..52f5656f1d36333aaafefcc2c971b0f70f04fe5d 100644 --- a/include/eigenpy/stride.hpp +++ b/include/eigenpy/stride.hpp @@ -10,17 +10,18 @@ namespace eigenpy { - template<typename MatType, bool IsVectorAtCompileTime = MatType::IsVectorAtCompileTime> + template<typename MatType, int InnerStride = Eigen::Dynamic, int OuterStride = Eigen::Dynamic, bool IsVectorAtCompileTime = MatType::IsVectorAtCompileTime> struct StrideType { - typedef Eigen::Stride<Eigen::Dynamic,Eigen::Dynamic> type; + typedef Eigen::Stride<OuterStride,InnerStride> type; }; - template<typename MatType> - struct StrideType<MatType,true> + template<typename MatType, int InnerStride, int OuterStride> + struct StrideType<MatType,InnerStride,OuterStride,true> { - typedef Eigen::InnerStride<Eigen::Dynamic> type; + typedef Eigen::InnerStride<InnerStride> type; }; + } #endif // ifndef __eigenpy_stride_hpp__