AssembleScans.h
Go to the documentation of this file.
00001 /* Auto-generated by genmsg_cpp for file /home/rosbuild/hudson/workspace/doc-fuerte-laser_pipeline/doc_stacks/2014-01-03_11-25-58.592145/laser_pipeline/laser_assembler/srv/AssembleScans.srv */
00002 #ifndef LASER_ASSEMBLER_SERVICE_ASSEMBLESCANS_H
00003 #define LASER_ASSEMBLER_SERVICE_ASSEMBLESCANS_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 
00020 
00021 #include "sensor_msgs/PointCloud.h"
00022 
00023 namespace laser_assembler
00024 {
00025 template <class ContainerAllocator>
00026 struct AssembleScansRequest_ {
00027   typedef AssembleScansRequest_<ContainerAllocator> Type;
00028 
00029   AssembleScansRequest_()
00030   : begin()
00031   , end()
00032   {
00033   }
00034 
00035   AssembleScansRequest_(const ContainerAllocator& _alloc)
00036   : begin()
00037   , end()
00038   {
00039   }
00040 
00041   typedef ros::Time _begin_type;
00042   ros::Time begin;
00043 
00044   typedef ros::Time _end_type;
00045   ros::Time end;
00046 
00047 
00048   typedef boost::shared_ptr< ::laser_assembler::AssembleScansRequest_<ContainerAllocator> > Ptr;
00049   typedef boost::shared_ptr< ::laser_assembler::AssembleScansRequest_<ContainerAllocator>  const> ConstPtr;
00050   boost::shared_ptr<std::map<std::string, std::string> > __connection_header;
00051 }; // struct AssembleScansRequest
00052 typedef  ::laser_assembler::AssembleScansRequest_<std::allocator<void> > AssembleScansRequest;
00053 
00054 typedef boost::shared_ptr< ::laser_assembler::AssembleScansRequest> AssembleScansRequestPtr;
00055 typedef boost::shared_ptr< ::laser_assembler::AssembleScansRequest const> AssembleScansRequestConstPtr;
00056 
00057 
00058 template <class ContainerAllocator>
00059 struct AssembleScansResponse_ {
00060   typedef AssembleScansResponse_<ContainerAllocator> Type;
00061 
00062   AssembleScansResponse_()
00063   : cloud()
00064   {
00065   }
00066 
00067   AssembleScansResponse_(const ContainerAllocator& _alloc)
00068   : cloud(_alloc)
00069   {
00070   }
00071 
00072   typedef  ::sensor_msgs::PointCloud_<ContainerAllocator>  _cloud_type;
00073    ::sensor_msgs::PointCloud_<ContainerAllocator>  cloud;
00074 
00075 
00076   typedef boost::shared_ptr< ::laser_assembler::AssembleScansResponse_<ContainerAllocator> > Ptr;
00077   typedef boost::shared_ptr< ::laser_assembler::AssembleScansResponse_<ContainerAllocator>  const> ConstPtr;
00078   boost::shared_ptr<std::map<std::string, std::string> > __connection_header;
00079 }; // struct AssembleScansResponse
00080 typedef  ::laser_assembler::AssembleScansResponse_<std::allocator<void> > AssembleScansResponse;
00081 
00082 typedef boost::shared_ptr< ::laser_assembler::AssembleScansResponse> AssembleScansResponsePtr;
00083 typedef boost::shared_ptr< ::laser_assembler::AssembleScansResponse const> AssembleScansResponseConstPtr;
00084 
00085 struct AssembleScans
00086 {
00087 
00088 typedef AssembleScansRequest Request;
00089 typedef AssembleScansResponse Response;
00090 Request request;
00091 Response response;
00092 
00093 typedef Request RequestType;
00094 typedef Response ResponseType;
00095 }; // struct AssembleScans
00096 } // namespace laser_assembler
00097 
00098 namespace ros
00099 {
00100 namespace message_traits
00101 {
00102 template<class ContainerAllocator> struct IsMessage< ::laser_assembler::AssembleScansRequest_<ContainerAllocator> > : public TrueType {};
00103 template<class ContainerAllocator> struct IsMessage< ::laser_assembler::AssembleScansRequest_<ContainerAllocator>  const> : public TrueType {};
00104 template<class ContainerAllocator>
00105 struct MD5Sum< ::laser_assembler::AssembleScansRequest_<ContainerAllocator> > {
00106   static const char* value() 
00107   {
00108     return "b341004f74e15bf5e1b2053a9183bdc7";
00109   }
00110 
00111   static const char* value(const  ::laser_assembler::AssembleScansRequest_<ContainerAllocator> &) { return value(); } 
00112   static const uint64_t static_value1 = 0xb341004f74e15bf5ULL;
00113   static const uint64_t static_value2 = 0xe1b2053a9183bdc7ULL;
00114 };
00115 
00116 template<class ContainerAllocator>
00117 struct DataType< ::laser_assembler::AssembleScansRequest_<ContainerAllocator> > {
00118   static const char* value() 
00119   {
00120     return "laser_assembler/AssembleScansRequest";
00121   }
00122 
00123   static const char* value(const  ::laser_assembler::AssembleScansRequest_<ContainerAllocator> &) { return value(); } 
00124 };
00125 
00126 template<class ContainerAllocator>
00127 struct Definition< ::laser_assembler::AssembleScansRequest_<ContainerAllocator> > {
00128   static const char* value() 
00129   {
00130     return "\n\
00131 time begin\n\
00132 \n\
00133 time end\n\
00134 \n\
00135 ";
00136   }
00137 
00138   static const char* value(const  ::laser_assembler::AssembleScansRequest_<ContainerAllocator> &) { return value(); } 
00139 };
00140 
00141 template<class ContainerAllocator> struct IsFixedSize< ::laser_assembler::AssembleScansRequest_<ContainerAllocator> > : public TrueType {};
00142 } // namespace message_traits
00143 } // namespace ros
00144 
00145 
00146 namespace ros
00147 {
00148 namespace message_traits
00149 {
00150 template<class ContainerAllocator> struct IsMessage< ::laser_assembler::AssembleScansResponse_<ContainerAllocator> > : public TrueType {};
00151 template<class ContainerAllocator> struct IsMessage< ::laser_assembler::AssembleScansResponse_<ContainerAllocator>  const> : public TrueType {};
00152 template<class ContainerAllocator>
00153 struct MD5Sum< ::laser_assembler::AssembleScansResponse_<ContainerAllocator> > {
00154   static const char* value() 
00155   {
00156     return "4217b28a903e4ad7869a83b3653110ff";
00157   }
00158 
00159   static const char* value(const  ::laser_assembler::AssembleScansResponse_<ContainerAllocator> &) { return value(); } 
00160   static const uint64_t static_value1 = 0x4217b28a903e4ad7ULL;
00161   static const uint64_t static_value2 = 0x869a83b3653110ffULL;
00162 };
00163 
00164 template<class ContainerAllocator>
00165 struct DataType< ::laser_assembler::AssembleScansResponse_<ContainerAllocator> > {
00166   static const char* value() 
00167   {
00168     return "laser_assembler/AssembleScansResponse";
00169   }
00170 
00171   static const char* value(const  ::laser_assembler::AssembleScansResponse_<ContainerAllocator> &) { return value(); } 
00172 };
00173 
00174 template<class ContainerAllocator>
00175 struct Definition< ::laser_assembler::AssembleScansResponse_<ContainerAllocator> > {
00176   static const char* value() 
00177   {
00178     return "\n\
00179 \n\
00180 \n\
00181 sensor_msgs/PointCloud cloud\n\
00182 \n\
00183 \n\
00184 ================================================================================\n\
00185 MSG: sensor_msgs/PointCloud\n\
00186 # This message holds a collection of 3d points, plus optional additional\n\
00187 # information about each point.\n\
00188 \n\
00189 # Time of sensor data acquisition, coordinate frame ID.\n\
00190 Header header\n\
00191 \n\
00192 # Array of 3d points. Each Point32 should be interpreted as a 3d point\n\
00193 # in the frame given in the header.\n\
00194 geometry_msgs/Point32[] points\n\
00195 \n\
00196 # Each channel should have the same number of elements as points array,\n\
00197 # and the data in each channel should correspond 1:1 with each point.\n\
00198 # Channel names in common practice are listed in ChannelFloat32.msg.\n\
00199 ChannelFloat32[] channels\n\
00200 \n\
00201 ================================================================================\n\
00202 MSG: std_msgs/Header\n\
00203 # Standard metadata for higher-level stamped data types.\n\
00204 # This is generally used to communicate timestamped data \n\
00205 # in a particular coordinate frame.\n\
00206 # \n\
00207 # sequence ID: consecutively increasing ID \n\
00208 uint32 seq\n\
00209 #Two-integer timestamp that is expressed as:\n\
00210 # * stamp.secs: seconds (stamp_secs) since epoch\n\
00211 # * stamp.nsecs: nanoseconds since stamp_secs\n\
00212 # time-handling sugar is provided by the client library\n\
00213 time stamp\n\
00214 #Frame this data is associated with\n\
00215 # 0: no frame\n\
00216 # 1: global frame\n\
00217 string frame_id\n\
00218 \n\
00219 ================================================================================\n\
00220 MSG: geometry_msgs/Point32\n\
00221 # This contains the position of a point in free space(with 32 bits of precision).\n\
00222 # It is recommeded to use Point wherever possible instead of Point32.  \n\
00223 # \n\
00224 # This recommendation is to promote interoperability.  \n\
00225 #\n\
00226 # This message is designed to take up less space when sending\n\
00227 # lots of points at once, as in the case of a PointCloud.  \n\
00228 \n\
00229 float32 x\n\
00230 float32 y\n\
00231 float32 z\n\
00232 ================================================================================\n\
00233 MSG: sensor_msgs/ChannelFloat32\n\
00234 # This message is used by the PointCloud message to hold optional data\n\
00235 # associated with each point in the cloud. The length of the values\n\
00236 # array should be the same as the length of the points array in the\n\
00237 # PointCloud, and each value should be associated with the corresponding\n\
00238 # point.\n\
00239 \n\
00240 # Channel names in existing practice include:\n\
00241 #   \"u\", \"v\" - row and column (respectively) in the left stereo image.\n\
00242 #              This is opposite to usual conventions but remains for\n\
00243 #              historical reasons. The newer PointCloud2 message has no\n\
00244 #              such problem.\n\
00245 #   \"rgb\" - For point clouds produced by color stereo cameras. uint8\n\
00246 #           (R,G,B) values packed into the least significant 24 bits,\n\
00247 #           in order.\n\
00248 #   \"intensity\" - laser or pixel intensity.\n\
00249 #   \"distance\"\n\
00250 \n\
00251 # The channel name should give semantics of the channel (e.g.\n\
00252 # \"intensity\" instead of \"value\").\n\
00253 string name\n\
00254 \n\
00255 # The values array should be 1-1 with the elements of the associated\n\
00256 # PointCloud.\n\
00257 float32[] values\n\
00258 \n\
00259 ";
00260   }
00261 
00262   static const char* value(const  ::laser_assembler::AssembleScansResponse_<ContainerAllocator> &) { return value(); } 
00263 };
00264 
00265 } // namespace message_traits
00266 } // namespace ros
00267 
00268 namespace ros
00269 {
00270 namespace serialization
00271 {
00272 
00273 template<class ContainerAllocator> struct Serializer< ::laser_assembler::AssembleScansRequest_<ContainerAllocator> >
00274 {
00275   template<typename Stream, typename T> inline static void allInOne(Stream& stream, T m)
00276   {
00277     stream.next(m.begin);
00278     stream.next(m.end);
00279   }
00280 
00281   ROS_DECLARE_ALLINONE_SERIALIZER;
00282 }; // struct AssembleScansRequest_
00283 } // namespace serialization
00284 } // namespace ros
00285 
00286 
00287 namespace ros
00288 {
00289 namespace serialization
00290 {
00291 
00292 template<class ContainerAllocator> struct Serializer< ::laser_assembler::AssembleScansResponse_<ContainerAllocator> >
00293 {
00294   template<typename Stream, typename T> inline static void allInOne(Stream& stream, T m)
00295   {
00296     stream.next(m.cloud);
00297   }
00298 
00299   ROS_DECLARE_ALLINONE_SERIALIZER;
00300 }; // struct AssembleScansResponse_
00301 } // namespace serialization
00302 } // namespace ros
00303 
00304 namespace ros
00305 {
00306 namespace service_traits
00307 {
00308 template<>
00309 struct MD5Sum<laser_assembler::AssembleScans> {
00310   static const char* value() 
00311   {
00312     return "6d5cec00dca23821eae6bd7449078aa7";
00313   }
00314 
00315   static const char* value(const laser_assembler::AssembleScans&) { return value(); } 
00316 };
00317 
00318 template<>
00319 struct DataType<laser_assembler::AssembleScans> {
00320   static const char* value() 
00321   {
00322     return "laser_assembler/AssembleScans";
00323   }
00324 
00325   static const char* value(const laser_assembler::AssembleScans&) { return value(); } 
00326 };
00327 
00328 template<class ContainerAllocator>
00329 struct MD5Sum<laser_assembler::AssembleScansRequest_<ContainerAllocator> > {
00330   static const char* value() 
00331   {
00332     return "6d5cec00dca23821eae6bd7449078aa7";
00333   }
00334 
00335   static const char* value(const laser_assembler::AssembleScansRequest_<ContainerAllocator> &) { return value(); } 
00336 };
00337 
00338 template<class ContainerAllocator>
00339 struct DataType<laser_assembler::AssembleScansRequest_<ContainerAllocator> > {
00340   static const char* value() 
00341   {
00342     return "laser_assembler/AssembleScans";
00343   }
00344 
00345   static const char* value(const laser_assembler::AssembleScansRequest_<ContainerAllocator> &) { return value(); } 
00346 };
00347 
00348 template<class ContainerAllocator>
00349 struct MD5Sum<laser_assembler::AssembleScansResponse_<ContainerAllocator> > {
00350   static const char* value() 
00351   {
00352     return "6d5cec00dca23821eae6bd7449078aa7";
00353   }
00354 
00355   static const char* value(const laser_assembler::AssembleScansResponse_<ContainerAllocator> &) { return value(); } 
00356 };
00357 
00358 template<class ContainerAllocator>
00359 struct DataType<laser_assembler::AssembleScansResponse_<ContainerAllocator> > {
00360   static const char* value() 
00361   {
00362     return "laser_assembler/AssembleScans";
00363   }
00364 
00365   static const char* value(const laser_assembler::AssembleScansResponse_<ContainerAllocator> &) { return value(); } 
00366 };
00367 
00368 } // namespace service_traits
00369 } // namespace ros
00370 
00371 #endif // LASER_ASSEMBLER_SERVICE_ASSEMBLESCANS_H
00372 


laser_assembler
Author(s): Vijay Pradeep
autogenerated on Fri Jan 3 2014 11:27:46