8 #pragma GCC diagnostic push 9 #pragma GCC diagnostic ignored "-Wunused-parameter" 10 #pragma GCC diagnostic ignored "-Wunused-value" 12 #pragma GCC diagnostic pop 22 template <
class RBDTrait,
template <
typename>
class LinkDataMapT,
class U>
26 EIGEN_MAKE_ALIGNED_OPERATOR_NEW
29 : homogeneousTransforms_(),
34 jSim_(inertiaProperties_, forceTransforms_),
35 forwardDynamics_(inertiaProperties_, motionTransforms_),
36 inverseDynamics_(inertiaProperties_, motionTransforms_){};
38 typedef typename RBDTrait::S
SCALAR;
44 static const size_t NJOINTS = RBDTrait::joints_count;
45 static const size_t NLINKS = RBDTrait::links_count;
48 typedef std::shared_ptr<specialized_t>
Ptr_t;
64 typedef Eigen::Matrix<SCALAR, 6, NJOINTS>
Jacobian;
80 const Jacobians&
jacobians()
const {
return jacobians_; };
83 JSIM&
jSim() {
return jSim_; }
84 const JSIM&
jSim()
const {
return jSim_; }
120 return UTILS::getTransformLinkBaseById(
forceTransforms(), linkId, jointPosition);
149 return UTILS::getJacobianBaseEEbyId(
jacobians(), eeId, jointPosition);
204 HomogeneousTransforms homogeneousTransforms_;
205 MotionTransforms motionTransforms_;
206 ForceTransforms forceTransforms_;
207 Jacobians jacobians_;
208 InertiaProperties inertiaProperties_;
210 ForwardDynamics forwardDynamics_;
211 InverseDynamics inverseDynamics_;
RBDTrait::Jacobians Jacobians
Definition: RobCoGenContainer.h:53
RBDTrait::MotionTransforms MotionTransforms
Definition: RobCoGenContainer.h:51
static const size_t NJOINTS
Definition: RobCoGenContainer.h:44
STORAGE_TYPE
the orientation can either be stored as EulerAngles or as quaternion.
Definition: RigidBodyPose.h:38
RobCoGenContainer< RBDTrait, LinkDataMapT, UTILS > specialized_t
Definition: RobCoGenContainer.h:47
ForwardDynamics & forwardDynamics()
Definition: RobCoGenContainer.h:85
RBDTrait::HomogeneousTransforms HomogeneousTransforms
Definition: RobCoGenContainer.h:50
Eigen::Matrix< SCALAR, 4, 4 > HomogeneousTransform
Definition: RobCoGenContainer.h:62
Matrix3Tpl getEERotInBase(size_t eeId, const typename JointState< NJOINTS, SCALAR >::Position &jointPosition)
Definition: RobCoGenContainer.h:197
size_t eeId
Definition: rbdJITtests.h:24
const InverseDynamics & inverseDynamics() const
Definition: RobCoGenContainer.h:88
MotionTransforms & motionTransforms()
Definition: RobCoGenContainer.h:75
Pose of a single rigid body.
Definition: RigidBodyPose.h:29
JSIM & jSim()
Definition: RobCoGenContainer.h:83
tpl::JSIM< rbd::DoubleTrait > JSIM
Definition: jsim.h:154
joint state and joint velocity
Definition: JointState.h:21
tpl::InertiaProperties< rbd::DoubleTrait > InertiaProperties
Definition: inertia_properties.h:273
EIGEN_MAKE_ALIGNED_OPERATOR_NEW RobCoGenContainer()
Definition: RobCoGenContainer.h:28
InverseDynamics & inverseDynamics()
Definition: RobCoGenContainer.h:87
const JSIM & jSim() const
Definition: RobCoGenContainer.h:84
RBDTrait::JSIM JSIM
Definition: RobCoGenContainer.h:55
Position3Tpl getEEPositionInBase(size_t eeId, const typename JointState< NJOINTS, SCALAR >::Position &jointPosition)
Get a force transformation from base to an endeffector provided an endeffector id.
Definition: RobCoGenContainer.h:172
std::shared_ptr< specialized_t > Ptr_t
Definition: RobCoGenContainer.h:48
U UTILS
Definition: RobCoGenContainer.h:42
Eigen::Matrix< SCALAR, 3, 3 > Matrix3Tpl
Definition: RobCoGenContainer.h:65
RBDTrait::LinkID LinkIdentifiers
Definition: RobCoGenContainer.h:58
ForceTransform getForceTransformLinkBaseById(size_t linkId, const typename JointState< NJOINTS, SCALAR >::Position &jointPosition)
Get a force transformation from link to base provided a link id.
Definition: RobCoGenContainer.h:117
Eigen::Matrix< SCALAR, 3, 1 > Vector3Tpl
Definition: RobCoGenContainer.h:68
HomogeneousTransform getHomogeneousTransformBaseLinkById(size_t linkId, const typename JointState< NJOINTS, SCALAR >::Position &jointPosition)
Get a homogeneous transformation from link to base provided a link id.
Definition: RobCoGenContainer.h:100
LinkDataMapT< Eigen::Matrix< SCALAR, 6, 1 > > LinkForceMap
Definition: RobCoGenContainer.h:60
InertiaProperties & inertiaProperties()
Definition: RobCoGenContainer.h:81
RBDTrait::FwdDynEngine ForwardDynamics
Definition: RobCoGenContainer.h:56
const Jacobians & jacobians() const
Definition: RobCoGenContainer.h:80
Container class containing all robcogen classes.
Definition: RobCoGenContainer.h:23
Definition: RigidBodyPose.h:41
Jacobian getJacobianBaseEEbyId(size_t eeId, const typename JointState< NJOINTS, SCALAR >::Position &jointPosition)
Get the end-effector Jacobian expressed in the base frame.
Definition: RobCoGenContainer.h:147
Jacobians & jacobians()
Definition: RobCoGenContainer.h:79
static const size_t NLINKS
Definition: RobCoGenContainer.h:45
RBDTrait::ForceTransforms ForceTransforms
Definition: RobCoGenContainer.h:52
RBDTrait::InvDynEngine InverseDynamics
Definition: RobCoGenContainer.h:57
kindr::Position< SCALAR, 3 > Position3Tpl
Definition: RobCoGenContainer.h:67
Eigen::Matrix< SCALAR, 6, NJOINTS > Jacobian
Definition: RobCoGenContainer.h:64
RBDTrait::S SCALAR
Definition: RobCoGenContainer.h:36
RBDTrait TRAIT
Definition: RobCoGenContainer.h:40
const HomogeneousTransforms & homogeneousTransforms() const
Definition: RobCoGenContainer.h:74
HomogeneousTransforms & homogeneousTransforms()
Definition: RobCoGenContainer.h:73
RigidBodyPoseTpl getEEPoseInBase(size_t eeId, const typename JointState< NJOINTS, SCALAR >::Position &jointPosition, typename RigidBodyPoseTpl::STORAGE_TYPE storage=RigidBodyPoseTpl::EULER)
Get the endeffector pose expressed in the base frame.
Definition: RobCoGenContainer.h:185
const ForceTransforms & forceTransforms() const
Definition: RobCoGenContainer.h:78
const ForwardDynamics & forwardDynamics() const
Definition: RobCoGenContainer.h:86
HomogeneousTransform getHomogeneousTransformBaseEEById(size_t eeId, const typename JointState< NJOINTS, SCALAR >::Position &jointPosition)
Get a homogeneous transformation from base to an endeffector provided an endeffector id...
Definition: RobCoGenContainer.h:134
Eigen::Matrix< SCALAR, 6, 6 > ForceTransform
Definition: RobCoGenContainer.h:63
RBDTrait::InertiaProperties InertiaProperties
Definition: RobCoGenContainer.h:54
const MotionTransforms & motionTransforms() const
Definition: RobCoGenContainer.h:76
ForceTransforms & forceTransforms()
Definition: RobCoGenContainer.h:77
const InertiaProperties & inertiaProperties() const
Definition: RobCoGenContainer.h:82