11 #ifndef _STRUCT_CURVE_ABC 12 #define _STRUCT_CURVE_ABC 22 template <
typename Time = double,
typename Numeric =
Time, std::size_t Dim = 3,
bool Safe =
false,
23 typename Point = Eigen::Matrix<Numeric, Dim, 1> >
24 struct curve_abc : std::unary_function<Time, Point> {
42 virtual point_t
operator()(
const time_t t)
const = 0;
48 virtual point_t
derivate(
const time_t t,
const std::size_t order)
const = 0;
54 virtual time_t
min()
const = 0;
56 virtual time_t
max()
const = 0;
62 #endif //_STRUCT_CURVE_ABC std::pair< time_t, time_t > timeRange()
Definition: curve_abc.h:58
Definition: bernstein.h:20
virtual point_t derivate(const time_t t, const std::size_t order) const =0
Evaluation of the derivative spline at time t.
double Time
Definition: effector_spline.h:27
double Numeric
Definition: effector_spline.h:26
Point point_t
Definition: curve_abc.h:25
curve_abc()
Constructor.
Definition: curve_abc.h:31
virtual ~curve_abc()
Destructor.
Definition: curve_abc.h:34
Represents a curve of dimension Dim is Safe is false, no verification is made on the evaluation of th...
Definition: curve_abc.h:24
virtual time_t min() const =0
Returns the minimum time for wich curve is defined.
virtual point_t operator()(const time_t t) const =0
Evaluation of the cubic spline at time t.
Time time_t
Definition: curve_abc.h:26
virtual time_t max() const =0
Returns the maximum time for wich curve is defined.
Eigen::Matrix< Numeric, 3, 1 > Point
Definition: effector_spline.h:28