Class nebula::drivers::vlp16::Vlp16Decoder
ClassList > nebula > drivers > vlp16 > Vlp16Decoder
Velodyne LiDAR decoder (VLP16)
#include <vlp16_decoder.hpp>
Inherits the following classes: nebula::drivers::VelodyneScanDecoder
Public Functions
Type | Name |
---|---|
Vlp16Decoder (const std::shared_ptr< const drivers::VelodyneSensorConfiguration > & sensor_configuration, const std::shared_ptr< const drivers::VelodyneCalibrationConfiguration > & calibration_configuration) Constructor. |
|
virtual std::tuple< drivers::NebulaPointCloudPtr, double > | get_pointcloud () override Get the constructed point cloud. |
virtual int | points_per_packet () override Calculation of points in each packet. |
virtual void | reset_overflow (double time_stamp) override Resetting overflowed point cloud buffer. |
virtual void | reset_pointcloud (double time_stamp) override Resetting point cloud buffer. |
virtual void | unpack (const std::vector< uint8_t > & packet, double packet_seconds) override Parsing and shaping VelodynePacket. |
Public Functions inherited from nebula::drivers::VelodyneScanDecoder
See nebula::drivers::VelodyneScanDecoder
Type | Name |
---|---|
VelodyneScanDecoder (VelodyneScanDecoder && c) = delete |
|
VelodyneScanDecoder (const VelodyneScanDecoder & c) = delete |
|
VelodyneScanDecoder () = default |
|
virtual std::tuple< drivers::NebulaPointCloudPtr, double > | get_pointcloud () = 0 Virtual function for getting the constructed point cloud. |
bool | has_scanned () Virtual function for getting the flag indicating whether one cycle is ready. |
VelodyneScanDecoder & | operator= (VelodyneScanDecoder && c) = delete |
VelodyneScanDecoder & | operator= (const VelodyneScanDecoder & c) = delete |
virtual bool | parse_packet (const velodyne_msgs::msg::VelodynePacket & velodyne_packet) = 0 Virtual function for parsing VelodynePacket based on packet structure. |
virtual int | points_per_packet () = 0 Calculation of points in each packet. |
virtual void | reset_overflow (double time_stamp) = 0 Resetting overflowed point cloud buffer. |
virtual void | reset_pointcloud (double time_stamp) = 0 Resetting point cloud buffer. |
virtual void | unpack (const std::vector< uint8_t > & packet, double packet_seconds) = 0 Virtual function for parsing and shaping VelodynePacket. |
virtual | ~VelodyneScanDecoder () = default |
Protected Attributes inherited from nebula::drivers::VelodyneScanDecoder
See nebula::drivers::VelodyneScanDecoder
Type | Name |
---|---|
std::shared_ptr< const drivers::VelodyneCalibrationConfiguration > | calibration_configuration_ Calibration for this decoder. |
double | dual_return_distance_threshold_ = {} |
drivers::NebulaPointCloudPtr | overflow_pc_ Point cloud overflowing from one cycle. |
drivers::NebulaPointCloudPtr | scan_pc_ Decoded point cloud. |
double | scan_timestamp_ = {} |
std::shared_ptr< const drivers::VelodyneSensorConfiguration > | sensor_configuration_ SensorConfiguration for this decoder. |
Protected Functions inherited from nebula::drivers::VelodyneScanDecoder
See nebula::drivers::VelodyneScanDecoder
Type | Name |
---|---|
void | check_and_handle_scan_complete (const std::vector< uint8_t > & packet, double packet_seconds, const uint32_t phase) Checks if the current packet completes the ongoing scan. TODO: this has been moved from velodyne_hw_interface.cpp and is a temporary solution until the Velodyne decoder uses the same structure as Hesai/Robosense. |
Public Functions Documentation
function Vlp16Decoder
Constructor.
explicit nebula::drivers::vlp16::Vlp16Decoder::Vlp16Decoder (
const std::shared_ptr< const drivers::VelodyneSensorConfiguration > & sensor_configuration,
const std::shared_ptr< const drivers::VelodyneCalibrationConfiguration > & calibration_configuration
)
Parameters:
sensor_configuration
SensorConfiguration for this decodercalibration_configuration
Calibration for this decoder
function get_pointcloud
Get the constructed point cloud.
virtual std::tuple< drivers::NebulaPointCloudPtr, double > nebula::drivers::vlp16::Vlp16Decoder::get_pointcloud () override
Returns:
tuple of Point cloud and timestamp
Implements nebula::drivers::VelodyneScanDecoder::get_pointcloud
function points_per_packet
Calculation of points in each packet.
virtual int nebula::drivers::vlp16::Vlp16Decoder::points_per_packet () override
Returns:
of points
Implements nebula::drivers::VelodyneScanDecoder::points_per_packet
function reset_overflow
Resetting overflowed point cloud buffer.
virtual void nebula::drivers::vlp16::Vlp16Decoder::reset_overflow (
double time_stamp
) override
Implements nebula::drivers::VelodyneScanDecoder::reset_overflow
function reset_pointcloud
Resetting point cloud buffer.
virtual void nebula::drivers::vlp16::Vlp16Decoder::reset_pointcloud (
double time_stamp
) override
Implements nebula::drivers::VelodyneScanDecoder::reset_pointcloud
function unpack
Parsing and shaping VelodynePacket.
virtual void nebula::drivers::vlp16::Vlp16Decoder::unpack (
const std::vector< uint8_t > & packet,
double packet_seconds
) override
Parameters:
velodyne_packet
Implements nebula::drivers::VelodyneScanDecoder::unpack
The documentation for this class was generated from the following file nebula_decoders/include/nebula_decoders/nebula_decoders_velodyne/decoders/vlp16_decoder.hpp