JointStatistics.h
Go to the documentation of this file.
00001 /* Auto-generated by genmsg_cpp for file /home/rosbuild/hudson/workspace/doc-groovy-pr2_mechanism/doc_stacks/2012-11-19_16-35-59.263340/pr2_mechanism/pr2_mechanism_msgs/msg/JointStatistics.msg */
00002 #ifndef PR2_MECHANISM_MSGS_MESSAGE_JOINTSTATISTICS_H
00003 #define PR2_MECHANISM_MSGS_MESSAGE_JOINTSTATISTICS_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 pr2_mechanism_msgs
00019 {
00020 template <class ContainerAllocator>
00021 struct JointStatistics_ {
00022   typedef JointStatistics_<ContainerAllocator> Type;
00023 
00024   JointStatistics_()
00025   : name()
00026   , timestamp()
00027   , position(0.0)
00028   , velocity(0.0)
00029   , measured_effort(0.0)
00030   , commanded_effort(0.0)
00031   , is_calibrated(false)
00032   , violated_limits(false)
00033   , odometer(0.0)
00034   , min_position(0.0)
00035   , max_position(0.0)
00036   , max_abs_velocity(0.0)
00037   , max_abs_effort(0.0)
00038   {
00039   }
00040 
00041   JointStatistics_(const ContainerAllocator& _alloc)
00042   : name(_alloc)
00043   , timestamp()
00044   , position(0.0)
00045   , velocity(0.0)
00046   , measured_effort(0.0)
00047   , commanded_effort(0.0)
00048   , is_calibrated(false)
00049   , violated_limits(false)
00050   , odometer(0.0)
00051   , min_position(0.0)
00052   , max_position(0.0)
00053   , max_abs_velocity(0.0)
00054   , max_abs_effort(0.0)
00055   {
00056   }
00057 
00058   typedef std::basic_string<char, std::char_traits<char>, typename ContainerAllocator::template rebind<char>::other >  _name_type;
00059   std::basic_string<char, std::char_traits<char>, typename ContainerAllocator::template rebind<char>::other >  name;
00060 
00061   typedef ros::Time _timestamp_type;
00062   ros::Time timestamp;
00063 
00064   typedef double _position_type;
00065   double position;
00066 
00067   typedef double _velocity_type;
00068   double velocity;
00069 
00070   typedef double _measured_effort_type;
00071   double measured_effort;
00072 
00073   typedef double _commanded_effort_type;
00074   double commanded_effort;
00075 
00076   typedef uint8_t _is_calibrated_type;
00077   uint8_t is_calibrated;
00078 
00079   typedef uint8_t _violated_limits_type;
00080   uint8_t violated_limits;
00081 
00082   typedef double _odometer_type;
00083   double odometer;
00084 
00085   typedef double _min_position_type;
00086   double min_position;
00087 
00088   typedef double _max_position_type;
00089   double max_position;
00090 
00091   typedef double _max_abs_velocity_type;
00092   double max_abs_velocity;
00093 
00094   typedef double _max_abs_effort_type;
00095   double max_abs_effort;
00096 
00097 
00098   typedef boost::shared_ptr< ::pr2_mechanism_msgs::JointStatistics_<ContainerAllocator> > Ptr;
00099   typedef boost::shared_ptr< ::pr2_mechanism_msgs::JointStatistics_<ContainerAllocator>  const> ConstPtr;
00100   boost::shared_ptr<std::map<std::string, std::string> > __connection_header;
00101 }; // struct JointStatistics
00102 typedef  ::pr2_mechanism_msgs::JointStatistics_<std::allocator<void> > JointStatistics;
00103 
00104 typedef boost::shared_ptr< ::pr2_mechanism_msgs::JointStatistics> JointStatisticsPtr;
00105 typedef boost::shared_ptr< ::pr2_mechanism_msgs::JointStatistics const> JointStatisticsConstPtr;
00106 
00107 
00108 template<typename ContainerAllocator>
00109 std::ostream& operator<<(std::ostream& s, const  ::pr2_mechanism_msgs::JointStatistics_<ContainerAllocator> & v)
00110 {
00111   ros::message_operations::Printer< ::pr2_mechanism_msgs::JointStatistics_<ContainerAllocator> >::stream(s, "", v);
00112   return s;}
00113 
00114 } // namespace pr2_mechanism_msgs
00115 
00116 namespace ros
00117 {
00118 namespace message_traits
00119 {
00120 template<class ContainerAllocator> struct IsMessage< ::pr2_mechanism_msgs::JointStatistics_<ContainerAllocator> > : public TrueType {};
00121 template<class ContainerAllocator> struct IsMessage< ::pr2_mechanism_msgs::JointStatistics_<ContainerAllocator>  const> : public TrueType {};
00122 template<class ContainerAllocator>
00123 struct MD5Sum< ::pr2_mechanism_msgs::JointStatistics_<ContainerAllocator> > {
00124   static const char* value() 
00125   {
00126     return "90fdc8acbce5bc783d8b4aec49af6590";
00127   }
00128 
00129   static const char* value(const  ::pr2_mechanism_msgs::JointStatistics_<ContainerAllocator> &) { return value(); } 
00130   static const uint64_t static_value1 = 0x90fdc8acbce5bc78ULL;
00131   static const uint64_t static_value2 = 0x3d8b4aec49af6590ULL;
00132 };
00133 
00134 template<class ContainerAllocator>
00135 struct DataType< ::pr2_mechanism_msgs::JointStatistics_<ContainerAllocator> > {
00136   static const char* value() 
00137   {
00138     return "pr2_mechanism_msgs/JointStatistics";
00139   }
00140 
00141   static const char* value(const  ::pr2_mechanism_msgs::JointStatistics_<ContainerAllocator> &) { return value(); } 
00142 };
00143 
00144 template<class ContainerAllocator>
00145 struct Definition< ::pr2_mechanism_msgs::JointStatistics_<ContainerAllocator> > {
00146   static const char* value() 
00147   {
00148     return "# This message contains the state of one joint of the pr2 robot.\n\
00149 # This message is specificly designed for the pr2 robot. \n\
00150 # A generic joint state message can be found in sensor_msgs::JointState\n\
00151 \n\
00152 # the name of the joint\n\
00153 string name\n\
00154 \n\
00155 # the time at which these joint statistics were measured\n\
00156 time timestamp\n\
00157 \n\
00158 # the position of the joint in radians\n\
00159 float64 position\n\
00160 \n\
00161 # the velocity of the joint in radians per second\n\
00162 float64 velocity\n\
00163 \n\
00164 # the measured joint effort \n\
00165 float64 measured_effort\n\
00166 \n\
00167 # the effort that was commanded to the joint.\n\
00168 # the actual applied effort might be different\n\
00169 # because the safety code can limit the effort\n\
00170 # a joint can apply\n\
00171 float64 commanded_effort\n\
00172 \n\
00173 # a flag indicating if the joint is calibrated or not\n\
00174 bool is_calibrated\n\
00175 \n\
00176 # a flag inidcating if the joint violated one of its position/velocity/effort limits\n\
00177 # in the last publish cycle\n\
00178 bool violated_limits\n\
00179 \n\
00180 # the total distance travelled by the joint, measured in radians.\n\
00181 float64 odometer\n\
00182 \n\
00183 # the lowest position reached by the joint in the last publish cycle\n\
00184 float64 min_position\n\
00185 \n\
00186 # the highest position reached by the joint in the last publish cycle\n\
00187 float64 max_position\n\
00188 \n\
00189 # the maximum absolute velocity reached by the joint in the last publish cycle\n\
00190 float64 max_abs_velocity\n\
00191 \n\
00192 # the maximum absolute effort applied by the joint in the last publish cycle\n\
00193 float64 max_abs_effort\n\
00194 \n\
00195 ";
00196   }
00197 
00198   static const char* value(const  ::pr2_mechanism_msgs::JointStatistics_<ContainerAllocator> &) { return value(); } 
00199 };
00200 
00201 } // namespace message_traits
00202 } // namespace ros
00203 
00204 namespace ros
00205 {
00206 namespace serialization
00207 {
00208 
00209 template<class ContainerAllocator> struct Serializer< ::pr2_mechanism_msgs::JointStatistics_<ContainerAllocator> >
00210 {
00211   template<typename Stream, typename T> inline static void allInOne(Stream& stream, T m)
00212   {
00213     stream.next(m.name);
00214     stream.next(m.timestamp);
00215     stream.next(m.position);
00216     stream.next(m.velocity);
00217     stream.next(m.measured_effort);
00218     stream.next(m.commanded_effort);
00219     stream.next(m.is_calibrated);
00220     stream.next(m.violated_limits);
00221     stream.next(m.odometer);
00222     stream.next(m.min_position);
00223     stream.next(m.max_position);
00224     stream.next(m.max_abs_velocity);
00225     stream.next(m.max_abs_effort);
00226   }
00227 
00228   ROS_DECLARE_ALLINONE_SERIALIZER;
00229 }; // struct JointStatistics_
00230 } // namespace serialization
00231 } // namespace ros
00232 
00233 namespace ros
00234 {
00235 namespace message_operations
00236 {
00237 
00238 template<class ContainerAllocator>
00239 struct Printer< ::pr2_mechanism_msgs::JointStatistics_<ContainerAllocator> >
00240 {
00241   template<typename Stream> static void stream(Stream& s, const std::string& indent, const  ::pr2_mechanism_msgs::JointStatistics_<ContainerAllocator> & v) 
00242   {
00243     s << indent << "name: ";
00244     Printer<std::basic_string<char, std::char_traits<char>, typename ContainerAllocator::template rebind<char>::other > >::stream(s, indent + "  ", v.name);
00245     s << indent << "timestamp: ";
00246     Printer<ros::Time>::stream(s, indent + "  ", v.timestamp);
00247     s << indent << "position: ";
00248     Printer<double>::stream(s, indent + "  ", v.position);
00249     s << indent << "velocity: ";
00250     Printer<double>::stream(s, indent + "  ", v.velocity);
00251     s << indent << "measured_effort: ";
00252     Printer<double>::stream(s, indent + "  ", v.measured_effort);
00253     s << indent << "commanded_effort: ";
00254     Printer<double>::stream(s, indent + "  ", v.commanded_effort);
00255     s << indent << "is_calibrated: ";
00256     Printer<uint8_t>::stream(s, indent + "  ", v.is_calibrated);
00257     s << indent << "violated_limits: ";
00258     Printer<uint8_t>::stream(s, indent + "  ", v.violated_limits);
00259     s << indent << "odometer: ";
00260     Printer<double>::stream(s, indent + "  ", v.odometer);
00261     s << indent << "min_position: ";
00262     Printer<double>::stream(s, indent + "  ", v.min_position);
00263     s << indent << "max_position: ";
00264     Printer<double>::stream(s, indent + "  ", v.max_position);
00265     s << indent << "max_abs_velocity: ";
00266     Printer<double>::stream(s, indent + "  ", v.max_abs_velocity);
00267     s << indent << "max_abs_effort: ";
00268     Printer<double>::stream(s, indent + "  ", v.max_abs_effort);
00269   }
00270 };
00271 
00272 
00273 } // namespace message_operations
00274 } // namespace ros
00275 
00276 #endif // PR2_MECHANISM_MSGS_MESSAGE_JOINTSTATISTICS_H
00277 
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends


pr2_mechanism_msgs
Author(s): Stuart Glaser sglaser@willowgarage.com, Wim Meeussen
autogenerated on Mon Nov 19 2012 16:39:56