Go to the documentation of this file.00001
00002 #ifndef MESH_LABEL_NODE_SERVICE_LABELMESH_H
00003 #define MESH_LABEL_NODE_SERVICE_LABELMESH_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 "ros/service_traits.h"
00018
00019 #include "triangle_mesh_msgs/TriangleMesh.h"
00020
00021
00022
00023 namespace mesh_label_node
00024 {
00025 template <class ContainerAllocator>
00026 struct LabelMeshRequest_ {
00027 typedef LabelMeshRequest_<ContainerAllocator> Type;
00028
00029 LabelMeshRequest_()
00030 : mesh()
00031 {
00032 }
00033
00034 LabelMeshRequest_(const ContainerAllocator& _alloc)
00035 : mesh(_alloc)
00036 {
00037 }
00038
00039 typedef ::triangle_mesh_msgs::TriangleMesh_<ContainerAllocator> _mesh_type;
00040 ::triangle_mesh_msgs::TriangleMesh_<ContainerAllocator> mesh;
00041
00042
00043 typedef boost::shared_ptr< ::mesh_label_node::LabelMeshRequest_<ContainerAllocator> > Ptr;
00044 typedef boost::shared_ptr< ::mesh_label_node::LabelMeshRequest_<ContainerAllocator> const> ConstPtr;
00045 boost::shared_ptr<std::map<std::string, std::string> > __connection_header;
00046 };
00047 typedef ::mesh_label_node::LabelMeshRequest_<std::allocator<void> > LabelMeshRequest;
00048
00049 typedef boost::shared_ptr< ::mesh_label_node::LabelMeshRequest> LabelMeshRequestPtr;
00050 typedef boost::shared_ptr< ::mesh_label_node::LabelMeshRequest const> LabelMeshRequestConstPtr;
00051
00052
00053 template <class ContainerAllocator>
00054 struct LabelMeshResponse_ {
00055 typedef LabelMeshResponse_<ContainerAllocator> Type;
00056
00057 LabelMeshResponse_()
00058 : label()
00059 {
00060 }
00061
00062 LabelMeshResponse_(const ContainerAllocator& _alloc)
00063 : label(_alloc)
00064 {
00065 }
00066
00067 typedef std::basic_string<char, std::char_traits<char>, typename ContainerAllocator::template rebind<char>::other > _label_type;
00068 std::basic_string<char, std::char_traits<char>, typename ContainerAllocator::template rebind<char>::other > label;
00069
00070
00071 typedef boost::shared_ptr< ::mesh_label_node::LabelMeshResponse_<ContainerAllocator> > Ptr;
00072 typedef boost::shared_ptr< ::mesh_label_node::LabelMeshResponse_<ContainerAllocator> const> ConstPtr;
00073 boost::shared_ptr<std::map<std::string, std::string> > __connection_header;
00074 };
00075 typedef ::mesh_label_node::LabelMeshResponse_<std::allocator<void> > LabelMeshResponse;
00076
00077 typedef boost::shared_ptr< ::mesh_label_node::LabelMeshResponse> LabelMeshResponsePtr;
00078 typedef boost::shared_ptr< ::mesh_label_node::LabelMeshResponse const> LabelMeshResponseConstPtr;
00079
00080 struct LabelMesh
00081 {
00082
00083 typedef LabelMeshRequest Request;
00084 typedef LabelMeshResponse Response;
00085 Request request;
00086 Response response;
00087
00088 typedef Request RequestType;
00089 typedef Response ResponseType;
00090 };
00091 }
00092
00093 namespace ros
00094 {
00095 namespace message_traits
00096 {
00097 template<class ContainerAllocator> struct IsMessage< ::mesh_label_node::LabelMeshRequest_<ContainerAllocator> > : public TrueType {};
00098 template<class ContainerAllocator> struct IsMessage< ::mesh_label_node::LabelMeshRequest_<ContainerAllocator> const> : public TrueType {};
00099 template<class ContainerAllocator>
00100 struct MD5Sum< ::mesh_label_node::LabelMeshRequest_<ContainerAllocator> > {
00101 static const char* value()
00102 {
00103 return "c9fa2982cc45237506b1b8c8a4d4623c";
00104 }
00105
00106 static const char* value(const ::mesh_label_node::LabelMeshRequest_<ContainerAllocator> &) { return value(); }
00107 static const uint64_t static_value1 = 0xc9fa2982cc452375ULL;
00108 static const uint64_t static_value2 = 0x06b1b8c8a4d4623cULL;
00109 };
00110
00111 template<class ContainerAllocator>
00112 struct DataType< ::mesh_label_node::LabelMeshRequest_<ContainerAllocator> > {
00113 static const char* value()
00114 {
00115 return "mesh_label_node/LabelMeshRequest";
00116 }
00117
00118 static const char* value(const ::mesh_label_node::LabelMeshRequest_<ContainerAllocator> &) { return value(); }
00119 };
00120
00121 template<class ContainerAllocator>
00122 struct Definition< ::mesh_label_node::LabelMeshRequest_<ContainerAllocator> > {
00123 static const char* value()
00124 {
00125 return "triangle_mesh_msgs/TriangleMesh mesh\n\
00126 \n\
00127 ================================================================================\n\
00128 MSG: triangle_mesh_msgs/TriangleMesh\n\
00129 Header header\n\
00130 geometry_msgs/Point32[] points\n\
00131 geometry_msgs/Point32[] normals\n\
00132 float32[] intensities\n\
00133 triangle_mesh_msgs/Triangle[] triangles\n\
00134 string sending_node\n\
00135 \n\
00136 ================================================================================\n\
00137 MSG: std_msgs/Header\n\
00138 # Standard metadata for higher-level stamped data types.\n\
00139 # This is generally used to communicate timestamped data \n\
00140 # in a particular coordinate frame.\n\
00141 # \n\
00142 # sequence ID: consecutively increasing ID \n\
00143 uint32 seq\n\
00144 #Two-integer timestamp that is expressed as:\n\
00145 # * stamp.secs: seconds (stamp_secs) since epoch\n\
00146 # * stamp.nsecs: nanoseconds since stamp_secs\n\
00147 # time-handling sugar is provided by the client library\n\
00148 time stamp\n\
00149 #Frame this data is associated with\n\
00150 # 0: no frame\n\
00151 # 1: global frame\n\
00152 string frame_id\n\
00153 \n\
00154 ================================================================================\n\
00155 MSG: geometry_msgs/Point32\n\
00156 # This contains the position of a point in free space(with 32 bits of precision).\n\
00157 # It is recommeded to use Point wherever possible instead of Point32. \n\
00158 # \n\
00159 # This recommendation is to promote interoperability. \n\
00160 #\n\
00161 # This message is designed to take up less space when sending\n\
00162 # lots of points at once, as in the case of a PointCloud. \n\
00163 \n\
00164 float32 x\n\
00165 float32 y\n\
00166 float32 z\n\
00167 ================================================================================\n\
00168 MSG: triangle_mesh_msgs/Triangle\n\
00169 int32 i\n\
00170 int32 j\n\
00171 int32 k\n\
00172 \n\
00173 \n\
00174 \n\
00175 ";
00176 }
00177
00178 static const char* value(const ::mesh_label_node::LabelMeshRequest_<ContainerAllocator> &) { return value(); }
00179 };
00180
00181 }
00182 }
00183
00184
00185 namespace ros
00186 {
00187 namespace message_traits
00188 {
00189 template<class ContainerAllocator> struct IsMessage< ::mesh_label_node::LabelMeshResponse_<ContainerAllocator> > : public TrueType {};
00190 template<class ContainerAllocator> struct IsMessage< ::mesh_label_node::LabelMeshResponse_<ContainerAllocator> const> : public TrueType {};
00191 template<class ContainerAllocator>
00192 struct MD5Sum< ::mesh_label_node::LabelMeshResponse_<ContainerAllocator> > {
00193 static const char* value()
00194 {
00195 return "ea23f97416b04c6151d2b576c0665ac1";
00196 }
00197
00198 static const char* value(const ::mesh_label_node::LabelMeshResponse_<ContainerAllocator> &) { return value(); }
00199 static const uint64_t static_value1 = 0xea23f97416b04c61ULL;
00200 static const uint64_t static_value2 = 0x51d2b576c0665ac1ULL;
00201 };
00202
00203 template<class ContainerAllocator>
00204 struct DataType< ::mesh_label_node::LabelMeshResponse_<ContainerAllocator> > {
00205 static const char* value()
00206 {
00207 return "mesh_label_node/LabelMeshResponse";
00208 }
00209
00210 static const char* value(const ::mesh_label_node::LabelMeshResponse_<ContainerAllocator> &) { return value(); }
00211 };
00212
00213 template<class ContainerAllocator>
00214 struct Definition< ::mesh_label_node::LabelMeshResponse_<ContainerAllocator> > {
00215 static const char* value()
00216 {
00217 return "string label\n\
00218 \n\
00219 \n\
00220 ";
00221 }
00222
00223 static const char* value(const ::mesh_label_node::LabelMeshResponse_<ContainerAllocator> &) { return value(); }
00224 };
00225
00226 }
00227 }
00228
00229 namespace ros
00230 {
00231 namespace serialization
00232 {
00233
00234 template<class ContainerAllocator> struct Serializer< ::mesh_label_node::LabelMeshRequest_<ContainerAllocator> >
00235 {
00236 template<typename Stream, typename T> inline static void allInOne(Stream& stream, T m)
00237 {
00238 stream.next(m.mesh);
00239 }
00240
00241 ROS_DECLARE_ALLINONE_SERIALIZER;
00242 };
00243 }
00244 }
00245
00246
00247 namespace ros
00248 {
00249 namespace serialization
00250 {
00251
00252 template<class ContainerAllocator> struct Serializer< ::mesh_label_node::LabelMeshResponse_<ContainerAllocator> >
00253 {
00254 template<typename Stream, typename T> inline static void allInOne(Stream& stream, T m)
00255 {
00256 stream.next(m.label);
00257 }
00258
00259 ROS_DECLARE_ALLINONE_SERIALIZER;
00260 };
00261 }
00262 }
00263
00264 namespace ros
00265 {
00266 namespace service_traits
00267 {
00268 template<>
00269 struct MD5Sum<mesh_label_node::LabelMesh> {
00270 static const char* value()
00271 {
00272 return "c72758085d3ced91fded54b08891bd78";
00273 }
00274
00275 static const char* value(const mesh_label_node::LabelMesh&) { return value(); }
00276 };
00277
00278 template<>
00279 struct DataType<mesh_label_node::LabelMesh> {
00280 static const char* value()
00281 {
00282 return "mesh_label_node/LabelMesh";
00283 }
00284
00285 static const char* value(const mesh_label_node::LabelMesh&) { return value(); }
00286 };
00287
00288 template<class ContainerAllocator>
00289 struct MD5Sum<mesh_label_node::LabelMeshRequest_<ContainerAllocator> > {
00290 static const char* value()
00291 {
00292 return "c72758085d3ced91fded54b08891bd78";
00293 }
00294
00295 static const char* value(const mesh_label_node::LabelMeshRequest_<ContainerAllocator> &) { return value(); }
00296 };
00297
00298 template<class ContainerAllocator>
00299 struct DataType<mesh_label_node::LabelMeshRequest_<ContainerAllocator> > {
00300 static const char* value()
00301 {
00302 return "mesh_label_node/LabelMesh";
00303 }
00304
00305 static const char* value(const mesh_label_node::LabelMeshRequest_<ContainerAllocator> &) { return value(); }
00306 };
00307
00308 template<class ContainerAllocator>
00309 struct MD5Sum<mesh_label_node::LabelMeshResponse_<ContainerAllocator> > {
00310 static const char* value()
00311 {
00312 return "c72758085d3ced91fded54b08891bd78";
00313 }
00314
00315 static const char* value(const mesh_label_node::LabelMeshResponse_<ContainerAllocator> &) { return value(); }
00316 };
00317
00318 template<class ContainerAllocator>
00319 struct DataType<mesh_label_node::LabelMeshResponse_<ContainerAllocator> > {
00320 static const char* value()
00321 {
00322 return "mesh_label_node/LabelMesh";
00323 }
00324
00325 static const char* value(const mesh_label_node::LabelMeshResponse_<ContainerAllocator> &) { return value(); }
00326 };
00327
00328 }
00329 }
00330
00331 #endif // MESH_LABEL_NODE_SERVICE_LABELMESH_H
00332