20 #ifndef HPP_PINOCCHIO_DEVICE_SYNC_HH
21 #define HPP_PINOCCHIO_DEVICE_SYNC_HH
40 const Model&
model()
const { assert(model_);
return *model_; }
58 const Data &
data()
const { assert(d().data_);
return *d().data_; }
60 Data &
data() { assert(d().data_);
return *d().data_; }
Abstract class representing a Device.
Definition: device-sync.hh:30
ModelPtr_t model_
Definition: device-sync.hh:136
void computeFramesForwardKinematics()
Definition: device-sync.hh:123
Model & model()
Access to pinocchio model.
Definition: device-sync.hh:42
const ComJacobian_t & jacobianCenterOfMass() const
Get Jacobian of center of mass with respect to configuration.
const vector_t & currentVelocity() const
Get current velocity.
Definition: device-sync.hh:84
virtual bool currentConfiguration(ConfigurationIn_t configuration)
GeomDataPtr_t geomDataPtr()
Access to Pinocchio geomData/.
Definition: device-sync.hh:65
void computeForwardKinematics()
Compute forward kinematics.
Definition: device-sync.hh:120
GeomModelConstPtr_t geomModelPtr() const
Access to pinocchio geomModel.
Definition: device-sync.hh:45
const Configuration_t & currentConfiguration() const
Get current configuration.
Definition: device-sync.hh:77
void updateGeometryPlacements()
Update the geometry placement to the currentConfiguration.
Definition: device-sync.hh:125
const GeomData & geomData() const
Access to Pinocchio geomData/.
Definition: device-sync.hh:67
ModelConstPtr_t modelPtr() const
Access to pinocchio model.
Definition: device-sync.hh:36
GeomDataConstPtr_t geomDataPtr() const
Access to Pinocchio geomData/.
Definition: device-sync.hh:63
const vector_t & currentAcceleration() const
Get current acceleration.
Definition: device-sync.hh:90
virtual DeviceData & d()=0
AbstractDevice(const ModelPtr_t &m, const GeomModelPtr_t &gm)
virtual DeviceData const & d() const =0
DataPtr_t dataPtr()
Access to Pinocchio data/.
Definition: device-sync.hh:56
DataConstPtr_t dataPtr() const
Access to Pinocchio data/.
Definition: device-sync.hh:54
GeomData & geomData()
Access to Pinocchio geomData/.
Definition: device-sync.hh:69
const Data & data() const
Access to Pinocchio data/.
Definition: device-sync.hh:58
Data & data()
Access to Pinocchio data/.
Definition: device-sync.hh:60
const vector3_t & positionCenterOfMass() const
Get position of center of mass.
bool currentVelocity(vectorIn_t velocity)
Set current velocity.
GeomModel & geomModel()
Access to pinocchio geomModel.
Definition: device-sync.hh:51
GeomModelPtr_t geomModelPtr()
Access to pinocchio geomModel.
Definition: device-sync.hh:47
const Model & model() const
Access to pinocchio model.
Definition: device-sync.hh:40
const value_type & mass() const
Get mass of robot.
GeomModelPtr_t geomModel_
Definition: device-sync.hh:137
virtual void controlComputation(const Computation_t &flag)
ModelPtr_t modelPtr()
Access to pinocchio model.
Definition: device-sync.hh:38
bool currentAcceleration(vectorIn_t acceleration)
Set current acceleration.
const GeomModel & geomModel() const
Access to pinocchio geomModel.
Definition: device-sync.hh:49
Computation_t computationFlag() const
Get computation flag.
Definition: device-sync.hh:118
Definition: device-sync.hh:163
DeviceData const & d() const
Definition: device-sync.hh:179
DeviceData & d()
Definition: device-sync.hh:176
void lock()
Lock the current DeviceData.
bool isLocked() const
Check if the current DeviceData is locked.
Definition: device-sync.hh:184
DeviceSync(const DevicePtr_t &device, bool lock=true)
void unlock()
Unlock the current DeviceData.
#define HPP_PINOCCHIO_DLLAPI
Definition: config.hh:64
shared_ptr< Device > DevicePtr_t
Definition: fwd.hh:106
shared_ptr< const GeomData > GeomDataConstPtr_t
Definition: fwd.hh:124
Computation_t
Definition: device-data.hh:30
shared_ptr< GeomModel > GeomModelPtr_t
Definition: fwd.hh:121
::pinocchio::ModelTpl< value_type, 0, JointCollectionTpl > Model
Definition: fwd.hh:65
::pinocchio::GeometryData GeomData
Definition: fwd.hh:68
Eigen::Matrix< value_type, Eigen::Dynamic, 1 > vector_t
Definition: fwd.hh:75
shared_ptr< const Data > DataConstPtr_t
Definition: fwd.hh:119
shared_ptr< GeomData > GeomDataPtr_t
Definition: fwd.hh:123
Eigen::Matrix< value_type, 3, 1 > vector3_t
Definition: fwd.hh:86
shared_ptr< const Model > ModelConstPtr_t
Definition: fwd.hh:117
double value_type
Definition: fwd.hh:40
vector_t Configuration_t
Definition: fwd.hh:76
::pinocchio::DataTpl< value_type, 0, JointCollectionTpl > Data
Definition: fwd.hh:66
::pinocchio::GeometryModel GeomModel
Definition: fwd.hh:67
shared_ptr< const GeomModel > GeomModelConstPtr_t
Definition: fwd.hh:122
Eigen::Matrix< value_type, 3, Eigen::Dynamic > ComJacobian_t
Definition: fwd.hh:89
shared_ptr< Model > ModelPtr_t
Definition: fwd.hh:116
Eigen::Ref< const vector_t > vectorIn_t
Definition: fwd.hh:80
shared_ptr< Data > DataPtr_t
Definition: fwd.hh:118
Eigen::Ref< const Configuration_t > ConfigurationIn_t
Definition: fwd.hh:77
Utility functions.
Definition: body.hh:30
Definition: collision-object.hh:32
Definition: device-data.hh:42