40 #include "sensor_bridge.hpp" 44 #include <uavcan/equipment/air_data/StaticPressure.hpp> 45 #include <uavcan/equipment/air_data/StaticTemperature.hpp> 52 static const char *
const NAME;
61 ssize_t read(
struct file *filp,
char *
buffer,
size_t buflen);
62 int ioctl(
struct file *filp,
int cmd,
unsigned long arg)
override;
64 void air_pressure_sub_cb(
const uavcan::ReceivedDataStructure<uavcan::equipment::air_data::StaticPressure> &msg);
65 void air_temperature_sub_cb(
const uavcan::ReceivedDataStructure<uavcan::equipment::air_data::StaticTemperature> &msg);
68 void (UavcanBarometerBridge::*)
69 (
const uavcan::ReceivedDataStructure<uavcan::equipment::air_data::StaticPressure> &) >
72 typedef uavcan::MethodBinder < UavcanBarometerBridge *,
73 void (UavcanBarometerBridge::*)
74 (
const uavcan::ReceivedDataStructure<uavcan::equipment::air_data::StaticTemperature> &) >
75 AirTemperatureCbBinder;
77 uavcan::Subscriber<uavcan::equipment::air_data::StaticPressure, AirPressureCbBinder> _sub_air_pressure_data;
78 uavcan::Subscriber<uavcan::equipment::air_data::StaticTemperature, AirTemperatureCbBinder> _sub_air_temperature_data;
80 ringbuffer::RingBuffer _reports;
82 float last_temperature_kelvin = 0.0f;
A flexible ringbuffer class.
This is the base class for redundant sensors with an independent ORB topic per each redundancy channe...
Definition: sensor_bridge.hpp:88
const char * get_name() const override
Returns ASCII name of the bridge.
Definition: baro.hpp:56
Definition: video_device.h:50
static const char *const NAME
Definition: baro.hpp:52
Barometric pressure sensor driver interface.
int init() override
Starts the bridge.
Definition: baro.cpp:51