- 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
JointTrajPtFullMessage类封装的是JointTrajPtFull数据类型,用途是实现与SimpleMessage的双向数据转换,给出源代码:
namespace industrial
{
namespace joint_traj_pt_full_message
{
class JointTrajPtFullMessage : public industrial::typed_message::TypedMessage
{
public:
JointTrajPtFullMessage(void);
~JointTrajPtFullMessage(void);
bool init(industrial::simple_message::SimpleMessage & msg);
void init(industrial::joint_traj_pt_full::JointTrajPtFull & point);
void init();
// Overrides - SimpleSerialize
bool load(industrial::byte_array::ByteArray *buffer);
bool unload(industrial::byte_array::ByteArray *buffer);
unsigned int byteLength()
{
return this->point_.byteLength();
}
void setSequence(industrial::shared_types::shared_int sequence) { point_.setSequence(sequence); }
industrial::joint_traj_pt_full::JointTrajPtFull point_;
private:
};
}
}
- 从SimpleMessage创建JointTrajPtFullMessage
bool JointTrajPtFullMessage::init(industrial::simple_message::SimpleMessage & msg)
{
bool rtn = false;
ByteArray data = msg.getData();
this->init();
if (data.unload(this->point_))
{
rtn = true;
}
else
{
LOG_ERROR("Failed to unload joint traj pt data");
}
return rtn;
}
- 从SimpleMessage创建JointTrajPtFullMessage
(和RobotStatusMessage一样,直接在基类中实现,此处省略略)
网友评论