25 #ifndef EIGEN_SPLINES_FWD_H
26 #define EIGEN_SPLINES_FWD_H
32 template <
typename Scalar,
int Dim,
int Degree = Dynamic>
class Spline;
34 template <
typename SplineType,
int DerivativeOrder = Dynamic >
struct SplineTraits {};
40 template <
typename _Scalar,
int _Dim,
int _Degree>
44 enum { Dimension = _Dim };
45 enum { Degree = _Degree };
48 enum { NumOfDerivativesAtCompileTime = OrderAtCompileTime };
54 typedef Array<Scalar,Dynamic,Dynamic,RowMajor,NumOfDerivativesAtCompileTime,OrderAtCompileTime>
BasisDerivativeType;
57 typedef Array<Scalar,Dimension,Dynamic,ColMajor,Dimension,NumOfDerivativesAtCompileTime>
DerivativeType;
75 template <
typename _Scalar,
int _Dim,
int _Degree,
int _DerivativeOrder >
76 struct SplineTraits<
Spline<_Scalar, _Dim, _Degree>, _DerivativeOrder > :
public SplineTraits< Spline<_Scalar, _Dim, _Degree> >
79 enum { NumOfDerivativesAtCompileTime = _DerivativeOrder==
Dynamic ?
Dynamic : _DerivativeOrder+1 };
82 typedef Array<_Scalar,Dynamic,Dynamic,RowMajor,NumOfDerivativesAtCompileTime,OrderAtCompileTime>
BasisDerivativeType;
85 typedef Array<_Scalar,_Dim,Dynamic,ColMajor,_Dim,NumOfDerivativesAtCompileTime>
DerivativeType;
101 #endif // EIGEN_SPLINES_FWD_H