24 lines
819 B
C++
24 lines
819 B
C++
#include "FlightController.hpp"
|
|
#include "GSON.h"
|
|
#include "RF/BluetoothDispatcher.hpp"
|
|
|
|
class FlightDispatcher {
|
|
/* Deserialize state and update it in FlightController. */
|
|
public:
|
|
FlightDispatcher(BluetoothDispatcher *bluetoothDispatcher,
|
|
FlightController *flightController, bool loop_on_fail = true);
|
|
~FlightDispatcher();
|
|
void tick();
|
|
private:
|
|
void _onNewDeviceConnected(BTAddress device);
|
|
void _onNewMessageReceived(char *package);
|
|
void _sendTelemetry();
|
|
|
|
static constexpr const char *_tag = "FlightDispatcher";
|
|
static constexpr const int _telemetryTimeIntervalMS = 200;
|
|
static constexpr const uint8_t _jsonMaxDepth = 5;
|
|
|
|
uint32_t _telemetryTimer = millis();
|
|
BluetoothDispatcher *_bluetoothDispatcher;
|
|
FlightController *_flightController;
|
|
}; |