$search
00001 /* Auto-generated by genmsg_cpp for file /home/rosbuild/hudson/workspace/doc-electric-arm_navigation/doc_stacks/2013-03-01_14-05-03.553953/arm_navigation/arm_navigation_msgs/msg/SimplePoseConstraint.msg */ 00002 #ifndef ARM_NAVIGATION_MSGS_MESSAGE_SIMPLEPOSECONSTRAINT_H 00003 #define ARM_NAVIGATION_MSGS_MESSAGE_SIMPLEPOSECONSTRAINT_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 "std_msgs/Header.h" 00018 #include "geometry_msgs/Pose.h" 00019 #include "geometry_msgs/Point.h" 00020 00021 namespace arm_navigation_msgs 00022 { 00023 template <class ContainerAllocator> 00024 struct SimplePoseConstraint_ { 00025 typedef SimplePoseConstraint_<ContainerAllocator> Type; 00026 00027 SimplePoseConstraint_() 00028 : header() 00029 , link_name() 00030 , pose() 00031 , absolute_position_tolerance() 00032 , absolute_roll_tolerance(0.0) 00033 , absolute_yaw_tolerance(0.0) 00034 , absolute_pitch_tolerance(0.0) 00035 , orientation_constraint_type(0) 00036 { 00037 } 00038 00039 SimplePoseConstraint_(const ContainerAllocator& _alloc) 00040 : header(_alloc) 00041 , link_name(_alloc) 00042 , pose(_alloc) 00043 , absolute_position_tolerance(_alloc) 00044 , absolute_roll_tolerance(0.0) 00045 , absolute_yaw_tolerance(0.0) 00046 , absolute_pitch_tolerance(0.0) 00047 , orientation_constraint_type(0) 00048 { 00049 } 00050 00051 typedef ::std_msgs::Header_<ContainerAllocator> _header_type; 00052 ::std_msgs::Header_<ContainerAllocator> header; 00053 00054 typedef std::basic_string<char, std::char_traits<char>, typename ContainerAllocator::template rebind<char>::other > _link_name_type; 00055 std::basic_string<char, std::char_traits<char>, typename ContainerAllocator::template rebind<char>::other > link_name; 00056 00057 typedef ::geometry_msgs::Pose_<ContainerAllocator> _pose_type; 00058 ::geometry_msgs::Pose_<ContainerAllocator> pose; 00059 00060 typedef ::geometry_msgs::Point_<ContainerAllocator> _absolute_position_tolerance_type; 00061 ::geometry_msgs::Point_<ContainerAllocator> absolute_position_tolerance; 00062 00063 typedef double _absolute_roll_tolerance_type; 00064 double absolute_roll_tolerance; 00065 00066 typedef double _absolute_yaw_tolerance_type; 00067 double absolute_yaw_tolerance; 00068 00069 typedef double _absolute_pitch_tolerance_type; 00070 double absolute_pitch_tolerance; 00071 00072 typedef int32_t _orientation_constraint_type_type; 00073 int32_t orientation_constraint_type; 00074 00075 enum { HEADER_FRAME = 0 }; 00076 enum { LINK_FRAME = 1 }; 00077 00078 private: 00079 static const char* __s_getDataType_() { return "arm_navigation_msgs/SimplePoseConstraint"; } 00080 public: 00081 ROS_DEPRECATED static const std::string __s_getDataType() { return __s_getDataType_(); } 00082 00083 ROS_DEPRECATED const std::string __getDataType() const { return __s_getDataType_(); } 00084 00085 private: 00086 static const char* __s_getMD5Sum_() { return "3483d830eb84ecd3059741fd417b30da"; } 00087 public: 00088 ROS_DEPRECATED static const std::string __s_getMD5Sum() { return __s_getMD5Sum_(); } 00089 00090 ROS_DEPRECATED const std::string __getMD5Sum() const { return __s_getMD5Sum_(); } 00091 00092 private: 00093 static const char* __s_getMessageDefinition_() { return "# This message contains the definition of a simple pose constraint \n\ 00094 # that specifies the pose for a particular link of the robot and corresponding\n\ 00095 # (absolute) position and orientation tolerances\n\ 00096 \n\ 00097 # The standard ROS message header\n\ 00098 Header header\n\ 00099 \n\ 00100 # The robot link this constraint refers to\n\ 00101 string link_name\n\ 00102 \n\ 00103 # The desired position of the robot link\n\ 00104 geometry_msgs/Pose pose\n\ 00105 \n\ 00106 # Position (absolute) tolerance\n\ 00107 geometry_msgs/Point absolute_position_tolerance\n\ 00108 \n\ 00109 # Orientation (absolute) tolerance\n\ 00110 float64 absolute_roll_tolerance\n\ 00111 float64 absolute_yaw_tolerance\n\ 00112 float64 absolute_pitch_tolerance\n\ 00113 \n\ 00114 int32 orientation_constraint_type\n\ 00115 int32 HEADER_FRAME=0\n\ 00116 int32 LINK_FRAME=1\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: geometry_msgs/Pose\n\ 00138 # A representation of pose in free space, composed of postion and orientation. \n\ 00139 Point position\n\ 00140 Quaternion orientation\n\ 00141 \n\ 00142 ================================================================================\n\ 00143 MSG: geometry_msgs/Point\n\ 00144 # This contains the position of a point in free space\n\ 00145 float64 x\n\ 00146 float64 y\n\ 00147 float64 z\n\ 00148 \n\ 00149 ================================================================================\n\ 00150 MSG: geometry_msgs/Quaternion\n\ 00151 # This represents an orientation in free space in quaternion form.\n\ 00152 \n\ 00153 float64 x\n\ 00154 float64 y\n\ 00155 float64 z\n\ 00156 float64 w\n\ 00157 \n\ 00158 "; } 00159 public: 00160 ROS_DEPRECATED static const std::string __s_getMessageDefinition() { return __s_getMessageDefinition_(); } 00161 00162 ROS_DEPRECATED const std::string __getMessageDefinition() const { return __s_getMessageDefinition_(); } 00163 00164 ROS_DEPRECATED virtual uint8_t *serialize(uint8_t *write_ptr, uint32_t seq) const 00165 { 00166 ros::serialization::OStream stream(write_ptr, 1000000000); 00167 ros::serialization::serialize(stream, header); 00168 ros::serialization::serialize(stream, link_name); 00169 ros::serialization::serialize(stream, pose); 00170 ros::serialization::serialize(stream, absolute_position_tolerance); 00171 ros::serialization::serialize(stream, absolute_roll_tolerance); 00172 ros::serialization::serialize(stream, absolute_yaw_tolerance); 00173 ros::serialization::serialize(stream, absolute_pitch_tolerance); 00174 ros::serialization::serialize(stream, orientation_constraint_type); 00175 return stream.getData(); 00176 } 00177 00178 ROS_DEPRECATED virtual uint8_t *deserialize(uint8_t *read_ptr) 00179 { 00180 ros::serialization::IStream stream(read_ptr, 1000000000); 00181 ros::serialization::deserialize(stream, header); 00182 ros::serialization::deserialize(stream, link_name); 00183 ros::serialization::deserialize(stream, pose); 00184 ros::serialization::deserialize(stream, absolute_position_tolerance); 00185 ros::serialization::deserialize(stream, absolute_roll_tolerance); 00186 ros::serialization::deserialize(stream, absolute_yaw_tolerance); 00187 ros::serialization::deserialize(stream, absolute_pitch_tolerance); 00188 ros::serialization::deserialize(stream, orientation_constraint_type); 00189 return stream.getData(); 00190 } 00191 00192 ROS_DEPRECATED virtual uint32_t serializationLength() const 00193 { 00194 uint32_t size = 0; 00195 size += ros::serialization::serializationLength(header); 00196 size += ros::serialization::serializationLength(link_name); 00197 size += ros::serialization::serializationLength(pose); 00198 size += ros::serialization::serializationLength(absolute_position_tolerance); 00199 size += ros::serialization::serializationLength(absolute_roll_tolerance); 00200 size += ros::serialization::serializationLength(absolute_yaw_tolerance); 00201 size += ros::serialization::serializationLength(absolute_pitch_tolerance); 00202 size += ros::serialization::serializationLength(orientation_constraint_type); 00203 return size; 00204 } 00205 00206 typedef boost::shared_ptr< ::arm_navigation_msgs::SimplePoseConstraint_<ContainerAllocator> > Ptr; 00207 typedef boost::shared_ptr< ::arm_navigation_msgs::SimplePoseConstraint_<ContainerAllocator> const> ConstPtr; 00208 boost::shared_ptr<std::map<std::string, std::string> > __connection_header; 00209 }; // struct SimplePoseConstraint 00210 typedef ::arm_navigation_msgs::SimplePoseConstraint_<std::allocator<void> > SimplePoseConstraint; 00211 00212 typedef boost::shared_ptr< ::arm_navigation_msgs::SimplePoseConstraint> SimplePoseConstraintPtr; 00213 typedef boost::shared_ptr< ::arm_navigation_msgs::SimplePoseConstraint const> SimplePoseConstraintConstPtr; 00214 00215 00216 template<typename ContainerAllocator> 00217 std::ostream& operator<<(std::ostream& s, const ::arm_navigation_msgs::SimplePoseConstraint_<ContainerAllocator> & v) 00218 { 00219 ros::message_operations::Printer< ::arm_navigation_msgs::SimplePoseConstraint_<ContainerAllocator> >::stream(s, "", v); 00220 return s;} 00221 00222 } // namespace arm_navigation_msgs 00223 00224 namespace ros 00225 { 00226 namespace message_traits 00227 { 00228 template<class ContainerAllocator> struct IsMessage< ::arm_navigation_msgs::SimplePoseConstraint_<ContainerAllocator> > : public TrueType {}; 00229 template<class ContainerAllocator> struct IsMessage< ::arm_navigation_msgs::SimplePoseConstraint_<ContainerAllocator> const> : public TrueType {}; 00230 template<class ContainerAllocator> 00231 struct MD5Sum< ::arm_navigation_msgs::SimplePoseConstraint_<ContainerAllocator> > { 00232 static const char* value() 00233 { 00234 return "3483d830eb84ecd3059741fd417b30da"; 00235 } 00236 00237 static const char* value(const ::arm_navigation_msgs::SimplePoseConstraint_<ContainerAllocator> &) { return value(); } 00238 static const uint64_t static_value1 = 0x3483d830eb84ecd3ULL; 00239 static const uint64_t static_value2 = 0x059741fd417b30daULL; 00240 }; 00241 00242 template<class ContainerAllocator> 00243 struct DataType< ::arm_navigation_msgs::SimplePoseConstraint_<ContainerAllocator> > { 00244 static const char* value() 00245 { 00246 return "arm_navigation_msgs/SimplePoseConstraint"; 00247 } 00248 00249 static const char* value(const ::arm_navigation_msgs::SimplePoseConstraint_<ContainerAllocator> &) { return value(); } 00250 }; 00251 00252 template<class ContainerAllocator> 00253 struct Definition< ::arm_navigation_msgs::SimplePoseConstraint_<ContainerAllocator> > { 00254 static const char* value() 00255 { 00256 return "# This message contains the definition of a simple pose constraint \n\ 00257 # that specifies the pose for a particular link of the robot and corresponding\n\ 00258 # (absolute) position and orientation tolerances\n\ 00259 \n\ 00260 # The standard ROS message header\n\ 00261 Header header\n\ 00262 \n\ 00263 # The robot link this constraint refers to\n\ 00264 string link_name\n\ 00265 \n\ 00266 # The desired position of the robot link\n\ 00267 geometry_msgs/Pose pose\n\ 00268 \n\ 00269 # Position (absolute) tolerance\n\ 00270 geometry_msgs/Point absolute_position_tolerance\n\ 00271 \n\ 00272 # Orientation (absolute) tolerance\n\ 00273 float64 absolute_roll_tolerance\n\ 00274 float64 absolute_yaw_tolerance\n\ 00275 float64 absolute_pitch_tolerance\n\ 00276 \n\ 00277 int32 orientation_constraint_type\n\ 00278 int32 HEADER_FRAME=0\n\ 00279 int32 LINK_FRAME=1\n\ 00280 \n\ 00281 ================================================================================\n\ 00282 MSG: std_msgs/Header\n\ 00283 # Standard metadata for higher-level stamped data types.\n\ 00284 # This is generally used to communicate timestamped data \n\ 00285 # in a particular coordinate frame.\n\ 00286 # \n\ 00287 # sequence ID: consecutively increasing ID \n\ 00288 uint32 seq\n\ 00289 #Two-integer timestamp that is expressed as:\n\ 00290 # * stamp.secs: seconds (stamp_secs) since epoch\n\ 00291 # * stamp.nsecs: nanoseconds since stamp_secs\n\ 00292 # time-handling sugar is provided by the client library\n\ 00293 time stamp\n\ 00294 #Frame this data is associated with\n\ 00295 # 0: no frame\n\ 00296 # 1: global frame\n\ 00297 string frame_id\n\ 00298 \n\ 00299 ================================================================================\n\ 00300 MSG: geometry_msgs/Pose\n\ 00301 # A representation of pose in free space, composed of postion and orientation. \n\ 00302 Point position\n\ 00303 Quaternion orientation\n\ 00304 \n\ 00305 ================================================================================\n\ 00306 MSG: geometry_msgs/Point\n\ 00307 # This contains the position of a point in free space\n\ 00308 float64 x\n\ 00309 float64 y\n\ 00310 float64 z\n\ 00311 \n\ 00312 ================================================================================\n\ 00313 MSG: geometry_msgs/Quaternion\n\ 00314 # This represents an orientation in free space in quaternion form.\n\ 00315 \n\ 00316 float64 x\n\ 00317 float64 y\n\ 00318 float64 z\n\ 00319 float64 w\n\ 00320 \n\ 00321 "; 00322 } 00323 00324 static const char* value(const ::arm_navigation_msgs::SimplePoseConstraint_<ContainerAllocator> &) { return value(); } 00325 }; 00326 00327 template<class ContainerAllocator> struct HasHeader< ::arm_navigation_msgs::SimplePoseConstraint_<ContainerAllocator> > : public TrueType {}; 00328 template<class ContainerAllocator> struct HasHeader< const ::arm_navigation_msgs::SimplePoseConstraint_<ContainerAllocator> > : public TrueType {}; 00329 } // namespace message_traits 00330 } // namespace ros 00331 00332 namespace ros 00333 { 00334 namespace serialization 00335 { 00336 00337 template<class ContainerAllocator> struct Serializer< ::arm_navigation_msgs::SimplePoseConstraint_<ContainerAllocator> > 00338 { 00339 template<typename Stream, typename T> inline static void allInOne(Stream& stream, T m) 00340 { 00341 stream.next(m.header); 00342 stream.next(m.link_name); 00343 stream.next(m.pose); 00344 stream.next(m.absolute_position_tolerance); 00345 stream.next(m.absolute_roll_tolerance); 00346 stream.next(m.absolute_yaw_tolerance); 00347 stream.next(m.absolute_pitch_tolerance); 00348 stream.next(m.orientation_constraint_type); 00349 } 00350 00351 ROS_DECLARE_ALLINONE_SERIALIZER; 00352 }; // struct SimplePoseConstraint_ 00353 } // namespace serialization 00354 } // namespace ros 00355 00356 namespace ros 00357 { 00358 namespace message_operations 00359 { 00360 00361 template<class ContainerAllocator> 00362 struct Printer< ::arm_navigation_msgs::SimplePoseConstraint_<ContainerAllocator> > 00363 { 00364 template<typename Stream> static void stream(Stream& s, const std::string& indent, const ::arm_navigation_msgs::SimplePoseConstraint_<ContainerAllocator> & v) 00365 { 00366 s << indent << "header: "; 00367 s << std::endl; 00368 Printer< ::std_msgs::Header_<ContainerAllocator> >::stream(s, indent + " ", v.header); 00369 s << indent << "link_name: "; 00370 Printer<std::basic_string<char, std::char_traits<char>, typename ContainerAllocator::template rebind<char>::other > >::stream(s, indent + " ", v.link_name); 00371 s << indent << "pose: "; 00372 s << std::endl; 00373 Printer< ::geometry_msgs::Pose_<ContainerAllocator> >::stream(s, indent + " ", v.pose); 00374 s << indent << "absolute_position_tolerance: "; 00375 s << std::endl; 00376 Printer< ::geometry_msgs::Point_<ContainerAllocator> >::stream(s, indent + " ", v.absolute_position_tolerance); 00377 s << indent << "absolute_roll_tolerance: "; 00378 Printer<double>::stream(s, indent + " ", v.absolute_roll_tolerance); 00379 s << indent << "absolute_yaw_tolerance: "; 00380 Printer<double>::stream(s, indent + " ", v.absolute_yaw_tolerance); 00381 s << indent << "absolute_pitch_tolerance: "; 00382 Printer<double>::stream(s, indent + " ", v.absolute_pitch_tolerance); 00383 s << indent << "orientation_constraint_type: "; 00384 Printer<int32_t>::stream(s, indent + " ", v.orientation_constraint_type); 00385 } 00386 }; 00387 00388 00389 } // namespace message_operations 00390 } // namespace ros 00391 00392 #endif // ARM_NAVIGATION_MSGS_MESSAGE_SIMPLEPOSECONSTRAINT_H 00393