- ROS-I simple_message 源码分析:JointT
- ROS-I simple_message 源码分析:JointT
- ROS-I simple_message 源码分析:JointT
- ROS-I simple_message 源码分析:JointT
- ROS-I simple_message 源码分析:JointT
- ROS-I simple_message 源码分析:Messag
- ROS-I simple_message 源码分析:SmplMs
- ROS-I simple_message 源码分析:Messag
- ROS-I simple_message 源码分析:TypedM
- ROS-I simple_message 源码分析:RobotS
JointTraj封装的数据类型为JointTrajPt数组,设计该类的目的在于通过与机器人控制器一个简单的连接发送所有的轨迹点数据。
namespace industrial
{
namespace joint_traj
{
class JointTraj : public industrial::simple_serialize::SimpleSerialize
{
public:
JointTraj(void);
~JointTraj(void);
void init();
bool addPoint(industrial::joint_traj_pt::JointTrajPt & point);
bool getPoint(industrial::shared_types::shared_int index,
industrial::joint_traj_pt::JointTrajPt & point);
industrial::shared_types::shared_int size()
{
return this->size_;
}
bool isFull()
{
return this->size_ >= this->getMaxNumPoints();
}
int getMaxNumPoints() const
{
return MAX_NUM_POINTS;
}
void copyFrom(JointTraj &src);
bool operator==(JointTraj &rhs);
// Overrides - SimpleSerialize
bool load(industrial::byte_array::ByteArray *buffer);
bool unload(industrial::byte_array::ByteArray *buffer);
unsigned int byteLength()
{
industrial::joint_traj_pt::JointTrajPt pt;
return this->size() * pt.byteLength();
}
private:
static const industrial::shared_types::shared_int MAX_NUM_POINTS = 200;
industrial::joint_traj_pt::JointTrajPt points_[MAX_NUM_POINTS];
industrial::shared_types::shared_int size_;
};
}
}
MAX_NUM_POINTS定义了一条轨迹包含的最大路径点数目为200,addPoint和getPoint用于向points_中添加和获取JointTrajPt轨迹点,其余方法与JointTrajPt是类似的。
网友评论