#ifndef GEOMETRY_MSGS_MESSAGE_POINT32 #define GEOMETRY_MSGS_MESSAGE_POINT32 #include #include #include #include #include #include #include namespace geometry_msgs { template struct Point32_ { typedef Point32_ Type; Point32_() : x() , y() , z() { } Point32_(const ContainerAllocator& _alloc) : x(_alloc) , y(_alloc) , z(_alloc) { (void)_alloc; } typedef float _x_type; _x_type x; typedef float _y_type; _y_type y; typedef float _z_type; _z_type z; typedef boost::shared_ptr< ::geometry_msgs::Point32_> Ptr; typedef boost::shared_ptr< ::geometry_msgs::Point32_ const> ConstPtr; }; // struct Point32_ typedef ::geometry_msgs::Point32_> Point32; typedef boost::shared_ptr< ::geometry_msgs::Point32> Point32Ptr; typedef boost::shared_ptr< ::geometry_msgs::Point32 const> Point32ConstPtr; // constants requiring out of line definition template std::ostream& operator<<(std::ostream& s, const ::geometry_msgs::Point32_ & v) { ros::message_operations::Printer< ::geometry_msgs::Point32_ >::stream(s, "", v); return s; } template bool operator==(const ::geometry_msgs::Point32_ & lhs, const ::geometry_msgs::Point32_ & rhs) { return lhs.x == rhs.x && lhs.y == rhs.y && lhs.z == rhs.z && true; } template bool operator!=(const ::geometry_msgs::Point32_ & lhs, const ::geometry_msgs::Point32_ & rhs) { return !(lhs == rhs); } } // namespace geometry_msgs namespace ros { namespace message_traits { template struct IsMessage< ::geometry_msgs::Point32_> : TrueType { }; template struct IsMessage< ::geometry_msgs::Point32_ const> : TrueType { }; template struct IsFixedSize< ::geometry_msgs::Point32_> : TrueType { }; template struct IsFixedSize< ::geometry_msgs::Point32_ const> : TrueType { }; template struct HasHeader< ::geometry_msgs::Point32_> : FalseType { }; template struct HasHeader< ::geometry_msgs::Point32_ const> : FalseType { }; template struct MD5Sum< ::geometry_msgs::Point32_> { static constexpr char const * value() { return "cc153912f1453b708d221682bc23d9ac"; } static const char* value(const ::geometry_msgs::Point32_&) { return value(); } static const uint64_t static_value1 = 0xcc153912f1453b70ULL; static const uint64_t static_value2 = 0x8d221682bc23d9acULL; }; template struct DataType< ::geometry_msgs::Point32_> { static constexpr char const* value() { return "geometry_msgs/Point32"; } static const char* value(const ::geometry_msgs::Point32_&) { return value(); } }; template struct Definition< ::geometry_msgs::Point32_> { static constexpr char const* value() { return "# This contains the position of a point in free space(with 32 bits of precision)." "# It is recommeded to use Point wherever possible instead of Point32. " "# " "# This recommendation is to promote interoperability. " "#" "# This message is designed to take up less space when sending" "# lots of points at once, as in the case of a PointCloud. " "" "float32 x" "float32 y" "float32 z"; } static const char* value(const ::geometry_msgs::Point32_&) { return value(); } }; } // namespace message_traits } // namespace ros namespace ros { namespace serialization { template struct Serializer< ::geometry_msgs::Point32_> { template inline static void allInOne(Stream& stream, T m) { stream.next(m.x); stream.next(m.y); stream.next(m.z); } ROS_DECLARE_ALLINONE_SERIALIZER }; // struct Point32_ } // namespace serialization } // namespace ros namespace ros { namespace message_operations { template struct Printer< ::geometry_msgs::Point32_> { template static void stream(Stream& s, const std::string& indent, const ::geometry_msgs::Point32_& v) { s << indent << "x: "; Printer< float>::stream(s, indent + " ", v.x); s << indent << "y: "; Printer< float>::stream(s, indent + " ", v.y); s << indent << "z: "; Printer< float>::stream(s, indent + " ", v.z); } }; } // namespace message_operations } // namespace ros #endif // GEOMETRY_MSGS_MESSAGE_POINT32