aligator
0.19.0
A versatile and efficient C++ library for real-time constrained trajectory optimization.
Toggle main menu visibility
Loading...
Searching...
No Matches
stage-data.hpp
Go to the documentation of this file.
1
3
#pragma once
4
5
#include "
aligator/context.hpp
"
6
7
namespace
aligator
{
8
10
template
<
typename
_Scalar>
struct
StageDataTpl
{
11
using
Scalar
= _Scalar;
12
ALIGATOR_DYNAMIC_TYPEDEFS
(
Scalar
);
13
14
using
StageModel
=
StageModelTpl<Scalar>
;
15
using
CostData
=
CostDataAbstractTpl<Scalar>
;
16
using
StageFunctionData
=
StageFunctionDataTpl<Scalar>
;
17
using
DynamicsData
=
ExplicitDynamicsDataTpl<Scalar>
;
18
20
std::vector<shared_ptr<StageFunctionData>>
constraint_data
;
22
shared_ptr<CostData>
cost_data
;
23
// Data for the system dynamics.
24
shared_ptr<DynamicsData>
dynamics_data
;
25
30
explicit
StageDataTpl
(
const
StageModel
&stage_model);
31
32
virtual
~StageDataTpl
() =
default
;
33
35
virtual
void
checkData
() {
36
constexpr
std::string_view msg =
"StageData integrity check failed."
;
37
if
(
cost_data
==
nullptr
)
38
ALIGATOR_RUNTIME_ERROR
(
"{} (cost_data cannot be nullptr)"
, msg);
39
if
(
dynamics_data
==
nullptr
)
40
ALIGATOR_RUNTIME_ERROR
(
"{} (dynamics_data cannot be nullptr)"
, msg);
41
}
42
};
43
#ifdef ALIGATOR_ENABLE_TEMPLATE_INSTANTIATION
44
extern
template
struct
StageDataTpl<context::Scalar>;
45
#endif
46
}
// namespace aligator
context.hpp
ALIGATOR_RUNTIME_ERROR
#define ALIGATOR_RUNTIME_ERROR(...)
Definition
exceptions.hpp:8
aligator
Main package namespace.
Definition
action-model-wrap.hpp:14
aligator::CostDataAbstractTpl
Data struct for CostAbstractTpl.
Definition
cost-abstract.hpp:73
aligator::ExplicitDynamicsDataTpl
Specific data struct for explicit dynamics ExplicitDynamicsModelTpl.
Definition
explicit-dynamics.hpp:64
aligator::StageDataTpl< Scalar >::dynamics_data
shared_ptr< DynamicsData > dynamics_data
Definition
stage-data.hpp:24
aligator::StageDataTpl< Scalar >::cost_data
shared_ptr< CostData > cost_data
Definition
stage-data.hpp:22
aligator::StageDataTpl< Scalar >::constraint_data
std::vector< shared_ptr< StageFunctionData > > constraint_data
Definition
stage-data.hpp:20
aligator::StageDataTpl::~StageDataTpl
virtual ~StageDataTpl()=default
aligator::StageDataTpl::StageDataTpl
StageDataTpl(const StageModel &stage_model)
Constructor.
aligator::StageDataTpl< Scalar >::CostData
CostDataAbstractTpl< Scalar > CostData
Definition
stage-data.hpp:15
aligator::StageDataTpl::ALIGATOR_DYNAMIC_TYPEDEFS
ALIGATOR_DYNAMIC_TYPEDEFS(Scalar)
aligator::StageDataTpl< Scalar >::StageModel
StageModelTpl< Scalar > StageModel
Definition
stage-data.hpp:14
aligator::StageDataTpl< Scalar >::Scalar
Scalar Scalar
Definition
stage-data.hpp:11
aligator::StageDataTpl< Scalar >::StageFunctionData
StageFunctionDataTpl< Scalar > StageFunctionData
Definition
stage-data.hpp:16
aligator::StageDataTpl< Scalar >::DynamicsData
ExplicitDynamicsDataTpl< Scalar > DynamicsData
Definition
stage-data.hpp:17
aligator::StageDataTpl::checkData
virtual void checkData()
Check data integrity.
Definition
stage-data.hpp:35
aligator::StageFunctionDataTpl
Base struct for function data.
Definition
function-abstract.hpp:73
aligator::StageModelTpl
A stage in the control problem.
Definition
stage-model.hpp:23
include
aligator
core
stage-data.hpp
Generated by
1.17.0