7#ifndef ZEPHYR_INCLUDE_DRIVERS_SENSOR_DATA_TYPES_H
8#define ZEPHYR_INCLUDE_DRIVERS_SENSOR_DATA_TYPES_H
68#define PRIsensor_three_axis_data PRIu64 "ns, (%" PRIq(6) ", %" PRIq(6) ", %" PRIq(6) ")"
70#define PRIsensor_three_axis_data_arg(data_, readings_offset_) \
71 (data_).header.base_timestamp_ns + (data_).readings[(readings_offset_)].timestamp_delta, \
72 PRIq_arg((data_).readings[(readings_offset_)].x, 6, (data_).shift), \
73 PRIq_arg((data_).readings[(readings_offset_)].y, 6, (data_).shift), \
74 PRIq_arg((data_).readings[(readings_offset_)].z, 6, (data_).shift)
86#define PRIsensor_occurrence_data PRIu64 "ns"
88#define PRIsensor_occurrence_data_arg(data_, readings_offset_) \
89 (data_).header.base_timestamp_ns + (data_).readings[(readings_offset_)].timestamp_delta
116#define PRIsensor_q31_data PRIu64 "ns (%" PRIq(6) ")"
118#define PRIsensor_q31_data_arg(data_, readings_offset_) \
119 (data_).header.base_timestamp_ns + (data_).readings[(readings_offset_)].timestamp_delta, \
120 PRIq_arg((data_).readings[(readings_offset_)].value, 6, (data_).shift)
140#define PRIsensor_byte_data(field_name_) PRIu64 "ns (" STRINGIFY(field_name_) " = %" PRIu8 ")"
142#define PRIsensor_byte_data_arg(data_, readings_offset_, field_name_) \
143 (data_).header.base_timestamp_ns + (data_).readings[(readings_offset_)].timestamp_delta, \
144 (data_).readings[(readings_offset_)].field_name_
158#define PRIsensor_uint64_data PRIu64 "ns (%" PRIu64 ")"
160#define PRIsensor_uint64_data_arg(data_, readings_offset_) \
161 (data_).header.base_timestamp_ns + (data_).readings[(readings_offset_)].timestamp_delta, \
162 (data_).readings[(readings_offset_)].value
int32_t q31_t
32-bit fractional data type in 1.31 format.
Definition: types.h:35
__UINT32_TYPE__ uint32_t
Definition: stdint.h:90
__UINT64_TYPE__ uint64_t
Definition: stdint.h:91
__UINT8_TYPE__ uint8_t
Definition: stdint.h:88
__UINT16_TYPE__ uint16_t
Definition: stdint.h:89
__INT8_TYPE__ int8_t
Definition: stdint.h:72
Definition: sensor_data_types.h:128
uint8_t value
Definition: sensor_data_types.h:131
uint8_t padding
Definition: sensor_data_types.h:134
uint32_t timestamp_delta
Definition: sensor_data_types.h:129
uint8_t is_near
Definition: sensor_data_types.h:133
Data from a sensor that produces a byte of data.
Definition: sensor_data_types.h:126
struct sensor_data_header header
Definition: sensor_data_types.h:127
struct sensor_byte_data::sensor_byte_sample_data readings[1]
Definition: sensor_data_types.h:81
uint32_t timestamp_delta
Definition: sensor_data_types.h:82
Data from a sensor where we only care about an event occurring.
Definition: sensor_data_types.h:79
struct sensor_data_header header
Definition: sensor_data_types.h:80
struct sensor_occurrence_data::sensor_occurrence_sample_data readings[1]
Definition: sensor_data_types.h:94
q31_t density_ppm
Unit: parts per million.
Definition: sensor_data_types.h:104
q31_t density_ppb
Unit: parts per billion.
Definition: sensor_data_types.h:105
q31_t density
Unit: ug/m^3.
Definition: sensor_data_types.h:103
q31_t percent
Unit: percent.
Definition: sensor_data_types.h:101
q31_t power
Unit: watts.
Definition: sensor_data_types.h:109
q31_t current
Unit: amps.
Definition: sensor_data_types.h:108
q31_t light
Unit: lux.
Definition: sensor_data_types.h:98
q31_t temperature
Unit: degrees Celsius.
Definition: sensor_data_types.h:100
q31_t angle
Unit: degrees.
Definition: sensor_data_types.h:110
q31_t electric_charge
Unit: mAh.
Definition: sensor_data_types.h:111
q31_t distance
Unit: meters.
Definition: sensor_data_types.h:102
q31_t pressure
Unit: kilopascal.
Definition: sensor_data_types.h:99
q31_t resistance
Unit: ohms.
Definition: sensor_data_types.h:106
q31_t voltage
Unit: volts.
Definition: sensor_data_types.h:107
q31_t value
Definition: sensor_data_types.h:97
uint32_t timestamp_delta
Definition: sensor_data_types.h:95
Definition: sensor_data_types.h:91
struct sensor_q31_data::sensor_q31_sample_data readings[1]
int8_t shift
Definition: sensor_data_types.h:93
struct sensor_data_header header
Definition: sensor_data_types.h:92
Definition: sensor_data_types.h:54
q31_t z
Definition: sensor_data_types.h:62
q31_t x
Definition: sensor_data_types.h:60
uint32_t timestamp_delta
Definition: sensor_data_types.h:55
q31_t v[3]
Definition: sensor_data_types.h:58
q31_t values[3]
Definition: sensor_data_types.h:57
q31_t y
Definition: sensor_data_types.h:61
Data for a sensor channel which reports on three axes.
Definition: sensor_data_types.h:51
struct sensor_data_header header
Definition: sensor_data_types.h:52
struct sensor_three_axis_data::sensor_three_axis_sample_data readings[1]
int8_t shift
Definition: sensor_data_types.h:53
Definition: sensor_data_types.h:152
uint64_t value
Definition: sensor_data_types.h:154
uint32_t timestamp_delta
Definition: sensor_data_types.h:153
Data from a sensor that produces a count like value.
Definition: sensor_data_types.h:150
struct sensor_data_header header
Definition: sensor_data_types.h:151
struct sensor_uint64_data::sensor_uint64_sample_data readings[1]