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