Sense.h
Go to the documentation of this file.
00001 /* Auto-generated by genmsg_cpp for file /home/rosbuild/hudson/workspace/doc-fuerte-kingfisher/doc_stacks/2013-12-28_17-06-21.531708/kingfisher/kingfisher_msgs/msg/Sense.msg */
00002 #ifndef KINGFISHER_MSGS_MESSAGE_SENSE_H
00003 #define KINGFISHER_MSGS_MESSAGE_SENSE_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 kingfisher_msgs
00019 {
00020 template <class ContainerAllocator>
00021 struct Sense_ {
00022   typedef Sense_<ContainerAllocator> Type;
00023 
00024   Sense_()
00025   : battery(0.0)
00026   , current_left(0.0)
00027   , current_right(0.0)
00028   , pcb_temperature(0.0)
00029   , fan_on(false)
00030   , rc(0)
00031   , rc_throttle(0)
00032   , rc_rotation(0)
00033   , rc_enable(0)
00034   {
00035   }
00036 
00037   Sense_(const ContainerAllocator& _alloc)
00038   : battery(0.0)
00039   , current_left(0.0)
00040   , current_right(0.0)
00041   , pcb_temperature(0.0)
00042   , fan_on(false)
00043   , rc(0)
00044   , rc_throttle(0)
00045   , rc_rotation(0)
00046   , rc_enable(0)
00047   {
00048   }
00049 
00050   typedef float _battery_type;
00051   float battery;
00052 
00053   typedef float _current_left_type;
00054   float current_left;
00055 
00056   typedef float _current_right_type;
00057   float current_right;
00058 
00059   typedef float _pcb_temperature_type;
00060   float pcb_temperature;
00061 
00062   typedef uint8_t _fan_on_type;
00063   uint8_t fan_on;
00064 
00065   typedef uint8_t _rc_type;
00066   uint8_t rc;
00067 
00068   typedef uint16_t _rc_throttle_type;
00069   uint16_t rc_throttle;
00070 
00071   typedef uint16_t _rc_rotation_type;
00072   uint16_t rc_rotation;
00073 
00074   typedef uint16_t _rc_enable_type;
00075   uint16_t rc_enable;
00076 
00077   enum { RC_INRANGE = 1 };
00078   enum { RC_INUSE = 2 };
00079 
00080   typedef boost::shared_ptr< ::kingfisher_msgs::Sense_<ContainerAllocator> > Ptr;
00081   typedef boost::shared_ptr< ::kingfisher_msgs::Sense_<ContainerAllocator>  const> ConstPtr;
00082   boost::shared_ptr<std::map<std::string, std::string> > __connection_header;
00083 }; // struct Sense
00084 typedef  ::kingfisher_msgs::Sense_<std::allocator<void> > Sense;
00085 
00086 typedef boost::shared_ptr< ::kingfisher_msgs::Sense> SensePtr;
00087 typedef boost::shared_ptr< ::kingfisher_msgs::Sense const> SenseConstPtr;
00088 
00089 
00090 template<typename ContainerAllocator>
00091 std::ostream& operator<<(std::ostream& s, const  ::kingfisher_msgs::Sense_<ContainerAllocator> & v)
00092 {
00093   ros::message_operations::Printer< ::kingfisher_msgs::Sense_<ContainerAllocator> >::stream(s, "", v);
00094   return s;}
00095 
00096 } // namespace kingfisher_msgs
00097 
00098 namespace ros
00099 {
00100 namespace message_traits
00101 {
00102 template<class ContainerAllocator> struct IsMessage< ::kingfisher_msgs::Sense_<ContainerAllocator> > : public TrueType {};
00103 template<class ContainerAllocator> struct IsMessage< ::kingfisher_msgs::Sense_<ContainerAllocator>  const> : public TrueType {};
00104 template<class ContainerAllocator>
00105 struct MD5Sum< ::kingfisher_msgs::Sense_<ContainerAllocator> > {
00106   static const char* value() 
00107   {
00108     return "b0209acddc7f26d2e3dc1338d6c4df94";
00109   }
00110 
00111   static const char* value(const  ::kingfisher_msgs::Sense_<ContainerAllocator> &) { return value(); } 
00112   static const uint64_t static_value1 = 0xb0209acddc7f26d2ULL;
00113   static const uint64_t static_value2 = 0xe3dc1338d6c4df94ULL;
00114 };
00115 
00116 template<class ContainerAllocator>
00117 struct DataType< ::kingfisher_msgs::Sense_<ContainerAllocator> > {
00118   static const char* value() 
00119   {
00120     return "kingfisher_msgs/Sense";
00121   }
00122 
00123   static const char* value(const  ::kingfisher_msgs::Sense_<ContainerAllocator> &) { return value(); } 
00124 };
00125 
00126 template<class ContainerAllocator>
00127 struct Definition< ::kingfisher_msgs::Sense_<ContainerAllocator> > {
00128   static const char* value() 
00129   {
00130     return "# Voltage level of battery, in volts\n\
00131 float32 battery\n\
00132 \n\
00133 # Instantaneous current drawn by each motor, in amps.\n\
00134 float32 current_left\n\
00135 float32 current_right\n\
00136 \n\
00137 # Temperature of PCB as measured by internal AVR thermometer,\n\
00138 # reported in degrees centigrade.\n\
00139 float32 pcb_temperature\n\
00140 bool fan_on\n\
00141 \n\
00142 # Bitfield represents status of hobby R/C override.\n\
00143 uint8 RC_INRANGE=1\n\
00144 uint8 RC_INUSE=2\n\
00145 uint8 rc\n\
00146 \n\
00147 # Pulse lengths received from the three R/C channels.\n\
00148 uint16 rc_throttle\n\
00149 uint16 rc_rotation\n\
00150 uint16 rc_enable\n\
00151 \n\
00152 ";
00153   }
00154 
00155   static const char* value(const  ::kingfisher_msgs::Sense_<ContainerAllocator> &) { return value(); } 
00156 };
00157 
00158 template<class ContainerAllocator> struct IsFixedSize< ::kingfisher_msgs::Sense_<ContainerAllocator> > : public TrueType {};
00159 } // namespace message_traits
00160 } // namespace ros
00161 
00162 namespace ros
00163 {
00164 namespace serialization
00165 {
00166 
00167 template<class ContainerAllocator> struct Serializer< ::kingfisher_msgs::Sense_<ContainerAllocator> >
00168 {
00169   template<typename Stream, typename T> inline static void allInOne(Stream& stream, T m)
00170   {
00171     stream.next(m.battery);
00172     stream.next(m.current_left);
00173     stream.next(m.current_right);
00174     stream.next(m.pcb_temperature);
00175     stream.next(m.fan_on);
00176     stream.next(m.rc);
00177     stream.next(m.rc_throttle);
00178     stream.next(m.rc_rotation);
00179     stream.next(m.rc_enable);
00180   }
00181 
00182   ROS_DECLARE_ALLINONE_SERIALIZER;
00183 }; // struct Sense_
00184 } // namespace serialization
00185 } // namespace ros
00186 
00187 namespace ros
00188 {
00189 namespace message_operations
00190 {
00191 
00192 template<class ContainerAllocator>
00193 struct Printer< ::kingfisher_msgs::Sense_<ContainerAllocator> >
00194 {
00195   template<typename Stream> static void stream(Stream& s, const std::string& indent, const  ::kingfisher_msgs::Sense_<ContainerAllocator> & v) 
00196   {
00197     s << indent << "battery: ";
00198     Printer<float>::stream(s, indent + "  ", v.battery);
00199     s << indent << "current_left: ";
00200     Printer<float>::stream(s, indent + "  ", v.current_left);
00201     s << indent << "current_right: ";
00202     Printer<float>::stream(s, indent + "  ", v.current_right);
00203     s << indent << "pcb_temperature: ";
00204     Printer<float>::stream(s, indent + "  ", v.pcb_temperature);
00205     s << indent << "fan_on: ";
00206     Printer<uint8_t>::stream(s, indent + "  ", v.fan_on);
00207     s << indent << "rc: ";
00208     Printer<uint8_t>::stream(s, indent + "  ", v.rc);
00209     s << indent << "rc_throttle: ";
00210     Printer<uint16_t>::stream(s, indent + "  ", v.rc_throttle);
00211     s << indent << "rc_rotation: ";
00212     Printer<uint16_t>::stream(s, indent + "  ", v.rc_rotation);
00213     s << indent << "rc_enable: ";
00214     Printer<uint16_t>::stream(s, indent + "  ", v.rc_enable);
00215   }
00216 };
00217 
00218 
00219 } // namespace message_operations
00220 } // namespace ros
00221 
00222 #endif // KINGFISHER_MSGS_MESSAGE_SENSE_H
00223 


kingfisher_msgs
Author(s): Mike Purvis
autogenerated on Sat Dec 28 2013 17:08:01