$search
00001 /* Auto-generated by genmsg_cpp for file /home/rosbuild/hudson/workspace/doc-electric-clearpath_common/doc_stacks/2013-03-01_14-27-57.340522/clearpath_common/clearpath_base/msg/DifferentialSpeed.msg */ 00002 #ifndef CLEARPATH_BASE_MESSAGE_DIFFERENTIALSPEED_H 00003 #define CLEARPATH_BASE_MESSAGE_DIFFERENTIALSPEED_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 #include "std_msgs/Header.h" 00018 00019 namespace clearpath_base 00020 { 00021 template <class ContainerAllocator> 00022 struct DifferentialSpeed_ { 00023 typedef DifferentialSpeed_<ContainerAllocator> Type; 00024 00025 DifferentialSpeed_() 00026 : header() 00027 , left_speed(0.0) 00028 , right_speed(0.0) 00029 , left_accel(0.0) 00030 , right_accel(0.0) 00031 { 00032 } 00033 00034 DifferentialSpeed_(const ContainerAllocator& _alloc) 00035 : header(_alloc) 00036 , left_speed(0.0) 00037 , right_speed(0.0) 00038 , left_accel(0.0) 00039 , right_accel(0.0) 00040 { 00041 } 00042 00043 typedef ::std_msgs::Header_<ContainerAllocator> _header_type; 00044 ::std_msgs::Header_<ContainerAllocator> header; 00045 00046 typedef double _left_speed_type; 00047 double left_speed; 00048 00049 typedef double _right_speed_type; 00050 double right_speed; 00051 00052 typedef double _left_accel_type; 00053 double left_accel; 00054 00055 typedef double _right_accel_type; 00056 double right_accel; 00057 00058 00059 private: 00060 static const char* __s_getDataType_() { return "clearpath_base/DifferentialSpeed"; } 00061 public: 00062 ROS_DEPRECATED static const std::string __s_getDataType() { return __s_getDataType_(); } 00063 00064 ROS_DEPRECATED const std::string __getDataType() const { return __s_getDataType_(); } 00065 00066 private: 00067 static const char* __s_getMD5Sum_() { return "4b62e763320bacb9c7f63f6ebd46ceba"; } 00068 public: 00069 ROS_DEPRECATED static const std::string __s_getMD5Sum() { return __s_getMD5Sum_(); } 00070 00071 ROS_DEPRECATED const std::string __getMD5Sum() const { return __s_getMD5Sum_(); } 00072 00073 private: 00074 static const char* __s_getMessageDefinition_() { return "Header header\n\ 00075 float64 left_speed\n\ 00076 float64 right_speed\n\ 00077 float64 left_accel\n\ 00078 float64 right_accel\n\ 00079 \n\ 00080 ================================================================================\n\ 00081 MSG: std_msgs/Header\n\ 00082 # Standard metadata for higher-level stamped data types.\n\ 00083 # This is generally used to communicate timestamped data \n\ 00084 # in a particular coordinate frame.\n\ 00085 # \n\ 00086 # sequence ID: consecutively increasing ID \n\ 00087 uint32 seq\n\ 00088 #Two-integer timestamp that is expressed as:\n\ 00089 # * stamp.secs: seconds (stamp_secs) since epoch\n\ 00090 # * stamp.nsecs: nanoseconds since stamp_secs\n\ 00091 # time-handling sugar is provided by the client library\n\ 00092 time stamp\n\ 00093 #Frame this data is associated with\n\ 00094 # 0: no frame\n\ 00095 # 1: global frame\n\ 00096 string frame_id\n\ 00097 \n\ 00098 "; } 00099 public: 00100 ROS_DEPRECATED static const std::string __s_getMessageDefinition() { return __s_getMessageDefinition_(); } 00101 00102 ROS_DEPRECATED const std::string __getMessageDefinition() const { return __s_getMessageDefinition_(); } 00103 00104 ROS_DEPRECATED virtual uint8_t *serialize(uint8_t *write_ptr, uint32_t seq) const 00105 { 00106 ros::serialization::OStream stream(write_ptr, 1000000000); 00107 ros::serialization::serialize(stream, header); 00108 ros::serialization::serialize(stream, left_speed); 00109 ros::serialization::serialize(stream, right_speed); 00110 ros::serialization::serialize(stream, left_accel); 00111 ros::serialization::serialize(stream, right_accel); 00112 return stream.getData(); 00113 } 00114 00115 ROS_DEPRECATED virtual uint8_t *deserialize(uint8_t *read_ptr) 00116 { 00117 ros::serialization::IStream stream(read_ptr, 1000000000); 00118 ros::serialization::deserialize(stream, header); 00119 ros::serialization::deserialize(stream, left_speed); 00120 ros::serialization::deserialize(stream, right_speed); 00121 ros::serialization::deserialize(stream, left_accel); 00122 ros::serialization::deserialize(stream, right_accel); 00123 return stream.getData(); 00124 } 00125 00126 ROS_DEPRECATED virtual uint32_t serializationLength() const 00127 { 00128 uint32_t size = 0; 00129 size += ros::serialization::serializationLength(header); 00130 size += ros::serialization::serializationLength(left_speed); 00131 size += ros::serialization::serializationLength(right_speed); 00132 size += ros::serialization::serializationLength(left_accel); 00133 size += ros::serialization::serializationLength(right_accel); 00134 return size; 00135 } 00136 00137 typedef boost::shared_ptr< ::clearpath_base::DifferentialSpeed_<ContainerAllocator> > Ptr; 00138 typedef boost::shared_ptr< ::clearpath_base::DifferentialSpeed_<ContainerAllocator> const> ConstPtr; 00139 boost::shared_ptr<std::map<std::string, std::string> > __connection_header; 00140 }; // struct DifferentialSpeed 00141 typedef ::clearpath_base::DifferentialSpeed_<std::allocator<void> > DifferentialSpeed; 00142 00143 typedef boost::shared_ptr< ::clearpath_base::DifferentialSpeed> DifferentialSpeedPtr; 00144 typedef boost::shared_ptr< ::clearpath_base::DifferentialSpeed const> DifferentialSpeedConstPtr; 00145 00146 00147 template<typename ContainerAllocator> 00148 std::ostream& operator<<(std::ostream& s, const ::clearpath_base::DifferentialSpeed_<ContainerAllocator> & v) 00149 { 00150 ros::message_operations::Printer< ::clearpath_base::DifferentialSpeed_<ContainerAllocator> >::stream(s, "", v); 00151 return s;} 00152 00153 } // namespace clearpath_base 00154 00155 namespace ros 00156 { 00157 namespace message_traits 00158 { 00159 template<class ContainerAllocator> struct IsMessage< ::clearpath_base::DifferentialSpeed_<ContainerAllocator> > : public TrueType {}; 00160 template<class ContainerAllocator> struct IsMessage< ::clearpath_base::DifferentialSpeed_<ContainerAllocator> const> : public TrueType {}; 00161 template<class ContainerAllocator> 00162 struct MD5Sum< ::clearpath_base::DifferentialSpeed_<ContainerAllocator> > { 00163 static const char* value() 00164 { 00165 return "4b62e763320bacb9c7f63f6ebd46ceba"; 00166 } 00167 00168 static const char* value(const ::clearpath_base::DifferentialSpeed_<ContainerAllocator> &) { return value(); } 00169 static const uint64_t static_value1 = 0x4b62e763320bacb9ULL; 00170 static const uint64_t static_value2 = 0xc7f63f6ebd46cebaULL; 00171 }; 00172 00173 template<class ContainerAllocator> 00174 struct DataType< ::clearpath_base::DifferentialSpeed_<ContainerAllocator> > { 00175 static const char* value() 00176 { 00177 return "clearpath_base/DifferentialSpeed"; 00178 } 00179 00180 static const char* value(const ::clearpath_base::DifferentialSpeed_<ContainerAllocator> &) { return value(); } 00181 }; 00182 00183 template<class ContainerAllocator> 00184 struct Definition< ::clearpath_base::DifferentialSpeed_<ContainerAllocator> > { 00185 static const char* value() 00186 { 00187 return "Header header\n\ 00188 float64 left_speed\n\ 00189 float64 right_speed\n\ 00190 float64 left_accel\n\ 00191 float64 right_accel\n\ 00192 \n\ 00193 ================================================================================\n\ 00194 MSG: std_msgs/Header\n\ 00195 # Standard metadata for higher-level stamped data types.\n\ 00196 # This is generally used to communicate timestamped data \n\ 00197 # in a particular coordinate frame.\n\ 00198 # \n\ 00199 # sequence ID: consecutively increasing ID \n\ 00200 uint32 seq\n\ 00201 #Two-integer timestamp that is expressed as:\n\ 00202 # * stamp.secs: seconds (stamp_secs) since epoch\n\ 00203 # * stamp.nsecs: nanoseconds since stamp_secs\n\ 00204 # time-handling sugar is provided by the client library\n\ 00205 time stamp\n\ 00206 #Frame this data is associated with\n\ 00207 # 0: no frame\n\ 00208 # 1: global frame\n\ 00209 string frame_id\n\ 00210 \n\ 00211 "; 00212 } 00213 00214 static const char* value(const ::clearpath_base::DifferentialSpeed_<ContainerAllocator> &) { return value(); } 00215 }; 00216 00217 template<class ContainerAllocator> struct HasHeader< ::clearpath_base::DifferentialSpeed_<ContainerAllocator> > : public TrueType {}; 00218 template<class ContainerAllocator> struct HasHeader< const ::clearpath_base::DifferentialSpeed_<ContainerAllocator> > : public TrueType {}; 00219 } // namespace message_traits 00220 } // namespace ros 00221 00222 namespace ros 00223 { 00224 namespace serialization 00225 { 00226 00227 template<class ContainerAllocator> struct Serializer< ::clearpath_base::DifferentialSpeed_<ContainerAllocator> > 00228 { 00229 template<typename Stream, typename T> inline static void allInOne(Stream& stream, T m) 00230 { 00231 stream.next(m.header); 00232 stream.next(m.left_speed); 00233 stream.next(m.right_speed); 00234 stream.next(m.left_accel); 00235 stream.next(m.right_accel); 00236 } 00237 00238 ROS_DECLARE_ALLINONE_SERIALIZER; 00239 }; // struct DifferentialSpeed_ 00240 } // namespace serialization 00241 } // namespace ros 00242 00243 namespace ros 00244 { 00245 namespace message_operations 00246 { 00247 00248 template<class ContainerAllocator> 00249 struct Printer< ::clearpath_base::DifferentialSpeed_<ContainerAllocator> > 00250 { 00251 template<typename Stream> static void stream(Stream& s, const std::string& indent, const ::clearpath_base::DifferentialSpeed_<ContainerAllocator> & v) 00252 { 00253 s << indent << "header: "; 00254 s << std::endl; 00255 Printer< ::std_msgs::Header_<ContainerAllocator> >::stream(s, indent + " ", v.header); 00256 s << indent << "left_speed: "; 00257 Printer<double>::stream(s, indent + " ", v.left_speed); 00258 s << indent << "right_speed: "; 00259 Printer<double>::stream(s, indent + " ", v.right_speed); 00260 s << indent << "left_accel: "; 00261 Printer<double>::stream(s, indent + " ", v.left_accel); 00262 s << indent << "right_accel: "; 00263 Printer<double>::stream(s, indent + " ", v.right_accel); 00264 } 00265 }; 00266 00267 00268 } // namespace message_operations 00269 } // namespace ros 00270 00271 #endif // CLEARPATH_BASE_MESSAGE_DIFFERENTIALSPEED_H 00272