Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
sl::ScanDataHolder< T > Class Template Reference

Public Member Functions

bool checkNewScanSignalAndReset ()
 
size_t getMaxCacheCount () const
 
void pushScanNodeData (_u64 currentSampleTsUs, const T *hqNode)
 
void reset ()
 
void rewindCurrentScanData ()
 
 ScanDataHolder (size_t maxcount=8192)
 
void unlockScan (std::vector< T > *scan)
 
std::vector< T > * waitAndLockAvailableScan (_u32 timeout, _u64 *out_timestamp_uS=nullptr)
 

Protected Member Functions

int _finishCurrentScanAndSwap_locked ()
 
std::vector< T > & _getOperationalBuffer_locked ()
 
int _getOperationBufferID_locked ()
 

Protected Attributes

rp::hal::Event _data_waiter
 
rp::hal::Locker _locker
 
std::atomic< bool > _new_scan_ready
 
_u64 _scan_begin_timestamp_uS [2]
 
int _scan_node_available_id
 
size_t _scan_node_buffer_size
 
std::vector< T > _scanbuffer [2]
 

Detailed Description

template<typename T>
class sl::ScanDataHolder< T >

Definition at line 238 of file sl_lidar_driver.cpp.

Constructor & Destructor Documentation

◆ ScanDataHolder()

template<typename T >
sl::ScanDataHolder< T >::ScanDataHolder ( size_t  maxcount = 8192)
inline

Definition at line 241 of file sl_lidar_driver.cpp.

Member Function Documentation

◆ _finishCurrentScanAndSwap_locked()

template<typename T >
int sl::ScanDataHolder< T >::_finishCurrentScanAndSwap_locked ( )
inlineprotected

Definition at line 341 of file sl_lidar_driver.cpp.

◆ _getOperationalBuffer_locked()

template<typename T >
std::vector<T>& sl::ScanDataHolder< T >::_getOperationalBuffer_locked ( )
inlineprotected

Definition at line 354 of file sl_lidar_driver.cpp.

◆ _getOperationBufferID_locked()

template<typename T >
int sl::ScanDataHolder< T >::_getOperationBufferID_locked ( )
inlineprotected

Definition at line 349 of file sl_lidar_driver.cpp.

◆ checkNewScanSignalAndReset()

template<typename T >
bool sl::ScanDataHolder< T >::checkNewScanSignalAndReset ( )
inline

Definition at line 267 of file sl_lidar_driver.cpp.

◆ getMaxCacheCount()

template<typename T >
size_t sl::ScanDataHolder< T >::getMaxCacheCount ( ) const
inline

Definition at line 252 of file sl_lidar_driver.cpp.

◆ pushScanNodeData()

template<typename T >
void sl::ScanDataHolder< T >::pushScanNodeData ( _u64  currentSampleTsUs,
const T *  hqNode 
)
inline

Definition at line 272 of file sl_lidar_driver.cpp.

◆ reset()

template<typename T >
void sl::ScanDataHolder< T >::reset ( )
inline

Definition at line 257 of file sl_lidar_driver.cpp.

◆ rewindCurrentScanData()

template<typename T >
void sl::ScanDataHolder< T >::rewindCurrentScanData ( )
inline

Definition at line 312 of file sl_lidar_driver.cpp.

◆ unlockScan()

template<typename T >
void sl::ScanDataHolder< T >::unlockScan ( std::vector< T > *  scan)
inline

Definition at line 334 of file sl_lidar_driver.cpp.

◆ waitAndLockAvailableScan()

template<typename T >
std::vector<T>* sl::ScanDataHolder< T >::waitAndLockAvailableScan ( _u32  timeout,
_u64 out_timestamp_uS = nullptr 
)
inline

Definition at line 317 of file sl_lidar_driver.cpp.

Member Data Documentation

◆ _data_waiter

template<typename T >
rp::hal::Event sl::ScanDataHolder< T >::_data_waiter
protected

Definition at line 361 of file sl_lidar_driver.cpp.

◆ _locker

template<typename T >
rp::hal::Locker sl::ScanDataHolder< T >::_locker
protected

Definition at line 360 of file sl_lidar_driver.cpp.

◆ _new_scan_ready

template<typename T >
std::atomic<bool> sl::ScanDataHolder< T >::_new_scan_ready
protected

Definition at line 368 of file sl_lidar_driver.cpp.

◆ _scan_begin_timestamp_uS

template<typename T >
_u64 sl::ScanDataHolder< T >::_scan_begin_timestamp_uS[2]
protected

Definition at line 365 of file sl_lidar_driver.cpp.

◆ _scan_node_available_id

template<typename T >
int sl::ScanDataHolder< T >::_scan_node_available_id
protected

Definition at line 367 of file sl_lidar_driver.cpp.

◆ _scan_node_buffer_size

template<typename T >
size_t sl::ScanDataHolder< T >::_scan_node_buffer_size
protected

Definition at line 366 of file sl_lidar_driver.cpp.

◆ _scanbuffer

template<typename T >
std::vector<T> sl::ScanDataHolder< T >::_scanbuffer[2]
protected

Definition at line 370 of file sl_lidar_driver.cpp.


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


rplidar_ros
Author(s):
autogenerated on Fri Aug 2 2024 08:42:14