Go to the documentation of this file.00001
00002 #ifndef PHOTO_SERVICE_CAPTURE_H
00003 #define PHOTO_SERVICE_CAPTURE_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/Image.h"
00022
00023 namespace photo
00024 {
00025 template <class ContainerAllocator>
00026 struct CaptureRequest_ {
00027 typedef CaptureRequest_<ContainerAllocator> Type;
00028
00029 CaptureRequest_()
00030 {
00031 }
00032
00033 CaptureRequest_(const ContainerAllocator& _alloc)
00034 {
00035 }
00036
00037
00038 typedef boost::shared_ptr< ::photo::CaptureRequest_<ContainerAllocator> > Ptr;
00039 typedef boost::shared_ptr< ::photo::CaptureRequest_<ContainerAllocator> const> ConstPtr;
00040 boost::shared_ptr<std::map<std::string, std::string> > __connection_header;
00041 };
00042 typedef ::photo::CaptureRequest_<std::allocator<void> > CaptureRequest;
00043
00044 typedef boost::shared_ptr< ::photo::CaptureRequest> CaptureRequestPtr;
00045 typedef boost::shared_ptr< ::photo::CaptureRequest const> CaptureRequestConstPtr;
00046
00047
00048 template <class ContainerAllocator>
00049 struct CaptureResponse_ {
00050 typedef CaptureResponse_<ContainerAllocator> Type;
00051
00052 CaptureResponse_()
00053 : image()
00054 {
00055 }
00056
00057 CaptureResponse_(const ContainerAllocator& _alloc)
00058 : image(_alloc)
00059 {
00060 }
00061
00062 typedef ::sensor_msgs::Image_<ContainerAllocator> _image_type;
00063 ::sensor_msgs::Image_<ContainerAllocator> image;
00064
00065
00066 typedef boost::shared_ptr< ::photo::CaptureResponse_<ContainerAllocator> > Ptr;
00067 typedef boost::shared_ptr< ::photo::CaptureResponse_<ContainerAllocator> const> ConstPtr;
00068 boost::shared_ptr<std::map<std::string, std::string> > __connection_header;
00069 };
00070 typedef ::photo::CaptureResponse_<std::allocator<void> > CaptureResponse;
00071
00072 typedef boost::shared_ptr< ::photo::CaptureResponse> CaptureResponsePtr;
00073 typedef boost::shared_ptr< ::photo::CaptureResponse const> CaptureResponseConstPtr;
00074
00075 struct Capture
00076 {
00077
00078 typedef CaptureRequest Request;
00079 typedef CaptureResponse Response;
00080 Request request;
00081 Response response;
00082
00083 typedef Request RequestType;
00084 typedef Response ResponseType;
00085 };
00086 }
00087
00088 namespace ros
00089 {
00090 namespace message_traits
00091 {
00092 template<class ContainerAllocator> struct IsMessage< ::photo::CaptureRequest_<ContainerAllocator> > : public TrueType {};
00093 template<class ContainerAllocator> struct IsMessage< ::photo::CaptureRequest_<ContainerAllocator> const> : public TrueType {};
00094 template<class ContainerAllocator>
00095 struct MD5Sum< ::photo::CaptureRequest_<ContainerAllocator> > {
00096 static const char* value()
00097 {
00098 return "d41d8cd98f00b204e9800998ecf8427e";
00099 }
00100
00101 static const char* value(const ::photo::CaptureRequest_<ContainerAllocator> &) { return value(); }
00102 static const uint64_t static_value1 = 0xd41d8cd98f00b204ULL;
00103 static const uint64_t static_value2 = 0xe9800998ecf8427eULL;
00104 };
00105
00106 template<class ContainerAllocator>
00107 struct DataType< ::photo::CaptureRequest_<ContainerAllocator> > {
00108 static const char* value()
00109 {
00110 return "photo/CaptureRequest";
00111 }
00112
00113 static const char* value(const ::photo::CaptureRequest_<ContainerAllocator> &) { return value(); }
00114 };
00115
00116 template<class ContainerAllocator>
00117 struct Definition< ::photo::CaptureRequest_<ContainerAllocator> > {
00118 static const char* value()
00119 {
00120 return "\n\
00121 ";
00122 }
00123
00124 static const char* value(const ::photo::CaptureRequest_<ContainerAllocator> &) { return value(); }
00125 };
00126
00127 template<class ContainerAllocator> struct IsFixedSize< ::photo::CaptureRequest_<ContainerAllocator> > : public TrueType {};
00128 }
00129 }
00130
00131
00132 namespace ros
00133 {
00134 namespace message_traits
00135 {
00136 template<class ContainerAllocator> struct IsMessage< ::photo::CaptureResponse_<ContainerAllocator> > : public TrueType {};
00137 template<class ContainerAllocator> struct IsMessage< ::photo::CaptureResponse_<ContainerAllocator> const> : public TrueType {};
00138 template<class ContainerAllocator>
00139 struct MD5Sum< ::photo::CaptureResponse_<ContainerAllocator> > {
00140 static const char* value()
00141 {
00142 return "b13d2865c5af2a64e6e30ab1b56e1dd5";
00143 }
00144
00145 static const char* value(const ::photo::CaptureResponse_<ContainerAllocator> &) { return value(); }
00146 static const uint64_t static_value1 = 0xb13d2865c5af2a64ULL;
00147 static const uint64_t static_value2 = 0xe6e30ab1b56e1dd5ULL;
00148 };
00149
00150 template<class ContainerAllocator>
00151 struct DataType< ::photo::CaptureResponse_<ContainerAllocator> > {
00152 static const char* value()
00153 {
00154 return "photo/CaptureResponse";
00155 }
00156
00157 static const char* value(const ::photo::CaptureResponse_<ContainerAllocator> &) { return value(); }
00158 };
00159
00160 template<class ContainerAllocator>
00161 struct Definition< ::photo::CaptureResponse_<ContainerAllocator> > {
00162 static const char* value()
00163 {
00164 return "sensor_msgs/Image image\n\
00165 \n\
00166 \n\
00167 ================================================================================\n\
00168 MSG: sensor_msgs/Image\n\
00169 # This message contains an uncompressed image\n\
00170 # (0, 0) is at top-left corner of image\n\
00171 #\n\
00172 \n\
00173 Header header # Header timestamp should be acquisition time of image\n\
00174 # Header frame_id should be optical frame of camera\n\
00175 # origin of frame should be optical center of cameara\n\
00176 # +x should point to the right in the image\n\
00177 # +y should point down in the image\n\
00178 # +z should point into to plane of the image\n\
00179 # If the frame_id here and the frame_id of the CameraInfo\n\
00180 # message associated with the image conflict\n\
00181 # the behavior is undefined\n\
00182 \n\
00183 uint32 height # image height, that is, number of rows\n\
00184 uint32 width # image width, that is, number of columns\n\
00185 \n\
00186 # The legal values for encoding are in file src/image_encodings.cpp\n\
00187 # If you want to standardize a new string format, join\n\
00188 # ros-users@lists.sourceforge.net and send an email proposing a new encoding.\n\
00189 \n\
00190 string encoding # Encoding of pixels -- channel meaning, ordering, size\n\
00191 # taken from the list of strings in src/image_encodings.cpp\n\
00192 \n\
00193 uint8 is_bigendian # is this data bigendian?\n\
00194 uint32 step # Full row length in bytes\n\
00195 uint8[] data # actual matrix data, size is (step * rows)\n\
00196 \n\
00197 ================================================================================\n\
00198 MSG: std_msgs/Header\n\
00199 # Standard metadata for higher-level stamped data types.\n\
00200 # This is generally used to communicate timestamped data \n\
00201 # in a particular coordinate frame.\n\
00202 # \n\
00203 # sequence ID: consecutively increasing ID \n\
00204 uint32 seq\n\
00205 #Two-integer timestamp that is expressed as:\n\
00206 # * stamp.secs: seconds (stamp_secs) since epoch\n\
00207 # * stamp.nsecs: nanoseconds since stamp_secs\n\
00208 # time-handling sugar is provided by the client library\n\
00209 time stamp\n\
00210 #Frame this data is associated with\n\
00211 # 0: no frame\n\
00212 # 1: global frame\n\
00213 string frame_id\n\
00214 \n\
00215 ";
00216 }
00217
00218 static const char* value(const ::photo::CaptureResponse_<ContainerAllocator> &) { return value(); }
00219 };
00220
00221 }
00222 }
00223
00224 namespace ros
00225 {
00226 namespace serialization
00227 {
00228
00229 template<class ContainerAllocator> struct Serializer< ::photo::CaptureRequest_<ContainerAllocator> >
00230 {
00231 template<typename Stream, typename T> inline static void allInOne(Stream& stream, T m)
00232 {
00233 }
00234
00235 ROS_DECLARE_ALLINONE_SERIALIZER;
00236 };
00237 }
00238 }
00239
00240
00241 namespace ros
00242 {
00243 namespace serialization
00244 {
00245
00246 template<class ContainerAllocator> struct Serializer< ::photo::CaptureResponse_<ContainerAllocator> >
00247 {
00248 template<typename Stream, typename T> inline static void allInOne(Stream& stream, T m)
00249 {
00250 stream.next(m.image);
00251 }
00252
00253 ROS_DECLARE_ALLINONE_SERIALIZER;
00254 };
00255 }
00256 }
00257
00258 namespace ros
00259 {
00260 namespace service_traits
00261 {
00262 template<>
00263 struct MD5Sum<photo::Capture> {
00264 static const char* value()
00265 {
00266 return "b13d2865c5af2a64e6e30ab1b56e1dd5";
00267 }
00268
00269 static const char* value(const photo::Capture&) { return value(); }
00270 };
00271
00272 template<>
00273 struct DataType<photo::Capture> {
00274 static const char* value()
00275 {
00276 return "photo/Capture";
00277 }
00278
00279 static const char* value(const photo::Capture&) { return value(); }
00280 };
00281
00282 template<class ContainerAllocator>
00283 struct MD5Sum<photo::CaptureRequest_<ContainerAllocator> > {
00284 static const char* value()
00285 {
00286 return "b13d2865c5af2a64e6e30ab1b56e1dd5";
00287 }
00288
00289 static const char* value(const photo::CaptureRequest_<ContainerAllocator> &) { return value(); }
00290 };
00291
00292 template<class ContainerAllocator>
00293 struct DataType<photo::CaptureRequest_<ContainerAllocator> > {
00294 static const char* value()
00295 {
00296 return "photo/Capture";
00297 }
00298
00299 static const char* value(const photo::CaptureRequest_<ContainerAllocator> &) { return value(); }
00300 };
00301
00302 template<class ContainerAllocator>
00303 struct MD5Sum<photo::CaptureResponse_<ContainerAllocator> > {
00304 static const char* value()
00305 {
00306 return "b13d2865c5af2a64e6e30ab1b56e1dd5";
00307 }
00308
00309 static const char* value(const photo::CaptureResponse_<ContainerAllocator> &) { return value(); }
00310 };
00311
00312 template<class ContainerAllocator>
00313 struct DataType<photo::CaptureResponse_<ContainerAllocator> > {
00314 static const char* value()
00315 {
00316 return "photo/Capture";
00317 }
00318
00319 static const char* value(const photo::CaptureResponse_<ContainerAllocator> &) { return value(); }
00320 };
00321
00322 }
00323 }
00324
00325 #endif // PHOTO_SERVICE_CAPTURE_H
00326