00001
00002 #ifndef PLANNING_ENVIRONMENT_MSGS_SERVICE_SETALLOWEDCOLLISIONS_H
00003 #define PLANNING_ENVIRONMENT_MSGS_SERVICE_SETALLOWEDCOLLISIONS_H
00004 #include <string>
00005 #include <vector>
00006 #include <ostream>
00007 #include "ros/serialization.h"
00008 #include "ros/builtin_message_traits.h"
00009 #include "ros/message_operations.h"
00010 #include "ros/message.h"
00011 #include "ros/time.h"
00012
00013 #include "ros/service_traits.h"
00014
00015 #include "motion_planning_msgs/OrderedCollisionOperations.h"
00016
00017
00018 #include "planning_environment_msgs/AllowedCollisionMatrix.h"
00019
00020 namespace planning_environment_msgs
00021 {
00022 template <class ContainerAllocator>
00023 struct SetAllowedCollisionsRequest_ : public ros::Message
00024 {
00025 typedef SetAllowedCollisionsRequest_<ContainerAllocator> Type;
00026
00027 SetAllowedCollisionsRequest_()
00028 : ord()
00029 {
00030 }
00031
00032 SetAllowedCollisionsRequest_(const ContainerAllocator& _alloc)
00033 : ord(_alloc)
00034 {
00035 }
00036
00037 typedef ::motion_planning_msgs::OrderedCollisionOperations_<ContainerAllocator> _ord_type;
00038 ::motion_planning_msgs::OrderedCollisionOperations_<ContainerAllocator> ord;
00039
00040
00041 private:
00042 static const char* __s_getDataType_() { return "planning_environment_msgs/SetAllowedCollisionsRequest"; }
00043 public:
00044 ROS_DEPRECATED static const std::string __s_getDataType() { return __s_getDataType_(); }
00045
00046 ROS_DEPRECATED const std::string __getDataType() const { return __s_getDataType_(); }
00047
00048 private:
00049 static const char* __s_getMD5Sum_() { return "65c7c509a65301718d2c95e5eecf2f05"; }
00050 public:
00051 ROS_DEPRECATED static const std::string __s_getMD5Sum() { return __s_getMD5Sum_(); }
00052
00053 ROS_DEPRECATED const std::string __getMD5Sum() const { return __s_getMD5Sum_(); }
00054
00055 private:
00056 static const char* __s_getServerMD5Sum_() { return "471f0382adb33eececdc32c89881d3a0"; }
00057 public:
00058 ROS_DEPRECATED static const std::string __s_getServerMD5Sum() { return __s_getServerMD5Sum_(); }
00059
00060 ROS_DEPRECATED const std::string __getServerMD5Sum() const { return __s_getServerMD5Sum_(); }
00061
00062 private:
00063 static const char* __s_getMessageDefinition_() { return "\n\
00064 \n\
00065 motion_planning_msgs/OrderedCollisionOperations ord\n\
00066 \n\
00067 ================================================================================\n\
00068 MSG: motion_planning_msgs/OrderedCollisionOperations\n\
00069 # A set of collision operations that will be performed in the order they are specified\n\
00070 CollisionOperation[] collision_operations\n\
00071 ================================================================================\n\
00072 MSG: motion_planning_msgs/CollisionOperation\n\
00073 # A definition of a collision operation\n\
00074 # E.g. (\"gripper\",COLLISION_SET_ALL,ENABLE) will enable collisions \n\
00075 # between the gripper and all objects in the collision space\n\
00076 \n\
00077 string object1\n\
00078 string object2\n\
00079 string COLLISION_SET_ALL=\"all\"\n\
00080 string COLLISION_SET_OBJECTS=\"objects\"\n\
00081 string COLLISION_SET_ATTACHED_OBJECTS=\"attached\"\n\
00082 \n\
00083 # The penetration distance to which collisions are allowed. This is 0.0 by default.\n\
00084 float64 penetration_distance\n\
00085 \n\
00086 # Flag that determines whether collisions will be enabled or disabled for the pair of objects specified above\n\
00087 int32 operation\n\
00088 int32 DISABLE=0\n\
00089 int32 ENABLE=1\n\
00090 \n\
00091 "; }
00092 public:
00093 ROS_DEPRECATED static const std::string __s_getMessageDefinition() { return __s_getMessageDefinition_(); }
00094
00095 ROS_DEPRECATED const std::string __getMessageDefinition() const { return __s_getMessageDefinition_(); }
00096
00097 ROS_DEPRECATED virtual uint8_t *serialize(uint8_t *write_ptr, uint32_t seq) const
00098 {
00099 ros::serialization::OStream stream(write_ptr, 1000000000);
00100 ros::serialization::serialize(stream, ord);
00101 return stream.getData();
00102 }
00103
00104 ROS_DEPRECATED virtual uint8_t *deserialize(uint8_t *read_ptr)
00105 {
00106 ros::serialization::IStream stream(read_ptr, 1000000000);
00107 ros::serialization::deserialize(stream, ord);
00108 return stream.getData();
00109 }
00110
00111 ROS_DEPRECATED virtual uint32_t serializationLength() const
00112 {
00113 uint32_t size = 0;
00114 size += ros::serialization::serializationLength(ord);
00115 return size;
00116 }
00117
00118 typedef boost::shared_ptr< ::planning_environment_msgs::SetAllowedCollisionsRequest_<ContainerAllocator> > Ptr;
00119 typedef boost::shared_ptr< ::planning_environment_msgs::SetAllowedCollisionsRequest_<ContainerAllocator> const> ConstPtr;
00120 };
00121 typedef ::planning_environment_msgs::SetAllowedCollisionsRequest_<std::allocator<void> > SetAllowedCollisionsRequest;
00122
00123 typedef boost::shared_ptr< ::planning_environment_msgs::SetAllowedCollisionsRequest> SetAllowedCollisionsRequestPtr;
00124 typedef boost::shared_ptr< ::planning_environment_msgs::SetAllowedCollisionsRequest const> SetAllowedCollisionsRequestConstPtr;
00125
00126
00127 template <class ContainerAllocator>
00128 struct SetAllowedCollisionsResponse_ : public ros::Message
00129 {
00130 typedef SetAllowedCollisionsResponse_<ContainerAllocator> Type;
00131
00132 SetAllowedCollisionsResponse_()
00133 : matrix()
00134 {
00135 }
00136
00137 SetAllowedCollisionsResponse_(const ContainerAllocator& _alloc)
00138 : matrix(_alloc)
00139 {
00140 }
00141
00142 typedef ::planning_environment_msgs::AllowedCollisionMatrix_<ContainerAllocator> _matrix_type;
00143 ::planning_environment_msgs::AllowedCollisionMatrix_<ContainerAllocator> matrix;
00144
00145
00146 private:
00147 static const char* __s_getDataType_() { return "planning_environment_msgs/SetAllowedCollisionsResponse"; }
00148 public:
00149 ROS_DEPRECATED static const std::string __s_getDataType() { return __s_getDataType_(); }
00150
00151 ROS_DEPRECATED const std::string __getDataType() const { return __s_getDataType_(); }
00152
00153 private:
00154 static const char* __s_getMD5Sum_() { return "1f99ed5f743c8937d1578d6a9d9f8fda"; }
00155 public:
00156 ROS_DEPRECATED static const std::string __s_getMD5Sum() { return __s_getMD5Sum_(); }
00157
00158 ROS_DEPRECATED const std::string __getMD5Sum() const { return __s_getMD5Sum_(); }
00159
00160 private:
00161 static const char* __s_getServerMD5Sum_() { return "471f0382adb33eececdc32c89881d3a0"; }
00162 public:
00163 ROS_DEPRECATED static const std::string __s_getServerMD5Sum() { return __s_getServerMD5Sum_(); }
00164
00165 ROS_DEPRECATED const std::string __getServerMD5Sum() const { return __s_getServerMD5Sum_(); }
00166
00167 private:
00168 static const char* __s_getMessageDefinition_() { return "\n\
00169 AllowedCollisionMatrix matrix\n\
00170 \n\
00171 \n\
00172 ================================================================================\n\
00173 MSG: planning_environment_msgs/AllowedCollisionMatrix\n\
00174 # the list of link names in the matrix\n\
00175 string[] link_names\n\
00176 \n\
00177 # the individual entries in the allowed collision matrix\n\
00178 # symmetric, with same order as link_names\n\
00179 AllowedCollisionEntry[] entries\n\
00180 \n\
00181 ================================================================================\n\
00182 MSG: planning_environment_msgs/AllowedCollisionEntry\n\
00183 # whether or not collision checking is enabled\n\
00184 bool[] enabled\n\
00185 \n\
00186 "; }
00187 public:
00188 ROS_DEPRECATED static const std::string __s_getMessageDefinition() { return __s_getMessageDefinition_(); }
00189
00190 ROS_DEPRECATED const std::string __getMessageDefinition() const { return __s_getMessageDefinition_(); }
00191
00192 ROS_DEPRECATED virtual uint8_t *serialize(uint8_t *write_ptr, uint32_t seq) const
00193 {
00194 ros::serialization::OStream stream(write_ptr, 1000000000);
00195 ros::serialization::serialize(stream, matrix);
00196 return stream.getData();
00197 }
00198
00199 ROS_DEPRECATED virtual uint8_t *deserialize(uint8_t *read_ptr)
00200 {
00201 ros::serialization::IStream stream(read_ptr, 1000000000);
00202 ros::serialization::deserialize(stream, matrix);
00203 return stream.getData();
00204 }
00205
00206 ROS_DEPRECATED virtual uint32_t serializationLength() const
00207 {
00208 uint32_t size = 0;
00209 size += ros::serialization::serializationLength(matrix);
00210 return size;
00211 }
00212
00213 typedef boost::shared_ptr< ::planning_environment_msgs::SetAllowedCollisionsResponse_<ContainerAllocator> > Ptr;
00214 typedef boost::shared_ptr< ::planning_environment_msgs::SetAllowedCollisionsResponse_<ContainerAllocator> const> ConstPtr;
00215 };
00216 typedef ::planning_environment_msgs::SetAllowedCollisionsResponse_<std::allocator<void> > SetAllowedCollisionsResponse;
00217
00218 typedef boost::shared_ptr< ::planning_environment_msgs::SetAllowedCollisionsResponse> SetAllowedCollisionsResponsePtr;
00219 typedef boost::shared_ptr< ::planning_environment_msgs::SetAllowedCollisionsResponse const> SetAllowedCollisionsResponseConstPtr;
00220
00221 struct SetAllowedCollisions
00222 {
00223
00224 typedef SetAllowedCollisionsRequest Request;
00225 typedef SetAllowedCollisionsResponse Response;
00226 Request request;
00227 Response response;
00228
00229 typedef Request RequestType;
00230 typedef Response ResponseType;
00231 };
00232 }
00233
00234 namespace ros
00235 {
00236 namespace message_traits
00237 {
00238 template<class ContainerAllocator>
00239 struct MD5Sum< ::planning_environment_msgs::SetAllowedCollisionsRequest_<ContainerAllocator> > {
00240 static const char* value()
00241 {
00242 return "65c7c509a65301718d2c95e5eecf2f05";
00243 }
00244
00245 static const char* value(const ::planning_environment_msgs::SetAllowedCollisionsRequest_<ContainerAllocator> &) { return value(); }
00246 static const uint64_t static_value1 = 0x65c7c509a6530171ULL;
00247 static const uint64_t static_value2 = 0x8d2c95e5eecf2f05ULL;
00248 };
00249
00250 template<class ContainerAllocator>
00251 struct DataType< ::planning_environment_msgs::SetAllowedCollisionsRequest_<ContainerAllocator> > {
00252 static const char* value()
00253 {
00254 return "planning_environment_msgs/SetAllowedCollisionsRequest";
00255 }
00256
00257 static const char* value(const ::planning_environment_msgs::SetAllowedCollisionsRequest_<ContainerAllocator> &) { return value(); }
00258 };
00259
00260 template<class ContainerAllocator>
00261 struct Definition< ::planning_environment_msgs::SetAllowedCollisionsRequest_<ContainerAllocator> > {
00262 static const char* value()
00263 {
00264 return "\n\
00265 \n\
00266 motion_planning_msgs/OrderedCollisionOperations ord\n\
00267 \n\
00268 ================================================================================\n\
00269 MSG: motion_planning_msgs/OrderedCollisionOperations\n\
00270 # A set of collision operations that will be performed in the order they are specified\n\
00271 CollisionOperation[] collision_operations\n\
00272 ================================================================================\n\
00273 MSG: motion_planning_msgs/CollisionOperation\n\
00274 # A definition of a collision operation\n\
00275 # E.g. (\"gripper\",COLLISION_SET_ALL,ENABLE) will enable collisions \n\
00276 # between the gripper and all objects in the collision space\n\
00277 \n\
00278 string object1\n\
00279 string object2\n\
00280 string COLLISION_SET_ALL=\"all\"\n\
00281 string COLLISION_SET_OBJECTS=\"objects\"\n\
00282 string COLLISION_SET_ATTACHED_OBJECTS=\"attached\"\n\
00283 \n\
00284 # The penetration distance to which collisions are allowed. This is 0.0 by default.\n\
00285 float64 penetration_distance\n\
00286 \n\
00287 # Flag that determines whether collisions will be enabled or disabled for the pair of objects specified above\n\
00288 int32 operation\n\
00289 int32 DISABLE=0\n\
00290 int32 ENABLE=1\n\
00291 \n\
00292 ";
00293 }
00294
00295 static const char* value(const ::planning_environment_msgs::SetAllowedCollisionsRequest_<ContainerAllocator> &) { return value(); }
00296 };
00297
00298 }
00299 }
00300
00301
00302 namespace ros
00303 {
00304 namespace message_traits
00305 {
00306 template<class ContainerAllocator>
00307 struct MD5Sum< ::planning_environment_msgs::SetAllowedCollisionsResponse_<ContainerAllocator> > {
00308 static const char* value()
00309 {
00310 return "1f99ed5f743c8937d1578d6a9d9f8fda";
00311 }
00312
00313 static const char* value(const ::planning_environment_msgs::SetAllowedCollisionsResponse_<ContainerAllocator> &) { return value(); }
00314 static const uint64_t static_value1 = 0x1f99ed5f743c8937ULL;
00315 static const uint64_t static_value2 = 0xd1578d6a9d9f8fdaULL;
00316 };
00317
00318 template<class ContainerAllocator>
00319 struct DataType< ::planning_environment_msgs::SetAllowedCollisionsResponse_<ContainerAllocator> > {
00320 static const char* value()
00321 {
00322 return "planning_environment_msgs/SetAllowedCollisionsResponse";
00323 }
00324
00325 static const char* value(const ::planning_environment_msgs::SetAllowedCollisionsResponse_<ContainerAllocator> &) { return value(); }
00326 };
00327
00328 template<class ContainerAllocator>
00329 struct Definition< ::planning_environment_msgs::SetAllowedCollisionsResponse_<ContainerAllocator> > {
00330 static const char* value()
00331 {
00332 return "\n\
00333 AllowedCollisionMatrix matrix\n\
00334 \n\
00335 \n\
00336 ================================================================================\n\
00337 MSG: planning_environment_msgs/AllowedCollisionMatrix\n\
00338 # the list of link names in the matrix\n\
00339 string[] link_names\n\
00340 \n\
00341 # the individual entries in the allowed collision matrix\n\
00342 # symmetric, with same order as link_names\n\
00343 AllowedCollisionEntry[] entries\n\
00344 \n\
00345 ================================================================================\n\
00346 MSG: planning_environment_msgs/AllowedCollisionEntry\n\
00347 # whether or not collision checking is enabled\n\
00348 bool[] enabled\n\
00349 \n\
00350 ";
00351 }
00352
00353 static const char* value(const ::planning_environment_msgs::SetAllowedCollisionsResponse_<ContainerAllocator> &) { return value(); }
00354 };
00355
00356 }
00357 }
00358
00359 namespace ros
00360 {
00361 namespace serialization
00362 {
00363
00364 template<class ContainerAllocator> struct Serializer< ::planning_environment_msgs::SetAllowedCollisionsRequest_<ContainerAllocator> >
00365 {
00366 template<typename Stream, typename T> inline static void allInOne(Stream& stream, T m)
00367 {
00368 stream.next(m.ord);
00369 }
00370
00371 ROS_DECLARE_ALLINONE_SERIALIZER;
00372 };
00373 }
00374 }
00375
00376
00377 namespace ros
00378 {
00379 namespace serialization
00380 {
00381
00382 template<class ContainerAllocator> struct Serializer< ::planning_environment_msgs::SetAllowedCollisionsResponse_<ContainerAllocator> >
00383 {
00384 template<typename Stream, typename T> inline static void allInOne(Stream& stream, T m)
00385 {
00386 stream.next(m.matrix);
00387 }
00388
00389 ROS_DECLARE_ALLINONE_SERIALIZER;
00390 };
00391 }
00392 }
00393
00394 namespace ros
00395 {
00396 namespace service_traits
00397 {
00398 template<>
00399 struct MD5Sum<planning_environment_msgs::SetAllowedCollisions> {
00400 static const char* value()
00401 {
00402 return "471f0382adb33eececdc32c89881d3a0";
00403 }
00404
00405 static const char* value(const planning_environment_msgs::SetAllowedCollisions&) { return value(); }
00406 };
00407
00408 template<>
00409 struct DataType<planning_environment_msgs::SetAllowedCollisions> {
00410 static const char* value()
00411 {
00412 return "planning_environment_msgs/SetAllowedCollisions";
00413 }
00414
00415 static const char* value(const planning_environment_msgs::SetAllowedCollisions&) { return value(); }
00416 };
00417
00418 template<class ContainerAllocator>
00419 struct MD5Sum<planning_environment_msgs::SetAllowedCollisionsRequest_<ContainerAllocator> > {
00420 static const char* value()
00421 {
00422 return "471f0382adb33eececdc32c89881d3a0";
00423 }
00424
00425 static const char* value(const planning_environment_msgs::SetAllowedCollisionsRequest_<ContainerAllocator> &) { return value(); }
00426 };
00427
00428 template<class ContainerAllocator>
00429 struct DataType<planning_environment_msgs::SetAllowedCollisionsRequest_<ContainerAllocator> > {
00430 static const char* value()
00431 {
00432 return "planning_environment_msgs/SetAllowedCollisions";
00433 }
00434
00435 static const char* value(const planning_environment_msgs::SetAllowedCollisionsRequest_<ContainerAllocator> &) { return value(); }
00436 };
00437
00438 template<class ContainerAllocator>
00439 struct MD5Sum<planning_environment_msgs::SetAllowedCollisionsResponse_<ContainerAllocator> > {
00440 static const char* value()
00441 {
00442 return "471f0382adb33eececdc32c89881d3a0";
00443 }
00444
00445 static const char* value(const planning_environment_msgs::SetAllowedCollisionsResponse_<ContainerAllocator> &) { return value(); }
00446 };
00447
00448 template<class ContainerAllocator>
00449 struct DataType<planning_environment_msgs::SetAllowedCollisionsResponse_<ContainerAllocator> > {
00450 static const char* value()
00451 {
00452 return "planning_environment_msgs/SetAllowedCollisions";
00453 }
00454
00455 static const char* value(const planning_environment_msgs::SetAllowedCollisionsResponse_<ContainerAllocator> &) { return value(); }
00456 };
00457
00458 }
00459 }
00460
00461 #endif // PLANNING_ENVIRONMENT_MSGS_SERVICE_SETALLOWEDCOLLISIONS_H
00462