FilterJointTrajectory.h
Go to the documentation of this file.
00001 /* Auto-generated by genmsg_cpp for file /home/rosbuild/hudson/workspace/doc-fuerte-arm_navigation/doc_stacks/2013-12-12_11-02-12.519893/arm_navigation/arm_navigation_msgs/srv/FilterJointTrajectory.srv */
00002 #ifndef ARM_NAVIGATION_MSGS_SERVICE_FILTERJOINTTRAJECTORY_H
00003 #define ARM_NAVIGATION_MSGS_SERVICE_FILTERJOINTTRAJECTORY_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 "trajectory_msgs/JointTrajectory.h"
00020 #include "arm_navigation_msgs/RobotState.h"
00021 #include "arm_navigation_msgs/JointLimits.h"
00022 
00023 
00024 #include "trajectory_msgs/JointTrajectory.h"
00025 #include "arm_navigation_msgs/ArmNavigationErrorCodes.h"
00026 
00027 namespace arm_navigation_msgs
00028 {
00029 template <class ContainerAllocator>
00030 struct FilterJointTrajectoryRequest_ {
00031   typedef FilterJointTrajectoryRequest_<ContainerAllocator> Type;
00032 
00033   FilterJointTrajectoryRequest_()
00034   : trajectory()
00035   , start_state()
00036   , limits()
00037   , allowed_time()
00038   {
00039   }
00040 
00041   FilterJointTrajectoryRequest_(const ContainerAllocator& _alloc)
00042   : trajectory(_alloc)
00043   , start_state(_alloc)
00044   , limits(_alloc)
00045   , allowed_time()
00046   {
00047   }
00048 
00049   typedef  ::trajectory_msgs::JointTrajectory_<ContainerAllocator>  _trajectory_type;
00050    ::trajectory_msgs::JointTrajectory_<ContainerAllocator>  trajectory;
00051 
00052   typedef  ::arm_navigation_msgs::RobotState_<ContainerAllocator>  _start_state_type;
00053    ::arm_navigation_msgs::RobotState_<ContainerAllocator>  start_state;
00054 
00055   typedef std::vector< ::arm_navigation_msgs::JointLimits_<ContainerAllocator> , typename ContainerAllocator::template rebind< ::arm_navigation_msgs::JointLimits_<ContainerAllocator> >::other >  _limits_type;
00056   std::vector< ::arm_navigation_msgs::JointLimits_<ContainerAllocator> , typename ContainerAllocator::template rebind< ::arm_navigation_msgs::JointLimits_<ContainerAllocator> >::other >  limits;
00057 
00058   typedef ros::Duration _allowed_time_type;
00059   ros::Duration allowed_time;
00060 
00061 
00062   typedef boost::shared_ptr< ::arm_navigation_msgs::FilterJointTrajectoryRequest_<ContainerAllocator> > Ptr;
00063   typedef boost::shared_ptr< ::arm_navigation_msgs::FilterJointTrajectoryRequest_<ContainerAllocator>  const> ConstPtr;
00064   boost::shared_ptr<std::map<std::string, std::string> > __connection_header;
00065 }; // struct FilterJointTrajectoryRequest
00066 typedef  ::arm_navigation_msgs::FilterJointTrajectoryRequest_<std::allocator<void> > FilterJointTrajectoryRequest;
00067 
00068 typedef boost::shared_ptr< ::arm_navigation_msgs::FilterJointTrajectoryRequest> FilterJointTrajectoryRequestPtr;
00069 typedef boost::shared_ptr< ::arm_navigation_msgs::FilterJointTrajectoryRequest const> FilterJointTrajectoryRequestConstPtr;
00070 
00071 
00072 template <class ContainerAllocator>
00073 struct FilterJointTrajectoryResponse_ {
00074   typedef FilterJointTrajectoryResponse_<ContainerAllocator> Type;
00075 
00076   FilterJointTrajectoryResponse_()
00077   : trajectory()
00078   , error_code()
00079   {
00080   }
00081 
00082   FilterJointTrajectoryResponse_(const ContainerAllocator& _alloc)
00083   : trajectory(_alloc)
00084   , error_code(_alloc)
00085   {
00086   }
00087 
00088   typedef  ::trajectory_msgs::JointTrajectory_<ContainerAllocator>  _trajectory_type;
00089    ::trajectory_msgs::JointTrajectory_<ContainerAllocator>  trajectory;
00090 
00091   typedef  ::arm_navigation_msgs::ArmNavigationErrorCodes_<ContainerAllocator>  _error_code_type;
00092    ::arm_navigation_msgs::ArmNavigationErrorCodes_<ContainerAllocator>  error_code;
00093 
00094 
00095   typedef boost::shared_ptr< ::arm_navigation_msgs::FilterJointTrajectoryResponse_<ContainerAllocator> > Ptr;
00096   typedef boost::shared_ptr< ::arm_navigation_msgs::FilterJointTrajectoryResponse_<ContainerAllocator>  const> ConstPtr;
00097   boost::shared_ptr<std::map<std::string, std::string> > __connection_header;
00098 }; // struct FilterJointTrajectoryResponse
00099 typedef  ::arm_navigation_msgs::FilterJointTrajectoryResponse_<std::allocator<void> > FilterJointTrajectoryResponse;
00100 
00101 typedef boost::shared_ptr< ::arm_navigation_msgs::FilterJointTrajectoryResponse> FilterJointTrajectoryResponsePtr;
00102 typedef boost::shared_ptr< ::arm_navigation_msgs::FilterJointTrajectoryResponse const> FilterJointTrajectoryResponseConstPtr;
00103 
00104 struct FilterJointTrajectory
00105 {
00106 
00107 typedef FilterJointTrajectoryRequest Request;
00108 typedef FilterJointTrajectoryResponse Response;
00109 Request request;
00110 Response response;
00111 
00112 typedef Request RequestType;
00113 typedef Response ResponseType;
00114 }; // struct FilterJointTrajectory
00115 } // namespace arm_navigation_msgs
00116 
00117 namespace ros
00118 {
00119 namespace message_traits
00120 {
00121 template<class ContainerAllocator> struct IsMessage< ::arm_navigation_msgs::FilterJointTrajectoryRequest_<ContainerAllocator> > : public TrueType {};
00122 template<class ContainerAllocator> struct IsMessage< ::arm_navigation_msgs::FilterJointTrajectoryRequest_<ContainerAllocator>  const> : public TrueType {};
00123 template<class ContainerAllocator>
00124 struct MD5Sum< ::arm_navigation_msgs::FilterJointTrajectoryRequest_<ContainerAllocator> > {
00125   static const char* value() 
00126   {
00127     return "ab323cbf1c60ab841b012481156f47ba";
00128   }
00129 
00130   static const char* value(const  ::arm_navigation_msgs::FilterJointTrajectoryRequest_<ContainerAllocator> &) { return value(); } 
00131   static const uint64_t static_value1 = 0xab323cbf1c60ab84ULL;
00132   static const uint64_t static_value2 = 0x1b012481156f47baULL;
00133 };
00134 
00135 template<class ContainerAllocator>
00136 struct DataType< ::arm_navigation_msgs::FilterJointTrajectoryRequest_<ContainerAllocator> > {
00137   static const char* value() 
00138   {
00139     return "arm_navigation_msgs/FilterJointTrajectoryRequest";
00140   }
00141 
00142   static const char* value(const  ::arm_navigation_msgs::FilterJointTrajectoryRequest_<ContainerAllocator> &) { return value(); } 
00143 };
00144 
00145 template<class ContainerAllocator>
00146 struct Definition< ::arm_navigation_msgs::FilterJointTrajectoryRequest_<ContainerAllocator> > {
00147   static const char* value() 
00148   {
00149     return "\n\
00150 trajectory_msgs/JointTrajectory trajectory\n\
00151 \n\
00152 \n\
00153 \n\
00154 \n\
00155 arm_navigation_msgs/RobotState start_state\n\
00156 \n\
00157 \n\
00158 \n\
00159 \n\
00160 arm_navigation_msgs/JointLimits[] limits\n\
00161 \n\
00162 \n\
00163 duration allowed_time\n\
00164 \n\
00165 ================================================================================\n\
00166 MSG: trajectory_msgs/JointTrajectory\n\
00167 Header header\n\
00168 string[] joint_names\n\
00169 JointTrajectoryPoint[] points\n\
00170 ================================================================================\n\
00171 MSG: std_msgs/Header\n\
00172 # Standard metadata for higher-level stamped data types.\n\
00173 # This is generally used to communicate timestamped data \n\
00174 # in a particular coordinate frame.\n\
00175 # \n\
00176 # sequence ID: consecutively increasing ID \n\
00177 uint32 seq\n\
00178 #Two-integer timestamp that is expressed as:\n\
00179 # * stamp.secs: seconds (stamp_secs) since epoch\n\
00180 # * stamp.nsecs: nanoseconds since stamp_secs\n\
00181 # time-handling sugar is provided by the client library\n\
00182 time stamp\n\
00183 #Frame this data is associated with\n\
00184 # 0: no frame\n\
00185 # 1: global frame\n\
00186 string frame_id\n\
00187 \n\
00188 ================================================================================\n\
00189 MSG: trajectory_msgs/JointTrajectoryPoint\n\
00190 float64[] positions\n\
00191 float64[] velocities\n\
00192 float64[] accelerations\n\
00193 duration time_from_start\n\
00194 ================================================================================\n\
00195 MSG: arm_navigation_msgs/RobotState\n\
00196 # This message contains information about the robot state, i.e. the positions of its joints and links\n\
00197 sensor_msgs/JointState joint_state\n\
00198 arm_navigation_msgs/MultiDOFJointState multi_dof_joint_state\n\
00199 \n\
00200 ================================================================================\n\
00201 MSG: sensor_msgs/JointState\n\
00202 # This is a message that holds data to describe the state of a set of torque controlled joints. \n\
00203 #\n\
00204 # The state of each joint (revolute or prismatic) is defined by:\n\
00205 #  * the position of the joint (rad or m),\n\
00206 #  * the velocity of the joint (rad/s or m/s) and \n\
00207 #  * the effort that is applied in the joint (Nm or N).\n\
00208 #\n\
00209 # Each joint is uniquely identified by its name\n\
00210 # The header specifies the time at which the joint states were recorded. All the joint states\n\
00211 # in one message have to be recorded at the same time.\n\
00212 #\n\
00213 # This message consists of a multiple arrays, one for each part of the joint state. \n\
00214 # The goal is to make each of the fields optional. When e.g. your joints have no\n\
00215 # effort associated with them, you can leave the effort array empty. \n\
00216 #\n\
00217 # All arrays in this message should have the same size, or be empty.\n\
00218 # This is the only way to uniquely associate the joint name with the correct\n\
00219 # states.\n\
00220 \n\
00221 \n\
00222 Header header\n\
00223 \n\
00224 string[] name\n\
00225 float64[] position\n\
00226 float64[] velocity\n\
00227 float64[] effort\n\
00228 \n\
00229 ================================================================================\n\
00230 MSG: arm_navigation_msgs/MultiDOFJointState\n\
00231 #A representation of a multi-dof joint state\n\
00232 time stamp\n\
00233 string[] joint_names\n\
00234 string[] frame_ids\n\
00235 string[] child_frame_ids\n\
00236 geometry_msgs/Pose[] poses\n\
00237 \n\
00238 ================================================================================\n\
00239 MSG: geometry_msgs/Pose\n\
00240 # A representation of pose in free space, composed of postion and orientation. \n\
00241 Point position\n\
00242 Quaternion orientation\n\
00243 \n\
00244 ================================================================================\n\
00245 MSG: geometry_msgs/Point\n\
00246 # This contains the position of a point in free space\n\
00247 float64 x\n\
00248 float64 y\n\
00249 float64 z\n\
00250 \n\
00251 ================================================================================\n\
00252 MSG: geometry_msgs/Quaternion\n\
00253 # This represents an orientation in free space in quaternion form.\n\
00254 \n\
00255 float64 x\n\
00256 float64 y\n\
00257 float64 z\n\
00258 float64 w\n\
00259 \n\
00260 ================================================================================\n\
00261 MSG: arm_navigation_msgs/JointLimits\n\
00262 # This message contains information about limits of a particular joint (or control dimension)\n\
00263 string joint_name\n\
00264 \n\
00265 # true if the joint has position limits\n\
00266 bool has_position_limits\n\
00267 \n\
00268 # min and max position limits\n\
00269 float64 min_position\n\
00270 float64 max_position\n\
00271 \n\
00272 # true if joint has velocity limits\n\
00273 bool has_velocity_limits\n\
00274 \n\
00275 # max velocity limit\n\
00276 float64 max_velocity\n\
00277 # min_velocity is assumed to be -max_velocity\n\
00278 \n\
00279 # true if joint has acceleration limits\n\
00280 bool has_acceleration_limits\n\
00281 # max acceleration limit\n\
00282 float64 max_acceleration\n\
00283 # min_acceleration is assumed to be -max_acceleration\n\
00284 \n\
00285 ";
00286   }
00287 
00288   static const char* value(const  ::arm_navigation_msgs::FilterJointTrajectoryRequest_<ContainerAllocator> &) { return value(); } 
00289 };
00290 
00291 } // namespace message_traits
00292 } // namespace ros
00293 
00294 
00295 namespace ros
00296 {
00297 namespace message_traits
00298 {
00299 template<class ContainerAllocator> struct IsMessage< ::arm_navigation_msgs::FilterJointTrajectoryResponse_<ContainerAllocator> > : public TrueType {};
00300 template<class ContainerAllocator> struct IsMessage< ::arm_navigation_msgs::FilterJointTrajectoryResponse_<ContainerAllocator>  const> : public TrueType {};
00301 template<class ContainerAllocator>
00302 struct MD5Sum< ::arm_navigation_msgs::FilterJointTrajectoryResponse_<ContainerAllocator> > {
00303   static const char* value() 
00304   {
00305     return "5b4da90f4032f9ac3da9abfb05f766cc";
00306   }
00307 
00308   static const char* value(const  ::arm_navigation_msgs::FilterJointTrajectoryResponse_<ContainerAllocator> &) { return value(); } 
00309   static const uint64_t static_value1 = 0x5b4da90f4032f9acULL;
00310   static const uint64_t static_value2 = 0x3da9abfb05f766ccULL;
00311 };
00312 
00313 template<class ContainerAllocator>
00314 struct DataType< ::arm_navigation_msgs::FilterJointTrajectoryResponse_<ContainerAllocator> > {
00315   static const char* value() 
00316   {
00317     return "arm_navigation_msgs/FilterJointTrajectoryResponse";
00318   }
00319 
00320   static const char* value(const  ::arm_navigation_msgs::FilterJointTrajectoryResponse_<ContainerAllocator> &) { return value(); } 
00321 };
00322 
00323 template<class ContainerAllocator>
00324 struct Definition< ::arm_navigation_msgs::FilterJointTrajectoryResponse_<ContainerAllocator> > {
00325   static const char* value() 
00326   {
00327     return "trajectory_msgs/JointTrajectory trajectory\n\
00328 ArmNavigationErrorCodes error_code\n\
00329 \n\
00330 \n\
00331 ================================================================================\n\
00332 MSG: trajectory_msgs/JointTrajectory\n\
00333 Header header\n\
00334 string[] joint_names\n\
00335 JointTrajectoryPoint[] points\n\
00336 ================================================================================\n\
00337 MSG: std_msgs/Header\n\
00338 # Standard metadata for higher-level stamped data types.\n\
00339 # This is generally used to communicate timestamped data \n\
00340 # in a particular coordinate frame.\n\
00341 # \n\
00342 # sequence ID: consecutively increasing ID \n\
00343 uint32 seq\n\
00344 #Two-integer timestamp that is expressed as:\n\
00345 # * stamp.secs: seconds (stamp_secs) since epoch\n\
00346 # * stamp.nsecs: nanoseconds since stamp_secs\n\
00347 # time-handling sugar is provided by the client library\n\
00348 time stamp\n\
00349 #Frame this data is associated with\n\
00350 # 0: no frame\n\
00351 # 1: global frame\n\
00352 string frame_id\n\
00353 \n\
00354 ================================================================================\n\
00355 MSG: trajectory_msgs/JointTrajectoryPoint\n\
00356 float64[] positions\n\
00357 float64[] velocities\n\
00358 float64[] accelerations\n\
00359 duration time_from_start\n\
00360 ================================================================================\n\
00361 MSG: arm_navigation_msgs/ArmNavigationErrorCodes\n\
00362 int32 val\n\
00363 \n\
00364 # overall behavior\n\
00365 int32 PLANNING_FAILED=-1\n\
00366 int32 SUCCESS=1\n\
00367 int32 TIMED_OUT=-2\n\
00368 \n\
00369 # start state errors\n\
00370 int32 START_STATE_IN_COLLISION=-3\n\
00371 int32 START_STATE_VIOLATES_PATH_CONSTRAINTS=-4\n\
00372 \n\
00373 # goal errors\n\
00374 int32 GOAL_IN_COLLISION=-5\n\
00375 int32 GOAL_VIOLATES_PATH_CONSTRAINTS=-6\n\
00376 \n\
00377 # robot state\n\
00378 int32 INVALID_ROBOT_STATE=-7\n\
00379 int32 INCOMPLETE_ROBOT_STATE=-8\n\
00380 \n\
00381 # planning request errors\n\
00382 int32 INVALID_PLANNER_ID=-9\n\
00383 int32 INVALID_NUM_PLANNING_ATTEMPTS=-10\n\
00384 int32 INVALID_ALLOWED_PLANNING_TIME=-11\n\
00385 int32 INVALID_GROUP_NAME=-12\n\
00386 int32 INVALID_GOAL_JOINT_CONSTRAINTS=-13\n\
00387 int32 INVALID_GOAL_POSITION_CONSTRAINTS=-14\n\
00388 int32 INVALID_GOAL_ORIENTATION_CONSTRAINTS=-15\n\
00389 int32 INVALID_PATH_JOINT_CONSTRAINTS=-16\n\
00390 int32 INVALID_PATH_POSITION_CONSTRAINTS=-17\n\
00391 int32 INVALID_PATH_ORIENTATION_CONSTRAINTS=-18\n\
00392 \n\
00393 # state/trajectory monitor errors\n\
00394 int32 INVALID_TRAJECTORY=-19\n\
00395 int32 INVALID_INDEX=-20\n\
00396 int32 JOINT_LIMITS_VIOLATED=-21\n\
00397 int32 PATH_CONSTRAINTS_VIOLATED=-22\n\
00398 int32 COLLISION_CONSTRAINTS_VIOLATED=-23\n\
00399 int32 GOAL_CONSTRAINTS_VIOLATED=-24\n\
00400 int32 JOINTS_NOT_MOVING=-25\n\
00401 int32 TRAJECTORY_CONTROLLER_FAILED=-26\n\
00402 \n\
00403 # system errors\n\
00404 int32 FRAME_TRANSFORM_FAILURE=-27\n\
00405 int32 COLLISION_CHECKING_UNAVAILABLE=-28\n\
00406 int32 ROBOT_STATE_STALE=-29\n\
00407 int32 SENSOR_INFO_STALE=-30\n\
00408 \n\
00409 # kinematics errors\n\
00410 int32 NO_IK_SOLUTION=-31\n\
00411 int32 INVALID_LINK_NAME=-32\n\
00412 int32 IK_LINK_IN_COLLISION=-33\n\
00413 int32 NO_FK_SOLUTION=-34\n\
00414 int32 KINEMATICS_STATE_IN_COLLISION=-35\n\
00415 \n\
00416 # general errors\n\
00417 int32 INVALID_TIMEOUT=-36\n\
00418 \n\
00419 \n\
00420 ";
00421   }
00422 
00423   static const char* value(const  ::arm_navigation_msgs::FilterJointTrajectoryResponse_<ContainerAllocator> &) { return value(); } 
00424 };
00425 
00426 } // namespace message_traits
00427 } // namespace ros
00428 
00429 namespace ros
00430 {
00431 namespace serialization
00432 {
00433 
00434 template<class ContainerAllocator> struct Serializer< ::arm_navigation_msgs::FilterJointTrajectoryRequest_<ContainerAllocator> >
00435 {
00436   template<typename Stream, typename T> inline static void allInOne(Stream& stream, T m)
00437   {
00438     stream.next(m.trajectory);
00439     stream.next(m.start_state);
00440     stream.next(m.limits);
00441     stream.next(m.allowed_time);
00442   }
00443 
00444   ROS_DECLARE_ALLINONE_SERIALIZER;
00445 }; // struct FilterJointTrajectoryRequest_
00446 } // namespace serialization
00447 } // namespace ros
00448 
00449 
00450 namespace ros
00451 {
00452 namespace serialization
00453 {
00454 
00455 template<class ContainerAllocator> struct Serializer< ::arm_navigation_msgs::FilterJointTrajectoryResponse_<ContainerAllocator> >
00456 {
00457   template<typename Stream, typename T> inline static void allInOne(Stream& stream, T m)
00458   {
00459     stream.next(m.trajectory);
00460     stream.next(m.error_code);
00461   }
00462 
00463   ROS_DECLARE_ALLINONE_SERIALIZER;
00464 }; // struct FilterJointTrajectoryResponse_
00465 } // namespace serialization
00466 } // namespace ros
00467 
00468 namespace ros
00469 {
00470 namespace service_traits
00471 {
00472 template<>
00473 struct MD5Sum<arm_navigation_msgs::FilterJointTrajectory> {
00474   static const char* value() 
00475   {
00476     return "18a1c6fa9ab739ec5af11210c0fd79d1";
00477   }
00478 
00479   static const char* value(const arm_navigation_msgs::FilterJointTrajectory&) { return value(); } 
00480 };
00481 
00482 template<>
00483 struct DataType<arm_navigation_msgs::FilterJointTrajectory> {
00484   static const char* value() 
00485   {
00486     return "arm_navigation_msgs/FilterJointTrajectory";
00487   }
00488 
00489   static const char* value(const arm_navigation_msgs::FilterJointTrajectory&) { return value(); } 
00490 };
00491 
00492 template<class ContainerAllocator>
00493 struct MD5Sum<arm_navigation_msgs::FilterJointTrajectoryRequest_<ContainerAllocator> > {
00494   static const char* value() 
00495   {
00496     return "18a1c6fa9ab739ec5af11210c0fd79d1";
00497   }
00498 
00499   static const char* value(const arm_navigation_msgs::FilterJointTrajectoryRequest_<ContainerAllocator> &) { return value(); } 
00500 };
00501 
00502 template<class ContainerAllocator>
00503 struct DataType<arm_navigation_msgs::FilterJointTrajectoryRequest_<ContainerAllocator> > {
00504   static const char* value() 
00505   {
00506     return "arm_navigation_msgs/FilterJointTrajectory";
00507   }
00508 
00509   static const char* value(const arm_navigation_msgs::FilterJointTrajectoryRequest_<ContainerAllocator> &) { return value(); } 
00510 };
00511 
00512 template<class ContainerAllocator>
00513 struct MD5Sum<arm_navigation_msgs::FilterJointTrajectoryResponse_<ContainerAllocator> > {
00514   static const char* value() 
00515   {
00516     return "18a1c6fa9ab739ec5af11210c0fd79d1";
00517   }
00518 
00519   static const char* value(const arm_navigation_msgs::FilterJointTrajectoryResponse_<ContainerAllocator> &) { return value(); } 
00520 };
00521 
00522 template<class ContainerAllocator>
00523 struct DataType<arm_navigation_msgs::FilterJointTrajectoryResponse_<ContainerAllocator> > {
00524   static const char* value() 
00525   {
00526     return "arm_navigation_msgs/FilterJointTrajectory";
00527   }
00528 
00529   static const char* value(const arm_navigation_msgs::FilterJointTrajectoryResponse_<ContainerAllocator> &) { return value(); } 
00530 };
00531 
00532 } // namespace service_traits
00533 } // namespace ros
00534 
00535 #endif // ARM_NAVIGATION_MSGS_SERVICE_FILTERJOINTTRAJECTORY_H
00536 


arm_navigation_msgs
Author(s): Gil Jones
autogenerated on Thu Dec 12 2013 11:08:10