LaserScan.h
Go to the documentation of this file.
1 // Generated by gencpp from file sensor_msgs/LaserScan.msg
2 // DO NOT EDIT!
3 
4 
5 #ifndef SENSOR_MSGS_MESSAGE_LASERSCAN_H
6 #define SENSOR_MSGS_MESSAGE_LASERSCAN_H
7 
8 
9 #include <string>
10 #include <vector>
11 #include <map>
12 
13 #include <ros/types.h>
14 #include <ros/serialization.h>
16 #include <ros/message_operations.h>
17 
18 #include <std_msgs/Header.h>
19 
20 namespace sensor_msgs
21 {
22 template <class ContainerAllocator>
23 struct LaserScan_
24 {
26 
28  : header()
29  , angle_min(0.0)
30  , angle_max(0.0)
31  , angle_increment(0.0)
32  , time_increment(0.0)
33  , scan_time(0.0)
34  , range_min(0.0)
35  , range_max(0.0)
36  , ranges()
37  , intensities() {
38  }
39  LaserScan_(const ContainerAllocator& _alloc)
40  : header(_alloc)
41  , angle_min(0.0)
42  , angle_max(0.0)
43  , angle_increment(0.0)
44  , time_increment(0.0)
45  , scan_time(0.0)
46  , range_min(0.0)
47  , range_max(0.0)
48  , ranges(_alloc)
49  , intensities(_alloc) {
50  (void)_alloc;
51  }
52 
53 
54 
55  typedef ::std_msgs::Header_<ContainerAllocator> _header_type;
56  _header_type header;
57 
58  typedef float _angle_min_type;
59  _angle_min_type angle_min;
60 
61  typedef float _angle_max_type;
62  _angle_max_type angle_max;
63 
64  typedef float _angle_increment_type;
65  _angle_increment_type angle_increment;
66 
67  typedef float _time_increment_type;
68  _time_increment_type time_increment;
69 
70  typedef float _scan_time_type;
71  _scan_time_type scan_time;
72 
73  typedef float _range_min_type;
74  _range_min_type range_min;
75 
76  typedef float _range_max_type;
77  _range_max_type range_max;
78 
79  typedef std::vector<float, typename ContainerAllocator::template rebind<float>::other > _ranges_type;
80  _ranges_type ranges;
81 
82  typedef std::vector<float, typename ContainerAllocator::template rebind<float>::other > _intensities_type;
83  _intensities_type intensities;
84 
85 
86 
87 
90 
91 }; // struct LaserScan_
92 
93 typedef ::sensor_msgs::LaserScan_<std::allocator<void> > LaserScan;
94 
97 
98 // constants requiring out of line definition
99 
100 
101 
102 template<typename ContainerAllocator>
103 std::ostream& operator<<(std::ostream& s, const ::sensor_msgs::LaserScan_<ContainerAllocator> & v)
104 {
106 return s;
107 }
108 
109 } // namespace sensor_msgs
110 
111 namespace rs2rosinternal
112 {
113 namespace message_traits
114 {
115 
116 
117 
118 // BOOLTRAITS {'IsFixedSize': False, 'IsMessage': True, 'HasHeader': True}
119 // {'std_msgs': ['/opt/ros/kinetic/share/std_msgs/cmake/../msg'], 'geometry_msgs': ['/opt/ros/kinetic/share/geometry_msgs/cmake/../msg'], 'sensor_msgs': ['/tmp/binarydeb/ros-kinetic-sensor-msgs-1.12.5/msg']}
120 
121 // !!!!!!!!!!! ['__class__', '__delattr__', '__dict__', '__doc__', '__eq__', '__format__', '__getattribute__', '__hash__', '__init__', '__module__', '__ne__', '__new__', '__reduce__', '__reduce_ex__', '__repr__', '__setattr__', '__sizeof__', '__str__', '__subclasshook__', '__weakref__', '_parsed_fields', 'constants', 'fields', 'full_name', 'has_header', 'header_present', 'names', 'package', 'parsed_fields', 'short_name', 'text', 'types']
122 
123 
124 
125 
126 template <class ContainerAllocator>
127 struct IsFixedSize< ::sensor_msgs::LaserScan_<ContainerAllocator> >
128  : FalseType
129  { };
130 
131 template <class ContainerAllocator>
132 struct IsFixedSize< ::sensor_msgs::LaserScan_<ContainerAllocator> const>
133  : FalseType
134  { };
135 
136 template <class ContainerAllocator>
137 struct IsMessage< ::sensor_msgs::LaserScan_<ContainerAllocator> >
138  : TrueType
139  { };
140 
141 template <class ContainerAllocator>
142 struct IsMessage< ::sensor_msgs::LaserScan_<ContainerAllocator> const>
143  : TrueType
144  { };
145 
146 template <class ContainerAllocator>
147 struct HasHeader< ::sensor_msgs::LaserScan_<ContainerAllocator> >
148  : TrueType
149  { };
150 
151 template <class ContainerAllocator>
152 struct HasHeader< ::sensor_msgs::LaserScan_<ContainerAllocator> const>
153  : TrueType
154  { };
155 
156 
157 template<class ContainerAllocator>
158 struct MD5Sum< ::sensor_msgs::LaserScan_<ContainerAllocator> >
159 {
160  static const char* value()
161  {
162  return "90c7ef2dc6895d81024acba2ac42f369";
163  }
164 
165  static const char* value(const ::sensor_msgs::LaserScan_<ContainerAllocator>&) { return value(); }
166  static const uint64_t static_value1 = 0x90c7ef2dc6895d81ULL;
167  static const uint64_t static_value2 = 0x024acba2ac42f369ULL;
168 };
169 
170 template<class ContainerAllocator>
171 struct DataType< ::sensor_msgs::LaserScan_<ContainerAllocator> >
172 {
173  static const char* value()
174  {
175  return "sensor_msgs/LaserScan";
176  }
177 
178  static const char* value(const ::sensor_msgs::LaserScan_<ContainerAllocator>&) { return value(); }
179 };
180 
181 template<class ContainerAllocator>
182 struct Definition< ::sensor_msgs::LaserScan_<ContainerAllocator> >
183 {
184  static const char* value()
185  {
186  return "# Single scan from a planar laser range-finder\n\
187 #\n\
188 # If you have another ranging device with different behavior (e.g. a sonar\n\
189 # array), please find or create a different message, since applications\n\
190 # will make fairly laser-specific assumptions about this data\n\
191 \n\
192 Header header # timestamp in the header is the acquisition time of \n\
193  # the first ray in the scan.\n\
194  #\n\
195  # in frame frame_id, angles are measured around \n\
196  # the positive Z axis (counterclockwise, if Z is up)\n\
197  # with zero angle being forward along the x axis\n\
198  \n\
199 float32 angle_min # start angle of the scan [rad]\n\
200 float32 angle_max # end angle of the scan [rad]\n\
201 float32 angle_increment # angular distance between measurements [rad]\n\
202 \n\
203 float32 time_increment # time between measurements [seconds] - if your scanner\n\
204  # is moving, this will be used in interpolating position\n\
205  # of 3d points\n\
206 float32 scan_time # time between scans [seconds]\n\
207 \n\
208 float32 range_min # minimum range value [m]\n\
209 float32 range_max # maximum range value [m]\n\
210 \n\
211 float32[] ranges # range data [m] (Note: values < range_min or > range_max should be discarded)\n\
212 float32[] intensities # intensity data [device-specific units]. If your\n\
213  # device does not provide intensities, please leave\n\
214  # the array empty.\n\
215 \n\
216 ================================================================================\n\
217 MSG: std_msgs/Header\n\
218 # Standard metadata for higher-level stamped data types.\n\
219 # This is generally used to communicate timestamped data \n\
220 # in a particular coordinate frame.\n\
221 # \n\
222 # sequence ID: consecutively increasing ID \n\
223 uint32 seq\n\
224 #Two-integer timestamp that is expressed as:\n\
225 # * stamp.sec: seconds (stamp_secs) since epoch (in Python the variable is called 'secs')\n\
226 # * stamp.nsec: nanoseconds since stamp_secs (in Python the variable is called 'nsecs')\n\
227 # time-handling sugar is provided by the client library\n\
228 time stamp\n\
229 #Frame this data is associated with\n\
230 # 0: no frame\n\
231 # 1: global frame\n\
232 string frame_id\n\
233 ";
234  }
235 
236  static const char* value(const ::sensor_msgs::LaserScan_<ContainerAllocator>&) { return value(); }
237 };
238 
239 } // namespace message_traits
240 } // namespace rs2rosinternal
241 
242 namespace rs2rosinternal
243 {
244 namespace serialization
245 {
246 
247  template<class ContainerAllocator> struct Serializer< ::sensor_msgs::LaserScan_<ContainerAllocator> >
248  {
249  template<typename Stream, typename T> inline static void allInOne(Stream& stream, T m)
250  {
251  stream.next(m.header);
252  stream.next(m.angle_min);
253  stream.next(m.angle_max);
254  stream.next(m.angle_increment);
255  stream.next(m.time_increment);
256  stream.next(m.scan_time);
257  stream.next(m.range_min);
258  stream.next(m.range_max);
259  stream.next(m.ranges);
260  stream.next(m.intensities);
261  }
262 
264  }; // struct LaserScan_
265 
266 } // namespace serialization
267 } // namespace rs2rosinternal
268 
269 namespace rs2rosinternal
270 {
271 namespace message_operations
272 {
273 
274 template<class ContainerAllocator>
275 struct Printer< ::sensor_msgs::LaserScan_<ContainerAllocator> >
276 {
277  template<typename Stream> static void stream(Stream& s, const std::string& indent, const ::sensor_msgs::LaserScan_<ContainerAllocator>& v)
278  {
279  s << indent << "header: ";
280  s << std::endl;
282  s << indent << "angle_min: ";
283  Printer<float>::stream(s, indent + " ", v.angle_min);
284  s << indent << "angle_max: ";
285  Printer<float>::stream(s, indent + " ", v.angle_max);
286  s << indent << "angle_increment: ";
287  Printer<float>::stream(s, indent + " ", v.angle_increment);
288  s << indent << "time_increment: ";
289  Printer<float>::stream(s, indent + " ", v.time_increment);
290  s << indent << "scan_time: ";
291  Printer<float>::stream(s, indent + " ", v.scan_time);
292  s << indent << "range_min: ";
293  Printer<float>::stream(s, indent + " ", v.range_min);
294  s << indent << "range_max: ";
295  Printer<float>::stream(s, indent + " ", v.range_max);
296  s << indent << "ranges[]" << std::endl;
297  for (size_t i = 0; i < v.ranges.size(); ++i)
298  {
299  s << indent << " ranges[" << i << "]: ";
300  Printer<float>::stream(s, indent + " ", v.ranges[i]);
301  }
302  s << indent << "intensities[]" << std::endl;
303  for (size_t i = 0; i < v.intensities.size(); ++i)
304  {
305  s << indent << " intensities[" << i << "]: ";
306  Printer<float>::stream(s, indent + " ", v.intensities[i]);
307  }
308  }
309 };
310 
311 } // namespace message_operations
312 } // namespace rs2rosinternal
313 
314 #endif // SENSOR_MSGS_MESSAGE_LASERSCAN_H
typedef void(APIENTRY *GLDEBUGPROC)(GLenum source
Base type for compile-type true/false tests. Compatible with Boost.MPL. classes inheriting from this ...
_range_max_type range_max
Definition: LaserScan.h:77
GLdouble s
const GLfloat * m
Definition: glext.h:6814
Specialize to provide the md5sum for a message.
boost::shared_ptr< ::sensor_msgs::LaserScan_< ContainerAllocator > const > ConstPtr
Definition: LaserScan.h:89
::sensor_msgs::LaserScan_< std::allocator< void > > LaserScan
Definition: LaserScan.h:93
Base type for compile-type true/false tests. Compatible with Boost.MPL. classes inheriting from this ...
GLsizei const GLchar *const * string
Specialize to provide the datatype for a message.
HasHeader informs whether or not there is a header that gets serialized as the first thing in the mes...
GLuint GLuint stream
Definition: glext.h:1790
_angle_increment_type angle_increment
Definition: LaserScan.h:65
A fixed-size datatype is one whose size is constant, i.e. it has no variable-length arrays or strings...
_intensities_type intensities
Definition: LaserScan.h:83
LaserScan_< ContainerAllocator > Type
Definition: LaserScan.h:25
static void stream(Stream &s, const std::string &indent, const ::sensor_msgs::LaserScan_< ContainerAllocator > &v)
Definition: LaserScan.h:277
Stream base-class, provides common functionality for IStream and OStream.
static const char * value(const ::sensor_msgs::LaserScan_< ContainerAllocator > &)
Definition: LaserScan.h:236
boost::shared_ptr< ::sensor_msgs::LaserScan > LaserScanPtr
Definition: LaserScan.h:95
std::vector< float, typename ContainerAllocator::template rebind< float >::other > _ranges_type
Definition: LaserScan.h:79
_time_increment_type time_increment
Definition: LaserScan.h:68
static const char * value(const ::sensor_msgs::LaserScan_< ContainerAllocator > &)
Definition: LaserScan.h:165
boost::shared_ptr< ::sensor_msgs::LaserScan const > LaserScanConstPtr
Definition: LaserScan.h:96
Tools for manipulating sensor_msgs.
Definition: BatteryState.h:20
#define ROS_DECLARE_ALLINONE_SERIALIZER
Declare your serializer to use an allInOne member instead of requiring 3 different serialization func...
unsigned __int64 uint64_t
Definition: stdint.h:90
Specialize to provide the definition for a message.
LaserScan_(const ContainerAllocator &_alloc)
Definition: LaserScan.h:39
std::vector< float, typename ContainerAllocator::template rebind< float >::other > _intensities_type
Definition: LaserScan.h:82
boost::shared_ptr< ::sensor_msgs::LaserScan_< ContainerAllocator > > Ptr
Definition: LaserScan.h:88
::std_msgs::Header_< ContainerAllocator > _header_type
Definition: LaserScan.h:55
_angle_min_type angle_min
Definition: LaserScan.h:59
_scan_time_type scan_time
Definition: LaserScan.h:71
_range_min_type range_min
Definition: LaserScan.h:74
static const char * value(const ::sensor_msgs::LaserScan_< ContainerAllocator > &)
Definition: LaserScan.h:178
_angle_max_type angle_max
Definition: LaserScan.h:62
_ranges_type ranges
Definition: LaserScan.h:80
int i
Templated serialization class. Default implementation provides backwards compatibility with old messa...
_header_type header
Definition: LaserScan.h:56
GLdouble v


librealsense2
Author(s): Sergey Dorodnicov , Doron Hirshberg , Mark Horn , Reagan Lopez , Itay Carpis
autogenerated on Mon May 3 2021 02:47:21