Classes | Namespaces | Typedefs | Enumerations | Functions | Variables
lds.h File Reference
#include <math.h>
#include <stdint.h>
#include <stdio.h>
#include <stdlib.h>
#include <string>
#include <vector>
#include <mutex>
#include <condition_variable>
#include "ldq.h"
#include "livox_def.h"
Include dependency graph for lds.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  livox_ros::DataTypePointInfoPair
 
struct  livox_ros::ExtrinsicParameter
 
class  livox_ros::Lds
 
union  livox_ros::LdsStamp
 
struct  livox_ros::LidarDevice
 
struct  livox_ros::LidarPacketStatistic
 
struct  livox_ros::LivoxPointXyzr
 
struct  livox_ros::LivoxPointXyzrtl
 
struct  livox_ros::PointXyz
 
struct  livox_ros::ProductTypePointInfoPair
 
class  livox_ros::Semaphore
 
struct  livox_ros::UserConfig
 
struct  livox_ros::UserRawConfig
 

Namespaces

 livox_ros
 

Typedefs

typedef float livox_ros::EulerAngle[3]
 
typedef uint8_t *(* livox_ros::PointConvertHandler) (uint8_t *point_buf, LivoxEthPacket *eth_packet, ExtrinsicParameter &extrinsic, uint32_t line_num)
 
typedef float livox_ros::RotationMatrix[3][3]
 
typedef float livox_ros::TranslationVector[3]
 

Enumerations

enum  livox_ros::CoordinateType { livox_ros::kCoordinateCartesian = 0, livox_ros::kCoordinateSpherical }
 
enum  livox_ros::ExtrinsicParameterType { livox_ros::kNoneExtrinsicParameter, livox_ros::kExtrinsicParameterFromLidar, livox_ros::kExtrinsicParameterFromXml }
 
enum  livox_ros::LidarConfigCodeBit {
  livox_ros::kConfigFan = 1 << 0, livox_ros::kConfigReturnMode = 1 << 1, livox_ros::kConfigCoordinate = 1 << 2, livox_ros::kConfigImuRate = 1 << 3,
  livox_ros::kConfigGetExtrinsicParameter = 1 << 4, livox_ros::kConfigSetHighSensitivity = 1 << 5, livox_ros::kConfigUndef
}
 
enum  livox_ros::LidarConnectState { livox_ros::kConnectStateOff = 0, livox_ros::kConnectStateOn = 1, livox_ros::kConnectStateConfig = 2, livox_ros::kConnectStateSampling = 3 }
 
enum  livox_ros::LidarDataOutputType { livox_ros::kOutputToRos = 0, livox_ros::kOutputToRosBagFile = 1 }
 
enum  livox_ros::LidarDataSourceType { livox_ros::kSourceRawLidar = 0, livox_ros::kSourceRawHub = 1, livox_ros::kSourceLvxFile, livox_ros::kSourceUndef }
 

Functions

uint32_t livox_ros::CalculatePacketQueueSize (uint32_t interval_ms, uint8_t product_type, uint8_t data_type)
 
void livox_ros::EulerAnglesToRotationMatrix (EulerAngle euler, RotationMatrix matrix)
 
PointConvertHandler livox_ros::GetConvertHandler (uint8_t data_type)
 
uint32_t livox_ros::GetEchoNumPerPoint (uint32_t data_type)
 
uint32_t livox_ros::GetEthPacketLen (uint32_t data_type)
 
uint32_t livox_ros::GetLaserLineNumber (uint32_t product_type)
 
uint32_t livox_ros::GetPacketInterval (uint32_t product_type, uint32_t data_type)
 
uint32_t livox_ros::GetPacketNumPerSec (uint32_t product_type, uint32_t data_type)
 
uint32_t livox_ros::GetPointInterval (uint32_t product_type)
 
uint32_t livox_ros::GetPointLen (uint32_t data_type)
 
