Crocoddyl
Loading...
Searching...
No Matches
multibody.hpp
1
2
// BSD 3-Clause License
3
//
4
// Copyright (C) 2019-2022, University of Edinburgh
5
// Copyright note valid unless otherwise stated in individual files.
6
// All rights reserved.
8
9
#ifndef CROCODDYL_CORE_DATA_MULTIBODY_HPP_
10
#define CROCODDYL_CORE_DATA_MULTIBODY_HPP_
11
12
#include "crocoddyl/core/data-collector-base.hpp"
13
#include "crocoddyl/core/data/actuation.hpp"
14
#include "crocoddyl/core/data/joint.hpp"
15
#include "crocoddyl/multibody/fwd.hpp"
16
17
namespace
crocoddyl {
18
19
template
<
typename
Scalar>
20
struct
DataCollectorMultibodyTpl
:
virtual
DataCollectorAbstractTpl
<Scalar> {
21
EIGEN_MAKE_ALIGNED_OPERATOR_NEW
22
23
DataCollectorMultibodyTpl
(pinocchio::DataTpl<Scalar>*
const
data)
24
: pinocchio(data) {}
25
virtual
~DataCollectorMultibodyTpl
() {}
26
27
pinocchio::DataTpl<Scalar>* pinocchio;
28
};
29
30
template
<
typename
Scalar>
31
struct
DataCollectorActMultibodyTpl
:
DataCollectorMultibodyTpl
<Scalar>,
32
DataCollectorActuationTpl
<Scalar> {
33
EIGEN_MAKE_ALIGNED_OPERATOR_NEW
34
35
DataCollectorActMultibodyTpl
(
36
pinocchio::DataTpl<Scalar>*
const
pinocchio,
37
std::shared_ptr<
ActuationDataAbstractTpl<Scalar>
> actuation)
38
:
DataCollectorMultibodyTpl<Scalar>
(pinocchio),
39
DataCollectorActuationTpl<Scalar>
(actuation) {}
40
virtual
~DataCollectorActMultibodyTpl
() {}
41
};
42
43
template
<
typename
Scalar>
44
struct
DataCollectorJointActMultibodyTpl
:
DataCollectorActMultibodyTpl
<Scalar>,
45
DataCollectorJointTpl
<Scalar> {
46
EIGEN_MAKE_ALIGNED_OPERATOR_NEW
47
48
DataCollectorJointActMultibodyTpl
(
49
pinocchio::DataTpl<Scalar>*
const
pinocchio,
50
std::shared_ptr<
ActuationDataAbstractTpl<Scalar>
> actuation,
51
std::shared_ptr<
JointDataAbstractTpl<Scalar>
> joint)
52
:
DataCollectorActMultibodyTpl<Scalar>
(pinocchio, actuation),
53
DataCollectorJointTpl<Scalar>
(joint) {}
54
virtual
~DataCollectorJointActMultibodyTpl
() {}
55
};
56
57
}
// namespace crocoddyl
58
59
CROCODDYL_DECLARE_EXTERN_TEMPLATE_STRUCT(
crocoddyl::DataCollectorMultibodyTpl
)
60
CROCODDYL_DECLARE_EXTERN_TEMPLATE_STRUCT(
61
crocoddyl::DataCollectorActMultibodyTpl
)
62
CROCODDYL_DECLARE_EXTERN_TEMPLATE_STRUCT(
63
crocoddyl::DataCollectorJointActMultibodyTpl
)
64
65
#endif
// CROCODDYL_CORE_DATA_MULTIBODY_HPP_
crocoddyl::ActuationDataAbstractTpl
Definition
actuation-base.hpp:179
crocoddyl::DataCollectorAbstractTpl
Definition
data-collector-base.hpp:17
crocoddyl::DataCollectorActMultibodyTpl
Definition
multibody.hpp:32
crocoddyl::DataCollectorActuationTpl
Definition
actuation.hpp:19
crocoddyl::DataCollectorJointActMultibodyTpl
Definition
multibody.hpp:45
crocoddyl::DataCollectorJointTpl
Definition
joint.hpp:69
crocoddyl::DataCollectorMultibodyTpl
Definition
multibody.hpp:20
crocoddyl::JointDataAbstractTpl
Definition
joint.hpp:20
include
crocoddyl
multibody
data
multibody.hpp
Generated by
1.9.8