Apollo 10.0
自动驾驶开放平台
apollo::drivers::lidar::LivoxLidarComponent类 参考final

#include <livox_component.h>

类 apollo::drivers::lidar::LivoxLidarComponent 继承关系图:
apollo::drivers::lidar::LivoxLidarComponent 的协作图:

Public 成员函数

void BinaryDataProcess (const unsigned char *data, const int &data_type, const int &point_size, const uint64_t &pkt_timestamp, const uint32_t &time_interval)
 
void PointCloudCallback (uint32_t handle, const uint8_t dev_type, LivoxLidarEthernetPacket *data, void *client_data)
 
size_t GetEthPacketByteSize (LivoxLidarEthernetPacket *data)
 
void PreparePointsMsg (PointCloud &msg)
 
bool Init () override
 
void ReadScanCallback (const std::shared_ptr< livox::LivoxScan > &scan_message) override
 
void CheckTimestampAndPublishPointCloud ()
 
- Public 成员函数 继承自 apollo::drivers::lidar::LidarComponentBase< livox::LivoxScan >
virtual ~LidarComponentBase ()=default
 
bool InitBase (const LidarConfigBase &lidar_config_base) override
 
bool WriteScan (const std::shared_ptr< livox::LivoxScan > &scan_message)
 
std::shared_ptr< PointCloudAllocatePointCloud ()
 
bool WritePointCloud (const std::shared_ptr< PointCloud > &point_cloud)
 
- Public 成员函数 继承自 apollo::drivers::lidar::LidarComponentBaseImpl< ScanType, ComponentType >
virtual ~LidarComponentBaseImpl ()=default
 
virtual void ReadScanCallback (const std::shared_ptr< ScanType > &scan_message)=0
 
std::shared_ptr< ScanType > AcquireScanMessage ()
 
- Public 成员函数 继承自 apollo::cyber::Component< M0, M1, M2, M3 >
 Component ()
 
 ~Component () override
 
bool Initialize (const ComponentConfig &config) override
 init the component by protobuf object.
 
bool Process (const std::shared_ptr< M0 > &msg0, const std::shared_ptr< M1 > &msg1, const std::shared_ptr< M2 > &msg2, const std::shared_ptr< M3 > &msg3)
 
- Public 成员函数 继承自 apollo::cyber::ComponentBase
virtual ~ComponentBase ()
 
virtual bool Initialize (const TimerComponentConfig &config)
 
virtual void Shutdown ()
 
template<typename T >
bool GetProtoConfig (T *config) const
 

Public 属性

livox::Config config_
 
std::deque< PointXYZITintegral_queue_
 
uint64_t last_pointcloud_pub_timestamp_ {0}
 
double pointcloud_freq_ = {10.0}
 
double integral_time_ = {0.1}
 

额外继承的成员函数

- Public 类型 继承自 apollo::drivers::lidar::LidarComponentBase< livox::LivoxScan >
using BaseComponent = LidarComponentBaseImpl< livox::LivoxScan >
 
- Public 类型 继承自 apollo::cyber::ComponentBase
template<typename M >
using Reader = cyber::Reader< M >
 
- Protected 成员函数 继承自 apollo::drivers::lidar::LidarComponentBaseImpl< ScanType, ComponentType >
bool InitConverter (const LidarConfigBase &lidar_config_base)
 
bool InitPacket (const LidarConfigBase &lidar_config_base)
 
virtual bool WriteScan (const std::shared_ptr< ScanType > &scan_message)
 
virtual std::shared_ptr< apollo::cyber::base::ArenaQueue< PointXYZIT > > GetPointQueue ()
 
- Protected 成员函数 继承自 apollo::cyber::ComponentBase
virtual void Clear ()
 
const std::string & ConfigFilePath () const
 
void LoadConfigFiles (const ComponentConfig &config)
 
void LoadConfigFiles (const TimerComponentConfig &config)
 
- 静态 Protected 成员函数 继承自 apollo::drivers::lidar::LidarComponentBaseImpl< ScanType, ComponentType >
static void PcdDefaultCleaner (std::shared_ptr< PointCloud > &unused_pcd_frame)
 
- Protected 属性 继承自 apollo::drivers::lidar::LidarComponentBaseImpl< ScanType, ComponentType >
std::string frame_id_
 
- Protected 属性 继承自 apollo::cyber::ComponentBase
std::atomic< bool > is_shutdown_ = {false}
 
std::shared_ptr< Nodenode_ = nullptr
 
std::string config_file_path_ = ""
 
std::vector< std::shared_ptr< ReaderBase > > readers_
 

详细描述

在文件 livox_component.h37 行定义.

成员函数说明

◆ BinaryDataProcess()

void apollo::drivers::lidar::LivoxLidarComponent::BinaryDataProcess ( const unsigned char *  data,
const int &  data_type,
const int &  point_size,
const uint64_t &  pkt_timestamp,
const uint32_t &  time_interval 
)

◆ CheckTimestampAndPublishPointCloud()

void apollo::drivers::lidar::LivoxLidarComponent::CheckTimestampAndPublishPointCloud ( )

◆ GetEthPacketByteSize()

size_t apollo::drivers::lidar::LivoxLidarComponent::GetEthPacketByteSize ( LivoxLidarEthernetPacket *  data)

◆ Init()

bool apollo::drivers::lidar::LivoxLidarComponent::Init ( )
overridevirtual

◆ PointCloudCallback()

void apollo::drivers::lidar::LivoxLidarComponent::PointCloudCallback ( uint32_t  handle,
const uint8_t  dev_type,
LivoxLidarEthernetPacket *  data,
void *  client_data 
)

◆ PreparePointsMsg()

void apollo::drivers::lidar::LivoxLidarComponent::PreparePointsMsg ( PointCloud msg)

◆ ReadScanCallback()

void apollo::drivers::lidar::LivoxLidarComponent::ReadScanCallback ( const std::shared_ptr< livox::LivoxScan > &  scan_message)
overridevirtual

类成员变量说明

◆ config_

livox::Config apollo::drivers::lidar::LivoxLidarComponent::config_

在文件 livox_component.h57 行定义.

◆ integral_queue_

std::deque<PointXYZIT> apollo::drivers::lidar::LivoxLidarComponent::integral_queue_

在文件 livox_component.h58 行定义.

◆ integral_time_

double apollo::drivers::lidar::LivoxLidarComponent::integral_time_ = {0.1}

在文件 livox_component.h62 行定义.

62{0.1}; // second

◆ last_pointcloud_pub_timestamp_

uint64_t apollo::drivers::lidar::LivoxLidarComponent::last_pointcloud_pub_timestamp_ {0}

在文件 livox_component.h60 行定义.

60{0};

◆ pointcloud_freq_

double apollo::drivers::lidar::LivoxLidarComponent::pointcloud_freq_ = {10.0}

在文件 livox_component.h61 行定义.

61{10.0}; // Hz

该类的文档由以下文件生成: