20 #ifndef HPP_PINOCCHIO_DEVICE_HH
21 #define HPP_PINOCCHIO_DEVICE_HH
27 # include <boost/thread/mutex.hpp>
28 # include <boost/thread/condition_variable.hpp>
30 # include <hpp/util/debug.hh>
31 # include <hpp/util/serialization-fwd.hh>
82 const std::string&
name ()
const {
return name_;}
198 return jointConstraints_;
225 extraConfigSpace_.setDimension (dimension);
237 grippers_.push_back (gripper);
296 virtual std::ostream&
print (std::ostream& os)
const;
316 void init(
const DeviceWkPtr_t& weakPtr);
353 HPP_SERIALIZABLE_SPLIT();
357 const std::vector<std::string>& geometryNames);
360 {
return device.
print(os); }
Abstract class representing a Device.
Definition: device-sync.hh:30
Definition: center-of-mass-computation.hh:44
Definition: collision-object.hh:44
Definition: device-sync.hh:163
Robot with geometric and dynamic pinocchio.
Definition: device.hh:53
const LiegroupSpacePtr_t & configSpace() const
Returns a LiegroupSpace representing the configuration space.
Definition: device.hh:185
JointPtr_t getJointByName(const std::string &name) const
Configuration_t neutralConfiguration() const
Get the neutral configuration.
DevicePtr_t cloneConst() const
Clone as a CkwsDevice Both pinocchio objects model and data are copied. TODO: this method is not impl...
Definition: device.hh:77
CollisionObjectPtr_t objectAt(const size_type &i) const
void createGeomData()
Create Pinocchio geomData from model.
const std::string & name() const
Get name of device.
Definition: device.hh:82
void invalidate()
Definition: device.hh:335
Grippers_t & grippers()
Return list of grippers of the Device.
Definition: device.hh:241
DeviceData & d()
Definition: device.hh:332
Frame rootFrame() const
Get root frame.
fcl::AABB computeAABB() const
void addGripper(const GripperPtr_t &gripper)
Add a gripper to the Device.
Definition: device.hh:235
const Grippers_t & grippers() const
Return list of grippers of the Device.
Definition: device.hh:247
const DistanceResults_t & distanceResults() const
Get result of distance computations.
void setData(DataPtr_t dataPtr)
Set Pinocchio data corresponding to model.
Definition: device.hh:109
JointPtr_t getJointByBodyName(const std::string &name) const
void init(const DeviceWkPtr_t &weakPtr)
Initialization.
ExtraConfigSpace extraConfigSpace_
Definition: device.hh:342
std::vector< JointLinearConstraint > jointConstraints_
Definition: device.hh:344
size_type nbJoints() const
Get number of joints.
void setModel(ModelPtr_t modelPtr)
Set pinocchio model.
Definition: device.hh:103
DeviceData d_
Definition: device.hh:330
std::list< CollisionPair_t > CollisionPairs_t
Definition: device.hh:62
void setGeomModel(GeomModelPtr_t geomModelPtr)
Set pinocchio geom.
Definition: device.hh:106
void controlComputation(const Computation_t &flag)
ExtraConfigSpace & extraConfigSpace()
Definition: device.hh:212
size_type numberDof() const
void createData()
Create Pinocchio data from model.
Frame getFrameByName(const std::string &name) const
JointPtr_t getJointAtVelocityRank(const size_type &r) const
LiegroupSpacePtr_t configSpace_
Definition: device.hh:340
std::pair< JointPtr_t, JointPtr_t > CollisionPair_t
Collision pairs between bodies.
Definition: device.hh:61
Device()
Definition: device.hh:351
virtual void removeJoints(const std::vector< std::string > &jointNames, Configuration_t referenceConfig)
Remove some joints from the configuration space.
DeviceWkPtr_t weakPtr_
Definition: device.hh:345
BodyPtr_t obstacles() const
static DevicePtr_t createCopy(const DevicePtr_t &device)
Copy of a device.
JointPtr_t getJointAtConfigRank(const size_type &r) const
virtual void setDimensionExtraConfigSpace(const size_type &dimension)
Set dimension of extra configuration space.
Definition: device.hh:223
const ExtraConfigSpace & extraConfigSpace() const
Definition: device.hh:220
Grippers_t grippers_
Definition: device.hh:339
void numberDeviceData(const size_type &s)
Set the maximum number of concurrent use of the Device.
JointPtr_t jointAt(const size_type &i) const
Access i-th joint.
std::string name_
Definition: device.hh:337
bool collisionTest(const bool stopAtFirstCollision=true)
virtual DevicePtr_t clone() const
Clone as a CkwsDevice The pinocchio model is not copied (only copy the pointer). A new Pinocchio "dat...
Definition: device.hh:73
static DevicePtr_t createCopyConst(const DeviceConstPtr_t &device)
const LiegroupSpacePtr_t & RnxSOnConfigSpace() const
See Joint::RnxSOnConfigurationSpace.
Definition: device.hh:188
void setGeomData(GeomDataPtr_t geomDataPtr)
Set Pinocchio geomData corresponding to model.
Definition: device.hh:114
void addJointConstraint(JointLinearConstraint constraint)
Add a joint constraint.
size_type configSize() const
static DevicePtr_t create(const std::string &name)
Creation of a new device.
Device(const Device &device)
Copy Constructor.
size_type nbObjects() const
Number of objects.
void initCopy(const DeviceWkPtr_t &weakPtr, const Device &other)
Initialization of of a clone device.
JointPtr_t rootJoint() const
Get root joint.
size_type numberDeviceData() const
Get the number of DeviceData.
DeviceData const & d() const
Definition: device.hh:333
const std::vector< JointLinearConstraint > & jointConstraints() const
Definition: device.hh:196
Device(const std::string &name)
Constructor.
virtual std::ostream & print(std::ostream &os) const
Print object in a stream.
Robot frame.
Definition: frame.hh:31
Pool of objects.
Definition: pool.hh:49
#define HPP_PINOCCHIO_DLLAPI
Definition: config.hh:64
shared_ptr< Device > DevicePtr_t
Definition: fwd.hh:106
std::vector< fcl::DistanceResult > DistanceResults_t
Definition: fwd.hh:108
Computation_t
Definition: device-data.hh:30
shared_ptr< Joint > JointPtr_t
Definition: fwd.hh:111
shared_ptr< GeomModel > GeomModelPtr_t
Definition: fwd.hh:121
void replaceGeometryByConvexHull(GeomModel &geomModel, const std::vector< std::string > &geometryNames)
std::ostream & operator<<(std::ostream &os, const hpp::pinocchio::Device &device)
Definition: device.hh:359
shared_ptr< GeomData > GeomDataPtr_t
Definition: fwd.hh:123
shared_ptr< LiegroupSpace > LiegroupSpacePtr_t
Definition: fwd.hh:136
matrix_t::Index size_type
Definition: fwd.hh:84
shared_ptr< Body > BodyPtr_t
Definition: fwd.hh:96
double value_type
Definition: fwd.hh:40
vector_t Configuration_t
Definition: fwd.hh:76
std::vector< GripperPtr_t > Grippers_t
Definition: fwd.hh:114
::pinocchio::GeometryModel GeomModel
Definition: fwd.hh:67
shared_ptr< const Device > DeviceConstPtr_t
Definition: fwd.hh:107
shared_ptr< Gripper > GripperPtr_t
Definition: fwd.hh:113
shared_ptr< Model > ModelPtr_t
Definition: fwd.hh:116
shared_ptr< CollisionObject > CollisionObjectPtr_t
Definition: fwd.hh:104
shared_ptr< Data > DataPtr_t
Definition: fwd.hh:118
Utility functions.
Definition: body.hh:30
Definition: collision-object.hh:32
Definition: device-data.hh:42
void invalidate()
Definition: device-data.hh:46
Definition: device.hh:134
JointPtr_t joint
Definition: device.hh:136
value_type multiplier
Definition: device.hh:135