mirror of
https://gitlab.com/libeigen/eigen.git
synced 2026-04-10 11:34:33 +08:00
turn some macros intro constexpr functions
This commit is contained in:
committed by
Rasmus Munk Larsen
parent
0f36e42169
commit
c20e908ebc
@@ -319,12 +319,12 @@ public:
|
||||
check_template_params();
|
||||
// prevent conversions as:
|
||||
// Affine | AffineCompact | Isometry = Projective
|
||||
EIGEN_STATIC_ASSERT(EIGEN_IMPLIES(OtherMode==int(Projective), Mode==int(Projective)),
|
||||
EIGEN_STATIC_ASSERT(internal::check_implication(OtherMode==int(Projective), Mode==int(Projective)),
|
||||
YOU_PERFORMED_AN_INVALID_TRANSFORMATION_CONVERSION)
|
||||
|
||||
// prevent conversions as:
|
||||
// Isometry = Affine | AffineCompact
|
||||
EIGEN_STATIC_ASSERT(EIGEN_IMPLIES(OtherMode==int(Affine)||OtherMode==int(AffineCompact), Mode!=int(Isometry)),
|
||||
EIGEN_STATIC_ASSERT(internal::check_implication(OtherMode==int(Affine)||OtherMode==int(AffineCompact), Mode!=int(Isometry)),
|
||||
YOU_PERFORMED_AN_INVALID_TRANSFORMATION_CONVERSION)
|
||||
|
||||
enum { ModeIsAffineCompact = Mode == int(AffineCompact),
|
||||
@@ -1404,7 +1404,7 @@ struct transform_right_product_impl< TransformType, MatrixType, 2, 1> // rhs is
|
||||
Dim = TransformType::Dim,
|
||||
HDim = TransformType::HDim,
|
||||
OtherRows = MatrixType::RowsAtCompileTime,
|
||||
WorkingRows = EIGEN_PLAIN_ENUM_MIN(TransformMatrix::RowsAtCompileTime,HDim)
|
||||
WorkingRows = plain_enum_min(TransformMatrix::RowsAtCompileTime, HDim)
|
||||
};
|
||||
|
||||
typedef typename MatrixType::PlainObject ResultType;
|
||||
|
||||
@@ -34,7 +34,7 @@ template<typename MatrixType, typename OtherMatrixType>
|
||||
struct umeyama_transform_matrix_type
|
||||
{
|
||||
enum {
|
||||
MinRowsAtCompileTime = EIGEN_SIZE_MIN_PREFER_DYNAMIC(MatrixType::RowsAtCompileTime, OtherMatrixType::RowsAtCompileTime),
|
||||
MinRowsAtCompileTime = internal::min_size_prefer_dynamic(MatrixType::RowsAtCompileTime, OtherMatrixType::RowsAtCompileTime),
|
||||
|
||||
// When possible we want to choose some small fixed size value since the result
|
||||
// is likely to fit on the stack. So here, EIGEN_SIZE_MIN_PREFER_DYNAMIC is not what we want.
|
||||
@@ -104,7 +104,7 @@ umeyama(const MatrixBase<Derived>& src, const MatrixBase<OtherDerived>& dst, boo
|
||||
EIGEN_STATIC_ASSERT((internal::is_same<Scalar, typename internal::traits<OtherDerived>::Scalar>::value),
|
||||
YOU_MIXED_DIFFERENT_NUMERIC_TYPES__YOU_NEED_TO_USE_THE_CAST_METHOD_OF_MATRIXBASE_TO_CAST_NUMERIC_TYPES_EXPLICITLY)
|
||||
|
||||
enum { Dimension = EIGEN_SIZE_MIN_PREFER_DYNAMIC(Derived::RowsAtCompileTime, OtherDerived::RowsAtCompileTime) };
|
||||
enum { Dimension = internal::min_size_prefer_dynamic(Derived::RowsAtCompileTime, OtherDerived::RowsAtCompileTime) };
|
||||
|
||||
typedef Matrix<Scalar, Dimension, 1> VectorType;
|
||||
typedef Matrix<Scalar, Dimension, Dimension> MatrixType;
|
||||
|
||||
Reference in New Issue
Block a user