summaryrefslogtreecommitdiff
path: root/src/Components/Ble/BleController.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/Components/Ble/BleController.h')
-rw-r--r--src/Components/Ble/BleController.h9
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;
};
}