美文网首页
ROS-I simple_message 源码分析:JointT

ROS-I simple_message 源码分析:JointT

作者: play_robot | 来源:发表于2019-03-21 17:03 被阅读0次

    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一样,直接在基类中实现,此处省略略)
    

    相关文章

      网友评论

          本文标题:ROS-I simple_message 源码分析:JointT

          本文链接:https://www.haomeiwen.com/subject/awecvqtx.html