00001
00002 #ifndef LASER_CB_DETECTOR_MESSAGE_CONFIGGOAL_H
00003 #define LASER_CB_DETECTOR_MESSAGE_CONFIGGOAL_H
00004 #include <string>
00005 #include <vector>
00006 #include <ostream>
00007 #include "ros/serialization.h"
00008 #include "ros/builtin_message_traits.h"
00009 #include "ros/message_operations.h"
00010 #include "ros/message.h"
00011 #include "ros/time.h"
00012
00013
00014 namespace laser_cb_detector
00015 {
00016 template <class ContainerAllocator>
00017 struct ConfigGoal_ : public ros::Message
00018 {
00019 typedef ConfigGoal_<ContainerAllocator> Type;
00020
00021 ConfigGoal_()
00022 : num_x(0)
00023 , num_y(0)
00024 , spacing_x(0.0)
00025 , spacing_y(0.0)
00026 , width_scaling(0.0)
00027 , height_scaling(0.0)
00028 , min_intensity(0.0)
00029 , max_intensity(0.0)
00030 , subpixel_window(0)
00031 , subpixel_zero_zone(0)
00032 , flip_horizontal(0)
00033 {
00034 }
00035
00036 ConfigGoal_(const ContainerAllocator& _alloc)
00037 : num_x(0)
00038 , num_y(0)
00039 , spacing_x(0.0)
00040 , spacing_y(0.0)
00041 , width_scaling(0.0)
00042 , height_scaling(0.0)
00043 , min_intensity(0.0)
00044 , max_intensity(0.0)
00045 , subpixel_window(0)
00046 , subpixel_zero_zone(0)
00047 , flip_horizontal(0)
00048 {
00049 }
00050
00051 typedef uint32_t _num_x_type;
00052 uint32_t num_x;
00053
00054 typedef uint32_t _num_y_type;
00055 uint32_t num_y;
00056
00057 typedef float _spacing_x_type;
00058 float spacing_x;
00059
00060 typedef float _spacing_y_type;
00061 float spacing_y;
00062
00063 typedef float _width_scaling_type;
00064 float width_scaling;
00065
00066 typedef float _height_scaling_type;
00067 float height_scaling;
00068
00069 typedef float _min_intensity_type;
00070 float min_intensity;
00071
00072 typedef float _max_intensity_type;
00073 float max_intensity;
00074
00075 typedef uint32_t _subpixel_window_type;
00076 uint32_t subpixel_window;
00077
00078 typedef int32_t _subpixel_zero_zone_type;
00079 int32_t subpixel_zero_zone;
00080
00081 typedef uint8_t _flip_horizontal_type;
00082 uint8_t flip_horizontal;
00083
00084
00085 private:
00086 static const char* __s_getDataType_() { return "laser_cb_detector/ConfigGoal"; }
00087 public:
00088 ROS_DEPRECATED static const std::string __s_getDataType() { return __s_getDataType_(); }
00089
00090 ROS_DEPRECATED const std::string __getDataType() const { return __s_getDataType_(); }
00091
00092 private:
00093 static const char* __s_getMD5Sum_() { return "d592564bc71ebb8458e3d0d3a079d731"; }
00094 public:
00095 ROS_DEPRECATED static const std::string __s_getMD5Sum() { return __s_getMD5Sum_(); }
00096
00097 ROS_DEPRECATED const std::string __getMD5Sum() const { return __s_getMD5Sum_(); }
00098
00099 private:
00100 static const char* __s_getMessageDefinition_() { return "uint32 num_x # Number of checkerboard corners in the X direction\n\
00101 uint32 num_y # Number of corners in the Y direction\n\
00102 float32 spacing_x # Spacing between corners in the X direction (meters)\n\
00103 float32 spacing_y # Spacing between corners in the Y direction (meters)\n\
00104 \n\
00105 # Specify how many times we want to upsample the image.\n\
00106 # This is often useful for detecting small checkerboards far away\n\
00107 float32 width_scaling\n\
00108 float32 height_scaling\n\
00109 \n\
00110 # Specifiy how intensity maps into a uint8. A specified window of\n\
00111 # intensities is linearly scaled to 0-255\n\
00112 float32 min_intensity\n\
00113 float32 max_intensity\n\
00114 \n\
00115 # Configure openCV's subpixel corner detector\n\
00116 uint32 subpixel_window\n\
00117 int32 subpixel_zero_zone\n\
00118 \n\
00119 # Specify if we need to flip snapshot image model. This is usually necessary\n\
00120 # when the laser scans from right to left, since this is the opposite of images,\n\
00121 # which are normally indexed left to right\n\
00122 uint8 flip_horizontal\n\
00123 \n\
00124 \n\
00125 "; }
00126 public:
00127 ROS_DEPRECATED static const std::string __s_getMessageDefinition() { return __s_getMessageDefinition_(); }
00128
00129 ROS_DEPRECATED const std::string __getMessageDefinition() const { return __s_getMessageDefinition_(); }
00130
00131 ROS_DEPRECATED virtual uint8_t *serialize(uint8_t *write_ptr, uint32_t seq) const
00132 {
00133 ros::serialization::OStream stream(write_ptr, 1000000000);
00134 ros::serialization::serialize(stream, num_x);
00135 ros::serialization::serialize(stream, num_y);
00136 ros::serialization::serialize(stream, spacing_x);
00137 ros::serialization::serialize(stream, spacing_y);
00138 ros::serialization::serialize(stream, width_scaling);
00139 ros::serialization::serialize(stream, height_scaling);
00140 ros::serialization::serialize(stream, min_intensity);
00141 ros::serialization::serialize(stream, max_intensity);
00142 ros::serialization::serialize(stream, subpixel_window);
00143 ros::serialization::serialize(stream, subpixel_zero_zone);
00144 ros::serialization::serialize(stream, flip_horizontal);
00145 return stream.getData();
00146 }
00147
00148 ROS_DEPRECATED virtual uint8_t *deserialize(uint8_t *read_ptr)
00149 {
00150 ros::serialization::IStream stream(read_ptr, 1000000000);
00151 ros::serialization::deserialize(stream, num_x);
00152 ros::serialization::deserialize(stream, num_y);
00153 ros::serialization::deserialize(stream, spacing_x);
00154 ros::serialization::deserialize(stream, spacing_y);
00155 ros::serialization::deserialize(stream, width_scaling);
00156 ros::serialization::deserialize(stream, height_scaling);
00157 ros::serialization::deserialize(stream, min_intensity);
00158 ros::serialization::deserialize(stream, max_intensity);
00159 ros::serialization::deserialize(stream, subpixel_window);
00160 ros::serialization::deserialize(stream, subpixel_zero_zone);
00161 ros::serialization::deserialize(stream, flip_horizontal);
00162 return stream.getData();
00163 }
00164
00165 ROS_DEPRECATED virtual uint32_t serializationLength() const
00166 {
00167 uint32_t size = 0;
00168 size += ros::serialization::serializationLength(num_x);
00169 size += ros::serialization::serializationLength(num_y);
00170 size += ros::serialization::serializationLength(spacing_x);
00171 size += ros::serialization::serializationLength(spacing_y);
00172 size += ros::serialization::serializationLength(width_scaling);
00173 size += ros::serialization::serializationLength(height_scaling);
00174 size += ros::serialization::serializationLength(min_intensity);
00175 size += ros::serialization::serializationLength(max_intensity);
00176 size += ros::serialization::serializationLength(subpixel_window);
00177 size += ros::serialization::serializationLength(subpixel_zero_zone);
00178 size += ros::serialization::serializationLength(flip_horizontal);
00179 return size;
00180 }
00181
00182 typedef boost::shared_ptr< ::laser_cb_detector::ConfigGoal_<ContainerAllocator> > Ptr;
00183 typedef boost::shared_ptr< ::laser_cb_detector::ConfigGoal_<ContainerAllocator> const> ConstPtr;
00184 };
00185 typedef ::laser_cb_detector::ConfigGoal_<std::allocator<void> > ConfigGoal;
00186
00187 typedef boost::shared_ptr< ::laser_cb_detector::ConfigGoal> ConfigGoalPtr;
00188 typedef boost::shared_ptr< ::laser_cb_detector::ConfigGoal const> ConfigGoalConstPtr;
00189
00190
00191 template<typename ContainerAllocator>
00192 std::ostream& operator<<(std::ostream& s, const ::laser_cb_detector::ConfigGoal_<ContainerAllocator> & v)
00193 {
00194 ros::message_operations::Printer< ::laser_cb_detector::ConfigGoal_<ContainerAllocator> >::stream(s, "", v);
00195 return s;}
00196
00197 }
00198
00199 namespace ros
00200 {
00201 namespace message_traits
00202 {
00203 template<class ContainerAllocator>
00204 struct MD5Sum< ::laser_cb_detector::ConfigGoal_<ContainerAllocator> > {
00205 static const char* value()
00206 {
00207 return "d592564bc71ebb8458e3d0d3a079d731";
00208 }
00209
00210 static const char* value(const ::laser_cb_detector::ConfigGoal_<ContainerAllocator> &) { return value(); }
00211 static const uint64_t static_value1 = 0xd592564bc71ebb84ULL;
00212 static const uint64_t static_value2 = 0x58e3d0d3a079d731ULL;
00213 };
00214
00215 template<class ContainerAllocator>
00216 struct DataType< ::laser_cb_detector::ConfigGoal_<ContainerAllocator> > {
00217 static const char* value()
00218 {
00219 return "laser_cb_detector/ConfigGoal";
00220 }
00221
00222 static const char* value(const ::laser_cb_detector::ConfigGoal_<ContainerAllocator> &) { return value(); }
00223 };
00224
00225 template<class ContainerAllocator>
00226 struct Definition< ::laser_cb_detector::ConfigGoal_<ContainerAllocator> > {
00227 static const char* value()
00228 {
00229 return "uint32 num_x # Number of checkerboard corners in the X direction\n\
00230 uint32 num_y # Number of corners in the Y direction\n\
00231 float32 spacing_x # Spacing between corners in the X direction (meters)\n\
00232 float32 spacing_y # Spacing between corners in the Y direction (meters)\n\
00233 \n\
00234 # Specify how many times we want to upsample the image.\n\
00235 # This is often useful for detecting small checkerboards far away\n\
00236 float32 width_scaling\n\
00237 float32 height_scaling\n\
00238 \n\
00239 # Specifiy how intensity maps into a uint8. A specified window of\n\
00240 # intensities is linearly scaled to 0-255\n\
00241 float32 min_intensity\n\
00242 float32 max_intensity\n\
00243 \n\
00244 # Configure openCV's subpixel corner detector\n\
00245 uint32 subpixel_window\n\
00246 int32 subpixel_zero_zone\n\
00247 \n\
00248 # Specify if we need to flip snapshot image model. This is usually necessary\n\
00249 # when the laser scans from right to left, since this is the opposite of images,\n\
00250 # which are normally indexed left to right\n\
00251 uint8 flip_horizontal\n\
00252 \n\
00253 \n\
00254 ";
00255 }
00256
00257 static const char* value(const ::laser_cb_detector::ConfigGoal_<ContainerAllocator> &) { return value(); }
00258 };
00259
00260 template<class ContainerAllocator> struct IsFixedSize< ::laser_cb_detector::ConfigGoal_<ContainerAllocator> > : public TrueType {};
00261 }
00262 }
00263
00264 namespace ros
00265 {
00266 namespace serialization
00267 {
00268
00269 template<class ContainerAllocator> struct Serializer< ::laser_cb_detector::ConfigGoal_<ContainerAllocator> >
00270 {
00271 template<typename Stream, typename T> inline static void allInOne(Stream& stream, T m)
00272 {
00273 stream.next(m.num_x);
00274 stream.next(m.num_y);
00275 stream.next(m.spacing_x);
00276 stream.next(m.spacing_y);
00277 stream.next(m.width_scaling);
00278 stream.next(m.height_scaling);
00279 stream.next(m.min_intensity);
00280 stream.next(m.max_intensity);
00281 stream.next(m.subpixel_window);
00282 stream.next(m.subpixel_zero_zone);
00283 stream.next(m.flip_horizontal);
00284 }
00285
00286 ROS_DECLARE_ALLINONE_SERIALIZER;
00287 };
00288 }
00289 }
00290
00291 namespace ros
00292 {
00293 namespace message_operations
00294 {
00295
00296 template<class ContainerAllocator>
00297 struct Printer< ::laser_cb_detector::ConfigGoal_<ContainerAllocator> >
00298 {
00299 template<typename Stream> static void stream(Stream& s, const std::string& indent, const ::laser_cb_detector::ConfigGoal_<ContainerAllocator> & v)
00300 {
00301 s << indent << "num_x: ";
00302 Printer<uint32_t>::stream(s, indent + " ", v.num_x);
00303 s << indent << "num_y: ";
00304 Printer<uint32_t>::stream(s, indent + " ", v.num_y);
00305 s << indent << "spacing_x: ";
00306 Printer<float>::stream(s, indent + " ", v.spacing_x);
00307 s << indent << "spacing_y: ";
00308 Printer<float>::stream(s, indent + " ", v.spacing_y);
00309 s << indent << "width_scaling: ";
00310 Printer<float>::stream(s, indent + " ", v.width_scaling);
00311 s << indent << "height_scaling: ";
00312 Printer<float>::stream(s, indent + " ", v.height_scaling);
00313 s << indent << "min_intensity: ";
00314 Printer<float>::stream(s, indent + " ", v.min_intensity);
00315 s << indent << "max_intensity: ";
00316 Printer<float>::stream(s, indent + " ", v.max_intensity);
00317 s << indent << "subpixel_window: ";
00318 Printer<uint32_t>::stream(s, indent + " ", v.subpixel_window);
00319 s << indent << "subpixel_zero_zone: ";
00320 Printer<int32_t>::stream(s, indent + " ", v.subpixel_zero_zone);
00321 s << indent << "flip_horizontal: ";
00322 Printer<uint8_t>::stream(s, indent + " ", v.flip_horizontal);
00323 }
00324 };
00325
00326
00327 }
00328 }
00329
00330 #endif // LASER_CB_DETECTOR_MESSAGE_CONFIGGOAL_H
00331