5#include "../capnp_wrapper.h"
7#include <capnp/message.h>
8#include <capnp/serialize.h>
19 int32_t timestamp_nanosecs_ = 0;
20 uint32_t point_index_ = 0;
24 float radial_vel_ = 0.0f;
25 float snr_linear_ = 0.0f;
26 float calibrated_reflectance_ = 0.0f;
27 float noise_mean_estimate_ = 0.0f;
28 float min_ramp_snr_ = 0.0f;
84 float x()
const {
return x_; }
90 void set_x(
float value) { x_ = value; }
96 float y()
const {
return y_; }
102 void set_y(
float value) { y_ = value; }
108 float z()
const {
return z_; }
114 void set_z(
float value) { z_ = value; }
192 bool is_valid()
const {
return drop_reason_ == DropReason::SUCCESS; }
Base template class for Cap'n Proto wrappers.
Definition capnp_wrapper.h:23
Wrapper for PointData messages.
Definition voyant_point_data_wrapper.hpp:17
float snr_linear() const
Get signal-to-noise ratio (linear)
Definition voyant_point_data_wrapper.hpp:132
void set_noise_mean_estimate(float value)
Set noise mean estimate.
Definition voyant_point_data_wrapper.hpp:162
void set_y(float value)
Set Y position.
Definition voyant_point_data_wrapper.hpp:102
int32_t timestamp_nanosecs() const
Get timestamp in nanoseconds since frame start.
Definition voyant_point_data_wrapper.hpp:60
void set_radial_vel(float value)
Set radial velocity.
Definition voyant_point_data_wrapper.hpp:126
void set_snr_linear(float value)
Set signal-to-noise ratio.
Definition voyant_point_data_wrapper.hpp:138
void set_min_ramp_snr(float value)
Set minimum ramp SNR.
Definition voyant_point_data_wrapper.hpp:174
float x() const
Get X position in meters.
Definition voyant_point_data_wrapper.hpp:84
float calibrated_reflectance() const
Get calibrated reflectance.
Definition voyant_point_data_wrapper.hpp:144
uint16_t azimuth_index() const
Extract azimuth index from point_index.
~PointDataWrapper() override
Destructor.
void set_drop_reason(DropReason value)
Set point drop reason.
Definition voyant_point_data_wrapper.hpp:186
void fromProto(PointData::Reader reader) override
Update wrapper fields from a Cap'n Proto reader.
void set_timestamp_nanosecs(int32_t value)
Set timestamp in nanoseconds.
Definition voyant_point_data_wrapper.hpp:66
float range() const
Calculate the range (Euclidean distance from origin) of the point.
void set_point_index_components(uint16_t azimuth, uint16_t elevation)
Encode azimuth and elevation into the point_index field.
void set_z(float value)
Set Z position.
Definition voyant_point_data_wrapper.hpp:114
float z() const
Get Z position in meters.
Definition voyant_point_data_wrapper.hpp:108
void set_x(float value)
Set X position.
Definition voyant_point_data_wrapper.hpp:90
float min_ramp_snr() const
Get minimum ramp SNR.
Definition voyant_point_data_wrapper.hpp:168
uint16_t elevation_index() const
Extract elevation index from point_index.
float radial_vel() const
Get radial velocity in m/s.
Definition voyant_point_data_wrapper.hpp:120
void toProto(PointData::Builder &builder) const override
Write wrapper fields to a Cap'n Proto builder.
void set_point_index(uint32_t value)
Set point index.
Definition voyant_point_data_wrapper.hpp:78
void debugString(std::ostream &os) const override
Generate a debug string representation.
void set_calibrated_reflectance(float value)
Set calibrated reflectance.
Definition voyant_point_data_wrapper.hpp:150
float y() const
Get Y position in meters.
Definition voyant_point_data_wrapper.hpp:96
float noise_mean_estimate() const
Get noise mean estimate.
Definition voyant_point_data_wrapper.hpp:156
DropReason drop_reason() const
Get point drop reason.
Definition voyant_point_data_wrapper.hpp:180
uint32_t point_index() const
Get point index within frame.
Definition voyant_point_data_wrapper.hpp:72
bool is_valid() const
Check if point is valid based on drop reason.
Definition voyant_point_data_wrapper.hpp:192
Definition point.capnp.h:123
Definition point.capnp.h:72
DropReason_d8797e665e96107b
Definition point.capnp.h:22