$search
00001 /* Auto-generated by genmsg_cpp for file /home/rosbuild/hudson/workspace/doc-electric-pr2_controllers/doc_stacks/2013-03-01_16-45-23.561928/pr2_controllers/pr2_mechanism_controllers/msg/Odometer.msg */ 00002 #ifndef PR2_MECHANISM_CONTROLLERS_MESSAGE_ODOMETER_H 00003 #define PR2_MECHANISM_CONTROLLERS_MESSAGE_ODOMETER_H 00004 #include <string> 00005 #include <vector> 00006 #include <map> 00007 #include <ostream> 00008 #include "ros/serialization.h" 00009 #include "ros/builtin_message_traits.h" 00010 #include "ros/message_operations.h" 00011 #include "ros/time.h" 00012 00013 #include "ros/macros.h" 00014 00015 #include "ros/assert.h" 00016 00017 00018 namespace pr2_mechanism_controllers 00019 { 00020 template <class ContainerAllocator> 00021 struct Odometer_ { 00022 typedef Odometer_<ContainerAllocator> Type; 00023 00024 Odometer_() 00025 : distance(0.0) 00026 , angle(0.0) 00027 { 00028 } 00029 00030 Odometer_(const ContainerAllocator& _alloc) 00031 : distance(0.0) 00032 , angle(0.0) 00033 { 00034 } 00035 00036 typedef double _distance_type; 00037 double distance; 00038 00039 typedef double _angle_type; 00040 double angle; 00041 00042 00043 private: 00044 static const char* __s_getDataType_() { return "pr2_mechanism_controllers/Odometer"; } 00045 public: 00046 ROS_DEPRECATED static const std::string __s_getDataType() { return __s_getDataType_(); } 00047 00048 ROS_DEPRECATED const std::string __getDataType() const { return __s_getDataType_(); } 00049 00050 private: 00051 static const char* __s_getMD5Sum_() { return "1f1d53743f4592ee455aa3eaf9019457"; } 00052 public: 00053 ROS_DEPRECATED static const std::string __s_getMD5Sum() { return __s_getMD5Sum_(); } 00054 00055 ROS_DEPRECATED const std::string __getMD5Sum() const { return __s_getMD5Sum_(); } 00056 00057 private: 00058 static const char* __s_getMessageDefinition_() { return "float64 distance #total distance traveled (meters)\n\ 00059 float64 angle #total angle traveled (radians)\n\ 00060 "; } 00061 public: 00062 ROS_DEPRECATED static const std::string __s_getMessageDefinition() { return __s_getMessageDefinition_(); } 00063 00064 ROS_DEPRECATED const std::string __getMessageDefinition() const { return __s_getMessageDefinition_(); } 00065 00066 ROS_DEPRECATED virtual uint8_t *serialize(uint8_t *write_ptr, uint32_t seq) const 00067 { 00068 ros::serialization::OStream stream(write_ptr, 1000000000); 00069 ros::serialization::serialize(stream, distance); 00070 ros::serialization::serialize(stream, angle); 00071 return stream.getData(); 00072 } 00073 00074 ROS_DEPRECATED virtual uint8_t *deserialize(uint8_t *read_ptr) 00075 { 00076 ros::serialization::IStream stream(read_ptr, 1000000000); 00077 ros::serialization::deserialize(stream, distance); 00078 ros::serialization::deserialize(stream, angle); 00079 return stream.getData(); 00080 } 00081 00082 ROS_DEPRECATED virtual uint32_t serializationLength() const 00083 { 00084 uint32_t size = 0; 00085 size += ros::serialization::serializationLength(distance); 00086 size += ros::serialization::serializationLength(angle); 00087 return size; 00088 } 00089 00090 typedef boost::shared_ptr< ::pr2_mechanism_controllers::Odometer_<ContainerAllocator> > Ptr; 00091 typedef boost::shared_ptr< ::pr2_mechanism_controllers::Odometer_<ContainerAllocator> const> ConstPtr; 00092 boost::shared_ptr<std::map<std::string, std::string> > __connection_header; 00093 }; // struct Odometer 00094 typedef ::pr2_mechanism_controllers::Odometer_<std::allocator<void> > Odometer; 00095 00096 typedef boost::shared_ptr< ::pr2_mechanism_controllers::Odometer> OdometerPtr; 00097 typedef boost::shared_ptr< ::pr2_mechanism_controllers::Odometer const> OdometerConstPtr; 00098 00099 00100 template<typename ContainerAllocator> 00101 std::ostream& operator<<(std::ostream& s, const ::pr2_mechanism_controllers::Odometer_<ContainerAllocator> & v) 00102 { 00103 ros::message_operations::Printer< ::pr2_mechanism_controllers::Odometer_<ContainerAllocator> >::stream(s, "", v); 00104 return s;} 00105 00106 } // namespace pr2_mechanism_controllers 00107 00108 namespace ros 00109 { 00110 namespace message_traits 00111 { 00112 template<class ContainerAllocator> struct IsMessage< ::pr2_mechanism_controllers::Odometer_<ContainerAllocator> > : public TrueType {}; 00113 template<class ContainerAllocator> struct IsMessage< ::pr2_mechanism_controllers::Odometer_<ContainerAllocator> const> : public TrueType {}; 00114 template<class ContainerAllocator> 00115 struct MD5Sum< ::pr2_mechanism_controllers::Odometer_<ContainerAllocator> > { 00116 static const char* value() 00117 { 00118 return "1f1d53743f4592ee455aa3eaf9019457"; 00119 } 00120 00121 static const char* value(const ::pr2_mechanism_controllers::Odometer_<ContainerAllocator> &) { return value(); } 00122 static const uint64_t static_value1 = 0x1f1d53743f4592eeULL; 00123 static const uint64_t static_value2 = 0x455aa3eaf9019457ULL; 00124 }; 00125 00126 template<class ContainerAllocator> 00127 struct DataType< ::pr2_mechanism_controllers::Odometer_<ContainerAllocator> > { 00128 static const char* value() 00129 { 00130 return "pr2_mechanism_controllers/Odometer"; 00131 } 00132 00133 static const char* value(const ::pr2_mechanism_controllers::Odometer_<ContainerAllocator> &) { return value(); } 00134 }; 00135 00136 template<class ContainerAllocator> 00137 struct Definition< ::pr2_mechanism_controllers::Odometer_<ContainerAllocator> > { 00138 static const char* value() 00139 { 00140 return "float64 distance #total distance traveled (meters)\n\ 00141 float64 angle #total angle traveled (radians)\n\ 00142 "; 00143 } 00144 00145 static const char* value(const ::pr2_mechanism_controllers::Odometer_<ContainerAllocator> &) { return value(); } 00146 }; 00147 00148 template<class ContainerAllocator> struct IsFixedSize< ::pr2_mechanism_controllers::Odometer_<ContainerAllocator> > : public TrueType {}; 00149 } // namespace message_traits 00150 } // namespace ros 00151 00152 namespace ros 00153 { 00154 namespace serialization 00155 { 00156 00157 template<class ContainerAllocator> struct Serializer< ::pr2_mechanism_controllers::Odometer_<ContainerAllocator> > 00158 { 00159 template<typename Stream, typename T> inline static void allInOne(Stream& stream, T m) 00160 { 00161 stream.next(m.distance); 00162 stream.next(m.angle); 00163 } 00164 00165 ROS_DECLARE_ALLINONE_SERIALIZER; 00166 }; // struct Odometer_ 00167 } // namespace serialization 00168 } // namespace ros 00169 00170 namespace ros 00171 { 00172 namespace message_operations 00173 { 00174 00175 template<class ContainerAllocator> 00176 struct Printer< ::pr2_mechanism_controllers::Odometer_<ContainerAllocator> > 00177 { 00178 template<typename Stream> static void stream(Stream& s, const std::string& indent, const ::pr2_mechanism_controllers::Odometer_<ContainerAllocator> & v) 00179 { 00180 s << indent << "distance: "; 00181 Printer<double>::stream(s, indent + " ", v.distance); 00182 s << indent << "angle: "; 00183 Printer<double>::stream(s, indent + " ", v.angle); 00184 } 00185 }; 00186 00187 00188 } // namespace message_operations 00189 } // namespace ros 00190 00191 #endif // PR2_MECHANISM_CONTROLLERS_MESSAGE_ODOMETER_H 00192