$search
00001 /* Auto-generated by genmsg_cpp for file /home/rosbuild/hudson/workspace/doc-electric-arm_navigation_experimental/doc_stacks/2013-03-01_14-08-43.137802/arm_navigation_experimental/chomp_motion_planner/srv/GetChompCollisionCost.srv */ 00002 #ifndef CHOMP_MOTION_PLANNER_SERVICE_GETCHOMPCOLLISIONCOST_H 00003 #define CHOMP_MOTION_PLANNER_SERVICE_GETCHOMPCOLLISIONCOST_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 "arm_navigation_msgs/RobotState.h" 00020 00021 00022 #include "chomp_motion_planner/JointVelocityArray.h" 00023 00024 namespace chomp_motion_planner 00025 { 00026 template <class ContainerAllocator> 00027 struct GetChompCollisionCostRequest_ { 00028 typedef GetChompCollisionCostRequest_<ContainerAllocator> Type; 00029 00030 GetChompCollisionCostRequest_() 00031 : links() 00032 , state() 00033 { 00034 } 00035 00036 GetChompCollisionCostRequest_(const ContainerAllocator& _alloc) 00037 : links(_alloc) 00038 , state(_alloc) 00039 { 00040 } 00041 00042 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 > _links_type; 00043 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 > links; 00044 00045 typedef ::arm_navigation_msgs::RobotState_<ContainerAllocator> _state_type; 00046 ::arm_navigation_msgs::RobotState_<ContainerAllocator> state; 00047 00048 00049 ROS_DEPRECATED uint32_t get_links_size() const { return (uint32_t)links.size(); } 00050 ROS_DEPRECATED void set_links_size(uint32_t size) { links.resize((size_t)size); } 00051 ROS_DEPRECATED void get_links_vec(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 > & vec) const { vec = this->links; } 00052 ROS_DEPRECATED void set_links_vec(const 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 > & vec) { this->links = vec; } 00053 private: 00054 static const char* __s_getDataType_() { return "chomp_motion_planner/GetChompCollisionCostRequest"; } 00055 public: 00056 ROS_DEPRECATED static const std::string __s_getDataType() { return __s_getDataType_(); } 00057 00058 ROS_DEPRECATED const std::string __getDataType() const { return __s_getDataType_(); } 00059 00060 private: 00061 static const char* __s_getMD5Sum_() { return "acabb6bac55143035edcf10159a5b130"; } 00062 public: 00063 ROS_DEPRECATED static const std::string __s_getMD5Sum() { return __s_getMD5Sum_(); } 00064 00065 ROS_DEPRECATED const std::string __getMD5Sum() const { return __s_getMD5Sum_(); } 00066 00067 private: 00068 static const char* __s_getServerMD5Sum_() { return "484cb732bcae020fb22ff8ac89a6ff9f"; } 00069 public: 00070 ROS_DEPRECATED static const std::string __s_getServerMD5Sum() { return __s_getServerMD5Sum_(); } 00071 00072 ROS_DEPRECATED const std::string __getServerMD5Sum() const { return __s_getServerMD5Sum_(); } 00073 00074 private: 00075 static const char* __s_getMessageDefinition_() { return "\n\ 00076 string[] links\n\ 00077 \n\ 00078 \n\ 00079 \n\ 00080 arm_navigation_msgs/RobotState state\n\ 00081 \n\ 00082 \n\ 00083 ================================================================================\n\ 00084 MSG: arm_navigation_msgs/RobotState\n\ 00085 # This message contains information about the robot state, i.e. the positions of its joints and links\n\ 00086 sensor_msgs/JointState joint_state\n\ 00087 arm_navigation_msgs/MultiDOFJointState multi_dof_joint_state\n\ 00088 \n\ 00089 ================================================================================\n\ 00090 MSG: sensor_msgs/JointState\n\ 00091 # This is a message that holds data to describe the state of a set of torque controlled joints. \n\ 00092 #\n\ 00093 # The state of each joint (revolute or prismatic) is defined by:\n\ 00094 # * the position of the joint (rad or m),\n\ 00095 # * the velocity of the joint (rad/s or m/s) and \n\ 00096 # * the effort that is applied in the joint (Nm or N).\n\ 00097 #\n\ 00098 # Each joint is uniquely identified by its name\n\ 00099 # The header specifies the time at which the joint states were recorded. All the joint states\n\ 00100 # in one message have to be recorded at the same time.\n\ 00101 #\n\ 00102 # This message consists of a multiple arrays, one for each part of the joint state. \n\ 00103 # The goal is to make each of the fields optional. When e.g. your joints have no\n\ 00104 # effort associated with them, you can leave the effort array empty. \n\ 00105 #\n\ 00106 # All arrays in this message should have the same size, or be empty.\n\ 00107 # This is the only way to uniquely associate the joint name with the correct\n\ 00108 # states.\n\ 00109 \n\ 00110 \n\ 00111 Header header\n\ 00112 \n\ 00113 string[] name\n\ 00114 float64[] position\n\ 00115 float64[] velocity\n\ 00116 float64[] effort\n\ 00117 \n\ 00118 ================================================================================\n\ 00119 MSG: std_msgs/Header\n\ 00120 # Standard metadata for higher-level stamped data types.\n\ 00121 # This is generally used to communicate timestamped data \n\ 00122 # in a particular coordinate frame.\n\ 00123 # \n\ 00124 # sequence ID: consecutively increasing ID \n\ 00125 uint32 seq\n\ 00126 #Two-integer timestamp that is expressed as:\n\ 00127 # * stamp.secs: seconds (stamp_secs) since epoch\n\ 00128 # * stamp.nsecs: nanoseconds since stamp_secs\n\ 00129 # time-handling sugar is provided by the client library\n\ 00130 time stamp\n\ 00131 #Frame this data is associated with\n\ 00132 # 0: no frame\n\ 00133 # 1: global frame\n\ 00134 string frame_id\n\ 00135 \n\ 00136 ================================================================================\n\ 00137 MSG: arm_navigation_msgs/MultiDOFJointState\n\ 00138 #A representation of a multi-dof joint state\n\ 00139 time stamp\n\ 00140 string[] joint_names\n\ 00141 string[] frame_ids\n\ 00142 string[] child_frame_ids\n\ 00143 geometry_msgs/Pose[] poses\n\ 00144 \n\ 00145 ================================================================================\n\ 00146 MSG: geometry_msgs/Pose\n\ 00147 # A representation of pose in free space, composed of postion and orientation. \n\ 00148 Point position\n\ 00149 Quaternion orientation\n\ 00150 \n\ 00151 ================================================================================\n\ 00152 MSG: geometry_msgs/Point\n\ 00153 # This contains the position of a point in free space\n\ 00154 float64 x\n\ 00155 float64 y\n\ 00156 float64 z\n\ 00157 \n\ 00158 ================================================================================\n\ 00159 MSG: geometry_msgs/Quaternion\n\ 00160 # This represents an orientation in free space in quaternion form.\n\ 00161 \n\ 00162 float64 x\n\ 00163 float64 y\n\ 00164 float64 z\n\ 00165 float64 w\n\ 00166 \n\ 00167 "; } 00168 public: 00169 ROS_DEPRECATED static const std::string __s_getMessageDefinition() { return __s_getMessageDefinition_(); } 00170 00171 ROS_DEPRECATED const std::string __getMessageDefinition() const { return __s_getMessageDefinition_(); } 00172 00173 ROS_DEPRECATED virtual uint8_t *serialize(uint8_t *write_ptr, uint32_t seq) const 00174 { 00175 ros::serialization::OStream stream(write_ptr, 1000000000); 00176 ros::serialization::serialize(stream, links); 00177 ros::serialization::serialize(stream, state); 00178 return stream.getData(); 00179 } 00180 00181 ROS_DEPRECATED virtual uint8_t *deserialize(uint8_t *read_ptr) 00182 { 00183 ros::serialization::IStream stream(read_ptr, 1000000000); 00184 ros::serialization::deserialize(stream, links); 00185 ros::serialization::deserialize(stream, state); 00186 return stream.getData(); 00187 } 00188 00189 ROS_DEPRECATED virtual uint32_t serializationLength() const 00190 { 00191 uint32_t size = 0; 00192 size += ros::serialization::serializationLength(links); 00193 size += ros::serialization::serializationLength(state); 00194 return size; 00195 } 00196 00197 typedef boost::shared_ptr< ::chomp_motion_planner::GetChompCollisionCostRequest_<ContainerAllocator> > Ptr; 00198 typedef boost::shared_ptr< ::chomp_motion_planner::GetChompCollisionCostRequest_<ContainerAllocator> const> ConstPtr; 00199 boost::shared_ptr<std::map<std::string, std::string> > __connection_header; 00200 }; // struct GetChompCollisionCostRequest 00201 typedef ::chomp_motion_planner::GetChompCollisionCostRequest_<std::allocator<void> > GetChompCollisionCostRequest; 00202 00203 typedef boost::shared_ptr< ::chomp_motion_planner::GetChompCollisionCostRequest> GetChompCollisionCostRequestPtr; 00204 typedef boost::shared_ptr< ::chomp_motion_planner::GetChompCollisionCostRequest const> GetChompCollisionCostRequestConstPtr; 00205 00206 00207 template <class ContainerAllocator> 00208 struct GetChompCollisionCostResponse_ { 00209 typedef GetChompCollisionCostResponse_<ContainerAllocator> Type; 00210 00211 GetChompCollisionCostResponse_() 00212 : costs() 00213 , gradient() 00214 , in_collision(0) 00215 { 00216 } 00217 00218 GetChompCollisionCostResponse_(const ContainerAllocator& _alloc) 00219 : costs(_alloc) 00220 , gradient(_alloc) 00221 , in_collision(0) 00222 { 00223 } 00224 00225 typedef std::vector<double, typename ContainerAllocator::template rebind<double>::other > _costs_type; 00226 std::vector<double, typename ContainerAllocator::template rebind<double>::other > costs; 00227 00228 typedef std::vector< ::chomp_motion_planner::JointVelocityArray_<ContainerAllocator> , typename ContainerAllocator::template rebind< ::chomp_motion_planner::JointVelocityArray_<ContainerAllocator> >::other > _gradient_type; 00229 std::vector< ::chomp_motion_planner::JointVelocityArray_<ContainerAllocator> , typename ContainerAllocator::template rebind< ::chomp_motion_planner::JointVelocityArray_<ContainerAllocator> >::other > gradient; 00230 00231 typedef uint8_t _in_collision_type; 00232 uint8_t in_collision; 00233 00234 00235 ROS_DEPRECATED uint32_t get_costs_size() const { return (uint32_t)costs.size(); } 00236 ROS_DEPRECATED void set_costs_size(uint32_t size) { costs.resize((size_t)size); } 00237 ROS_DEPRECATED void get_costs_vec(std::vector<double, typename ContainerAllocator::template rebind<double>::other > & vec) const { vec = this->costs; } 00238 ROS_DEPRECATED void set_costs_vec(const std::vector<double, typename ContainerAllocator::template rebind<double>::other > & vec) { this->costs = vec; } 00239 ROS_DEPRECATED uint32_t get_gradient_size() const { return (uint32_t)gradient.size(); } 00240 ROS_DEPRECATED void set_gradient_size(uint32_t size) { gradient.resize((size_t)size); } 00241 ROS_DEPRECATED void get_gradient_vec(std::vector< ::chomp_motion_planner::JointVelocityArray_<ContainerAllocator> , typename ContainerAllocator::template rebind< ::chomp_motion_planner::JointVelocityArray_<ContainerAllocator> >::other > & vec) const { vec = this->gradient; } 00242 ROS_DEPRECATED void set_gradient_vec(const std::vector< ::chomp_motion_planner::JointVelocityArray_<ContainerAllocator> , typename ContainerAllocator::template rebind< ::chomp_motion_planner::JointVelocityArray_<ContainerAllocator> >::other > & vec) { this->gradient = vec; } 00243 private: 00244 static const char* __s_getDataType_() { return "chomp_motion_planner/GetChompCollisionCostResponse"; } 00245 public: 00246 ROS_DEPRECATED static const std::string __s_getDataType() { return __s_getDataType_(); } 00247 00248 ROS_DEPRECATED const std::string __getDataType() const { return __s_getDataType_(); } 00249 00250 private: 00251 static const char* __s_getMD5Sum_() { return "bed009b7d4d6620621ef40430dbc9236"; } 00252 public: 00253 ROS_DEPRECATED static const std::string __s_getMD5Sum() { return __s_getMD5Sum_(); } 00254 00255 ROS_DEPRECATED const std::string __getMD5Sum() const { return __s_getMD5Sum_(); } 00256 00257 private: 00258 static const char* __s_getServerMD5Sum_() { return "484cb732bcae020fb22ff8ac89a6ff9f"; } 00259 public: 00260 ROS_DEPRECATED static const std::string __s_getServerMD5Sum() { return __s_getServerMD5Sum_(); } 00261 00262 ROS_DEPRECATED const std::string __getServerMD5Sum() const { return __s_getServerMD5Sum_(); } 00263 00264 private: 00265 static const char* __s_getMessageDefinition_() { return "\n\ 00266 \n\ 00267 float64[] costs\n\ 00268 \n\ 00269 \n\ 00270 \n\ 00271 \n\ 00272 JointVelocityArray[] gradient\n\ 00273 \n\ 00274 \n\ 00275 uint8 in_collision\n\ 00276 \n\ 00277 \n\ 00278 ================================================================================\n\ 00279 MSG: chomp_motion_planner/JointVelocityArray\n\ 00280 # A list of joint names\n\ 00281 string[] joint_names\n\ 00282 \n\ 00283 # Velocity for each of the above joints\n\ 00284 float64[] velocities\n\ 00285 \n\ 00286 "; } 00287 public: 00288 ROS_DEPRECATED static const std::string __s_getMessageDefinition() { return __s_getMessageDefinition_(); } 00289 00290 ROS_DEPRECATED const std::string __getMessageDefinition() const { return __s_getMessageDefinition_(); } 00291 00292 ROS_DEPRECATED virtual uint8_t *serialize(uint8_t *write_ptr, uint32_t seq) const 00293 { 00294 ros::serialization::OStream stream(write_ptr, 1000000000); 00295 ros::serialization::serialize(stream, costs); 00296 ros::serialization::serialize(stream, gradient); 00297 ros::serialization::serialize(stream, in_collision); 00298 return stream.getData(); 00299 } 00300 00301 ROS_DEPRECATED virtual uint8_t *deserialize(uint8_t *read_ptr) 00302 { 00303 ros::serialization::IStream stream(read_ptr, 1000000000); 00304 ros::serialization::deserialize(stream, costs); 00305 ros::serialization::deserialize(stream, gradient); 00306 ros::serialization::deserialize(stream, in_collision); 00307 return stream.getData(); 00308 } 00309 00310 ROS_DEPRECATED virtual uint32_t serializationLength() const 00311 { 00312 uint32_t size = 0; 00313 size += ros::serialization::serializationLength(costs); 00314 size += ros::serialization::serializationLength(gradient); 00315 size += ros::serialization::serializationLength(in_collision); 00316 return size; 00317 } 00318 00319 typedef boost::shared_ptr< ::chomp_motion_planner::GetChompCollisionCostResponse_<ContainerAllocator> > Ptr; 00320 typedef boost::shared_ptr< ::chomp_motion_planner::GetChompCollisionCostResponse_<ContainerAllocator> const> ConstPtr; 00321 boost::shared_ptr<std::map<std::string, std::string> > __connection_header; 00322 }; // struct GetChompCollisionCostResponse 00323 typedef ::chomp_motion_planner::GetChompCollisionCostResponse_<std::allocator<void> > GetChompCollisionCostResponse; 00324 00325 typedef boost::shared_ptr< ::chomp_motion_planner::GetChompCollisionCostResponse> GetChompCollisionCostResponsePtr; 00326 typedef boost::shared_ptr< ::chomp_motion_planner::GetChompCollisionCostResponse const> GetChompCollisionCostResponseConstPtr; 00327 00328 struct GetChompCollisionCost 00329 { 00330 00331 typedef GetChompCollisionCostRequest Request; 00332 typedef GetChompCollisionCostResponse Response; 00333 Request request; 00334 Response response; 00335 00336 typedef Request RequestType; 00337 typedef Response ResponseType; 00338 }; // struct GetChompCollisionCost 00339 } // namespace chomp_motion_planner 00340 00341 namespace ros 00342 { 00343 namespace message_traits 00344 { 00345 template<class ContainerAllocator> struct IsMessage< ::chomp_motion_planner::GetChompCollisionCostRequest_<ContainerAllocator> > : public TrueType {}; 00346 template<class ContainerAllocator> struct IsMessage< ::chomp_motion_planner::GetChompCollisionCostRequest_<ContainerAllocator> const> : public TrueType {}; 00347 template<class ContainerAllocator> 00348 struct MD5Sum< ::chomp_motion_planner::GetChompCollisionCostRequest_<ContainerAllocator> > { 00349 static const char* value() 00350 { 00351 return "acabb6bac55143035edcf10159a5b130"; 00352 } 00353 00354 static const char* value(const ::chomp_motion_planner::GetChompCollisionCostRequest_<ContainerAllocator> &) { return value(); } 00355 static const uint64_t static_value1 = 0xacabb6bac5514303ULL; 00356 static const uint64_t static_value2 = 0x5edcf10159a5b130ULL; 00357 }; 00358 00359 template<class ContainerAllocator> 00360 struct DataType< ::chomp_motion_planner::GetChompCollisionCostRequest_<ContainerAllocator> > { 00361 static const char* value() 00362 { 00363 return "chomp_motion_planner/GetChompCollisionCostRequest"; 00364 } 00365 00366 static const char* value(const ::chomp_motion_planner::GetChompCollisionCostRequest_<ContainerAllocator> &) { return value(); } 00367 }; 00368 00369 template<class ContainerAllocator> 00370 struct Definition< ::chomp_motion_planner::GetChompCollisionCostRequest_<ContainerAllocator> > { 00371 static const char* value() 00372 { 00373 return "\n\ 00374 string[] links\n\ 00375 \n\ 00376 \n\ 00377 \n\ 00378 arm_navigation_msgs/RobotState state\n\ 00379 \n\ 00380 \n\ 00381 ================================================================================\n\ 00382 MSG: arm_navigation_msgs/RobotState\n\ 00383 # This message contains information about the robot state, i.e. the positions of its joints and links\n\ 00384 sensor_msgs/JointState joint_state\n\ 00385 arm_navigation_msgs/MultiDOFJointState multi_dof_joint_state\n\ 00386 \n\ 00387 ================================================================================\n\ 00388 MSG: sensor_msgs/JointState\n\ 00389 # This is a message that holds data to describe the state of a set of torque controlled joints. \n\ 00390 #\n\ 00391 # The state of each joint (revolute or prismatic) is defined by:\n\ 00392 # * the position of the joint (rad or m),\n\ 00393 # * the velocity of the joint (rad/s or m/s) and \n\ 00394 # * the effort that is applied in the joint (Nm or N).\n\ 00395 #\n\ 00396 # Each joint is uniquely identified by its name\n\ 00397 # The header specifies the time at which the joint states were recorded. All the joint states\n\ 00398 # in one message have to be recorded at the same time.\n\ 00399 #\n\ 00400 # This message consists of a multiple arrays, one for each part of the joint state. \n\ 00401 # The goal is to make each of the fields optional. When e.g. your joints have no\n\ 00402 # effort associated with them, you can leave the effort array empty. \n\ 00403 #\n\ 00404 # All arrays in this message should have the same size, or be empty.\n\ 00405 # This is the only way to uniquely associate the joint name with the correct\n\ 00406 # states.\n\ 00407 \n\ 00408 \n\ 00409 Header header\n\ 00410 \n\ 00411 string[] name\n\ 00412 float64[] position\n\ 00413 float64[] velocity\n\ 00414 float64[] effort\n\ 00415 \n\ 00416 ================================================================================\n\ 00417 MSG: std_msgs/Header\n\ 00418 # Standard metadata for higher-level stamped data types.\n\ 00419 # This is generally used to communicate timestamped data \n\ 00420 # in a particular coordinate frame.\n\ 00421 # \n\ 00422 # sequence ID: consecutively increasing ID \n\ 00423 uint32 seq\n\ 00424 #Two-integer timestamp that is expressed as:\n\ 00425 # * stamp.secs: seconds (stamp_secs) since epoch\n\ 00426 # * stamp.nsecs: nanoseconds since stamp_secs\n\ 00427 # time-handling sugar is provided by the client library\n\ 00428 time stamp\n\ 00429 #Frame this data is associated with\n\ 00430 # 0: no frame\n\ 00431 # 1: global frame\n\ 00432 string frame_id\n\ 00433 \n\ 00434 ================================================================================\n\ 00435 MSG: arm_navigation_msgs/MultiDOFJointState\n\ 00436 #A representation of a multi-dof joint state\n\ 00437 time stamp\n\ 00438 string[] joint_names\n\ 00439 string[] frame_ids\n\ 00440 string[] child_frame_ids\n\ 00441 geometry_msgs/Pose[] poses\n\ 00442 \n\ 00443 ================================================================================\n\ 00444 MSG: geometry_msgs/Pose\n\ 00445 # A representation of pose in free space, composed of postion and orientation. \n\ 00446 Point position\n\ 00447 Quaternion orientation\n\ 00448 \n\ 00449 ================================================================================\n\ 00450 MSG: geometry_msgs/Point\n\ 00451 # This contains the position of a point in free space\n\ 00452 float64 x\n\ 00453 float64 y\n\ 00454 float64 z\n\ 00455 \n\ 00456 ================================================================================\n\ 00457 MSG: geometry_msgs/Quaternion\n\ 00458 # This represents an orientation in free space in quaternion form.\n\ 00459 \n\ 00460 float64 x\n\ 00461 float64 y\n\ 00462 float64 z\n\ 00463 float64 w\n\ 00464 \n\ 00465 "; 00466 } 00467 00468 static const char* value(const ::chomp_motion_planner::GetChompCollisionCostRequest_<ContainerAllocator> &) { return value(); } 00469 }; 00470 00471 } // namespace message_traits 00472 } // namespace ros 00473 00474 00475 namespace ros 00476 { 00477 namespace message_traits 00478 { 00479 template<class ContainerAllocator> struct IsMessage< ::chomp_motion_planner::GetChompCollisionCostResponse_<ContainerAllocator> > : public TrueType {}; 00480 template<class ContainerAllocator> struct IsMessage< ::chomp_motion_planner::GetChompCollisionCostResponse_<ContainerAllocator> const> : public TrueType {}; 00481 template<class ContainerAllocator> 00482 struct MD5Sum< ::chomp_motion_planner::GetChompCollisionCostResponse_<ContainerAllocator> > { 00483 static const char* value() 00484 { 00485 return "bed009b7d4d6620621ef40430dbc9236"; 00486 } 00487 00488 static const char* value(const ::chomp_motion_planner::GetChompCollisionCostResponse_<ContainerAllocator> &) { return value(); } 00489 static const uint64_t static_value1 = 0xbed009b7d4d66206ULL; 00490 static const uint64_t static_value2 = 0x21ef40430dbc9236ULL; 00491 }; 00492 00493 template<class ContainerAllocator> 00494 struct DataType< ::chomp_motion_planner::GetChompCollisionCostResponse_<ContainerAllocator> > { 00495 static const char* value() 00496 { 00497 return "chomp_motion_planner/GetChompCollisionCostResponse"; 00498 } 00499 00500 static const char* value(const ::chomp_motion_planner::GetChompCollisionCostResponse_<ContainerAllocator> &) { return value(); } 00501 }; 00502 00503 template<class ContainerAllocator> 00504 struct Definition< ::chomp_motion_planner::GetChompCollisionCostResponse_<ContainerAllocator> > { 00505 static const char* value() 00506 { 00507 return "\n\ 00508 \n\ 00509 float64[] costs\n\ 00510 \n\ 00511 \n\ 00512 \n\ 00513 \n\ 00514 JointVelocityArray[] gradient\n\ 00515 \n\ 00516 \n\ 00517 uint8 in_collision\n\ 00518 \n\ 00519 \n\ 00520 ================================================================================\n\ 00521 MSG: chomp_motion_planner/JointVelocityArray\n\ 00522 # A list of joint names\n\ 00523 string[] joint_names\n\ 00524 \n\ 00525 # Velocity for each of the above joints\n\ 00526 float64[] velocities\n\ 00527 \n\ 00528 "; 00529 } 00530 00531 static const char* value(const ::chomp_motion_planner::GetChompCollisionCostResponse_<ContainerAllocator> &) { return value(); } 00532 }; 00533 00534 } // namespace message_traits 00535 } // namespace ros 00536 00537 namespace ros 00538 { 00539 namespace serialization 00540 { 00541 00542 template<class ContainerAllocator> struct Serializer< ::chomp_motion_planner::GetChompCollisionCostRequest_<ContainerAllocator> > 00543 { 00544 template<typename Stream, typename T> inline static void allInOne(Stream& stream, T m) 00545 { 00546 stream.next(m.links); 00547 stream.next(m.state); 00548 } 00549 00550 ROS_DECLARE_ALLINONE_SERIALIZER; 00551 }; // struct GetChompCollisionCostRequest_ 00552 } // namespace serialization 00553 } // namespace ros 00554 00555 00556 namespace ros 00557 { 00558 namespace serialization 00559 { 00560 00561 template<class ContainerAllocator> struct Serializer< ::chomp_motion_planner::GetChompCollisionCostResponse_<ContainerAllocator> > 00562 { 00563 template<typename Stream, typename T> inline static void allInOne(Stream& stream, T m) 00564 { 00565 stream.next(m.costs); 00566 stream.next(m.gradient); 00567 stream.next(m.in_collision); 00568 } 00569 00570 ROS_DECLARE_ALLINONE_SERIALIZER; 00571 }; // struct GetChompCollisionCostResponse_ 00572 } // namespace serialization 00573 } // namespace ros 00574 00575 namespace ros 00576 { 00577 namespace service_traits 00578 { 00579 template<> 00580 struct MD5Sum<chomp_motion_planner::GetChompCollisionCost> { 00581 static const char* value() 00582 { 00583 return "484cb732bcae020fb22ff8ac89a6ff9f"; 00584 } 00585 00586 static const char* value(const chomp_motion_planner::GetChompCollisionCost&) { return value(); } 00587 }; 00588 00589 template<> 00590 struct DataType<chomp_motion_planner::GetChompCollisionCost> { 00591 static const char* value() 00592 { 00593 return "chomp_motion_planner/GetChompCollisionCost"; 00594 } 00595 00596 static const char* value(const chomp_motion_planner::GetChompCollisionCost&) { return value(); } 00597 }; 00598 00599 template<class ContainerAllocator> 00600 struct MD5Sum<chomp_motion_planner::GetChompCollisionCostRequest_<ContainerAllocator> > { 00601 static const char* value() 00602 { 00603 return "484cb732bcae020fb22ff8ac89a6ff9f"; 00604 } 00605 00606 static const char* value(const chomp_motion_planner::GetChompCollisionCostRequest_<ContainerAllocator> &) { return value(); } 00607 }; 00608 00609 template<class ContainerAllocator> 00610 struct DataType<chomp_motion_planner::GetChompCollisionCostRequest_<ContainerAllocator> > { 00611 static const char* value() 00612 { 00613 return "chomp_motion_planner/GetChompCollisionCost"; 00614 } 00615 00616 static const char* value(const chomp_motion_planner::GetChompCollisionCostRequest_<ContainerAllocator> &) { return value(); } 00617 }; 00618 00619 template<class ContainerAllocator> 00620 struct MD5Sum<chomp_motion_planner::GetChompCollisionCostResponse_<ContainerAllocator> > { 00621 static const char* value() 00622 { 00623 return "484cb732bcae020fb22ff8ac89a6ff9f"; 00624 } 00625 00626 static const char* value(const chomp_motion_planner::GetChompCollisionCostResponse_<ContainerAllocator> &) { return value(); } 00627 }; 00628 00629 template<class ContainerAllocator> 00630 struct DataType<chomp_motion_planner::GetChompCollisionCostResponse_<ContainerAllocator> > { 00631 static const char* value() 00632 { 00633 return "chomp_motion_planner/GetChompCollisionCost"; 00634 } 00635 00636 static const char* value(const chomp_motion_planner::GetChompCollisionCostResponse_<ContainerAllocator> &) { return value(); } 00637 }; 00638 00639 } // namespace service_traits 00640 } // namespace ros 00641 00642 #endif // CHOMP_MOTION_PLANNER_SERVICE_GETCHOMPCOLLISIONCOST_H 00643