Set navigation service id is base UUID macro

Avoids the need to copy the same ID into every characteristic UUID
genereated from it.
This commit is contained in:
Jonathan Vander Mey 2021-07-24 11:09:56 -04:00
parent 54ccd2cc07
commit 6b95fd841f
2 changed files with 1 additions and 13 deletions

View File

@ -26,28 +26,17 @@ int NAVCallback(uint16_t conn_handle, uint16_t attr_handle, struct ble_gatt_acce
} }
Pinetime::Controllers::NavigationService::NavigationService(Pinetime::System::SystemTask& system) : m_system(system) { Pinetime::Controllers::NavigationService::NavigationService(Pinetime::System::SystemTask& system) : m_system(system) {
navUuid.value[14] = navId[0];
navUuid.value[15] = navId[1];
navFlagCharUuid.value[12] = navFlagCharId[0]; navFlagCharUuid.value[12] = navFlagCharId[0];
navFlagCharUuid.value[13] = navFlagCharId[1]; navFlagCharUuid.value[13] = navFlagCharId[1];
navFlagCharUuid.value[14] = navId[0];
navFlagCharUuid.value[15] = navId[1];
navNarrativeCharUuid.value[12] = navNarrativeCharId[0]; navNarrativeCharUuid.value[12] = navNarrativeCharId[0];
navNarrativeCharUuid.value[13] = navNarrativeCharId[1]; navNarrativeCharUuid.value[13] = navNarrativeCharId[1];
navNarrativeCharUuid.value[14] = navId[0];
navNarrativeCharUuid.value[15] = navId[1];
navManDistCharUuid.value[12] = navManDistCharId[0]; navManDistCharUuid.value[12] = navManDistCharId[0];
navManDistCharUuid.value[13] = navManDistCharId[1]; navManDistCharUuid.value[13] = navManDistCharId[1];
navManDistCharUuid.value[14] = navId[0];
navManDistCharUuid.value[15] = navId[1];
navProgressCharUuid.value[12] = navProgressCharId[0]; navProgressCharUuid.value[12] = navProgressCharId[0];
navProgressCharUuid.value[13] = navProgressCharId[1]; navProgressCharUuid.value[13] = navProgressCharId[1];
navProgressCharUuid.value[14] = navId[0];
navProgressCharUuid.value[15] = navId[1];
characteristicDefinition[0] = { characteristicDefinition[0] = {
.uuid = (ble_uuid_t*) (&navFlagCharUuid), .access_cb = NAVCallback, .arg = this, .flags = BLE_GATT_CHR_F_WRITE | BLE_GATT_CHR_F_READ}; .uuid = (ble_uuid_t*) (&navFlagCharUuid), .access_cb = NAVCallback, .arg = this, .flags = BLE_GATT_CHR_F_WRITE | BLE_GATT_CHR_F_READ};

View File

@ -28,7 +28,7 @@
// 00010000-78fc-48fe-8e23-433b3a1942d0 // 00010000-78fc-48fe-8e23-433b3a1942d0
#define NAVIGATION_SERVICE_UUID_BASE \ #define NAVIGATION_SERVICE_UUID_BASE \
{ 0xd0, 0x42, 0x19, 0x3a, 0x3b, 0x43, 0x23, 0x8e, 0xfe, 0x48, 0xfc, 0x78, 0x00, 0x00, 0x00, 0x00 } { 0xd0, 0x42, 0x19, 0x3a, 0x3b, 0x43, 0x23, 0x8e, 0xfe, 0x48, 0xfc, 0x78, 0x00, 0x00, 0x01, 0x00 }
namespace Pinetime { namespace Pinetime {
namespace System { namespace System {
@ -53,7 +53,6 @@ namespace Pinetime {
int getProgress(); int getProgress();
private: private:
static constexpr uint8_t navId[2] = {0x01, 0x00};
static constexpr uint8_t navFlagCharId[2] = {0x01, 0x00}; static constexpr uint8_t navFlagCharId[2] = {0x01, 0x00};
static constexpr uint8_t navNarrativeCharId[2] = {0x02, 0x00}; static constexpr uint8_t navNarrativeCharId[2] = {0x02, 0x00};
static constexpr uint8_t navManDistCharId[2] = {0x03, 0x00}; static constexpr uint8_t navManDistCharId[2] = {0x03, 0x00};