types.h
Enums
-
enum ouster::sensor::lidar_mode
Constants used for configuration. Refer to the sensor documentation for the meaning of each option.
Values:
-
enumerator MODE_UNSPEC
lidar mode: unspecified
-
enumerator MODE_512x10
lidar mode: 10 scans of 512 columns per second
-
enumerator MODE_512x20
lidar mode: 20 scans of 512 columns per second
-
enumerator MODE_1024x10
lidar mode: 10 scans of 1024 columns per second
-
enumerator MODE_1024x20
lidar mode: 20 scans of 1024 columns per second
-
enumerator MODE_2048x10
lidar mode: 10 scans of 2048 columns per second
-
enumerator MODE_4096x5
lidar mode: 5 scans of 4096 columns per second. Only available on select sensors
-
enumerator MODE_UNSPEC
-
enum ouster::sensor::timestamp_mode
Mode controlling timestamp method. Refer to the sensor documentation for the meaning of each option.
Values:
-
enumerator TIME_FROM_UNSPEC
Timestamp mode unspecified.
-
enumerator TIME_FROM_INTERNAL_OSC
Use the internal clock.
-
enumerator TIME_FROM_SYNC_PULSE_IN
A free running counter synced to the SYNC_PULSE_IN input counts seconds (# of pulses) and nanoseconds since sensor turn on.
-
enumerator TIME_FROM_PTP_1588
Synchronize with an external PTP master.
-
enumerator TIME_FROM_UNSPEC
-
enum ouster::sensor::timestamp_mode
Mode controlling timestamp method. Refer to the sensor documentation for the meaning of each option.
Values:
-
enumerator TIME_FROM_UNSPEC
Timestamp mode unspecified.
-
enumerator TIME_FROM_INTERNAL_OSC
Use the internal clock.
-
enumerator TIME_FROM_SYNC_PULSE_IN
A free running counter synced to the SYNC_PULSE_IN input counts seconds (# of pulses) and nanoseconds since sensor turn on.
-
enumerator TIME_FROM_PTP_1588
Synchronize with an external PTP master.
-
enumerator TIME_FROM_UNSPEC
-
enum ouster::sensor::OperatingMode
Mode controlling sensor operation. Refer to the sensor documentation for the meaning of each option.
Values:
-
enumerator OPERATING_UNSPEC
Unspecified sensor operation.
-
enumerator OPERATING_NORMAL
Normal sensor operation.
-
enumerator OPERATING_STANDBY
Standby.
-
enumerator OPERATING_UNSPEC
-
enum ouster::sensor::MultipurposeIOMode
Mode controlling ways to input timesync information. Refer to the sensor documentation for the meaning of each option.
Values:
-
enumerator MULTIPURPOSE_OFF
Multipurpose IO is turned off (default)
-
enumerator MULTIPURPOSE_INPUT_NMEA_UART
Used in conjunction with timestamp_mode::TIME_FROM_SYNC_PULSE_IN to enable time pulses in on the multipurpose io input.
-
enumerator MULTIPURPOSE_OUTPUT_FROM_INTERNAL_OSC
Output a SYNC_PULSE_OUT signal synchronized with the internal clock.
-
enumerator MULTIPURPOSE_OUTPUT_FROM_SYNC_PULSE_IN
Output a SYNC_PULSE_OUT signal synchronized with a SYNC_PULSE_IN provided to the unit.
-
enumerator MULTIPURPOSE_OUTPUT_FROM_PTP_1588
Output a SYNC_PULSE_OUT signal synchronized with an external PTP IEEE 1588 master.
-
enumerator MULTIPURPOSE_OUTPUT_FROM_ENCODER_ANGLE
Output a SYNC_PULSE_OUT signal with a user defined rate in an integer number of degrees.
-
enumerator MULTIPURPOSE_OFF
-
enum ouster::sensor::Polarity
Polarity represents polarity of NMEA UART and SYNC_PULSE inputs and outputs. See sensor docs for more details.
Values:
-
enumerator POLARITY_ACTIVE_LOW
ACTIVE_LOW.
-
enumerator POLARITY_ACTIVE_HIGH
ACTIVE_HIGH.
-
enumerator POLARITY_ACTIVE_LOW
-
enum ouster::sensor::NMEABaudRate
Baud rate the sensor attempts for NMEA UART input $GPRMC messages See sensor docs for more details.
Values:
-
enumerator BAUD_9600
9600 bits per second UART baud rate
-
enumerator BAUD_115200
115200 bits per second UART baud rate
-
enumerator BAUD_9600
-
enum ouster::sensor::UDPProfileLidar
Profile indicating packet format of lidar data.
Values:
-
enumerator PROFILE_LIDAR_UNKNOWN
-
enumerator PROFILE_LIDAR_LEGACY
Legacy lidar data
-
enumerator PROFILE_RNG19_RFL8_SIG16_NIR16_DUAL
Dual Returns data
-
enumerator PROFILE_RNG19_RFL8_SIG16_NIR16
Single Returns data
-
enumerator PROFILE_RNG15_RFL8_NIR8
Single Returns Low Data Rate
-
enumerator PROFILE_FIVE_WORD_PIXEL
Five Word Profile
-
enumerator PROFILE_FUSA_RNG15_RFL8_NIR8_DUAL
FuSa two-word pixel
-
enumerator PROFILE_LIDAR_UNKNOWN
-
enum ouster::sensor::UDPProfileIMU
Profile indicating packet format of IMU data.
Values:
-
enumerator PROFILE_IMU_LEGACY
Legacy IMU data.
-
enumerator PROFILE_IMU_LEGACY
-
enum ouster::sensor::FullScaleRange
Full scale range for IMU data.
Values:
-
enumerator FSR_NORMAL
Higher precision lower range measurement mode
-
enumerator FSR_EXTENDED
Lower precision higher range measurement mode
-
enumerator FSR_NORMAL
-
enum ouster::sensor::ReturnOrder
Priority of returns for the lidar to output. Lidar can have more than 1 or 2 detected “returns”. This indicates to the lidar which ones it should output. See sensor docs for more details.
Values:
-
enumerator ORDER_STRONGEST_TO_WEAKEST
Lidar returns the strongest returns first
-
enumerator ORDER_FARTHEST_TO_NEAREST
Lidar returns the furthest returns first
-
enumerator ORDER_NEAREST_TO_FARTHEST
Lidar returns the nearest returns first
-
enumerator ORDER_DEPRECATED_STRONGEST_RETURN_FIRST
DEPRECATED: Only Present In Old Test Firmware
-
enumerator ORDER_DEPRECATED_LAST_RETURN_FIRST
-
enumerator ORDER_STRONGEST_TO_WEAKEST
-
enum ouster::sensor::ThermalShutdownStatus
Thermal Shutdown status.
Values:
-
enumerator THERMAL_SHUTDOWN_NORMAL
Normal operation.
-
enumerator THERMAL_SHUTDOWN_IMMINENT
Thermal Shutdown imminent.
-
enumerator THERMAL_SHUTDOWN_NORMAL
-
enum ouster::sensor::ShotLimitingStatus
Shot Limiting status.
Values:
-
enumerator SHOT_LIMITING_NORMAL
Normal operation.
-
enumerator SHOT_LIMITING_IMMINENT
Shot limiting imminent.
-
enumerator SHOT_LIMITING_REDUCTION_0_10
Shot limiting reduction by 0 to 10%.
-
enumerator SHOT_LIMITING_REDUCTION_10_20
Shot limiting reduction by 10 to 20%.
-
enumerator SHOT_LIMITING_REDUCTION_20_30
Shot limiting reduction by 20 to 30%.
-
enumerator SHOT_LIMITING_REDUCTION_30_40
Shot limiting reduction by 30 to 40%.
-
enumerator SHOT_LIMITING_REDUCTION_40_50
Shot limiting reduction by 40 to 50%.
-
enumerator SHOT_LIMITING_REDUCTION_50_60
Shot limiting reduction by 50 to 60%.
-
enumerator SHOT_LIMITING_REDUCTION_60_70
Shot limiting reduction by 60 to 70%.
-
enumerator SHOT_LIMITING_REDUCTION_70_75
Shot limiting reduction by 70 to 80%.
-
enumerator SHOT_LIMITING_NORMAL
Variables
-
double ouster::sensor::range_unit = 0.001
Unit of range from sensor packet, in meters.
-
const std::vector<double> ouster::sensor::gen1_altitude_angles
Design values for altitude and azimuth offset angles for gen1 sensors.
-
const std::vector<double> ouster::sensor::gen1_azimuth_angles
Design values for altitude and azimuth offset angles for gen1 sensors.
Class
-
class 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 Types
- FieldIter = decltype(field_types_)::const_iterator
iterator over field types of packet
Public Functions
-
uint16_t packet_type(const uint8_t *lidar_buf) const
Read the packet type packet header.
- Parameters:
lidar_buf – [in] the lidar buf.
- Returns:
the packet type.
-
uint32_t frame_id(const uint8_t *lidar_buf) const
Read the frame_id packet header.
- Parameters:
lidar_buf – [in] the lidar buf.
- Returns:
the frame id.
-
uint32_t init_id(const uint8_t *lidar_buf) const
Read the initialization id packet header.
- Parameters:
lidar_buf – [in] the lidar buf.
- Returns:
the init id.
-
uint64_t prod_sn(const uint8_t *lidar_buf) const
Read the packet serial number header.
- Parameters:
lidar_buf – [in] the lidar buf.
- Returns:
the serial number.
-
uint8_t alert_flags(const uint8_t *lidar_buf) const
Read the alert flags.
- Parameters:
lidar_buf – [in] the lidar buf.
- Returns:
the alert flags byte.
-
uint16_t countdown_thermal_shutdown(const uint8_t *lidar_buf) const
Read the packet thermal shutdown countdown
- Parameters:
lidar_buf – [in] the lidar buf.
- Returns:
the thermal shutdown countdown.
-
uint16_t countdown_shot_limiting(const uint8_t *lidar_buf) const
Read the packet shot limiting countdown
- Parameters:
lidar_buf – [in] the lidar buf.
- Returns:
the shot limiting countdown.
-
uint8_t thermal_shutdown(const uint8_t *lidar_buf) const
Read the packet thermal shutdown header.
- Parameters:
lidar_buf – [in] the lidar buf.
- Returns:
the thermal shutdown status
-
uint8_t shot_limiting(const uint8_t *lidar_buf) const
Read the packet shot limiting header.
- Parameters:
lidar_buf – [in] the lidar buf.
- Returns:
the shot limiting status
-
ChanFieldType field_type(const std::string &f) const
Get the bit width of the specified channel field.
- Parameters:
f – [in] the channel field to query.
- Returns:
a type tag specifying the bitwidth of the requested field or ChannelFieldType::VOID if it is not supported by the packet format.
-
FieldIter begin() const
A const forward iterator over field / type pairs.
- Returns:
Iterator pointing to the first element in the field type of packets.
-
FieldIter end() const
A const forward iterator over field / type pairs.
- Returns:
Iterator pointing to the last element in the field type of packets.
Get pointer to the packet footer of a lidar buffer.
- Parameters:
lidar_buf – [in] the lidar buffer.
- Returns:
pointer to packet footer of lidar buffer, can be nullptr if packet format doesn’t have packet footer.
-
const uint8_t *nth_col(int n, const uint8_t *lidar_buf) const
Get pointer to nth column of a lidar buffer.
- Parameters:
n – [in] which column.
lidar_buf – [in] the lidar buffer.
- Returns:
pointer to nth column of lidar buffer.
-
uint64_t col_timestamp(const uint8_t *col_buf) const
Read column timestamp from column buffer.
- Parameters:
col_buf – [in] the column buffer.
- Returns:
column timestamp.
-
uint16_t col_measurement_id(const uint8_t *col_buf) const
Read measurement id from column buffer.
- Parameters:
col_buf – [in] the column buffer.
- Returns:
column measurement id.
-
uint32_t col_status(const uint8_t *col_buf) const
Read column status from column buffer.
- Parameters:
col_buf – [in] the column buffer.
- Returns:
column status.
-
uint32_t col_encoder(const uint8_t *col_buf) const
Encodes the column value.
This function encodes the column value.
- Deprecated:
Use col_measurement_id instead. This function will be removed in future versions.
- Deprecated:
Encoder count is deprecated as it is redundant with measurement id, barring a multiplication factor which varies by lidar mode. Use col_measurement_id instead
- Parameters:
col_buf – [in] A measurement block pointer returned by
nth_col()
.- Returns:
Encoded column value.
-
uint16_t col_frame_id(const uint8_t *col_buf) const
Retrieves the current frame id.
This function returns the frame id of a column
- Deprecated:
Use frame_id instead. This function will be removed in future versions.
- Deprecated:
Use frame_id instead
- Parameters:
col_buf – [in] A measurement block pointer returned by
nth_col()
.- Returns:
The current frame id.
-
template<typename T>
void col_field(const uint8_t *col_buf, const std::string &f, T *dst, int dst_stride = 1) const Copy the specified channel field out of a packet measurement block.
- Template Parameters:
T – T should be a numeric type large enough to store values of the specified field. Otherwise, data will be truncated.
- Parameters:
col_buf – [in] a measurement block pointer returned by
nth_col()
.f – [in] the channel field to copy.
dst – [out] destination array of size pixels_per_column * dst_stride.
dst_stride – [in] stride for writing to the destination array.
-
int block_parsable() const
Returns maximum available size of parsing block usable with block_field
- Returns:
if packet format does not allow for block parsing, returns 0
-
template<typename T, int BlockDim>
void block_field(Eigen::Ref<img_t<T>> field, const std::string &f, const uint8_t *lidar_buf) const Copy the specified channel field out of a packet measurement block. Faster traversal than col_field, but has to copy the entire packet all at once.
- Template Parameters:
T – T should be a numeric type large enough to store values of the specified field. Otherwise, data will be truncated.
- Parameters:
field – [out] destination eigen array
f – [in] the channel field to copy.
lidar_buf – [in] the lidar buffer.
-
const uint8_t *nth_px(int n, const uint8_t *col_buf) const
Get pointer to nth pixel of a column buffer.
- Parameters:
n – [in] which pixel.
col_buf – [in] the column buffer.
- Returns:
pointer to nth pixel of a column buffer.
-
uint64_t imu_sys_ts(const uint8_t *imu_buf) const
Read sys ts from imu packet buffer.
- Parameters:
imu_buf – [in] the imu packet buffer.
- Returns:
sys ts from imu pacet buffer.
-
uint64_t imu_accel_ts(const uint8_t *imu_buf) const
Read acceleration timestamp.
- Parameters:
imu_buf – [in] the imu packet buffer.
- Returns:
acceleration ts from imu packet buffer.
-
uint64_t imu_gyro_ts(const uint8_t *imu_buf) const
Read gyro timestamp.
- Parameters:
imu_buf – [in] the imu packet buffer.
- Returns:
gyro ts from imu packet buffer.
-
float imu_la_x(const uint8_t *imu_buf) const
Read acceleration in x.
- Parameters:
imu_buf – [in] the imu packet buffer.
- Returns:
acceleration in x.
-
float imu_la_y(const uint8_t *imu_buf) const
Read acceleration in y.
- Parameters:
imu_buf – [in] the imu packet buffer.
- Returns:
acceleration in y.
-
float imu_la_z(const uint8_t *imu_buf) const
Read acceleration in z.
- Parameters:
imu_buf – [in] the imu packet buffer.
- Returns:
acceleration in z.
-
float imu_av_x(const uint8_t *imu_buf) const
Read angular velocity in x.
- Parameters:
imu_buf – [in] the imu packet buffer.
- Returns:
angular velocity in x.
-
float imu_av_y(const uint8_t *imu_buf) const
Read angular velocity in y.
- Parameters:
imu_buf – [in] the imu packet buffer.
- Returns:
angular velocity in y.
-
float imu_av_z(const uint8_t *imu_buf) const
Read angular velocity in z.
- Parameters:
imu_buf – [in] the imu packet buffer.
- Returns:
angular velocity in z.
-
uint64_t field_value_mask(const std::string &f) const
Get the mask of possible values that can be parsed by the channel field
- Parameters:
f – [in] the channel field
- Returns:
mask of possible values
-
int field_bitness(const std::string &f) const
Get number of bits in the channel field
- Parameters:
f – [in] the channel field
- Returns:
number of bits
-
optional<uint64_t> crc(const uint8_t *lidar_buf) const
Return the CRC contained in the packet if present
- Parameters:
lidar_buf – [in] the lidar buffer.
- Returns:
crc contained in the packet if present
-
uint64_t calculate_crc(const uint8_t *lidar_buf) const
Calculate the CRC for the given packet.
- Parameters:
lidar_buf – [in] the lidar buffer.
- Returns:
calculated crc of the packet
-
class product_info
Stores parsed information about the prod line
Public Functions
-
product_info()
Default constructor for product_info that sets everything to blank.
Public Members
-
const std::string full_product_info
The original full product line string.
-
const std::string form_factor
The form factor of the sensor. This will look like: “OS1” or “OS2” and such.
-
const bool short_range
Is the sensor a short range build or not.
-
const std::string beam_config
The beam configuration of the sensor.
-
const int beam_count
The number of beams on the sensor.
Public Static Functions
-
static product_info create_product_info(std::string product_info_string)
Static method used to create product_info classes.
- Throws:
std::runtime_error – on a bad product info line.
- Parameters:
product_info_string – [in] The product info string to create the product_info class from.
- Returns:
The new product_info class.
-
product_info()
-
class sensor_info
Stores parsed information from metadata.
Public Functions
-
std::string to_json_string() const
Return an updated version of the metadata string reflecting any changes to the sensor_info. Errors out if changes are incompatible but does not check for validity
- Returns:
json serialized version of this object
-
ouster::util::version get_version() const
Parse and return version info about this sensor.
- Returns:
sensor version info
-
int num_returns() const
Get the number of returns output by the sensor in its current setup.
- Returns:
number of returns
Public Members
-
uint64_t sn = {}
sensor serial number corresponding to prod_sn in metadata.json
-
std::string fw_rev = {}
fw revision corresponding to build_rev in metadata.json
-
std::string prod_line = {}
prod line
-
data_format format = {}
data format of sensor
-
std::vector<double> beam_azimuth_angles = {}
beam azimuth angles for 3D projection
-
std::vector<double> beam_altitude_angles = {}
beam altitude angles for 3D projection
-
double lidar_origin_to_beam_origin_mm = {}
distance between lidar origin and beam origin in mm
-
mat4d lidar_to_sensor_transform = mat4d::Zero()
transform between lidar and sensor coordinate frames
-
mat4d extrinsic = mat4d::Zero()
user-convenience client-side assignable extrinsic matrix, currently is not read from metadata.json
-
uint32_t init_id = {}
initialization ID updated every reinit
-
std::string build_date = {}
build date from FW sensor_info
-
std::string image_rev = {}
image rev from FW sensor_info
-
std::string prod_pn = {}
prod pn
-
std::string status = {}
sensor status at time of pulling metadata
-
calibration_status cal = {}
sensor calibration
-
sensor_config config = {}
parsed sensor config if available from metadata
-
std::string user_data = {}
userdata from sensor if available
-
std::string to_json_string() const
Structs
-
struct calibration_status
Stores from-sensor calibration information
-
struct data_format
Stores data format information.
Public Functions
-
int valid_columns_per_frame() const
Return the number of valid columns per complete frame of data with the column_window applied.
- Returns:
the number of columns
-
int packets_per_frame() const
Return the number of valid packets actually sent per frame of data with the column_window applied.
- Returns:
the number of packets
Public Members
-
uint32_t pixels_per_column
pixels per column
-
uint32_t columns_per_packet
columns per packet
-
uint32_t columns_per_frame
columns per frame, should match with lidar mode
-
std::vector<int> pixel_shift_by_row
shift of pixels by row to enable destagger
-
ColumnWindow column_window
window of columns over which sensor fires
-
UDPProfileLidar udp_profile_lidar = {}
profile of lidar packet
-
UDPProfileIMU udp_profile_imu = {}
profile of imu packet
-
uint16_t fps
frames per second
-
int valid_columns_per_frame() const
-
struct sensor_config
Struct for sensor configuration parameters.
Public Members
-
optional<std::string> udp_dest
The destination address for the lidar/imu data to be sent to
-
optional<uint16_t> udp_port_lidar
The destination port for the lidar data to be sent to
-
optional<uint16_t> udp_port_imu
The destination port for the imu data to be sent to
-
optional<sensor::timestamp_mode> timestamp_mode
The timestamp mode for the sensor to use. Refer to timestamp_mode for more details.
-
optional<sensor::lidar_mode> lidar_mode
The lidar mode for the sensor to use. Refer to lidar_mode for more details.
-
optional<OperatingMode> operating_mode
The operating mode for the sensor to use. Refer to OperatingMode for more details.
-
optional<MultipurposeIOMode> multipurpose_io_mode
The multipurpose io mode for the sensor to use. Refer to MultipurposeIOMode for more details.
-
optional<AzimuthWindow> azimuth_window
The azimuth window for the sensor to use. Refer to AzimuthWindow for more details.
-
optional<double> signal_multiplier
Multiplier for signal strength of sensor. See the sensor docs for more details on usage.
-
optional<Polarity> nmea_in_polarity
The nmea polarity for the sensor to use. Refer to Polarity for more details.
-
optional<bool> nmea_ignore_valid_char
Whether NMEA UART input $GPRMC messages should be ignored. Refer to the sensor docs for more details.
-
optional<NMEABaudRate> nmea_baud_rate
The nmea baud rate for the sensor to use. Refer to Polarity> for more details.
-
optional<int> nmea_leap_seconds
Number of leap seconds added to UDP timestamp. See the sensor docs for more details.
-
optional<Polarity> sync_pulse_in_polarity
Polarity of SYNC_PULSE_IN input. See Polarity for more details.
-
optional<Polarity> sync_pulse_out_polarity
Polarity of SYNC_PULSE_OUT output. See Polarity for more details.
-
optional<int> sync_pulse_out_angle
Angle in degrees that sensor traverses between each SYNC_PULSE_OUT pulse. See senor docs for more details.
-
optional<int> sync_pulse_out_pulse_width
Width of SYNC_PULSE_OUT pulse in ms. See sensor docs for more details.
-
optional<int> sync_pulse_out_frequency
Frequency of SYNC_PULSE_OUT pulse in Hz. See sensor docs for more details.
-
optional<bool> phase_lock_enable
Whether phase locking is enabled. See sensor docs for more details.
-
optional<int> phase_lock_offset
Angle that sensors are locked to in millidegrees. See sensor docs for more details.
-
optional<int> columns_per_packet
Columns per packet. See sensor docs for more details.
-
optional<UDPProfileLidar> udp_profile_lidar
The lidar profile for the sensor to use. Refer to UDPProfileLidar for more details.
-
optional<UDPProfileIMU> udp_profile_imu
The imu profile for the sensor to use. Refer to UDPProfileIMU for more details.
-
optional<FullScaleRange> gyro_fsr
The gyro full scale measurement range to use. Refer to FullScaleRange for more details.
-
optional<FullScaleRange> accel_fsr
The accelerometer full scale measurement range to use. Refer to FullScaleRange for more details.
-
optional<ReturnOrder> return_order
The priority of returns for the lidar to output. Refer to ReturnOrder for more details.
-
optional<int> min_range_threshold_cm
The minimum detection range of the lidar in cm.
-
std::map<std::string, std::string> extra_options
Extra config options to apply that arent in the standard set. Each value should be stringized json
-
optional<std::string> udp_dest
Namespaces
-
namespace ChanField
Tag to identitify a paricular value reported in the sensor channel data block.
-
namespace ChanField
Variables
-
static cf_type RANGE = "RANGE"
1st return range in mm
-
static cf_type RANGE2 = "RANGE2"
2nd return range in mm
-
static cf_type SIGNAL = "SIGNAL"
1st return signal in photons
-
static cf_type SIGNAL2 = "SIGNAL2"
2nd return signal in photons
-
static cf_type REFLECTIVITY = "REFLECTIVITY"
sensitivity in FW 2.1+. See sensor docs for more details
1st return reflectivity, calibrated by range and sensor
-
static cf_type REFLECTIVITY2 = "REFLECTIVITY2"
sensitivity in FW 2.1+. See sensor docs for more details
2nd return reflectivity, calibrated by range and sensor
-
static cf_type NEAR_IR = "NEAR_IR"
near_ir in photons
-
static cf_type FLAGS = "FLAGS"
1st return flags
-
static cf_type FLAGS2 = "FLAGS2"
2nd return flags
-
static cf_type RAW_HEADERS = "RAW_HEADERS"
raw headers for packet/footer/column for dev use
-
static cf_type RAW32_WORD5 = "RAW32_WORD5"
raw word access to packet for dev use
-
static cf_type RAW32_WORD6 = "RAW32_WORD6"
raw word access to packet for dev use
-
static cf_type RAW32_WORD7 = "RAW32_WORD7"
raw word access to packet for dev use
-
static cf_type RAW32_WORD8 = "RAW32_WORD8"
raw word access to packet for dev use
-
static cf_type RAW32_WORD9 = "RAW32_WORD9"
raw word access to packet for dev use
-
static cf_type RAW32_WORD1 = "RAW32_WORD1"
raw word access to packet for dev use
-
static cf_type RAW32_WORD2 = "RAW32_WORD2"
raw word access to packet for dev use
-
static cf_type RAW32_WORD3 = "RAW32_WORD3"
raw word access to packet for dev use
-
static cf_type RAW32_WORD4 = "RAW32_WORD4"
raw word access to packet for dev use
-
static cf_type RANGE = "RANGE"
Typedefs
-
template<typename T>
using ouster::img_t = Eigen::Array<T, -1, -1, Eigen::RowMajor> For image operations.
- Template Parameters:
T – The data type for the array.
-
using ouster::mat4d = Eigen::Matrix<double, 4, 4, Eigen::DontAlign>
Used for transformations.
-
using ouster::PointsD = PointsT<double>
-
using ouster::PointsF = PointsT<float>
Functions
Warning
doxygenfunction: Unable to resolve function “ouster::sensor::to_string” with arguments (const ouster::sensor::product_info&) in doxygen xml output for project “cpp_api” from directory: /ouster-sdk/docs/_build/latest/doctrees/xml. Potential matches:
- std::string to_string(AzimuthWindow azimuth_window)
- std::string to_string(ChanFieldType ft)
- std::string to_string(FullScaleRange full_scale_range)
- std::string to_string(MultipurposeIOMode mode)
- std::string to_string(NMEABaudRate rate)
- std::string to_string(OperatingMode mode)
- std::string to_string(Polarity polarity)
- std::string to_string(ReturnOrder return_order)
- std::string to_string(ShotLimitingStatus shot_limiting_status)
- std::string to_string(ThermalShutdownStatus thermal_shutdown_status)
- std::string to_string(UDPProfileIMU profile)
- std::string to_string(UDPProfileLidar profile)
- std::string to_string(const calibration_status &cal)
- std::string to_string(const product_info &info)
- std::string to_string(const sensor_config &config)
- std::string to_string(const sensor_info &info)
- std::string to_string(lidar_mode mode)
- std::string to_string(timestamp_mode mode)
-
std::string ouster::sensor::to_string(lidar_mode mode)
Get string representation of a lidar mode.
- Parameters:
mode – [in] lidar_mode to get the string representation for.
- Returns:
string representation of the lidar mode, or “UNKNOWN”.
-
lidar_mode ouster::sensor::lidar_mode_of_string(const std::string &s)
Get lidar mode from string.
- Parameters:
s – [in] String to decode.
- Returns:
lidar mode corresponding to the string, or 0 on error.
-
uint32_t ouster::sensor::n_cols_of_lidar_mode(lidar_mode mode)
Get number of columns in a scan for a lidar mode.
- Parameters:
mode – [in] lidar_mode to get the number of columns for.
- Returns:
number of columns per rotation for the mode.
-
int ouster::sensor::frequency_of_lidar_mode(lidar_mode mode)
Get the lidar rotation frequency from lidar mode.
- Parameters:
mode – [in] Lidar mode to get the rotation frequency from.
- Returns:
lidar rotation frequency in Hz.
-
std::string ouster::sensor::to_string(timestamp_mode mode)
Get string representation of a timestamp mode.
- Parameters:
mode – [in] timestamp_mode to get the string representation for.
- Returns:
string representation of the timestamp mode, or “UNKNOWN”.
-
timestamp_mode ouster::sensor::timestamp_mode_of_string(const std::string &s)
Get timestamp mode from string.
- Parameters:
s – [in] String to decode into a timestamp mode.
- Returns:
timestamp mode corresponding to the string, or 0 on error.
-
std::string ouster::sensor::to_string(OperatingMode mode)
Get string representation of an operating mode.
- Parameters:
mode – [in] Operating mode to get the string representation from.
- Returns:
string representation of the operating mode, or “UNKNOWN”.
-
optional<OperatingMode> ouster::sensor::operating_mode_of_string(const std::string &s)
Get operating mode from string.
- Parameters:
s – [in] String to get the operating mode from.
- Returns:
operating mode corresponding to the string, or 0 on error.
-
std::string ouster::sensor::to_string(MultipurposeIOMode mode)
Get string representation of a multipurpose io mode.
- Parameters:
mode – [in] Multipurpose io mode to get a string representation from.
- Returns:
string representation of the multipurpose io mode, or “UNKNOWN”.
-
optional<MultipurposeIOMode> ouster::sensor::multipurpose_io_mode_of_string(const std::string &s)
Get multipurpose io mode from string.
- Parameters:
s – [in] String to decode into a multipurpose io mode.
- Returns:
multipurpose io mode corresponding to the string, or 0 on error.
-
std::string ouster::sensor::to_string(Polarity polarity)
Get string representation of a polarity.
- Parameters:
polarity – [in] The polarity to get the string representation of.
- Returns:
string representation of the polarity, or “UNKNOWN”.
-
optional<Polarity> ouster::sensor::polarity_of_string(const std::string &s)
Get polarity from string.
- Parameters:
s – [in] The string to decode into a polarity.
- Returns:
polarity corresponding to the string, or 0 on error.
-
std::string ouster::sensor::to_string(NMEABaudRate rate)
Get string representation of a NMEA Baud Rate.
- Parameters:
rate – [in] The NNEABaudRate to get the string representation of.
- Returns:
string representation of the NMEA baud rate, or “UNKNOWN”.
-
optional<NMEABaudRate> ouster::sensor::nmea_baud_rate_of_string(const std::string &s)
Get nmea baud rate from string.
- Parameters:
s – [in] The string to decode into a NMEA baud rate.
- Returns:
nmea baud rate corresponding to the string, or 0 on error.
-
std::string ouster::sensor::to_string(AzimuthWindow azimuth_window)
Get string representation of an Azimuth Window.
- Parameters:
azimuth_window – [in] The azimuth window to get the string representation. of
- Returns:
string representation of the azimuth window.
-
std::string ouster::sensor::to_string(UDPProfileLidar profile)
Get string representation of a lidar profile.
- Parameters:
profile – [in] The profile to get the string representation of.
- Returns:
string representation of the lidar profile.
-
optional<UDPProfileLidar> ouster::sensor::udp_profile_lidar_of_string(const std::string &s)
Get lidar profile from string.
- Parameters:
s – [in] The string to decode into a lidar profile.
- Returns:
lidar profile corresponding to the string, or nullopt on error.
-
std::string ouster::sensor::to_string(UDPProfileIMU profile)
Get string representation of an IMU profile.
- Parameters:
profile – [in] The profile to get the string representation of.
- Returns:
string representation of the lidar profile.
-
optional<UDPProfileIMU> ouster::sensor::udp_profile_imu_of_string(const std::string &s)
Get imu profile from string
- Parameters:
s – [in] The string to decode into an imu profile.
- Returns:
imu profile corresponding to the string, or nullopt on error.
-
std::string ouster::sensor::to_string(FullScaleRange full_scale_range)
Get string representation of a Full Scale Range.
- Parameters:
full_scale_range – [in] The shot limiting status to get the string representation of.
- Returns:
string representation of the full scale range.
-
optional<FullScaleRange> ouster::sensor::full_scale_range_of_string(const std::string &s)
Get full scale range setting from string
- Parameters:
s – [in] The string to decode into a full scale range.
- Returns:
full scale range corresponding to the string, or nullopt on error.
-
optional<ReturnOrder> ouster::sensor::return_order_of_string(const std::string &s)
Get return order setting from string
- Parameters:
s – [in] The string to decode into a return order.
- Returns:
return order corresponding to the string, or nullopt on error.
-
std::string ouster::sensor::to_string(ReturnOrder return_order)
Get string representation of a Return Order.
- Parameters:
return_order – [in] The return order to get the string representation of.
- Returns:
string representation of the return order.
-
std::string ouster::sensor::to_string(ShotLimitingStatus shot_limiting_status)
Get string representation of a Shot Limiting Status.
- Parameters:
shot_limiting_status – [in] The shot limiting status to get the string representation of.
- Returns:
string representation of the shot limiting status.
-
std::string ouster::sensor::to_string(ThermalShutdownStatus thermal_shutdown_status)
Get string representation of Thermal Shutdown Status.
- Parameters:
thermal_shutdown_status – [in] The thermal shutdown status to get the string representation of.
- Returns:
string representation of thermal shutdown status.
-
void ouster::sensor::check_signal_multiplier(const double signal_multiplier)
Determine validity of provided signal multiplier value
- Parameters:
signal_multiplier – [in] Signal multiplier value.
-
sensor_info ouster::sensor::metadata_from_json(const std::string &json_file, bool skip_beam_validation = false)
Parse metadata given path to a json file.
- Throws:
runtime_error – if json file does not exist or is malformed.
- Parameters:
json_file – [in] path to a json file containing sensor metadata.
skip_beam_validation – [in] whether to skip validation on metadata - not for use on recorded data or metadata from sensors
- Returns:
a sensor_info struct populated with a subset of the metadata.
-
sensor_config ouster::sensor::parse_config(const std::string &config)
Parse config text blob from the sensor into a sensor_config struct.
All fields are optional, and will only be set if found.
- Throws:
runtime_error – if the text is not valid json.
- Parameters:
config – [in] a text blob given by get_config from client.h.
- Returns:
a sensor_config struct populated with the sensor config. parameters.
Warning
doxygenfunction: Unable to resolve function “ouster::sensor::to_string” with arguments (const ouster::sensor::sensor_config&) in doxygen xml output for project “cpp_api” from directory: /ouster-sdk/docs/_build/latest/doctrees/xml. Potential matches:
- std::string to_string(AzimuthWindow azimuth_window)
- std::string to_string(ChanFieldType ft)
- std::string to_string(FullScaleRange full_scale_range)
- std::string to_string(MultipurposeIOMode mode)
- std::string to_string(NMEABaudRate rate)
- std::string to_string(OperatingMode mode)
- std::string to_string(Polarity polarity)
- std::string to_string(ReturnOrder return_order)
- std::string to_string(ShotLimitingStatus shot_limiting_status)
- std::string to_string(ThermalShutdownStatus thermal_shutdown_status)
- std::string to_string(UDPProfileIMU profile)
- std::string to_string(UDPProfileLidar profile)
- std::string to_string(const calibration_status &cal)
- std::string to_string(const product_info &info)
- std::string to_string(const sensor_config &config)
- std::string to_string(const sensor_info &info)
- std::string to_string(lidar_mode mode)
- std::string to_string(timestamp_mode mode)
Warning
doxygenfunction: Unable to resolve function “ouster::sensor::to_string” with arguments (const ouster::sensor::calibration_status&) in doxygen xml output for project “cpp_api” from directory: /ouster-sdk/docs/_build/latest/doctrees/xml. Potential matches:
- std::string to_string(AzimuthWindow azimuth_window)
- std::string to_string(ChanFieldType ft)
- std::string to_string(FullScaleRange full_scale_range)
- std::string to_string(MultipurposeIOMode mode)
- std::string to_string(NMEABaudRate rate)
- std::string to_string(OperatingMode mode)
- std::string to_string(Polarity polarity)
- std::string to_string(ReturnOrder return_order)
- std::string to_string(ShotLimitingStatus shot_limiting_status)
- std::string to_string(ThermalShutdownStatus thermal_shutdown_status)
- std::string to_string(UDPProfileIMU profile)
- std::string to_string(UDPProfileLidar profile)
- std::string to_string(const calibration_status &cal)
- std::string to_string(const product_info &info)
- std::string to_string(const sensor_config &config)
- std::string to_string(const sensor_info &info)
- std::string to_string(lidar_mode mode)
- std::string to_string(timestamp_mode mode)
-
std::string ouster::sensor::client_version()
Get client version.
- Returns:
client version string
-
ouster::util::version ouster::sensor::firmware_version_from_metadata(const std::string &metadata)
Get version information from the metadata.
- Parameters:
metadata – [in] string.
- Returns:
version corresponding to the string, or invalid_version on error.
-
size_t ouster::sensor::field_type_size(ChanFieldType ft)
Get the size of the ChanFieldType in bytes.
- Parameters:
ft – [in] the field type
- Returns:
size of the field type in bytes
-
uint64_t ouster::sensor::field_type_mask(ChanFieldType ft)
Get the bit mask of the ChanFieldType.
- Parameters:
ft – [in] the field type
- Returns:
64 bit mask
-
std::string ouster::sensor::to_string(ChanFieldType ft)
Get string representation of a channel field.
- Parameters:
ft – [in] The field type to get the string representation of.
- Returns:
string representation of the channel field type.
Warning
doxygenfunction: Cannot find function “ouster::sensor::get_format” in doxygen xml output for project “cpp_api” from directory: /ouster-sdk/docs/_build/latest/doctrees/xml
Warning
doxygenfunction: Cannot find function “ouster::sensor::get_format” in doxygen xml output for project “cpp_api” from directory: /ouster-sdk/docs/_build/latest/doctrees/xml