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


arm_navigation_msgs
Author(s): Gil Jones
autogenerated on Mon Dec 2 2013 12:31:51