Crocoddyl
multibody.hpp
1
// 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 <pinocchio/multibody/data.hpp>
13
14
#include "crocoddyl/core/data-collector-base.hpp"
15
#include "crocoddyl/core/data/actuation.hpp"
16
#include "crocoddyl/core/data/joint.hpp"
17
#include "crocoddyl/multibody/fwd.hpp"
18
19
namespace
crocoddyl {
20
21
template
<
typename
Scalar>
22
struct
DataCollectorMultibodyTpl
:
virtual
DataCollectorAbstractTpl
<Scalar> {
23
EIGEN_MAKE_ALIGNED_OPERATOR_NEW
24
25
DataCollectorMultibodyTpl
(pinocchio::DataTpl<Scalar>*
const
data)
26
: pinocchio(data) {}
27
virtual
~
DataCollectorMultibodyTpl
() {}
28
29
pinocchio::DataTpl<Scalar>* pinocchio;
30
};
31
32
template
<
typename
Scalar>
33
struct
DataCollectorActMultibodyTpl
:
DataCollectorMultibodyTpl
<Scalar>,
34
DataCollectorActuationTpl
<Scalar> {
35
EIGEN_MAKE_ALIGNED_OPERATOR_NEW
36
37
DataCollectorActMultibodyTpl
(
38
pinocchio::DataTpl<Scalar>*
const
pinocchio,
39
boost::shared_ptr<
ActuationDataAbstractTpl<Scalar>
> actuation)
40
:
DataCollectorMultibodyTpl<Scalar>
(pinocchio),
41
DataCollectorActuationTpl<Scalar>
(actuation) {}
42
virtual
~
DataCollectorActMultibodyTpl
() {}
43
};
44
45
template
<
typename
Scalar>
46
struct
DataCollectorJointActMultibodyTpl
:
DataCollectorActMultibodyTpl
<Scalar>,
47
DataCollectorJointTpl
<Scalar> {
48
EIGEN_MAKE_ALIGNED_OPERATOR_NEW
49
50
DataCollectorJointActMultibodyTpl
(
51
pinocchio::DataTpl<Scalar>*
const
pinocchio,
52
boost::shared_ptr<
ActuationDataAbstractTpl<Scalar>
> actuation,
53
boost::shared_ptr<
JointDataAbstractTpl<Scalar>
> joint)
54
:
DataCollectorActMultibodyTpl<Scalar>
(pinocchio, actuation),
55
DataCollectorJointTpl<Scalar>
(joint) {}
56
virtual
~
DataCollectorJointActMultibodyTpl
() {}
57
};
58
59
}
// namespace crocoddyl
60
61
#endif
// CROCODDYL_CORE_DATA_MULTIBODY_HPP_
crocoddyl::ActuationDataAbstractTpl
Definition:
actuation-base.hpp:177
crocoddyl::DataCollectorAbstractTpl
Definition:
data-collector-base.hpp:19
crocoddyl::DataCollectorActMultibodyTpl
Definition:
multibody.hpp:34
crocoddyl::DataCollectorActuationTpl
Definition:
actuation.hpp:21
crocoddyl::DataCollectorJointActMultibodyTpl
Definition:
multibody.hpp:47
crocoddyl::DataCollectorJointTpl
Definition:
joint.hpp:71
crocoddyl::DataCollectorMultibodyTpl
Definition:
multibody.hpp:22
crocoddyl::JointDataAbstractTpl
Definition:
joint.hpp:22
include
crocoddyl
multibody
data
multibody.hpp
Generated by
1.9.1