The time of applicability and additional information for an incoming sensor measurement.
By convention this will be the first member of any message containing input measurements by the host to the device, as well as raw measurement outputs from the device.
The measurement_time field stores time of applicability/reception for the measurement data, expressed in one of the available source time bases (see SystemTimeSource). The timestamp will be converted to P1 time automatically by FusionEngine using an internal model of P1 vs. the specified source time.
On most platforms, incoming sensor measurements are timestamped automatically by FusionEngine when they arrive. To request timestamp on arrival, set measurement_time_source to either SystemTimeSource::TIMESTAMPED_ON_RECEPTION or SystemTimeSource::INVALID.
On some platforms, incoming sensor measurements may be timestamped externally by the host prior to arrival, either in GPS time (SystemTimeSource::GPS_TIME), or using a monotonic clock controlled by the host system (SystemTimeSource::SENDER_SYSTEM_TIME). For those platforms, the measurement_time field should be specified in the incoming message.
Measurements may only be timestamped externally using P1 time (SystemTimeSource::P1_TIME) if the external system supports remote synchronization of the P1 time clock model. This is intended for internal use only.
Definition at line 193 of file measurements.h.
#include <point_one/fusion_engine/messages/measurements.h>
Public Attributes | |
SensorDataSource | data_source = SensorDataSource::UNKNOWN |
The source of the incoming data, if known. More... | |
Timestamp | measurement_time |
The measurement time of applicability, if available, in a user-specified time base. More... | |
SystemTimeSource | measurement_time_source = SystemTimeSource::INVALID |
The source for measurement_time. More... | |
Timestamp | p1_time |
The P1 time corresponding with the measurement time of applicability, if available. More... | |
SensorDataSource point_one::fusion_engine::messages::MeasurementDetails::data_source = SensorDataSource::UNKNOWN |
The source of the incoming data, if known.
Definition at line 210 of file measurements.h.
Timestamp point_one::fusion_engine::messages::MeasurementDetails::measurement_time |
The measurement time of applicability, if available, in a user-specified time base.
The source of this value is specified in measurement_time_source. The timestamp will be converted to P1 time internally by the device before use.
Definition at line 200 of file measurements.h.
SystemTimeSource point_one::fusion_engine::messages::MeasurementDetails::measurement_time_source = SystemTimeSource::INVALID |
The source for measurement_time.
Definition at line 205 of file measurements.h.
Timestamp point_one::fusion_engine::messages::MeasurementDetails::p1_time |
The P1 time corresponding with the measurement time of applicability, if available.
For inputs to the device, this field will be populated automatically by the device on arrival based on measurement_time. Any existing value will be overwritten. To specify a known P1 time, specify the value in measurement_time and set measurement_time_source to SystemTimeSource::P1_TIME.
For outputs from the device, this field will always be populated with the P1 time corresponding with the measurement.
Definition at line 227 of file measurements.h.