Go to the documentation of this file.00001
00002 #ifndef ARM_NAVIGATION_MSGS_MESSAGE_DISPLAYTRAJECTORY_H
00003 #define ARM_NAVIGATION_MSGS_MESSAGE_DISPLAYTRAJECTORY_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 "arm_navigation_msgs/RobotTrajectory.h"
00018 #include "arm_navigation_msgs/RobotState.h"
00019
00020 namespace arm_navigation_msgs
00021 {
00022 template <class ContainerAllocator>
00023 struct DisplayTrajectory_ {
00024 typedef DisplayTrajectory_<ContainerAllocator> Type;
00025
00026 DisplayTrajectory_()
00027 : model_id()
00028 , trajectory()
00029 , robot_state()
00030 {
00031 }
00032
00033 DisplayTrajectory_(const ContainerAllocator& _alloc)
00034 : model_id(_alloc)
00035 , trajectory(_alloc)
00036 , robot_state(_alloc)
00037 {
00038 }
00039
00040 typedef std::basic_string<char, std::char_traits<char>, typename ContainerAllocator::template rebind<char>::other > _model_id_type;
00041 std::basic_string<char, std::char_traits<char>, typename ContainerAllocator::template rebind<char>::other > model_id;
00042
00043 typedef ::arm_navigation_msgs::RobotTrajectory_<ContainerAllocator> _trajectory_type;
00044 ::arm_navigation_msgs::RobotTrajectory_<ContainerAllocator> trajectory;
00045
00046 typedef ::arm_navigation_msgs::RobotState_<ContainerAllocator> _robot_state_type;
00047 ::arm_navigation_msgs::RobotState_<ContainerAllocator> robot_state;
00048
00049
00050 typedef boost::shared_ptr< ::arm_navigation_msgs::DisplayTrajectory_<ContainerAllocator> > Ptr;
00051 typedef boost::shared_ptr< ::arm_navigation_msgs::DisplayTrajectory_<ContainerAllocator> const> ConstPtr;
00052 boost::shared_ptr<std::map<std::string, std::string> > __connection_header;
00053 };
00054 typedef ::arm_navigation_msgs::DisplayTrajectory_<std::allocator<void> > DisplayTrajectory;
00055
00056 typedef boost::shared_ptr< ::arm_navigation_msgs::DisplayTrajectory> DisplayTrajectoryPtr;
00057 typedef boost::shared_ptr< ::arm_navigation_msgs::DisplayTrajectory const> DisplayTrajectoryConstPtr;
00058
00059
00060 template<typename ContainerAllocator>
00061 std::ostream& operator<<(std::ostream& s, const ::arm_navigation_msgs::DisplayTrajectory_<ContainerAllocator> & v)
00062 {
00063 ros::message_operations::Printer< ::arm_navigation_msgs::DisplayTrajectory_<ContainerAllocator> >::stream(s, "", v);
00064 return s;}
00065
00066 }
00067
00068 namespace ros
00069 {
00070 namespace message_traits
00071 {
00072 template<class ContainerAllocator> struct IsMessage< ::arm_navigation_msgs::DisplayTrajectory_<ContainerAllocator> > : public TrueType {};
00073 template<class ContainerAllocator> struct IsMessage< ::arm_navigation_msgs::DisplayTrajectory_<ContainerAllocator> const> : public TrueType {};
00074 template<class ContainerAllocator>
00075 struct MD5Sum< ::arm_navigation_msgs::DisplayTrajectory_<ContainerAllocator> > {
00076 static const char* value()
00077 {
00078 return "382f217803665e4718c4edbac445582c";
00079 }
00080
00081 static const char* value(const ::arm_navigation_msgs::DisplayTrajectory_<ContainerAllocator> &) { return value(); }
00082 static const uint64_t static_value1 = 0x382f217803665e47ULL;
00083 static const uint64_t static_value2 = 0x18c4edbac445582cULL;
00084 };
00085
00086 template<class ContainerAllocator>
00087 struct DataType< ::arm_navigation_msgs::DisplayTrajectory_<ContainerAllocator> > {
00088 static const char* value()
00089 {
00090 return "arm_navigation_msgs/DisplayTrajectory";
00091 }
00092
00093 static const char* value(const ::arm_navigation_msgs::DisplayTrajectory_<ContainerAllocator> &) { return value(); }
00094 };
00095
00096 template<class ContainerAllocator>
00097 struct Definition< ::arm_navigation_msgs::DisplayTrajectory_<ContainerAllocator> > {
00098 static const char* value()
00099 {
00100 return "# The model id for which this path has been generated\n\
00101 string model_id\n\
00102 # The representation of the path contains position values for all the joints that are moving along the path\n\
00103 arm_navigation_msgs/RobotTrajectory trajectory\n\
00104 # The robot state is used to obtain positions for all/some of the joints of the robot. \n\
00105 # It is used by the path display node to determine the positions of the joints that are not specified in the joint path message above. \n\
00106 # If the robot state message contains joint position information for joints that are also mentioned in the joint path message, the positions in the joint path message will overwrite the positions specified in the robot state message. \n\
00107 RobotState robot_state\n\
00108 \n\
00109 ================================================================================\n\
00110 MSG: arm_navigation_msgs/RobotTrajectory\n\
00111 trajectory_msgs/JointTrajectory joint_trajectory\n\
00112 arm_navigation_msgs/MultiDOFJointTrajectory multi_dof_joint_trajectory\n\
00113 \n\
00114 ================================================================================\n\
00115 MSG: trajectory_msgs/JointTrajectory\n\
00116 Header header\n\
00117 string[] joint_names\n\
00118 JointTrajectoryPoint[] points\n\
00119 ================================================================================\n\
00120 MSG: std_msgs/Header\n\
00121 # Standard metadata for higher-level stamped data types.\n\
00122 # This is generally used to communicate timestamped data \n\
00123 # in a particular coordinate frame.\n\
00124 # \n\
00125 # sequence ID: consecutively increasing ID \n\
00126 uint32 seq\n\
00127 #Two-integer timestamp that is expressed as:\n\
00128 # * stamp.secs: seconds (stamp_secs) since epoch\n\
00129 # * stamp.nsecs: nanoseconds since stamp_secs\n\
00130 # time-handling sugar is provided by the client library\n\
00131 time stamp\n\
00132 #Frame this data is associated with\n\
00133 # 0: no frame\n\
00134 # 1: global frame\n\
00135 string frame_id\n\
00136 \n\
00137 ================================================================================\n\
00138 MSG: trajectory_msgs/JointTrajectoryPoint\n\
00139 float64[] positions\n\
00140 float64[] velocities\n\
00141 float64[] accelerations\n\
00142 duration time_from_start\n\
00143 ================================================================================\n\
00144 MSG: arm_navigation_msgs/MultiDOFJointTrajectory\n\
00145 #A representation of a multi-dof joint trajectory\n\
00146 duration stamp\n\
00147 string[] joint_names\n\
00148 string[] frame_ids\n\
00149 string[] child_frame_ids\n\
00150 MultiDOFJointTrajectoryPoint[] points\n\
00151 \n\
00152 ================================================================================\n\
00153 MSG: arm_navigation_msgs/MultiDOFJointTrajectoryPoint\n\
00154 geometry_msgs/Pose[] poses\n\
00155 duration time_from_start\n\
00156 ================================================================================\n\
00157 MSG: geometry_msgs/Pose\n\
00158 # A representation of pose in free space, composed of postion and orientation. \n\
00159 Point position\n\
00160 Quaternion orientation\n\
00161 \n\
00162 ================================================================================\n\
00163 MSG: geometry_msgs/Point\n\
00164 # This contains the position of a point in free space\n\
00165 float64 x\n\
00166 float64 y\n\
00167 float64 z\n\
00168 \n\
00169 ================================================================================\n\
00170 MSG: geometry_msgs/Quaternion\n\
00171 # This represents an orientation in free space in quaternion form.\n\
00172 \n\
00173 float64 x\n\
00174 float64 y\n\
00175 float64 z\n\
00176 float64 w\n\
00177 \n\
00178 ================================================================================\n\
00179 MSG: arm_navigation_msgs/RobotState\n\
00180 # This message contains information about the robot state, i.e. the positions of its joints and links\n\
00181 sensor_msgs/JointState joint_state\n\
00182 arm_navigation_msgs/MultiDOFJointState multi_dof_joint_state\n\
00183 \n\
00184 ================================================================================\n\
00185 MSG: sensor_msgs/JointState\n\
00186 # This is a message that holds data to describe the state of a set of torque controlled joints. \n\
00187 #\n\
00188 # The state of each joint (revolute or prismatic) is defined by:\n\
00189 # * the position of the joint (rad or m),\n\
00190 # * the velocity of the joint (rad/s or m/s) and \n\
00191 # * the effort that is applied in the joint (Nm or N).\n\
00192 #\n\
00193 # Each joint is uniquely identified by its name\n\
00194 # The header specifies the time at which the joint states were recorded. All the joint states\n\
00195 # in one message have to be recorded at the same time.\n\
00196 #\n\
00197 # This message consists of a multiple arrays, one for each part of the joint state. \n\
00198 # The goal is to make each of the fields optional. When e.g. your joints have no\n\
00199 # effort associated with them, you can leave the effort array empty. \n\
00200 #\n\
00201 # All arrays in this message should have the same size, or be empty.\n\
00202 # This is the only way to uniquely associate the joint name with the correct\n\
00203 # states.\n\
00204 \n\
00205 \n\
00206 Header header\n\
00207 \n\
00208 string[] name\n\
00209 float64[] position\n\
00210 float64[] velocity\n\
00211 float64[] effort\n\
00212 \n\
00213 ================================================================================\n\
00214 MSG: arm_navigation_msgs/MultiDOFJointState\n\
00215 #A representation of a multi-dof joint state\n\
00216 time stamp\n\
00217 string[] joint_names\n\
00218 string[] frame_ids\n\
00219 string[] child_frame_ids\n\
00220 geometry_msgs/Pose[] poses\n\
00221 \n\
00222 ";
00223 }
00224
00225 static const char* value(const ::arm_navigation_msgs::DisplayTrajectory_<ContainerAllocator> &) { return value(); }
00226 };
00227
00228 }
00229 }
00230
00231 namespace ros
00232 {
00233 namespace serialization
00234 {
00235
00236 template<class ContainerAllocator> struct Serializer< ::arm_navigation_msgs::DisplayTrajectory_<ContainerAllocator> >
00237 {
00238 template<typename Stream, typename T> inline static void allInOne(Stream& stream, T m)
00239 {
00240 stream.next(m.model_id);
00241 stream.next(m.trajectory);
00242 stream.next(m.robot_state);
00243 }
00244
00245 ROS_DECLARE_ALLINONE_SERIALIZER;
00246 };
00247 }
00248 }
00249
00250 namespace ros
00251 {
00252 namespace message_operations
00253 {
00254
00255 template<class ContainerAllocator>
00256 struct Printer< ::arm_navigation_msgs::DisplayTrajectory_<ContainerAllocator> >
00257 {
00258 template<typename Stream> static void stream(Stream& s, const std::string& indent, const ::arm_navigation_msgs::DisplayTrajectory_<ContainerAllocator> & v)
00259 {
00260 s << indent << "model_id: ";
00261 Printer<std::basic_string<char, std::char_traits<char>, typename ContainerAllocator::template rebind<char>::other > >::stream(s, indent + " ", v.model_id);
00262 s << indent << "trajectory: ";
00263 s << std::endl;
00264 Printer< ::arm_navigation_msgs::RobotTrajectory_<ContainerAllocator> >::stream(s, indent + " ", v.trajectory);
00265 s << indent << "robot_state: ";
00266 s << std::endl;
00267 Printer< ::arm_navigation_msgs::RobotState_<ContainerAllocator> >::stream(s, indent + " ", v.robot_state);
00268 }
00269 };
00270
00271
00272 }
00273 }
00274
00275 #endif // ARM_NAVIGATION_MSGS_MESSAGE_DISPLAYTRAJECTORY_H
00276