25 #include <pilz_msgs/MotionSequenceRequest.h> 50 T&
getCmd(
const size_t index_cmd);
53 const T&
getCmd(
const size_t index_cmd)
const;
70 void setBlendRadius(
const size_t index_cmd,
const double blend_radius);
76 void erase(
const size_t start,
const size_t end);
78 pilz_msgs::MotionSequenceRequest
toRequest()
const;
82 std::vector<TCmdRadiiPair>
cmds_;
87 cmds_.emplace_back(cmd, blend_radius);
98 return boost::get<T>(
cmds_.at(index_cmd).first);
104 return boost::get<T>(
cmds_.at(index_cmd).first);
109 return cmds_.at(index_cmd).second;
114 cmds_.at(index_cmd).second = blend_radius;
125 return cmds_.at(index_cmd).first.type() ==
typeid(T);
double getBlendRadius(const size_t index_cmd) const
Base class for commands storing all general information of a command.
void setBlendRadius(const size_t index_cmd, const double blend_radius)
size_t size() const
Returns the number of commands.
void erase(const size_t start, const size_t end)
Deletes all commands from index 'start' to index 'end'.
T & getCmd(const size_t index_cmd)
std::pair< CmdVariant, double > TCmdRadiiPair
Data class storing all information regarding a Sequence command.
bool cmdIsOfType(const size_t index_cmd) const
void add(const CmdVariant &cmd, const double blend_radius=0.)
Adds a command to the end of the sequence.
boost::variant< PtpJoint, PtpJointCart, PtpCart, LinJoint, LinCart, CircCenterCart, CircInterimCart, CircJointCenterCart, CircJointInterimCart, Gripper > CmdVariant
pilz_msgs::MotionSequenceRequest toRequest() const
std::vector< TCmdRadiiPair > cmds_
void setAllBlendRadiiToZero()