6#include <fmt/ostream.h>
22 std::vector<VectorXs>
lams;
24 std::vector<VectorXs>
vs;
42 const ConstVectorRef &x0);
45template <
typename Scalar>
47 return oss << fmt::format(
"{}", self);
52template <
typename Scalar>
struct fmt::formatter<
aligator::ResultsTpl<Scalar>> {
53 constexpr auto parse(format_parse_context &ctx)
const
54 ->
decltype(ctx.begin()) {
58 auto format(
const aligator::ResultsTpl<Scalar> &self,
59 format_context &ctx)
const ->
decltype(ctx.out()) {
60 auto s = self.printBase();
61 return fmt::format_to(ctx.out(),
"Results {{{}\n}}", s);
65#ifdef ALIGATOR_ENABLE_TEMPLATE_INSTANTIATION
66#include "./results.txx"
std::ostream & operator<<(std::ostream &oss, const ExplicitDynamicsDataTpl< S > &self)
std::vector< VectorXs > us
std::vector< VectorXs > xs
std::vector< MatrixXs > gains_
ResultsTpl(ResultsTpl &&)=default
ResultsTpl(const ResultsTpl &)=default
ResultsTpl(const TrajOptProblemTpl< Scalar > &problem)
Create the results struct from a problem (TrajOptProblemTpl) instance.
ALIGATOR_DYNAMIC_TYPEDEFS(Scalar)
std::vector< VectorXs > lams
void cycleAppend(const TrajOptProblemTpl< Scalar > &problem, const ConstVectorRef &x0)
ResultsTpl & operator=(ResultsTpl &&)=default
ResultsTpl & operator=(const ResultsTpl &)=default
std::vector< VectorXs > vs
ResultsBaseTpl< Scalar > Base
Trajectory optimization problem.