00001 
00002 #ifndef CLEARPATH_SENSORS_MESSAGE_AXIS_H
00003 #define CLEARPATH_SENSORS_MESSAGE_AXIS_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 clearpath_sensors
00019 {
00020 template <class ContainerAllocator>
00021 struct Axis_ {
00022   typedef Axis_<ContainerAllocator> Type;
00023 
00024   Axis_()
00025   : pan(0.0)
00026   , tilt(0.0)
00027   , zoom(0.0)
00028   , focus(0.0)
00029   , brightness(0.0)
00030   , iris(0.0)
00031   , autofocus(false)
00032   {
00033   }
00034 
00035   Axis_(const ContainerAllocator& _alloc)
00036   : pan(0.0)
00037   , tilt(0.0)
00038   , zoom(0.0)
00039   , focus(0.0)
00040   , brightness(0.0)
00041   , iris(0.0)
00042   , autofocus(false)
00043   {
00044   }
00045 
00046   typedef float _pan_type;
00047   float pan;
00048 
00049   typedef float _tilt_type;
00050   float tilt;
00051 
00052   typedef float _zoom_type;
00053   float zoom;
00054 
00055   typedef float _focus_type;
00056   float focus;
00057 
00058   typedef float _brightness_type;
00059   float brightness;
00060 
00061   typedef float _iris_type;
00062   float iris;
00063 
00064   typedef uint8_t _autofocus_type;
00065   uint8_t autofocus;
00066 
00067 
00068 private:
00069   static const char* __s_getDataType_() { return "clearpath_sensors/Axis"; }
00070 public:
00071   ROS_DEPRECATED static const std::string __s_getDataType() { return __s_getDataType_(); }
00072 
00073   ROS_DEPRECATED const std::string __getDataType() const { return __s_getDataType_(); }
00074 
00075 private:
00076   static const char* __s_getMD5Sum_() { return "7559be9cb80074f71cea3a03f4b3abe0"; }
00077 public:
00078   ROS_DEPRECATED static const std::string __s_getMD5Sum() { return __s_getMD5Sum_(); }
00079 
00080   ROS_DEPRECATED const std::string __getMD5Sum() const { return __s_getMD5Sum_(); }
00081 
00082 private:
00083   static const char* __s_getMessageDefinition_() { return "float32 pan\n\
00084 float32 tilt\n\
00085 float32 zoom\n\
00086 float32 focus\n\
00087 float32 brightness\n\
00088 float32 iris\n\
00089 bool autofocus\n\
00090 \n\
00091 "; }
00092 public:
00093   ROS_DEPRECATED static const std::string __s_getMessageDefinition() { return __s_getMessageDefinition_(); }
00094 
00095   ROS_DEPRECATED const std::string __getMessageDefinition() const { return __s_getMessageDefinition_(); }
00096 
00097   ROS_DEPRECATED virtual uint8_t *serialize(uint8_t *write_ptr, uint32_t seq) const
00098   {
00099     ros::serialization::OStream stream(write_ptr, 1000000000);
00100     ros::serialization::serialize(stream, pan);
00101     ros::serialization::serialize(stream, tilt);
00102     ros::serialization::serialize(stream, zoom);
00103     ros::serialization::serialize(stream, focus);
00104     ros::serialization::serialize(stream, brightness);
00105     ros::serialization::serialize(stream, iris);
00106     ros::serialization::serialize(stream, autofocus);
00107     return stream.getData();
00108   }
00109 
00110   ROS_DEPRECATED virtual uint8_t *deserialize(uint8_t *read_ptr)
00111   {
00112     ros::serialization::IStream stream(read_ptr, 1000000000);
00113     ros::serialization::deserialize(stream, pan);
00114     ros::serialization::deserialize(stream, tilt);
00115     ros::serialization::deserialize(stream, zoom);
00116     ros::serialization::deserialize(stream, focus);
00117     ros::serialization::deserialize(stream, brightness);
00118     ros::serialization::deserialize(stream, iris);
00119     ros::serialization::deserialize(stream, autofocus);
00120     return stream.getData();
00121   }
00122 
00123   ROS_DEPRECATED virtual uint32_t serializationLength() const
00124   {
00125     uint32_t size = 0;
00126     size += ros::serialization::serializationLength(pan);
00127     size += ros::serialization::serializationLength(tilt);
00128     size += ros::serialization::serializationLength(zoom);
00129     size += ros::serialization::serializationLength(focus);
00130     size += ros::serialization::serializationLength(brightness);
00131     size += ros::serialization::serializationLength(iris);
00132     size += ros::serialization::serializationLength(autofocus);
00133     return size;
00134   }
00135 
00136   typedef boost::shared_ptr< ::clearpath_sensors::Axis_<ContainerAllocator> > Ptr;
00137   typedef boost::shared_ptr< ::clearpath_sensors::Axis_<ContainerAllocator>  const> ConstPtr;
00138   boost::shared_ptr<std::map<std::string, std::string> > __connection_header;
00139 }; 
00140 typedef  ::clearpath_sensors::Axis_<std::allocator<void> > Axis;
00141 
00142 typedef boost::shared_ptr< ::clearpath_sensors::Axis> AxisPtr;
00143 typedef boost::shared_ptr< ::clearpath_sensors::Axis const> AxisConstPtr;
00144 
00145 
00146 template<typename ContainerAllocator>
00147 std::ostream& operator<<(std::ostream& s, const  ::clearpath_sensors::Axis_<ContainerAllocator> & v)
00148 {
00149   ros::message_operations::Printer< ::clearpath_sensors::Axis_<ContainerAllocator> >::stream(s, "", v);
00150   return s;}
00151 
00152 } 
00153 
00154 namespace ros
00155 {
00156 namespace message_traits
00157 {
00158 template<class ContainerAllocator> struct IsMessage< ::clearpath_sensors::Axis_<ContainerAllocator> > : public TrueType {};
00159 template<class ContainerAllocator> struct IsMessage< ::clearpath_sensors::Axis_<ContainerAllocator>  const> : public TrueType {};
00160 template<class ContainerAllocator>
00161 struct MD5Sum< ::clearpath_sensors::Axis_<ContainerAllocator> > {
00162   static const char* value() 
00163   {
00164     return "7559be9cb80074f71cea3a03f4b3abe0";
00165   }
00166 
00167   static const char* value(const  ::clearpath_sensors::Axis_<ContainerAllocator> &) { return value(); } 
00168   static const uint64_t static_value1 = 0x7559be9cb80074f7ULL;
00169   static const uint64_t static_value2 = 0x1cea3a03f4b3abe0ULL;
00170 };
00171 
00172 template<class ContainerAllocator>
00173 struct DataType< ::clearpath_sensors::Axis_<ContainerAllocator> > {
00174   static const char* value() 
00175   {
00176     return "clearpath_sensors/Axis";
00177   }
00178 
00179   static const char* value(const  ::clearpath_sensors::Axis_<ContainerAllocator> &) { return value(); } 
00180 };
00181 
00182 template<class ContainerAllocator>
00183 struct Definition< ::clearpath_sensors::Axis_<ContainerAllocator> > {
00184   static const char* value() 
00185   {
00186     return "float32 pan\n\
00187 float32 tilt\n\
00188 float32 zoom\n\
00189 float32 focus\n\
00190 float32 brightness\n\
00191 float32 iris\n\
00192 bool autofocus\n\
00193 \n\
00194 ";
00195   }
00196 
00197   static const char* value(const  ::clearpath_sensors::Axis_<ContainerAllocator> &) { return value(); } 
00198 };
00199 
00200 template<class ContainerAllocator> struct IsFixedSize< ::clearpath_sensors::Axis_<ContainerAllocator> > : public TrueType {};
00201 } 
00202 } 
00203 
00204 namespace ros
00205 {
00206 namespace serialization
00207 {
00208 
00209 template<class ContainerAllocator> struct Serializer< ::clearpath_sensors::Axis_<ContainerAllocator> >
00210 {
00211   template<typename Stream, typename T> inline static void allInOne(Stream& stream, T m)
00212   {
00213     stream.next(m.pan);
00214     stream.next(m.tilt);
00215     stream.next(m.zoom);
00216     stream.next(m.focus);
00217     stream.next(m.brightness);
00218     stream.next(m.iris);
00219     stream.next(m.autofocus);
00220   }
00221 
00222   ROS_DECLARE_ALLINONE_SERIALIZER;
00223 }; 
00224 } 
00225 } 
00226 
00227 namespace ros
00228 {
00229 namespace message_operations
00230 {
00231 
00232 template<class ContainerAllocator>
00233 struct Printer< ::clearpath_sensors::Axis_<ContainerAllocator> >
00234 {
00235   template<typename Stream> static void stream(Stream& s, const std::string& indent, const  ::clearpath_sensors::Axis_<ContainerAllocator> & v) 
00236   {
00237     s << indent << "pan: ";
00238     Printer<float>::stream(s, indent + "  ", v.pan);
00239     s << indent << "tilt: ";
00240     Printer<float>::stream(s, indent + "  ", v.tilt);
00241     s << indent << "zoom: ";
00242     Printer<float>::stream(s, indent + "  ", v.zoom);
00243     s << indent << "focus: ";
00244     Printer<float>::stream(s, indent + "  ", v.focus);
00245     s << indent << "brightness: ";
00246     Printer<float>::stream(s, indent + "  ", v.brightness);
00247     s << indent << "iris: ";
00248     Printer<float>::stream(s, indent + "  ", v.iris);
00249     s << indent << "autofocus: ";
00250     Printer<uint8_t>::stream(s, indent + "  ", v.autofocus);
00251   }
00252 };
00253 
00254 
00255 } 
00256 } 
00257 
00258 #endif // CLEARPATH_SENSORS_MESSAGE_AXIS_H
00259