On this page
Grabber for the Velodyne LiDAR (VLP), based on the Velodyne High Definition Laser (HDL) More...
#include <pcl/io/vlp_grabber.h>
Public Member Functions |
|
| VLPGrabber (const std::string &pcapFile="") | |
| Constructor taking an optional path to an vlp corrections file. More... |
|
| VLPGrabber (const boost::asio::ip::address &ipAddress, const std::uint16_t port) | |
| Constructor taking a specified IP/port. More... |
|
| ~VLPGrabber () noexcept override | |
| virtual Destructor inherited from the Grabber interface. More... |
|
| std::string | getName () const override |
| Obtains the name of this I/O Grabber. More... |
|
| void | setLaserColorRGB (const pcl::RGB &color, const std::uint8_t laserNumber) |
| Allows one to customize the colors used by each laser. More... |
|
| template<typename IterT > | |
| void | setLaserColorRGB (const IterT &begin, const IterT &end) |
| Allows one to customize the colors used for each of the lasers. More... |
|
| std::uint8_t | getMaximumNumberOfLasers () const override |
| Returns the maximum number of lasers. More... |
|
| HDLGrabber (const std::string &correctionsFile="", const std::string &pcapFile="") | |
| Constructor taking an optional path to an HDL corrections file. More... |
|
| HDLGrabber (const boost::asio::ip::address &ipAddress, const std::uint16_t port, const std::string &correctionsFile="") | |
| Constructor taking a specified IP/port and an optional path to an HDL corrections file. More... |
|
| ~HDLGrabber () noexcept override | |
| virtual Destructor inherited from the Grabber interface. More... |
|
| void | start () override |
| Starts processing the Velodyne packets, either from the network or PCAP file. More... |
|
| void | stop () override |
| Stops processing the Velodyne packets, either from the network or PCAP file. More... |
|
| bool | isRunning () const override |
| Check if the grabber is still running. More... |
|
| float | getFramesPerSecond () const override |
| Returns the number of frames per second. More... |
|
| void | filterPackets (const boost::asio::ip::address &ipAddress, const std::uint16_t port=443) |
| Allows one to filter packets based on the SOURCE IP address and PORT This can be used, for instance, if multiple HDL LIDARs are on the same network. More... |
|
| void | setLaserColorRGB (const pcl::RGB &color, const std::uint8_t laserNumber) |
| Allows one to customize the colors used by each laser. More... |
|
| template<typename IterT > | |
| void | setLaserColorRGB (const IterT &begin, const IterT &end) |
| Allows one to customize the colors used for each of the lasers. More... |
|
| void | setMinimumDistanceThreshold (float &minThreshold) |
| Any returns from the HDL with a distance less than this are discarded. More... |
|
| void | setMaximumDistanceThreshold (float &maxThreshold) |
| Any returns from the HDL with a distance greater than this are discarded. More... |
|
| float | getMinimumDistanceThreshold () |
| Returns the current minimum distance threshold, in meters. More... |
|
| float | getMaximumDistanceThreshold () |
| Returns the current maximum distance threshold, in meters. More... |
|
| Grabber ()=default | |
| Default ctor. More... |
|
| Grabber (const Grabber &)=delete | |
| No copy ctor since Grabber can't be copied. More... |
|
| Grabber & | operator= (const Grabber &)=delete |
| No copy assign operator since Grabber can't be copied. More... |
|
| Grabber (Grabber &&)=default | |
| Move ctor. More... |
|
| Grabber & | operator= (Grabber &&)=default |
| Move assign operator. More... |
|
| virtual | ~Grabber () noexcept=default |
| virtual destructor. More... |
|
| template<typename T > | |
| boost::signals2::connection | registerCallback (const std::function< T > &callback) |
| registers a callback function/method to a signal with the corresponding signature More... |
|
| template<typename T > | |
| bool | providesCallback () const noexcept |
| indicates whether a signal with given parameter-type exists or not More... |
|
| bool | toggle () |
| For devices that are streaming, stopped streams are started and running stream are stopped. More... |
|
Static Protected Attributes |
|
| static const std::uint8_t | VLP_MAX_NUM_LASERS = 16 |
| static const std::uint8_t | VLP_DUAL_MODE = 0x39 |
| static const std::uint16_t | HDL_DATA_PORT = 2368 |
| static const std::uint16_t | HDL_NUM_ROT_ANGLES = 36001 |
| static const std::uint8_t | HDL_LASER_PER_FIRING = 32 |
| static const std::uint8_t | HDL_MAX_NUM_LASERS = 64 |
| static const std::uint8_t | HDL_FIRING_PER_PKT = 12 |
Additional Inherited Members |
|
| using | sig_cb_velodyne_hdl_scan_point_cloud_xyz = void(const pcl::PointCloud< pcl::PointXYZ >::ConstPtr &, float, float) |
| Signal used for a single sector Represents 1 corrected packet from the HDL Velodyne. More... |
|
| using | sig_cb_velodyne_hdl_scan_point_cloud_xyzrgba = void(const pcl::PointCloud< pcl::PointXYZRGBA >::ConstPtr &, float, float) |
| Signal used for a single sector Represents 1 corrected packet from the HDL Velodyne. More... |
|
| using | sig_cb_velodyne_hdl_scan_point_cloud_xyzi = void(const pcl::PointCloud< pcl::PointXYZI >::ConstPtr &, float, float) |
| Signal used for a single sector Represents 1 corrected packet from the HDL Velodyne with the returned intensity. More... |
|
| using | sig_cb_velodyne_hdl_sweep_point_cloud_xyz = void(const pcl::PointCloud< pcl::PointXYZ >::ConstPtr &) |
| Signal used for a 360 degree sweep Represents multiple corrected packets from the HDL Velodyne This signal is sent when the Velodyne passes angle "0". More... |
|
| using | sig_cb_velodyne_hdl_sweep_point_cloud_xyzi = void(const pcl::PointCloud< pcl::PointXYZI >::ConstPtr &) |
| Signal used for a 360 degree sweep Represents multiple corrected packets from the HDL Velodyne with the returned intensity This signal is sent when the Velodyne passes angle "0". More... |
|
| using | sig_cb_velodyne_hdl_sweep_point_cloud_xyzrgba = void(const pcl::PointCloud< pcl::PointXYZRGBA >::ConstPtr &) |
| Signal used for a 360 degree sweep Represents multiple corrected packets from the HDL Velodyne This signal is sent when the Velodyne passes angle "0". More... |
|
| enum | HDLBlock { BLOCK_0_TO_31 = 0xeeff , BLOCK_32_TO_63 = 0xddff } |
| void | fireCurrentSweep () |
| void | fireCurrentScan (const std::uint16_t startAngle, const std::uint16_t endAngle) |
| void | computeXYZI (pcl::PointXYZI &pointXYZI, std::uint16_t azimuth, HDLLaserReturn laserReturn, HDLLaserCorrection correction) const |
| virtual void | signalsChanged () |
| template<typename T > | |
| boost::signals2::signal< T > * | find_signal () const noexcept |
| template<typename T > | |
| int | num_slots () const noexcept |
| template<typename T > | |
| void | disconnect_all_slots () |
| template<typename T > | |
| void | block_signal () |
| template<typename T > | |
| void | unblock_signal () |
| void | block_signals () |
| void | unblock_signals () |
| template<typename T > | |
| boost::signals2::signal< T > * | createSignal () |
| HDLLaserCorrection | laser_corrections_ [HDL_MAX_NUM_LASERS] |
| std::uint16_t | last_azimuth_ |
| pcl::PointCloud< pcl::PointXYZ >::Ptr | current_scan_xyz_ |
| pcl::PointCloud< pcl::PointXYZ >::Ptr | current_sweep_xyz_ |
| pcl::PointCloud< pcl::PointXYZI >::Ptr | current_scan_xyzi_ |
| pcl::PointCloud< pcl::PointXYZI >::Ptr | current_sweep_xyzi_ |
| pcl::PointCloud< pcl::PointXYZRGBA >::Ptr | current_scan_xyzrgba_ |
| pcl::PointCloud< pcl::PointXYZRGBA >::Ptr | current_sweep_xyzrgba_ |
| boost::signals2::signal< sig_cb_velodyne_hdl_sweep_point_cloud_xyz > * | sweep_xyz_signal_ |
| boost::signals2::signal< sig_cb_velodyne_hdl_sweep_point_cloud_xyzrgba > * | sweep_xyzrgba_signal_ |
| boost::signals2::signal< sig_cb_velodyne_hdl_sweep_point_cloud_xyzi > * | sweep_xyzi_signal_ |
| boost::signals2::signal< sig_cb_velodyne_hdl_scan_point_cloud_xyz > * | scan_xyz_signal_ |
| boost::signals2::signal< sig_cb_velodyne_hdl_scan_point_cloud_xyzrgba > * | scan_xyzrgba_signal_ |
| boost::signals2::signal< sig_cb_velodyne_hdl_scan_point_cloud_xyzi > * | scan_xyzi_signal_ |
| std::map< std::string, std::unique_ptr< boost::signals2::signal_base > > | signals_ |
| std::map< std::string, std::vector< boost::signals2::connection > > | connections_ |
| std::map< std::string, std::vector< boost::signals2::shared_connection_block > > | shared_connections_ |
Detailed Description
Grabber for the Velodyne LiDAR (VLP), based on the Velodyne High Definition Laser (HDL)
Definition at line 56 of file vlp_grabber.h.
Constructor & Destructor Documentation
VLPGrabber() [1/2]
| pcl::VLPGrabber::VLPGrabber | ( | const std::string & | pcapFile = "" |
) |
Constructor taking an optional path to an vlp corrections file.
The Grabber will listen on the default IP/port for data packets [192.168.3.255/2368]
- Parameters
-
[in] pcapFile Path to a file which contains previously captured data packets. This parameter is optional
VLPGrabber() [2/2]
| pcl::VLPGrabber::VLPGrabber | ( | const boost::asio::ip::address & | ipAddress, |
| const std::uint16_t | port | ||
| ) |
Constructor taking a specified IP/port.
- Parameters
-
[in] ipAddress IP Address that should be used to listen for VLP packets [in] port UDP Port that should be used to listen for VLP packets
~VLPGrabber()
|
overridenoexcept |
virtual Destructor inherited from the Grabber interface.
It never throws.
Member Function Documentation
getMaximumNumberOfLasers()
|
overridevirtual |
Returns the maximum number of lasers.
Reimplemented from pcl::HDLGrabber.
getName()
|
overridevirtual |
Obtains the name of this I/O Grabber.
- Returns
- The name of the grabber
Reimplemented from pcl::HDLGrabber.
setLaserColorRGB() [1/2]
|
inline |
Allows one to customize the colors used for each of the lasers.
- Parameters
Definition at line 94 of file vlp_grabber.h.
setLaserColorRGB() [2/2]
| void pcl::VLPGrabber::setLaserColorRGB | ( | const pcl::RGB & | color, |
| const std::uint8_t | laserNumber | ||
| ) |
Allows one to customize the colors used by each laser.
- Parameters
-
[in] color RGB color to set [in] laserNumber Number of laser to set color
Member Data Documentation
VLP_DUAL_MODE
|
staticprotected |
Definition at line 106 of file vlp_grabber.h.
VLP_MAX_NUM_LASERS
|
staticprotected |
Definition at line 105 of file vlp_grabber.h.
The documentation for this class was generated from the following file:
- pcl/io/vlp_grabber.h
© 2009–2012, Willow Garage, Inc.
© 2012–, Open Perception, Inc.
Licensed under the BSD License.
https://pointclouds.org/documentation/classpcl_1_1_v_l_p_grabber.html