Go to the documentation of this file.00001
00002 #ifndef SRS_KNOWLEDGE_SERVICE_GENERATESEQUENCE_H
00003 #define SRS_KNOWLEDGE_SERVICE_GENERATESEQUENCE_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 "srs_knowledge/ABoxObject.h"
00020 #include "srs_knowledge/TBoxObject.h"
00021
00022
00023 #include "srs_knowledge/CUAction.h"
00024
00025 namespace srs_knowledge
00026 {
00027 template <class ContainerAllocator>
00028 struct GenerateSequenceRequest_ {
00029 typedef GenerateSequenceRequest_<ContainerAllocator> Type;
00030
00031 GenerateSequenceRequest_()
00032 : task()
00033 , objectOrClass()
00034 , aboxObject()
00035 , tboxObject()
00036 {
00037 }
00038
00039 GenerateSequenceRequest_(const ContainerAllocator& _alloc)
00040 : task(_alloc)
00041 , objectOrClass(_alloc)
00042 , aboxObject(_alloc)
00043 , tboxObject(_alloc)
00044 {
00045 }
00046
00047 typedef std::basic_string<char, std::char_traits<char>, typename ContainerAllocator::template rebind<char>::other > _task_type;
00048 std::basic_string<char, std::char_traits<char>, typename ContainerAllocator::template rebind<char>::other > task;
00049
00050 typedef std::basic_string<char, std::char_traits<char>, typename ContainerAllocator::template rebind<char>::other > _objectOrClass_type;
00051 std::basic_string<char, std::char_traits<char>, typename ContainerAllocator::template rebind<char>::other > objectOrClass;
00052
00053 typedef ::srs_knowledge::ABoxObject_<ContainerAllocator> _aboxObject_type;
00054 ::srs_knowledge::ABoxObject_<ContainerAllocator> aboxObject;
00055
00056 typedef ::srs_knowledge::TBoxObject_<ContainerAllocator> _tboxObject_type;
00057 ::srs_knowledge::TBoxObject_<ContainerAllocator> tboxObject;
00058
00059
00060 typedef boost::shared_ptr< ::srs_knowledge::GenerateSequenceRequest_<ContainerAllocator> > Ptr;
00061 typedef boost::shared_ptr< ::srs_knowledge::GenerateSequenceRequest_<ContainerAllocator> const> ConstPtr;
00062 boost::shared_ptr<std::map<std::string, std::string> > __connection_header;
00063 };
00064 typedef ::srs_knowledge::GenerateSequenceRequest_<std::allocator<void> > GenerateSequenceRequest;
00065
00066 typedef boost::shared_ptr< ::srs_knowledge::GenerateSequenceRequest> GenerateSequenceRequestPtr;
00067 typedef boost::shared_ptr< ::srs_knowledge::GenerateSequenceRequest const> GenerateSequenceRequestConstPtr;
00068
00069
00070 template <class ContainerAllocator>
00071 struct GenerateSequenceResponse_ {
00072 typedef GenerateSequenceResponse_<ContainerAllocator> Type;
00073
00074 GenerateSequenceResponse_()
00075 : actionSequence()
00076 {
00077 }
00078
00079 GenerateSequenceResponse_(const ContainerAllocator& _alloc)
00080 : actionSequence(_alloc)
00081 {
00082 }
00083
00084 typedef std::vector< ::srs_knowledge::CUAction_<ContainerAllocator> , typename ContainerAllocator::template rebind< ::srs_knowledge::CUAction_<ContainerAllocator> >::other > _actionSequence_type;
00085 std::vector< ::srs_knowledge::CUAction_<ContainerAllocator> , typename ContainerAllocator::template rebind< ::srs_knowledge::CUAction_<ContainerAllocator> >::other > actionSequence;
00086
00087
00088 typedef boost::shared_ptr< ::srs_knowledge::GenerateSequenceResponse_<ContainerAllocator> > Ptr;
00089 typedef boost::shared_ptr< ::srs_knowledge::GenerateSequenceResponse_<ContainerAllocator> const> ConstPtr;
00090 boost::shared_ptr<std::map<std::string, std::string> > __connection_header;
00091 };
00092 typedef ::srs_knowledge::GenerateSequenceResponse_<std::allocator<void> > GenerateSequenceResponse;
00093
00094 typedef boost::shared_ptr< ::srs_knowledge::GenerateSequenceResponse> GenerateSequenceResponsePtr;
00095 typedef boost::shared_ptr< ::srs_knowledge::GenerateSequenceResponse const> GenerateSequenceResponseConstPtr;
00096
00097 struct GenerateSequence
00098 {
00099
00100 typedef GenerateSequenceRequest Request;
00101 typedef GenerateSequenceResponse Response;
00102 Request request;
00103 Response response;
00104
00105 typedef Request RequestType;
00106 typedef Response ResponseType;
00107 };
00108 }
00109
00110 namespace ros
00111 {
00112 namespace message_traits
00113 {
00114 template<class ContainerAllocator> struct IsMessage< ::srs_knowledge::GenerateSequenceRequest_<ContainerAllocator> > : public TrueType {};
00115 template<class ContainerAllocator> struct IsMessage< ::srs_knowledge::GenerateSequenceRequest_<ContainerAllocator> const> : public TrueType {};
00116 template<class ContainerAllocator>
00117 struct MD5Sum< ::srs_knowledge::GenerateSequenceRequest_<ContainerAllocator> > {
00118 static const char* value()
00119 {
00120 return "f8b7e6eac542462f61a4f22feaa3eb4d";
00121 }
00122
00123 static const char* value(const ::srs_knowledge::GenerateSequenceRequest_<ContainerAllocator> &) { return value(); }
00124 static const uint64_t static_value1 = 0xf8b7e6eac542462fULL;
00125 static const uint64_t static_value2 = 0x61a4f22feaa3eb4dULL;
00126 };
00127
00128 template<class ContainerAllocator>
00129 struct DataType< ::srs_knowledge::GenerateSequenceRequest_<ContainerAllocator> > {
00130 static const char* value()
00131 {
00132 return "srs_knowledge/GenerateSequenceRequest";
00133 }
00134
00135 static const char* value(const ::srs_knowledge::GenerateSequenceRequest_<ContainerAllocator> &) { return value(); }
00136 };
00137
00138 template<class ContainerAllocator>
00139 struct Definition< ::srs_knowledge::GenerateSequenceRequest_<ContainerAllocator> > {
00140 static const char* value()
00141 {
00142 return "\n\
00143 \n\
00144 \n\
00145 string task\n\
00146 \n\
00147 \n\
00148 string objectOrClass\n\
00149 \n\
00150 ABoxObject aboxObject\n\
00151 TBoxObject tboxObject\n\
00152 \n\
00153 \n\
00154 ================================================================================\n\
00155 MSG: srs_knowledge/ABoxObject\n\
00156 int32 object_id\n\
00157 string name\n\
00158 string description\n\
00159 \n\
00160 ================================================================================\n\
00161 MSG: srs_knowledge/TBoxObject\n\
00162 int32 class_id\n\
00163 string name\n\
00164 string description\n\
00165 string[] properties\n\
00166 int32[] subjects\n\
00167 ";
00168 }
00169
00170 static const char* value(const ::srs_knowledge::GenerateSequenceRequest_<ContainerAllocator> &) { return value(); }
00171 };
00172
00173 }
00174 }
00175
00176
00177 namespace ros
00178 {
00179 namespace message_traits
00180 {
00181 template<class ContainerAllocator> struct IsMessage< ::srs_knowledge::GenerateSequenceResponse_<ContainerAllocator> > : public TrueType {};
00182 template<class ContainerAllocator> struct IsMessage< ::srs_knowledge::GenerateSequenceResponse_<ContainerAllocator> const> : public TrueType {};
00183 template<class ContainerAllocator>
00184 struct MD5Sum< ::srs_knowledge::GenerateSequenceResponse_<ContainerAllocator> > {
00185 static const char* value()
00186 {
00187 return "3ae845dd4707356c6abaa6d2a05e9ebb";
00188 }
00189
00190 static const char* value(const ::srs_knowledge::GenerateSequenceResponse_<ContainerAllocator> &) { return value(); }
00191 static const uint64_t static_value1 = 0x3ae845dd4707356cULL;
00192 static const uint64_t static_value2 = 0x6abaa6d2a05e9ebbULL;
00193 };
00194
00195 template<class ContainerAllocator>
00196 struct DataType< ::srs_knowledge::GenerateSequenceResponse_<ContainerAllocator> > {
00197 static const char* value()
00198 {
00199 return "srs_knowledge/GenerateSequenceResponse";
00200 }
00201
00202 static const char* value(const ::srs_knowledge::GenerateSequenceResponse_<ContainerAllocator> &) { return value(); }
00203 };
00204
00205 template<class ContainerAllocator>
00206 struct Definition< ::srs_knowledge::GenerateSequenceResponse_<ContainerAllocator> > {
00207 static const char* value()
00208 {
00209 return "\n\
00210 CUAction[] actionSequence\n\
00211 \n\
00212 ================================================================================\n\
00213 MSG: srs_knowledge/CUAction\n\
00214 # still at alpha stage. not finalised yet. \n\
00215 \n\
00216 # indicate if task finished successfully (1); no feasible solution (-1); continue executing the given actions in this message (0)\n\
00217 int32 status\n\
00218 \n\
00219 # [ifNavigate, ifDetect, ifGrasp]. 0: yes, 1: no, 2: others (undefined)\n\
00220 #int32[] actionFlags\n\
00221 \n\
00222 #MoveAction ma\n\
00223 #PerceptionAction pa\n\
00224 #GraspAction ga\n\
00225 GenericAction generic\n\
00226 \n\
00227 # move, perception, grasp, or generic\n\
00228 string actionType\n\
00229 ================================================================================\n\
00230 MSG: srs_knowledge/GenericAction\n\
00231 # use a list as the information container of an action\n\
00232 # BE CAREFUL WHEN USING IT. FOR FLEXIBILITY REASON OR TESTING NEW ADDED ACTION TYPE \n\
00233 # string[] actionInfo # to deprecate\n\
00234 string jsonActionInfo\n\
00235 \n\
00236 ";
00237 }
00238
00239 static const char* value(const ::srs_knowledge::GenerateSequenceResponse_<ContainerAllocator> &) { return value(); }
00240 };
00241
00242 }
00243 }
00244
00245 namespace ros
00246 {
00247 namespace serialization
00248 {
00249
00250 template<class ContainerAllocator> struct Serializer< ::srs_knowledge::GenerateSequenceRequest_<ContainerAllocator> >
00251 {
00252 template<typename Stream, typename T> inline static void allInOne(Stream& stream, T m)
00253 {
00254 stream.next(m.task);
00255 stream.next(m.objectOrClass);
00256 stream.next(m.aboxObject);
00257 stream.next(m.tboxObject);
00258 }
00259
00260 ROS_DECLARE_ALLINONE_SERIALIZER;
00261 };
00262 }
00263 }
00264
00265
00266 namespace ros
00267 {
00268 namespace serialization
00269 {
00270
00271 template<class ContainerAllocator> struct Serializer< ::srs_knowledge::GenerateSequenceResponse_<ContainerAllocator> >
00272 {
00273 template<typename Stream, typename T> inline static void allInOne(Stream& stream, T m)
00274 {
00275 stream.next(m.actionSequence);
00276 }
00277
00278 ROS_DECLARE_ALLINONE_SERIALIZER;
00279 };
00280 }
00281 }
00282
00283 namespace ros
00284 {
00285 namespace service_traits
00286 {
00287 template<>
00288 struct MD5Sum<srs_knowledge::GenerateSequence> {
00289 static const char* value()
00290 {
00291 return "57423689670151932a208b25e4d16c4f";
00292 }
00293
00294 static const char* value(const srs_knowledge::GenerateSequence&) { return value(); }
00295 };
00296
00297 template<>
00298 struct DataType<srs_knowledge::GenerateSequence> {
00299 static const char* value()
00300 {
00301 return "srs_knowledge/GenerateSequence";
00302 }
00303
00304 static const char* value(const srs_knowledge::GenerateSequence&) { return value(); }
00305 };
00306
00307 template<class ContainerAllocator>
00308 struct MD5Sum<srs_knowledge::GenerateSequenceRequest_<ContainerAllocator> > {
00309 static const char* value()
00310 {
00311 return "57423689670151932a208b25e4d16c4f";
00312 }
00313
00314 static const char* value(const srs_knowledge::GenerateSequenceRequest_<ContainerAllocator> &) { return value(); }
00315 };
00316
00317 template<class ContainerAllocator>
00318 struct DataType<srs_knowledge::GenerateSequenceRequest_<ContainerAllocator> > {
00319 static const char* value()
00320 {
00321 return "srs_knowledge/GenerateSequence";
00322 }
00323
00324 static const char* value(const srs_knowledge::GenerateSequenceRequest_<ContainerAllocator> &) { return value(); }
00325 };
00326
00327 template<class ContainerAllocator>
00328 struct MD5Sum<srs_knowledge::GenerateSequenceResponse_<ContainerAllocator> > {
00329 static const char* value()
00330 {
00331 return "57423689670151932a208b25e4d16c4f";
00332 }
00333
00334 static const char* value(const srs_knowledge::GenerateSequenceResponse_<ContainerAllocator> &) { return value(); }
00335 };
00336
00337 template<class ContainerAllocator>
00338 struct DataType<srs_knowledge::GenerateSequenceResponse_<ContainerAllocator> > {
00339 static const char* value()
00340 {
00341 return "srs_knowledge/GenerateSequence";
00342 }
00343
00344 static const char* value(const srs_knowledge::GenerateSequenceResponse_<ContainerAllocator> &) { return value(); }
00345 };
00346
00347 }
00348 }
00349
00350 #endif // SRS_KNOWLEDGE_SERVICE_GENERATESEQUENCE_H
00351