$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/JointConstraint.msg */ 00002 #ifndef ARM_NAVIGATION_MSGS_MESSAGE_JOINTCONSTRAINT_H 00003 #define ARM_NAVIGATION_MSGS_MESSAGE_JOINTCONSTRAINT_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 00018 namespace arm_navigation_msgs 00019 { 00020 template <class ContainerAllocator> 00021 struct JointConstraint_ { 00022 typedef JointConstraint_<ContainerAllocator> Type; 00023 00024 JointConstraint_() 00025 : joint_name() 00026 , position(0.0) 00027 , tolerance_above(0.0) 00028 , tolerance_below(0.0) 00029 , weight(0.0) 00030 { 00031 } 00032 00033 JointConstraint_(const ContainerAllocator& _alloc) 00034 : joint_name(_alloc) 00035 , position(0.0) 00036 , tolerance_above(0.0) 00037 , tolerance_below(0.0) 00038 , weight(0.0) 00039 { 00040 } 00041 00042 typedef std::basic_string<char, std::char_traits<char>, typename ContainerAllocator::template rebind<char>::other > _joint_name_type; 00043 std::basic_string<char, std::char_traits<char>, typename ContainerAllocator::template rebind<char>::other > joint_name; 00044 00045 typedef double _position_type; 00046 double position; 00047 00048 typedef double _tolerance_above_type; 00049 double tolerance_above; 00050 00051 typedef double _tolerance_below_type; 00052 double tolerance_below; 00053 00054 typedef double _weight_type; 00055 double weight; 00056 00057 00058 private: 00059 static const char* __s_getDataType_() { return "arm_navigation_msgs/JointConstraint"; } 00060 public: 00061 ROS_DEPRECATED static const std::string __s_getDataType() { return __s_getDataType_(); } 00062 00063 ROS_DEPRECATED const std::string __getDataType() const { return __s_getDataType_(); } 00064 00065 private: 00066 static const char* __s_getMD5Sum_() { return "c02a15146bec0ce13564807805b008f0"; } 00067 public: 00068 ROS_DEPRECATED static const std::string __s_getMD5Sum() { return __s_getMD5Sum_(); } 00069 00070 ROS_DEPRECATED const std::string __getMD5Sum() const { return __s_getMD5Sum_(); } 00071 00072 private: 00073 static const char* __s_getMessageDefinition_() { return "# Constrain the position of a joint to be within a certain bound\n\ 00074 string joint_name\n\ 00075 \n\ 00076 # the bound to be achieved is [position - tolerance_below, position + tolerance_above]\n\ 00077 float64 position\n\ 00078 float64 tolerance_above\n\ 00079 float64 tolerance_below\n\ 00080 \n\ 00081 # A weighting factor for this constraint\n\ 00082 float64 weight\n\ 00083 "; } 00084 public: 00085 ROS_DEPRECATED static const std::string __s_getMessageDefinition() { return __s_getMessageDefinition_(); } 00086 00087 ROS_DEPRECATED const std::string __getMessageDefinition() const { return __s_getMessageDefinition_(); } 00088 00089 ROS_DEPRECATED virtual uint8_t *serialize(uint8_t *write_ptr, uint32_t seq) const 00090 { 00091 ros::serialization::OStream stream(write_ptr, 1000000000); 00092 ros::serialization::serialize(stream, joint_name); 00093 ros::serialization::serialize(stream, position); 00094 ros::serialization::serialize(stream, tolerance_above); 00095 ros::serialization::serialize(stream, tolerance_below); 00096 ros::serialization::serialize(stream, weight); 00097 return stream.getData(); 00098 } 00099 00100 ROS_DEPRECATED virtual uint8_t *deserialize(uint8_t *read_ptr) 00101 { 00102 ros::serialization::IStream stream(read_ptr, 1000000000); 00103 ros::serialization::deserialize(stream, joint_name); 00104 ros::serialization::deserialize(stream, position); 00105 ros::serialization::deserialize(stream, tolerance_above); 00106 ros::serialization::deserialize(stream, tolerance_below); 00107 ros::serialization::deserialize(stream, weight); 00108 return stream.getData(); 00109 } 00110 00111 ROS_DEPRECATED virtual uint32_t serializationLength() const 00112 { 00113 uint32_t size = 0; 00114 size += ros::serialization::serializationLength(joint_name); 00115 size += ros::serialization::serializationLength(position); 00116 size += ros::serialization::serializationLength(tolerance_above); 00117 size += ros::serialization::serializationLength(tolerance_below); 00118 size += ros::serialization::serializationLength(weight); 00119 return size; 00120 } 00121 00122 typedef boost::shared_ptr< ::arm_navigation_msgs::JointConstraint_<ContainerAllocator> > Ptr; 00123 typedef boost::shared_ptr< ::arm_navigation_msgs::JointConstraint_<ContainerAllocator> const> ConstPtr; 00124 boost::shared_ptr<std::map<std::string, std::string> > __connection_header; 00125 }; // struct JointConstraint 00126 typedef ::arm_navigation_msgs::JointConstraint_<std::allocator<void> > JointConstraint; 00127 00128 typedef boost::shared_ptr< ::arm_navigation_msgs::JointConstraint> JointConstraintPtr; 00129 typedef boost::shared_ptr< ::arm_navigation_msgs::JointConstraint const> JointConstraintConstPtr; 00130 00131 00132 template<typename ContainerAllocator> 00133 std::ostream& operator<<(std::ostream& s, const ::arm_navigation_msgs::JointConstraint_<ContainerAllocator> & v) 00134 { 00135 ros::message_operations::Printer< ::arm_navigation_msgs::JointConstraint_<ContainerAllocator> >::stream(s, "", v); 00136 return s;} 00137 00138 } // namespace arm_navigation_msgs 00139 00140 namespace ros 00141 { 00142 namespace message_traits 00143 { 00144 template<class ContainerAllocator> struct IsMessage< ::arm_navigation_msgs::JointConstraint_<ContainerAllocator> > : public TrueType {}; 00145 template<class ContainerAllocator> struct IsMessage< ::arm_navigation_msgs::JointConstraint_<ContainerAllocator> const> : public TrueType {}; 00146 template<class ContainerAllocator> 00147 struct MD5Sum< ::arm_navigation_msgs::JointConstraint_<ContainerAllocator> > { 00148 static const char* value() 00149 { 00150 return "c02a15146bec0ce13564807805b008f0"; 00151 } 00152 00153 static const char* value(const ::arm_navigation_msgs::JointConstraint_<ContainerAllocator> &) { return value(); } 00154 static const uint64_t static_value1 = 0xc02a15146bec0ce1ULL; 00155 static const uint64_t static_value2 = 0x3564807805b008f0ULL; 00156 }; 00157 00158 template<class ContainerAllocator> 00159 struct DataType< ::arm_navigation_msgs::JointConstraint_<ContainerAllocator> > { 00160 static const char* value() 00161 { 00162 return "arm_navigation_msgs/JointConstraint"; 00163 } 00164 00165 static const char* value(const ::arm_navigation_msgs::JointConstraint_<ContainerAllocator> &) { return value(); } 00166 }; 00167 00168 template<class ContainerAllocator> 00169 struct Definition< ::arm_navigation_msgs::JointConstraint_<ContainerAllocator> > { 00170 static const char* value() 00171 { 00172 return "# Constrain the position of a joint to be within a certain bound\n\ 00173 string joint_name\n\ 00174 \n\ 00175 # the bound to be achieved is [position - tolerance_below, position + tolerance_above]\n\ 00176 float64 position\n\ 00177 float64 tolerance_above\n\ 00178 float64 tolerance_below\n\ 00179 \n\ 00180 # A weighting factor for this constraint\n\ 00181 float64 weight\n\ 00182 "; 00183 } 00184 00185 static const char* value(const ::arm_navigation_msgs::JointConstraint_<ContainerAllocator> &) { return value(); } 00186 }; 00187 00188 } // namespace message_traits 00189 } // namespace ros 00190 00191 namespace ros 00192 { 00193 namespace serialization 00194 { 00195 00196 template<class ContainerAllocator> struct Serializer< ::arm_navigation_msgs::JointConstraint_<ContainerAllocator> > 00197 { 00198 template<typename Stream, typename T> inline static void allInOne(Stream& stream, T m) 00199 { 00200 stream.next(m.joint_name); 00201 stream.next(m.position); 00202 stream.next(m.tolerance_above); 00203 stream.next(m.tolerance_below); 00204 stream.next(m.weight); 00205 } 00206 00207 ROS_DECLARE_ALLINONE_SERIALIZER; 00208 }; // struct JointConstraint_ 00209 } // namespace serialization 00210 } // namespace ros 00211 00212 namespace ros 00213 { 00214 namespace message_operations 00215 { 00216 00217 template<class ContainerAllocator> 00218 struct Printer< ::arm_navigation_msgs::JointConstraint_<ContainerAllocator> > 00219 { 00220 template<typename Stream> static void stream(Stream& s, const std::string& indent, const ::arm_navigation_msgs::JointConstraint_<ContainerAllocator> & v) 00221 { 00222 s << indent << "joint_name: "; 00223 Printer<std::basic_string<char, std::char_traits<char>, typename ContainerAllocator::template rebind<char>::other > >::stream(s, indent + " ", v.joint_name); 00224 s << indent << "position: "; 00225 Printer<double>::stream(s, indent + " ", v.position); 00226 s << indent << "tolerance_above: "; 00227 Printer<double>::stream(s, indent + " ", v.tolerance_above); 00228 s << indent << "tolerance_below: "; 00229 Printer<double>::stream(s, indent + " ", v.tolerance_below); 00230 s << indent << "weight: "; 00231 Printer<double>::stream(s, indent + " ", v.weight); 00232 } 00233 }; 00234 00235 00236 } // namespace message_operations 00237 } // namespace ros 00238 00239 #endif // ARM_NAVIGATION_MSGS_MESSAGE_JOINTCONSTRAINT_H 00240