31 #ifndef HPP_MANIPULATION_HANDLE_HH
32 #define HPP_MANIPULATION_HANDLE_HH
36 #include <pinocchio/spatial/se3.hpp>
39 namespace manipulation {
70 const DeviceWkPtr_t& robot,
72 Handle* ptr =
new Handle(name, localPosition, robot, joint);
84 const std::string&
name()
const {
return name_; }
86 void name(
const std::string& n) { name_ = n; }
105 localPosition_ = localPosition;
109 void mask(
const std::vector<bool>& mask);
113 const std::vector<bool>&
mask()
const {
return mask_; }
119 const std::vector<bool>&
maskComp()
const {
return maskComp_; }
130 std::string name)
const;
139 std::string name)
const;
146 std::string name)
const;
158 std::string name)
const;
179 const DeviceWkPtr_t& robot,
const JointPtr_t& joint)
181 localPosition_(localPosition),
188 void init(HandleWkPtr_t weakPtr) { weakPtr_ = weakPtr; }
190 virtual std::ostream&
print(std::ostream& os)
const;
199 DeviceWkPtr_t robot_;
203 std::vector<bool> mask_;
205 std::vector<bool> maskComp_;
207 HandleWkPtr_t weakPtr_;
static HandlePtr_t create(const std::string &name, const Transform3s &localPosition, const DeviceWkPtr_t &robot, const JointPtr_t &joint)
Definition: handle.hh:68
void maskComp(const std::vector< bool > &mask)
Set mask of complement constraint.
void clearance(const value_type &clearance)
Definition: handle.hh:170
virtual ~Handle()
Definition: handle.hh:61
static std::string className
Definition: handle.hh:60
virtual ImplicitPtr_t createGrasp(const GripperPtr_t &gripper, std::string name) const
const std::vector< bool > & maskComp() const
Get mask of complement constraint.
Definition: handle.hh:119
void joint(const JointPtr_t &joint)
Set joint to which the handle is linked.
Definition: handle.hh:95
virtual ImplicitPtr_t createPreGrasp(const GripperPtr_t &gripper, const value_type &shift, std::string name) const
void init(HandleWkPtr_t weakPtr)
Definition: handle.hh:188
value_type clearance() const
Definition: handle.hh:166
virtual HandlePtr_t clone() const
Return a pointer to the copy of this.
virtual ImplicitPtr_t createGraspComplement(const GripperPtr_t &gripper, std::string name) const
virtual ImplicitPtr_t createGraspAndComplement(const GripperPtr_t &gripper, std::string name) const
void name(const std::string &n)
Set name.
Definition: handle.hh:86
virtual std::ostream & print(std::ostream &os) const
const std::vector< bool > & mask() const
Definition: handle.hh:113
void mask(const std::vector< bool > &mask)
Set constraint mask.
void localPosition(const Transform3s &localPosition)
Set local position in joint frame.
Definition: handle.hh:104
DevicePtr_t robot() const
Definition: handle.hh:97
friend std::ostream & operator<<(std::ostream &, const Handle &)
Handle(const std::string &name, const Transform3s &localPosition, const DeviceWkPtr_t &robot, const JointPtr_t &joint)
Definition: handle.hh:178
const std::string & name() const
Get name.
Definition: handle.hh:84
const JointPtr_t & joint() const
Get joint to which the handle is linked.
Definition: handle.hh:93
const Transform3s & localPosition() const
Get local position in joint frame.
Definition: handle.hh:101
#define HPP_MANIPULATION_DLLAPI
Definition: config.hh:88
pinocchio::JointPtr_t JointPtr_t
Definition: fwd.hh:43
pinocchio::GripperPtr_t GripperPtr_t
Definition: fwd.hh:51
constraints::ImplicitPtr_t ImplicitPtr_t
Definition: fwd.hh:131
core::Transform3s Transform3s
Definition: fwd.hh:91
std::ostream & operator<<(std::ostream &os, const Handle &handle)
core::value_type value_type
Definition: fwd.hh:89
shared_ptr< Device > DevicePtr_t
Definition: fwd.hh:40
shared_ptr< Handle > HandlePtr_t
Definition: fwd.hh:58