Apollo  6.0
Open source self driving car software
Public Member Functions | Protected Member Functions | Protected Attributes | Static Protected Attributes | List of all members
apollo::drivers::velodyne::VelodyneDriver Class Reference

#include <driver.h>

Inheritance diagram for apollo::drivers::velodyne::VelodyneDriver:
Inheritance graph
Collaboration diagram for apollo::drivers::velodyne::VelodyneDriver:
Collaboration graph

Public Member Functions

 VelodyneDriver ()
 
 VelodyneDriver (const Config &config)
 
 VelodyneDriver (const std::shared_ptr< cyber::Node > &node, const Config &config)
 
virtual ~VelodyneDriver ()
 
virtual bool Poll (const std::shared_ptr< VelodyneScan > &scan)
 
bool Init () override
 Initialize the lidar driver. More...
 
virtual void PollPositioningPacket ()
 
void SetPacketRate (const double packet_rate)
 
void DevicePoll ()
 
- Public Member Functions inherited from apollo::drivers::lidar::LidarDriver
 LidarDriver ()
 Constructor. More...
 
 LidarDriver (const std::shared_ptr<::apollo::cyber::Node > &node)
 
virtual ~LidarDriver ()=default
 Destructor. More...
 

Protected Member Functions

virtual int PollStandard (std::shared_ptr< VelodyneScan > scan)
 
bool SetBaseTime ()
 
void SetBaseTimeFromNmeaTime (NMEATimePtr nmea_time, uint64_t *basetime)
 
void UpdateGpsTopHour (uint32_t current_time)
 

Protected Attributes

std::thread poll_thread_
 
Config config_
 
std::shared_ptr< apollo::cyber::Writer< VelodyneScan > > writer_
 
std::unique_ptr< Inputinput_ = nullptr
 
std::unique_ptr< Inputpositioning_input_ = nullptr
 
std::string topic_
 
double packet_rate_ = 0.0
 
uint64_t basetime_ = 0
 
uint32_t last_gps_time_ = 0
 
uint64_t last_count_ = 0
 
std::thread positioning_thread_
 
- Protected Attributes inherited from apollo::drivers::lidar::LidarDriver
std::shared_ptr< cyber::Nodenode_
 

Static Protected Attributes

static uint64_t sync_counter
 

Constructor & Destructor Documentation

◆ VelodyneDriver() [1/3]

apollo::drivers::velodyne::VelodyneDriver::VelodyneDriver ( )
inline

◆ VelodyneDriver() [2/3]

apollo::drivers::velodyne::VelodyneDriver::VelodyneDriver ( const Config &  config)
inlineexplicit

◆ VelodyneDriver() [3/3]

apollo::drivers::velodyne::VelodyneDriver::VelodyneDriver ( const std::shared_ptr< cyber::Node > &  node,
const Config &  config 
)
inline

◆ ~VelodyneDriver()

virtual apollo::drivers::velodyne::VelodyneDriver::~VelodyneDriver ( )
virtual

Member Function Documentation

◆ DevicePoll()

void apollo::drivers::velodyne::VelodyneDriver::DevicePoll ( )

◆ Init()

bool apollo::drivers::velodyne::VelodyneDriver::Init ( )
overridevirtual

Initialize the lidar driver.

Returns
If the initialization is successful.

Implements apollo::drivers::lidar::LidarDriver.

Reimplemented in apollo::drivers::velodyne::Velodyne64Driver.

◆ Poll()

virtual bool apollo::drivers::velodyne::VelodyneDriver::Poll ( const std::shared_ptr< VelodyneScan > &  scan)
virtual

◆ PollPositioningPacket()

virtual void apollo::drivers::velodyne::VelodyneDriver::PollPositioningPacket ( )
virtual

◆ PollStandard()

virtual int apollo::drivers::velodyne::VelodyneDriver::PollStandard ( std::shared_ptr< VelodyneScan >  scan)
protectedvirtual

◆ SetBaseTime()

bool apollo::drivers::velodyne::VelodyneDriver::SetBaseTime ( )
protected

◆ SetBaseTimeFromNmeaTime()

void apollo::drivers::velodyne::VelodyneDriver::SetBaseTimeFromNmeaTime ( NMEATimePtr  nmea_time,
uint64_t *  basetime 
)
protected

◆ SetPacketRate()

void apollo::drivers::velodyne::VelodyneDriver::SetPacketRate ( const double  packet_rate)
inline

◆ UpdateGpsTopHour()

void apollo::drivers::velodyne::VelodyneDriver::UpdateGpsTopHour ( uint32_t  current_time)
protected

Member Data Documentation

◆ basetime_

uint64_t apollo::drivers::velodyne::VelodyneDriver::basetime_ = 0
protected

◆ config_

Config apollo::drivers::velodyne::VelodyneDriver::config_
protected

◆ input_

std::unique_ptr<Input> apollo::drivers::velodyne::VelodyneDriver::input_ = nullptr
protected

◆ last_count_

uint64_t apollo::drivers::velodyne::VelodyneDriver::last_count_ = 0
protected

◆ last_gps_time_

uint32_t apollo::drivers::velodyne::VelodyneDriver::last_gps_time_ = 0
protected

◆ packet_rate_

double apollo::drivers::velodyne::VelodyneDriver::packet_rate_ = 0.0
protected

◆ poll_thread_

std::thread apollo::drivers::velodyne::VelodyneDriver::poll_thread_
protected

◆ positioning_input_

std::unique_ptr<Input> apollo::drivers::velodyne::VelodyneDriver::positioning_input_ = nullptr
protected

◆ positioning_thread_

std::thread apollo::drivers::velodyne::VelodyneDriver::positioning_thread_
protected

◆ sync_counter

uint64_t apollo::drivers::velodyne::VelodyneDriver::sync_counter
staticprotected

◆ topic_

std::string apollo::drivers::velodyne::VelodyneDriver::topic_
protected

◆ writer_

std::shared_ptr<apollo::cyber::Writer<VelodyneScan> > apollo::drivers::velodyne::VelodyneDriver::writer_
protected

The documentation for this class was generated from the following file: