![]() |
ImFusion SDK 4.3
|
Wrapper classes for using std::vector<Eigen::Matrix<T,N,1>> with arbitrary T and N as input of a non-template function. More...
Wrapper classes for using std::vector<Eigen::Matrix<T,N,1>> with arbitrary T and N as input of a non-template function.
TL/DR: Just pass a std::vector<vec2/3/4(f)> when you encounter these as a function argument.
Wrapper implicitly converts std::vectors of arbitrary Eigen vectors to std::vector<Eigen::Matrix<InsideType, InsideDimension, 1>>. Is based on std::vector<Eigen::Matrix<InsideType, InsideDimension, 1>> and mostly can be used as such. When Output is set to true, the final state of the wrapper content will be copied back into the input data. When Optional is set to true, the object may be invalid (empty initializer or nullptr), for use as optional arguments of a function. If the input Eigen objects have a different number of rows than InsideDimension, the missing elements are set to FillValue. This class is intended to be used for implicit conversions during function calls and should be used with care in any other context.
DANGER: Do NOT under any circumstances use a pointer to the std::vector base class to own this thing (no virtual destructor).
Example usage:
Classes | |
struct | EigenVectorWrapperBase |
struct | EigenVectorWrapperOptionalBase |
struct | EigenVectorWrapperOutputBase |