Go to the documentation of this file.00001
00002 #ifndef SHARED_SERIAL_SERVICE_RECV_H
00003 #define SHARED_SERIAL_SERVICE_RECV_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
00022 namespace shared_serial
00023 {
00024 template <class ContainerAllocator>
00025 struct RecvRequest_ {
00026 typedef RecvRequest_<ContainerAllocator> Type;
00027
00028 RecvRequest_()
00029 : socket(0)
00030 , length(0)
00031 , recv_timeout(0.0)
00032 , sock_timeout(0.0)
00033 {
00034 }
00035
00036 RecvRequest_(const ContainerAllocator& _alloc)
00037 : socket(0)
00038 , length(0)
00039 , recv_timeout(0.0)
00040 , sock_timeout(0.0)
00041 {
00042 }
00043
00044 typedef uint32_t _socket_type;
00045 uint32_t socket;
00046
00047 typedef uint32_t _length_type;
00048 uint32_t length;
00049
00050 typedef float _recv_timeout_type;
00051 float recv_timeout;
00052
00053 typedef float _sock_timeout_type;
00054 float sock_timeout;
00055
00056
00057 typedef boost::shared_ptr< ::shared_serial::RecvRequest_<ContainerAllocator> > Ptr;
00058 typedef boost::shared_ptr< ::shared_serial::RecvRequest_<ContainerAllocator> const> ConstPtr;
00059 boost::shared_ptr<std::map<std::string, std::string> > __connection_header;
00060 };
00061 typedef ::shared_serial::RecvRequest_<std::allocator<void> > RecvRequest;
00062
00063 typedef boost::shared_ptr< ::shared_serial::RecvRequest> RecvRequestPtr;
00064 typedef boost::shared_ptr< ::shared_serial::RecvRequest const> RecvRequestConstPtr;
00065
00066
00067 template <class ContainerAllocator>
00068 struct RecvResponse_ {
00069 typedef RecvResponse_<ContainerAllocator> Type;
00070
00071 RecvResponse_()
00072 : socket(0)
00073 , data()
00074 {
00075 }
00076
00077 RecvResponse_(const ContainerAllocator& _alloc)
00078 : socket(0)
00079 , data(_alloc)
00080 {
00081 }
00082
00083 typedef uint32_t _socket_type;
00084 uint32_t socket;
00085
00086 typedef std::vector<uint8_t, typename ContainerAllocator::template rebind<uint8_t>::other > _data_type;
00087 std::vector<uint8_t, typename ContainerAllocator::template rebind<uint8_t>::other > data;
00088
00089
00090 typedef boost::shared_ptr< ::shared_serial::RecvResponse_<ContainerAllocator> > Ptr;
00091 typedef boost::shared_ptr< ::shared_serial::RecvResponse_<ContainerAllocator> const> ConstPtr;
00092 boost::shared_ptr<std::map<std::string, std::string> > __connection_header;
00093 };
00094 typedef ::shared_serial::RecvResponse_<std::allocator<void> > RecvResponse;
00095
00096 typedef boost::shared_ptr< ::shared_serial::RecvResponse> RecvResponsePtr;
00097 typedef boost::shared_ptr< ::shared_serial::RecvResponse const> RecvResponseConstPtr;
00098
00099 struct Recv
00100 {
00101
00102 typedef RecvRequest Request;
00103 typedef RecvResponse Response;
00104 Request request;
00105 Response response;
00106
00107 typedef Request RequestType;
00108 typedef Response ResponseType;
00109 };
00110 }
00111
00112 namespace ros
00113 {
00114 namespace message_traits
00115 {
00116 template<class ContainerAllocator> struct IsMessage< ::shared_serial::RecvRequest_<ContainerAllocator> > : public TrueType {};
00117 template<class ContainerAllocator> struct IsMessage< ::shared_serial::RecvRequest_<ContainerAllocator> const> : public TrueType {};
00118 template<class ContainerAllocator>
00119 struct MD5Sum< ::shared_serial::RecvRequest_<ContainerAllocator> > {
00120 static const char* value()
00121 {
00122 return "c05d3c907840837e419db15be31d15b6";
00123 }
00124
00125 static const char* value(const ::shared_serial::RecvRequest_<ContainerAllocator> &) { return value(); }
00126 static const uint64_t static_value1 = 0xc05d3c907840837eULL;
00127 static const uint64_t static_value2 = 0x419db15be31d15b6ULL;
00128 };
00129
00130 template<class ContainerAllocator>
00131 struct DataType< ::shared_serial::RecvRequest_<ContainerAllocator> > {
00132 static const char* value()
00133 {
00134 return "shared_serial/RecvRequest";
00135 }
00136
00137 static const char* value(const ::shared_serial::RecvRequest_<ContainerAllocator> &) { return value(); }
00138 };
00139
00140 template<class ContainerAllocator>
00141 struct Definition< ::shared_serial::RecvRequest_<ContainerAllocator> > {
00142 static const char* value()
00143 {
00144 return "\n\
00145 \n\
00146 \n\
00147 \n\
00148 uint32 socket\n\
00149 \n\
00150 \n\
00151 uint32 length\n\
00152 \n\
00153 \n\
00154 float32 recv_timeout\n\
00155 \n\
00156 \n\
00157 float32 sock_timeout\n\
00158 \n\
00159 \n\
00160 ";
00161 }
00162
00163 static const char* value(const ::shared_serial::RecvRequest_<ContainerAllocator> &) { return value(); }
00164 };
00165
00166 template<class ContainerAllocator> struct IsFixedSize< ::shared_serial::RecvRequest_<ContainerAllocator> > : public TrueType {};
00167 }
00168 }
00169
00170
00171 namespace ros
00172 {
00173 namespace message_traits
00174 {
00175 template<class ContainerAllocator> struct IsMessage< ::shared_serial::RecvResponse_<ContainerAllocator> > : public TrueType {};
00176 template<class ContainerAllocator> struct IsMessage< ::shared_serial::RecvResponse_<ContainerAllocator> const> : public TrueType {};
00177 template<class ContainerAllocator>
00178 struct MD5Sum< ::shared_serial::RecvResponse_<ContainerAllocator> > {
00179 static const char* value()
00180 {
00181 return "9aa8c2746a0876552ecc2a81ad0d58a5";
00182 }
00183
00184 static const char* value(const ::shared_serial::RecvResponse_<ContainerAllocator> &) { return value(); }
00185 static const uint64_t static_value1 = 0x9aa8c2746a087655ULL;
00186 static const uint64_t static_value2 = 0x2ecc2a81ad0d58a5ULL;
00187 };
00188
00189 template<class ContainerAllocator>
00190 struct DataType< ::shared_serial::RecvResponse_<ContainerAllocator> > {
00191 static const char* value()
00192 {
00193 return "shared_serial/RecvResponse";
00194 }
00195
00196 static const char* value(const ::shared_serial::RecvResponse_<ContainerAllocator> &) { return value(); }
00197 };
00198
00199 template<class ContainerAllocator>
00200 struct Definition< ::shared_serial::RecvResponse_<ContainerAllocator> > {
00201 static const char* value()
00202 {
00203 return "\n\
00204 \n\
00205 uint32 socket\n\
00206 \n\
00207 \n\
00208 uint8[] data\n\
00209 \n\
00210 \n\
00211 ";
00212 }
00213
00214 static const char* value(const ::shared_serial::RecvResponse_<ContainerAllocator> &) { return value(); }
00215 };
00216
00217 }
00218 }
00219
00220 namespace ros
00221 {
00222 namespace serialization
00223 {
00224
00225 template<class ContainerAllocator> struct Serializer< ::shared_serial::RecvRequest_<ContainerAllocator> >
00226 {
00227 template<typename Stream, typename T> inline static void allInOne(Stream& stream, T m)
00228 {
00229 stream.next(m.socket);
00230 stream.next(m.length);
00231 stream.next(m.recv_timeout);
00232 stream.next(m.sock_timeout);
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< ::shared_serial::RecvResponse_<ContainerAllocator> >
00247 {
00248 template<typename Stream, typename T> inline static void allInOne(Stream& stream, T m)
00249 {
00250 stream.next(m.socket);
00251 stream.next(m.data);
00252 }
00253
00254 ROS_DECLARE_ALLINONE_SERIALIZER;
00255 };
00256 }
00257 }
00258
00259 namespace ros
00260 {
00261 namespace service_traits
00262 {
00263 template<>
00264 struct MD5Sum<shared_serial::Recv> {
00265 static const char* value()
00266 {
00267 return "bd548aa08873c82b3c13b2132976dd0d";
00268 }
00269
00270 static const char* value(const shared_serial::Recv&) { return value(); }
00271 };
00272
00273 template<>
00274 struct DataType<shared_serial::Recv> {
00275 static const char* value()
00276 {
00277 return "shared_serial/Recv";
00278 }
00279
00280 static const char* value(const shared_serial::Recv&) { return value(); }
00281 };
00282
00283 template<class ContainerAllocator>
00284 struct MD5Sum<shared_serial::RecvRequest_<ContainerAllocator> > {
00285 static const char* value()
00286 {
00287 return "bd548aa08873c82b3c13b2132976dd0d";
00288 }
00289
00290 static const char* value(const shared_serial::RecvRequest_<ContainerAllocator> &) { return value(); }
00291 };
00292
00293 template<class ContainerAllocator>
00294 struct DataType<shared_serial::RecvRequest_<ContainerAllocator> > {
00295 static const char* value()
00296 {
00297 return "shared_serial/Recv";
00298 }
00299
00300 static const char* value(const shared_serial::RecvRequest_<ContainerAllocator> &) { return value(); }
00301 };
00302
00303 template<class ContainerAllocator>
00304 struct MD5Sum<shared_serial::RecvResponse_<ContainerAllocator> > {
00305 static const char* value()
00306 {
00307 return "bd548aa08873c82b3c13b2132976dd0d";
00308 }
00309
00310 static const char* value(const shared_serial::RecvResponse_<ContainerAllocator> &) { return value(); }
00311 };
00312
00313 template<class ContainerAllocator>
00314 struct DataType<shared_serial::RecvResponse_<ContainerAllocator> > {
00315 static const char* value()
00316 {
00317 return "shared_serial/Recv";
00318 }
00319
00320 static const char* value(const shared_serial::RecvResponse_<ContainerAllocator> &) { return value(); }
00321 };
00322
00323 }
00324 }
00325
00326 #endif // SHARED_SERIAL_SERVICE_RECV_H
00327