2022-02-26 20:52:22 -08:00
|
|
|
#pragma once
|
|
|
|
|
#include "../mesh/generated/telemetry.pb.h"
|
2022-05-01 14:26:05 -05:00
|
|
|
#include "NodeDB.h"
|
2022-06-05 09:50:06 -05:00
|
|
|
#include "main.h"
|
|
|
|
|
|
2022-02-26 20:52:22 -08:00
|
|
|
#define DEFAULT_SENSOR_MINIMUM_WAIT_TIME_BETWEEN_READS 1000
|
|
|
|
|
|
2022-06-05 09:50:06 -05:00
|
|
|
inline bool hasSensor(TelemetrySensorType sensorType) {
|
|
|
|
|
return sensorType < sizeof(nodeTelemetrySensorsMap) && nodeTelemetrySensorsMap[sensorType] > 0;
|
|
|
|
|
}
|
|
|
|
|
|
2022-05-07 20:31:21 +10:00
|
|
|
class TelemetrySensor
|
|
|
|
|
{
|
|
|
|
|
protected:
|
|
|
|
|
TelemetrySensor() {}
|
|
|
|
|
|
|
|
|
|
public:
|
2022-02-26 20:52:22 -08:00
|
|
|
virtual int32_t runOnce() = 0;
|
2022-05-07 20:31:21 +10:00
|
|
|
virtual bool getMeasurement(Telemetry *measurement) = 0;
|
2022-02-26 20:52:22 -08:00
|
|
|
};
|