Go to the documentation of this file.
6 #ifndef SENSOR_MSGS_MESSAGE_MULTIECHOLASERSCAN_H
7 #define SENSOR_MSGS_MESSAGE_MULTIECHOLASERSCAN_H
14 #include <ros/types.h>
15 #include <ros/serialization.h>
16 #include <ros/builtin_message_traits.h>
17 #include <ros/message_operations.h>
25 template <
class ContainerAllocator>
82 typedef std::vector< ::sensor_msgs::LaserEcho_<ContainerAllocator> ,
typename ContainerAllocator::template rebind< ::sensor_msgs::LaserEcho_<ContainerAllocator> >::other >
_ranges_type;
85 typedef std::vector< ::sensor_msgs::LaserEcho_<ContainerAllocator> ,
typename ContainerAllocator::template rebind< ::sensor_msgs::LaserEcho_<ContainerAllocator> >::other >
_intensities_type;
91 typedef std::shared_ptr< ::sensor_msgs::MultiEchoLaserScan_<ContainerAllocator> >
Ptr;
92 typedef std::shared_ptr< ::sensor_msgs::MultiEchoLaserScan_<ContainerAllocator>
const>
ConstPtr;
105 template<
typename ContainerAllocator>
106 std::ostream&
operator<<(std::ostream& s, const ::sensor_msgs::MultiEchoLaserScan_<ContainerAllocator> & v)
116 namespace message_traits
129 template <
class ContainerAllocator>
134 template <
class ContainerAllocator>
139 template <
class ContainerAllocator>
144 template <
class ContainerAllocator>
149 template <
class ContainerAllocator>
154 template <
class ContainerAllocator>
160 template<
class ContainerAllocator>
165 return "6fefb0c6da89d7c8abe4b339f5c2f8fb";
168 static const char*
value(const ::sensor_msgs::MultiEchoLaserScan_<ContainerAllocator>&) {
return value(); }
169 static const uint64_t static_value1 = 0x6fefb0c6da89d7c8ULL;
170 static const uint64_t static_value2 = 0xabe4b339f5c2f8fbULL;
173 template<
class ContainerAllocator>
178 return "sensor_msgs/MultiEchoLaserScan";
181 static const char*
value(const ::sensor_msgs::MultiEchoLaserScan_<ContainerAllocator>&) {
return value(); }
184 template<
class ContainerAllocator>
189 return "# Single scan from a multi-echo planar laser range-finder\n\
191 # If you have another ranging device with different behavior (e.g. a sonar\n\
192 # array), please find or create a different message, since applications\n\
193 # will make fairly laser-specific assumptions about this data\n\
195 Header header # timestamp in the header is the acquisition time of \n\
196 # the first ray in the scan.\n\
198 # in frame frame_id, angles are measured around \n\
199 # the positive Z axis (counterclockwise, if Z is up)\n\
200 # with zero angle being forward along the x axis\n\
202 float32 angle_min # start angle of the scan [rad]\n\
203 float32 angle_max # end angle of the scan [rad]\n\
204 float32 angle_increment # angular distance between measurements [rad]\n\
206 float32 time_increment # time between measurements [seconds] - if your scanner\n\
207 # is moving, this will be used in interpolating position\n\
209 float32 scan_time # time between scans [seconds]\n\
211 float32 range_min # minimum range value [m]\n\
212 float32 range_max # maximum range value [m]\n\
214 LaserEcho[] ranges # range data [m] (Note: NaNs, values < range_min or > range_max should be discarded)\n\
215 # +Inf measurements are out of range\n\
216 # -Inf measurements are too close to determine exact distance.\n\
217 LaserEcho[] intensities # intensity data [device-specific units]. If your\n\
218 # device does not provide intensities, please leave\n\
219 # the array empty.\n\
220 ================================================================================\n\
221 MSG: std_msgs/Header\n\
222 # Standard metadata for higher-level stamped data types.\n\
223 # This is generally used to communicate timestamped data \n\
224 # in a particular coordinate frame.\n\
226 # sequence ID: consecutively increasing ID \n\
228 #Two-integer timestamp that is expressed as:\n\
229 # * stamp.sec: seconds (stamp_secs) since epoch (in Python the variable is called 'secs')\n\
230 # * stamp.nsec: nanoseconds since stamp_secs (in Python the variable is called 'nsecs')\n\
231 # time-handling sugar is provided by the client library\n\
233 #Frame this data is associated with\n\
238 ================================================================================\n\
239 MSG: sensor_msgs/LaserEcho\n\
240 # This message is a submessage of MultiEchoLaserScan and is not intended\n\
241 # to be used separately.\n\
243 float32[] echoes # Multiple values of ranges or intensities.\n\
244 # Each array represents data from the same angle increment.\n\
248 static const char*
value(const ::sensor_msgs::MultiEchoLaserScan_<ContainerAllocator>&) {
return value(); }
256 namespace serialization
261 template<
typename Stream,
typename T>
inline static void allInOne(
Stream& stream, T m)
263 stream.next(m.header);
264 stream.next(m.angle_min);
265 stream.next(m.angle_max);
266 stream.next(m.angle_increment);
267 stream.next(m.time_increment);
268 stream.next(m.scan_time);
269 stream.next(m.range_min);
270 stream.next(m.range_max);
271 stream.next(m.ranges);
272 stream.next(m.intensities);
283 namespace message_operations
286 template<
class ContainerAllocator>
289 template<
typename Stream>
static void stream(Stream& s,
const std::string&
indent, const ::sensor_msgs::MultiEchoLaserScan_<ContainerAllocator>& v)
298 s <<
indent <<
"angle_increment: ";
300 s <<
indent <<
"time_increment: ";
308 s <<
indent <<
"ranges[]" << std::endl;
309 for (
size_t i = 0; i < v.ranges.size(); ++i)
311 s <<
indent <<
" ranges[" << i <<
"]: ";
316 s <<
indent <<
"intensities[]" << std::endl;
317 for (
size_t i = 0; i < v.intensities.size(); ++i)
319 s <<
indent <<
" intensities[" << i <<
"]: ";
330 #endif // SENSOR_MSGS_MESSAGE_MULTIECHOLASERSCAN_H
Base type for compile-type true/false tests. Compatible with Boost.MPL. classes inheriting from this ...
_angle_increment_type angle_increment
std::shared_ptr< ::sensor_msgs::MultiEchoLaserScan_< ContainerAllocator > const > ConstPtr
::sensor_msgs::MultiEchoLaserScan_< std::allocator< void > > MultiEchoLaserScan
Templated serialization class. Default implementation provides backwards compatibility with old messa...
_angle_min_type angle_min
_range_min_type range_min
static const char * value(const ::sensor_msgs::MultiEchoLaserScan_< ContainerAllocator > &)
static void stream(Stream &s, const std::string &indent, const M &value)
A fixed-size datatype is one whose size is constant, i.e. it has no variable-length arrays or strings...
static const char * value(const ::sensor_msgs::MultiEchoLaserScan_< ContainerAllocator > &)
float _angle_increment_type
static const char * value()
std::vector< ::sensor_msgs::LaserEcho_< ContainerAllocator >, typename ContainerAllocator::template rebind< ::sensor_msgs::LaserEcho_< ContainerAllocator > >::other > _ranges_type
#define ROS_DECLARE_ALLINONE_SERIALIZER
Declare your serializer to use an allInOne member instead of requiring 3 different serialization func...
Specialize to provide the datatype for a message.
MultiEchoLaserScan_(const ContainerAllocator &_alloc)
_range_max_type range_max
Specialize to provide the definition for a message.
_angle_max_type angle_max
std::ostream & operator<<(std::ostream &s, const ::sensor_msgs::BatteryState_< ContainerAllocator > &v)
static const char * value(const ::sensor_msgs::MultiEchoLaserScan_< ContainerAllocator > &)
_time_increment_type time_increment
_scan_time_type scan_time
static void allInOne(Stream &stream, T m)
MultiEchoLaserScan_< ContainerAllocator > Type
Base type for compile-type true/false tests. Compatible with Boost.MPL. classes inheriting from this ...
Specialize to provide the md5sum for a message.
static void stream(Stream &s, const std::string &indent, const ::sensor_msgs::MultiEchoLaserScan_< ContainerAllocator > &v)
float _time_increment_type
std::vector< ::sensor_msgs::LaserEcho_< ContainerAllocator >, typename ContainerAllocator::template rebind< ::sensor_msgs::LaserEcho_< ContainerAllocator > >::other > _intensities_type
::std_msgs::Header_< ContainerAllocator > _header_type
static const char * value()
Stream base-class, provides common functionality for IStream and OStream.
std::shared_ptr< ::sensor_msgs::MultiEchoLaserScan_< ContainerAllocator > > Ptr
static const char * value()
Tools for manipulating sensor_msgs.
std::shared_ptr< ::sensor_msgs::MultiEchoLaserScan const > MultiEchoLaserScanConstPtr
_intensities_type intensities
std::shared_ptr< ::sensor_msgs::MultiEchoLaserScan > MultiEchoLaserScanPtr
sick_scan_xd
Author(s): Michael Lehning
, Jochen Sprickerhof , Martin Günther
autogenerated on Fri Oct 25 2024 02:47:09