14 #ifndef LSIMPLEMATRIX_H 15 #define LSIMPLEMATRIX_H 20 #include <Eigen/Dense> 28 template <
class FloatType,
int NumRows,
int NumCols>
31 INLINE
const FloatType &operator () (
int row,
int col)
const;
32 INLINE FloatType &operator () (
int row,
int col);
33 INLINE
const FloatType &operator () (
int col)
const;
34 INLINE FloatType &operator () (
int col);
37 FloatType _array[NumRows][NumCols];
44 #define UNALIGNED_LINMATH_MATRIX(FloatType, NumRows, NumCols) Eigen::Matrix<FloatType, NumRows, NumCols, Eigen::DontAlign | Eigen::RowMajor> 47 #define LINMATH_MATRIX(FloatType, NumRows, NumCols) Eigen::Matrix<FloatType, NumRows, NumCols, Eigen::RowMajor> 48 #else // LINMATH_ALIGN 49 #define LINMATH_MATRIX(FloatType, NumRows, NumCols) UNALIGNED_LINMATH_MATRIX(FloatType, NumRows, NumCols) 50 #endif // LINMATH_ALIGN 53 #define UNALIGNED_LINMATH_MATRIX(FloatType, NumRows, NumCols) LSimpleMatrix<FloatType, NumRows, NumCols> 54 #define LINMATH_MATRIX(FloatType, NumRows, NumCols) UNALIGNED_LINMATH_MATRIX(FloatType, NumRows, NumCols) 58 #if defined(LINMATH_ALIGN) && defined(HAVE_EIGEN) && defined(__AVX__) && defined(STDFLOAT_DOUBLE) 59 #define ALIGN_LINMATH ALIGN_32BYTE 60 #elif defined(LINMATH_ALIGN) 61 #define ALIGN_LINMATH ALIGN_16BYTE 64 #endif // LINMATH_ALIGN PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.
This class provides an underlying storage of the various linear-algebra classes (e....
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.