Go to the documentation of this file.00001
00002 #ifndef PR2_OBJECT_MANIPULATION_MSGS_SERVICE_ACTIONINFO_H
00003 #define PR2_OBJECT_MANIPULATION_MSGS_SERVICE_ACTIONINFO_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 pr2_object_manipulation_msgs
00023 {
00024 template <class ContainerAllocator>
00025 struct ActionInfoRequest_ {
00026 typedef ActionInfoRequest_<ContainerAllocator> Type;
00027
00028 ActionInfoRequest_()
00029 : group_name()
00030 {
00031 }
00032
00033 ActionInfoRequest_(const ContainerAllocator& _alloc)
00034 : group_name(_alloc)
00035 {
00036 }
00037
00038 typedef std::basic_string<char, std::char_traits<char>, typename ContainerAllocator::template rebind<char>::other > _group_name_type;
00039 std::basic_string<char, std::char_traits<char>, typename ContainerAllocator::template rebind<char>::other > group_name;
00040
00041
00042 typedef boost::shared_ptr< ::pr2_object_manipulation_msgs::ActionInfoRequest_<ContainerAllocator> > Ptr;
00043 typedef boost::shared_ptr< ::pr2_object_manipulation_msgs::ActionInfoRequest_<ContainerAllocator> const> ConstPtr;
00044 boost::shared_ptr<std::map<std::string, std::string> > __connection_header;
00045 };
00046 typedef ::pr2_object_manipulation_msgs::ActionInfoRequest_<std::allocator<void> > ActionInfoRequest;
00047
00048 typedef boost::shared_ptr< ::pr2_object_manipulation_msgs::ActionInfoRequest> ActionInfoRequestPtr;
00049 typedef boost::shared_ptr< ::pr2_object_manipulation_msgs::ActionInfoRequest const> ActionInfoRequestConstPtr;
00050
00051
00052 template <class ContainerAllocator>
00053 struct ActionInfoResponse_ {
00054 typedef ActionInfoResponse_<ContainerAllocator> Type;
00055
00056 ActionInfoResponse_()
00057 : services()
00058 {
00059 }
00060
00061 ActionInfoResponse_(const ContainerAllocator& _alloc)
00062 : services(_alloc)
00063 {
00064 }
00065
00066 typedef std::vector<std::basic_string<char, std::char_traits<char>, typename ContainerAllocator::template rebind<char>::other > , typename ContainerAllocator::template rebind<std::basic_string<char, std::char_traits<char>, typename ContainerAllocator::template rebind<char>::other > >::other > _services_type;
00067 std::vector<std::basic_string<char, std::char_traits<char>, typename ContainerAllocator::template rebind<char>::other > , typename ContainerAllocator::template rebind<std::basic_string<char, std::char_traits<char>, typename ContainerAllocator::template rebind<char>::other > >::other > services;
00068
00069
00070 typedef boost::shared_ptr< ::pr2_object_manipulation_msgs::ActionInfoResponse_<ContainerAllocator> > Ptr;
00071 typedef boost::shared_ptr< ::pr2_object_manipulation_msgs::ActionInfoResponse_<ContainerAllocator> const> ConstPtr;
00072 boost::shared_ptr<std::map<std::string, std::string> > __connection_header;
00073 };
00074 typedef ::pr2_object_manipulation_msgs::ActionInfoResponse_<std::allocator<void> > ActionInfoResponse;
00075
00076 typedef boost::shared_ptr< ::pr2_object_manipulation_msgs::ActionInfoResponse> ActionInfoResponsePtr;
00077 typedef boost::shared_ptr< ::pr2_object_manipulation_msgs::ActionInfoResponse const> ActionInfoResponseConstPtr;
00078
00079 struct ActionInfo
00080 {
00081
00082 typedef ActionInfoRequest Request;
00083 typedef ActionInfoResponse Response;
00084 Request request;
00085 Response response;
00086
00087 typedef Request RequestType;
00088 typedef Response ResponseType;
00089 };
00090 }
00091
00092 namespace ros
00093 {
00094 namespace message_traits
00095 {
00096 template<class ContainerAllocator> struct IsMessage< ::pr2_object_manipulation_msgs::ActionInfoRequest_<ContainerAllocator> > : public TrueType {};
00097 template<class ContainerAllocator> struct IsMessage< ::pr2_object_manipulation_msgs::ActionInfoRequest_<ContainerAllocator> const> : public TrueType {};
00098 template<class ContainerAllocator>
00099 struct MD5Sum< ::pr2_object_manipulation_msgs::ActionInfoRequest_<ContainerAllocator> > {
00100 static const char* value()
00101 {
00102 return "967d0b0c0d858ded8a6a69abbce0c981";
00103 }
00104
00105 static const char* value(const ::pr2_object_manipulation_msgs::ActionInfoRequest_<ContainerAllocator> &) { return value(); }
00106 static const uint64_t static_value1 = 0x967d0b0c0d858dedULL;
00107 static const uint64_t static_value2 = 0x8a6a69abbce0c981ULL;
00108 };
00109
00110 template<class ContainerAllocator>
00111 struct DataType< ::pr2_object_manipulation_msgs::ActionInfoRequest_<ContainerAllocator> > {
00112 static const char* value()
00113 {
00114 return "pr2_object_manipulation_msgs/ActionInfoRequest";
00115 }
00116
00117 static const char* value(const ::pr2_object_manipulation_msgs::ActionInfoRequest_<ContainerAllocator> &) { return value(); }
00118 };
00119
00120 template<class ContainerAllocator>
00121 struct Definition< ::pr2_object_manipulation_msgs::ActionInfoRequest_<ContainerAllocator> > {
00122 static const char* value()
00123 {
00124 return "string group_name\n\
00125 \n\
00126 ";
00127 }
00128
00129 static const char* value(const ::pr2_object_manipulation_msgs::ActionInfoRequest_<ContainerAllocator> &) { return value(); }
00130 };
00131
00132 }
00133 }
00134
00135
00136 namespace ros
00137 {
00138 namespace message_traits
00139 {
00140 template<class ContainerAllocator> struct IsMessage< ::pr2_object_manipulation_msgs::ActionInfoResponse_<ContainerAllocator> > : public TrueType {};
00141 template<class ContainerAllocator> struct IsMessage< ::pr2_object_manipulation_msgs::ActionInfoResponse_<ContainerAllocator> const> : public TrueType {};
00142 template<class ContainerAllocator>
00143 struct MD5Sum< ::pr2_object_manipulation_msgs::ActionInfoResponse_<ContainerAllocator> > {
00144 static const char* value()
00145 {
00146 return "e44a7e7bcb900acadbcc28b132378f0c";
00147 }
00148
00149 static const char* value(const ::pr2_object_manipulation_msgs::ActionInfoResponse_<ContainerAllocator> &) { return value(); }
00150 static const uint64_t static_value1 = 0xe44a7e7bcb900acaULL;
00151 static const uint64_t static_value2 = 0xdbcc28b132378f0cULL;
00152 };
00153
00154 template<class ContainerAllocator>
00155 struct DataType< ::pr2_object_manipulation_msgs::ActionInfoResponse_<ContainerAllocator> > {
00156 static const char* value()
00157 {
00158 return "pr2_object_manipulation_msgs/ActionInfoResponse";
00159 }
00160
00161 static const char* value(const ::pr2_object_manipulation_msgs::ActionInfoResponse_<ContainerAllocator> &) { return value(); }
00162 };
00163
00164 template<class ContainerAllocator>
00165 struct Definition< ::pr2_object_manipulation_msgs::ActionInfoResponse_<ContainerAllocator> > {
00166 static const char* value()
00167 {
00168 return "string[] services\n\
00169 \n\
00170 \n\
00171 ";
00172 }
00173
00174 static const char* value(const ::pr2_object_manipulation_msgs::ActionInfoResponse_<ContainerAllocator> &) { return value(); }
00175 };
00176
00177 }
00178 }
00179
00180 namespace ros
00181 {
00182 namespace serialization
00183 {
00184
00185 template<class ContainerAllocator> struct Serializer< ::pr2_object_manipulation_msgs::ActionInfoRequest_<ContainerAllocator> >
00186 {
00187 template<typename Stream, typename T> inline static void allInOne(Stream& stream, T m)
00188 {
00189 stream.next(m.group_name);
00190 }
00191
00192 ROS_DECLARE_ALLINONE_SERIALIZER;
00193 };
00194 }
00195 }
00196
00197
00198 namespace ros
00199 {
00200 namespace serialization
00201 {
00202
00203 template<class ContainerAllocator> struct Serializer< ::pr2_object_manipulation_msgs::ActionInfoResponse_<ContainerAllocator> >
00204 {
00205 template<typename Stream, typename T> inline static void allInOne(Stream& stream, T m)
00206 {
00207 stream.next(m.services);
00208 }
00209
00210 ROS_DECLARE_ALLINONE_SERIALIZER;
00211 };
00212 }
00213 }
00214
00215 namespace ros
00216 {
00217 namespace service_traits
00218 {
00219 template<>
00220 struct MD5Sum<pr2_object_manipulation_msgs::ActionInfo> {
00221 static const char* value()
00222 {
00223 return "b4dcbce28f871a5e7ff4303d2b46d67c";
00224 }
00225
00226 static const char* value(const pr2_object_manipulation_msgs::ActionInfo&) { return value(); }
00227 };
00228
00229 template<>
00230 struct DataType<pr2_object_manipulation_msgs::ActionInfo> {
00231 static const char* value()
00232 {
00233 return "pr2_object_manipulation_msgs/ActionInfo";
00234 }
00235
00236 static const char* value(const pr2_object_manipulation_msgs::ActionInfo&) { return value(); }
00237 };
00238
00239 template<class ContainerAllocator>
00240 struct MD5Sum<pr2_object_manipulation_msgs::ActionInfoRequest_<ContainerAllocator> > {
00241 static const char* value()
00242 {
00243 return "b4dcbce28f871a5e7ff4303d2b46d67c";
00244 }
00245
00246 static const char* value(const pr2_object_manipulation_msgs::ActionInfoRequest_<ContainerAllocator> &) { return value(); }
00247 };
00248
00249 template<class ContainerAllocator>
00250 struct DataType<pr2_object_manipulation_msgs::ActionInfoRequest_<ContainerAllocator> > {
00251 static const char* value()
00252 {
00253 return "pr2_object_manipulation_msgs/ActionInfo";
00254 }
00255
00256 static const char* value(const pr2_object_manipulation_msgs::ActionInfoRequest_<ContainerAllocator> &) { return value(); }
00257 };
00258
00259 template<class ContainerAllocator>
00260 struct MD5Sum<pr2_object_manipulation_msgs::ActionInfoResponse_<ContainerAllocator> > {
00261 static const char* value()
00262 {
00263 return "b4dcbce28f871a5e7ff4303d2b46d67c";
00264 }
00265
00266 static const char* value(const pr2_object_manipulation_msgs::ActionInfoResponse_<ContainerAllocator> &) { return value(); }
00267 };
00268
00269 template<class ContainerAllocator>
00270 struct DataType<pr2_object_manipulation_msgs::ActionInfoResponse_<ContainerAllocator> > {
00271 static const char* value()
00272 {
00273 return "pr2_object_manipulation_msgs/ActionInfo";
00274 }
00275
00276 static const char* value(const pr2_object_manipulation_msgs::ActionInfoResponse_<ContainerAllocator> &) { return value(); }
00277 };
00278
00279 }
00280 }
00281
00282 #endif // PR2_OBJECT_MANIPULATION_MSGS_SERVICE_ACTIONINFO_H
00283