45 #ifndef FASTRACK_DYNAMICS_RELATIVE_DYNAMICS_H 46 #define FASTRACK_DYNAMICS_RELATIVE_DYNAMICS_H 55 using state::RelativeState;
56 using control::ControlBound;
58 template <
typename TS,
typename TC,
typename PS,
typename PC>
66 virtual std::unique_ptr<RelativeState<TS, PS>>
67 Evaluate(
const TS &tracker_x,
const TC &tracker_u,
const PS &planner_x,
68 const PC &planner_u)
const = 0;
73 virtual TC
OptimalControl(
const TS &tracker_x,
const PS &planner_x,
74 const RelativeState<TS, PS> &value_gradient,
75 const ControlBound<TC> &tracker_u_bound,
76 const ControlBound<PC> &planner_u_bound)
const = 0;
virtual ~RelativeDynamics()
virtual std::unique_ptr< RelativeState< TS, PS > > Evaluate(const TS &tracker_x, const TC &tracker_u, const PS &planner_x, const PC &planner_u) const =0
virtual TC OptimalControl(const TS &tracker_x, const PS &planner_x, const RelativeState< TS, PS > &value_gradient, const ControlBound< TC > &tracker_u_bound, const ControlBound< PC > &planner_u_bound) const =0