uint32_t livox_ros::GetPointsPerPacket (uint32_t data_type)
 
uint64_t livox_ros::GetStoragePacketTimestamp (StoragePacket *packet, uint8_t data_src)
 
bool livox_ros::IsFilePathValid (const char *path_str)
 
bool livox_ros::IsTripleFloatNoneZero (float x, float y, float z)
 
bool livox_ros::IsTripleIntNoneZero (int32_t x, int32_t y, int32_t z)
 
uint8_tlivox_ros::LivoxImuDataProcess (uint8_t *point_buf, LivoxEthPacket *eth_packet)
 
uint8_tlivox_ros::LivoxPointToPxyzrtl (uint8_t *point_buf, LivoxEthPacket *eth_packet, ExtrinsicParameter &extrinsic, uint32_t line_num)
 
void livox_ros::ParseCommandlineInputBdCode (const char *cammandline_str, std::vector< std::string > &bd_code_list)
 
void livox_ros::PointExtrisincCompensation (PointXyz *dst_point, ExtrinsicParameter &extrinsic)
 
uint64_t livox_ros::RawLdsStampToNs (LdsStamp &timestamp, uint8_t timestamp_type)
 
void livox_ros::RawPointConvert (LivoxPointXyzr *dst_point, LivoxPoint *raw_point)
 
void livox_ros::RawPointConvert (LivoxPointXyzr *dst_point, LivoxRawPoint *raw_point)
 
void livox_ros::RawPointConvert (LivoxPointXyzr *dst_point, LivoxSpherPoint *raw_point)
 
void livox_ros::RawPointConvert (LivoxPointXyzr *dst_point1, LivoxPointXyzr *dst_point2, LivoxDualExtendSpherPoint *raw_point)
 
void livox_ros::RawPointConvert (LivoxPointXyzr *dst_point1, LivoxPointXyzr *dst_point2, LivoxPointXyzr *dst_point3, LivoxTripleExtendSpherPoint *raw_point)
 
void livox_ros::ZeroPointDataOfStoragePacket (StoragePacket *storage_packet)
 

Variables

const DataTypePointInfoPair livox_ros::data_type_info_pair_table [kMaxPointDataType]
 
const int livox_ros::kBdCodeSize = 15
 
const uint32_t livox_ros::KCartesianPointSize = 13
 
const int64_t livox_ros::kDeviceDisconnectThreshold = 1000000000
 
const uint32_t livox_ros::kDeviceTypeLidarMid70 = 6
 
const uint32_t livox_ros::KEthPacketHeaderLength = 18
 
const uint32_t livox_ros::kImuEthPacketQueueSize = 256
 
const uint32_t livox_ros::kMaxEthPacketQueueSize = 131072
 
const int64_t livox_ros::kMaxPacketTimeGap = 1700000
 
const uint32_t livox_ros::kMaxPointPerEthPacket = 100
 
const uint32_t livox_ros::kMaxProductType = 9
 
const uint32_t livox_ros::kMaxSourceLidar = 32
 
const uint32_t livox_ros::kMinEthPacketQueueSize = 32
 
const int64_t livox_ros::kNsPerSecond = 1000000000
 
const int64_t livox_ros::kPacketTimeGap = 1000000
 
const int livox_ros::kPathStrMaxSize = 256
 
const int livox_ros::kPathStrMinSize = 4
 
const uint32_t livox_ros::kPointXYZRSize = 16
 
const uint32_t livox_ros::kPointXYZRTRSize = 18
 
const uint64_t livox_ros::kRosTimeMax = 4294967296000000000
 
const uint32_t livox_ros::KSphericalPointSzie = 9
 
const double livox_ros::PI = 3.14159265358979323846
 
const ProductTypePointInfoPair livox_ros::product_type_info_pair_table [kMaxProductType]
 


livox_ros_driver
Author(s): Livox Dev Team
autogenerated on Mon Mar 15 2021 02:40:46