diff options
Diffstat (limited to 'src/Components/Ble/BleController.h')
-rw-r--r-- | src/Components/Ble/BleController.h | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/src/Components/Ble/BleController.h b/src/Components/Ble/BleController.h index c47e65b6..3f52ea25 100644 --- a/src/Components/Ble/BleController.h +++ b/src/Components/Ble/BleController.h @@ -2,12 +2,15 @@ #include <FreeRTOS.h> #include <queue.h> +#include <array> namespace Pinetime { namespace Controllers { class Ble { public: + using BleAddress = std::array<uint8_t, 6>; enum class FirmwareUpdateStates {Idle, Running, Validated, Error}; + enum class AddressTypes { Public, Random }; Ble() = default; bool IsConnected() const {return isConnected;} @@ -24,12 +27,18 @@ namespace Pinetime { uint32_t FirmwareUpdateTotalBytes() const { return firmwareUpdateTotalBytes; } uint32_t FirmwareUpdateCurrentBytes() const { return firmwareUpdateCurrentBytes; } FirmwareUpdateStates State() const { return firmwareUpdateState; } + + void Address(BleAddress&& addr) { address = addr; } + const BleAddress& Address() const { return address; } + void AddressType(AddressTypes t) { addressType = t;} private: bool isConnected = false; bool isFirmwareUpdating = false; uint32_t firmwareUpdateTotalBytes = 0; uint32_t firmwareUpdateCurrentBytes = 0; FirmwareUpdateStates firmwareUpdateState = FirmwareUpdateStates::Idle; + BleAddress address; + AddressTypes addressType; }; } |