Struct packet_format

Struct Documentation

struct packet_format

Table of accessors for extracting data from imu and lidar packets.

In the user guide, refer to section 9 for the lidar packet format and section 10 for imu packets.

For 0 <= n < columns_per_packet, nth_col(n, packet_buf) returns a pointer to the nth measurement block. For 0 <= m < pixels_per_column, nth_px(m, col_buf) returns the mth channel data block.

Use imu_la_{x,y,z} to access the acceleration in the corresponding direction. Use imu_av_{x,y,z} to read the angular velocity.

Public Members

const size_t lidar_packet_size
const size_t imu_packet_size
const int columns_per_packet
const int pixels_per_column
const int encoder_ticks_per_rev
const uint8_t *(*const nth_col)(int n, const uint8_t *lidar_buf)
uint64_t (*const col_timestamp)(const uint8_t *col_buf)
uint32_t (*const col_encoder)(const uint8_t *col_buf)
uint16_t (*const col_measurement_id)(const uint8_t *col_buf)
uint16_t (*const col_frame_id)(const uint8_t *col_buf)
uint32_t (*const col_status)(const uint8_t *col_buf)
const uint8_t *(*const nth_px)(int n, const uint8_t *col_buf)
uint32_t (*const px_range)(const uint8_t *px_buf)
uint16_t (*const px_reflectivity)(const uint8_t *px_buf)
uint16_t (*const px_signal)(const uint8_t *px_buf)
uint16_t (*const px_ambient)(const uint8_t *px_buf)
uint64_t (*const imu_sys_ts)(const uint8_t *imu_buf)
uint64_t (*const imu_accel_ts)(const uint8_t *imu_buf)
uint64_t (*const imu_gyro_ts)(const uint8_t *imu_buf)
float (*const imu_la_x)(const uint8_t *imu_buf)
float (*const imu_la_y)(const uint8_t *imu_buf)
float (*const imu_la_z)(const uint8_t *imu_buf)
float (*const imu_av_x)(const uint8_t *imu_buf)
float (*const imu_av_y)(const uint8_t *imu_buf)
float (*const imu_av_z)(const uint8_t *imu_buf)