// Generated by gencpp from file sensor_msgs/Joy.msg // DO NOT EDIT! #ifndef SENSOR_MSGS_MESSAGE_JOY_H #define SENSOR_MSGS_MESSAGE_JOY_H #include #include #include #include #include #include #include namespace sensor_msgs { template struct Joy_ { typedef Joy_ Type; Joy_() : header() , axes() , buttons() { } Joy_(const ContainerAllocator& _alloc) : header(_alloc) , axes(_alloc) , buttons(_alloc) { (void)_alloc; } typedef ::std_msgs::Header_ _header_type; _header_type header; typedef std::vector::other > _axes_type; _axes_type axes; typedef std::vector::other > _buttons_type; _buttons_type buttons; typedef boost::shared_ptr< ::sensor_msgs::Joy_ > Ptr; typedef boost::shared_ptr< ::sensor_msgs::Joy_ const> ConstPtr; }; // struct Joy_ typedef ::sensor_msgs::Joy_ > Joy; typedef boost::shared_ptr< ::sensor_msgs::Joy > JoyPtr; typedef boost::shared_ptr< ::sensor_msgs::Joy const> JoyConstPtr; // constants requiring out of line definition template std::ostream& operator<<(std::ostream& s, const ::sensor_msgs::Joy_ & v) { ros::message_operations::Printer< ::sensor_msgs::Joy_ >::stream(s, "", v); return s; } template bool operator==(const ::sensor_msgs::Joy_ & lhs, const ::sensor_msgs::Joy_ & rhs) { return lhs.header == rhs.header && lhs.axes == rhs.axes && lhs.buttons == rhs.buttons; } template bool operator!=(const ::sensor_msgs::Joy_ & lhs, const ::sensor_msgs::Joy_ & rhs) { return !(lhs == rhs); } } // namespace sensor_msgs namespace ros { namespace message_traits { template struct IsMessage< ::sensor_msgs::Joy_ > : TrueType { }; template struct IsMessage< ::sensor_msgs::Joy_ const> : TrueType { }; template struct IsFixedSize< ::sensor_msgs::Joy_ > : FalseType { }; template struct IsFixedSize< ::sensor_msgs::Joy_ const> : FalseType { }; template struct HasHeader< ::sensor_msgs::Joy_ > : TrueType { }; template struct HasHeader< ::sensor_msgs::Joy_ const> : TrueType { }; template struct MD5Sum< ::sensor_msgs::Joy_ > { static const char* value() { return "5a9ea5f83505693b71e785041e67a8bb"; } static const char* value(const ::sensor_msgs::Joy_&) { return value(); } static const uint64_t static_value1 = 0x5a9ea5f83505693bULL; static const uint64_t static_value2 = 0x71e785041e67a8bbULL; }; template struct DataType< ::sensor_msgs::Joy_ > { static const char* value() { return "sensor_msgs/Joy"; } static const char* value(const ::sensor_msgs::Joy_&) { return value(); } }; template struct Definition< ::sensor_msgs::Joy_ > { static const char* value() { return "# Reports the state of a joysticks axes and buttons.\n" "Header header # timestamp in the header is the time the data is received from the joystick\n" "float32[] axes # the axes measurements from a joystick\n" "int32[] buttons # the buttons measurements from a joystick \n" "\n" "================================================================================\n" "MSG: std_msgs/Header\n" "# Standard metadata for higher-level stamped data types.\n" "# This is generally used to communicate timestamped data \n" "# in a particular coordinate frame.\n" "# \n" "# sequence ID: consecutively increasing ID \n" "uint32 seq\n" "#Two-integer timestamp that is expressed as:\n" "# * stamp.sec: seconds (stamp_secs) since epoch (in Python the variable is called 'secs')\n" "# * stamp.nsec: nanoseconds since stamp_secs (in Python the variable is called 'nsecs')\n" "# time-handling sugar is provided by the client library\n" "time stamp\n" "#Frame this data is associated with\n" "string frame_id\n" ; } static const char* value(const ::sensor_msgs::Joy_&) { return value(); } }; } // namespace message_traits } // namespace ros namespace ros { namespace serialization { template struct Serializer< ::sensor_msgs::Joy_ > { template inline static void allInOne(Stream& stream, T m) { stream.next(m.header); stream.next(m.axes); stream.next(m.buttons); } ROS_DECLARE_ALLINONE_SERIALIZER }; // struct Joy_ } // namespace serialization } // namespace ros namespace ros { namespace message_operations { template struct Printer< ::sensor_msgs::Joy_ > { template static void stream(Stream& s, const std::string& indent, const ::sensor_msgs::Joy_& v) { s << indent << "header: "; s << std::endl; Printer< ::std_msgs::Header_ >::stream(s, indent + " ", v.header); s << indent << "axes[]" << std::endl; for (size_t i = 0; i < v.axes.size(); ++i) { s << indent << " axes[" << i << "]: "; Printer::stream(s, indent + " ", v.axes[i]); } s << indent << "buttons[]" << std::endl; for (size_t i = 0; i < v.buttons.size(); ++i) { s << indent << " buttons[" << i << "]: "; Printer::stream(s, indent + " ", v.buttons[i]); } } }; } // namespace message_operations } // namespace ros #endif // SENSOR_MSGS_MESSAGE_JOY_H