44 #include <uavcan/equipment/ahrs/MagneticFieldStrength.hpp> 45 #include <uavcan/equipment/ahrs/MagneticFieldStrength2.hpp> 50 static const char *
const NAME;
60 int ioctl(
struct file *filp,
int cmd,
unsigned long arg)
override;
62 void mag_sub_cb(
const uavcan::ReceivedDataStructure<uavcan::equipment::ahrs::MagneticFieldStrength> &
msg);
63 void mag2_sub_cb(
const uavcan::ReceivedDataStructure<uavcan::equipment::ahrs::MagneticFieldStrength2> &msg);
66 void (UavcanMagnetometerBridge::*)
67 (
const uavcan::ReceivedDataStructure<uavcan::equipment::ahrs::MagneticFieldStrength> &) >
70 typedef uavcan::MethodBinder < UavcanMagnetometerBridge *,
71 void (UavcanMagnetometerBridge::*)
72 (
const uavcan::ReceivedDataStructure<uavcan::equipment::ahrs::MagneticFieldStrength2> &) >
75 uavcan::Subscriber<uavcan::equipment::ahrs::MagneticFieldStrength, MagCbBinder>
_sub_mag;
76 uavcan::Subscriber<uavcan::equipment::ahrs::MagneticFieldStrength2, Mag2CbBinder>
_sub_mag2;
void mag2_sub_cb(const uavcan::ReceivedDataStructure< uavcan::equipment::ahrs::MagneticFieldStrength2 > &msg)
const char * get_name() const override
Returns ASCII name of the bridge.
mag scaling factors; Vout = (Vin * Vscale) + Voffset
uavcan::Subscriber< uavcan::equipment::ahrs::MagneticFieldStrength, MagCbBinder > _sub_mag
UavcanMagnetometerBridge(uavcan::INode &node)
void mag_sub_cb(const uavcan::ReceivedDataStructure< uavcan::equipment::ahrs::MagneticFieldStrength > &msg)
static char msg[NUM_MSG][CONFIG_USART1_TXBUFSIZE]
This is the base class for redundant sensors with an independent ORB topic per each redundancy channe...
uavcan::MethodBinder< UavcanMagnetometerBridge *, void(UavcanMagnetometerBridge::*)(const uavcan::ReceivedDataStructure< uavcan::equipment::ahrs::MagneticFieldStrength2 > &) > Mag2CbBinder
static const char *const NAME
int ioctl(struct file *filp, int cmd, unsigned long arg) override
struct @83::@85::@87 file
uavcan::Subscriber< uavcan::equipment::ahrs::MagneticFieldStrength2, Mag2CbBinder > _sub_mag2
uavcan::MethodBinder< UavcanMagnetometerBridge *, void(UavcanMagnetometerBridge::*)(const uavcan::ReceivedDataStructure< uavcan::equipment::ahrs::MagneticFieldStrength > &) > MagCbBinder
int init() override
Starts the bridge.