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