Ersa Wearable Platform
Embedded smartwatch firmware and application framework
Loading...
Searching...
No Matches
esp32_apple_ble.h
Go to the documentation of this file.
1#pragma once
2
4
5#if defined(ARDUINO)
6#include <Arduino.h>
7#include <esp_gatts_api.h>
8
9namespace ersa {
10namespace hal {
11
20class Esp32AppleClient {
21public:
26
28 void setCallCallback(CompanionCallCallback cb, void* userData);
30 void setMediaCallback(CompanionMediaCallback cb, void* userData);
34 void setTimeCallback(CompanionTimeCallback cb, void* userData);
35
37 void startDiscovery(const esp_bd_addr_t bda, esp_ble_addr_type_t addrType = BLE_ADDR_TYPE_RANDOM);
39 void authenticationComplete(bool success);
41 void stop();
43 bool suspendForMaintenance(uint32_t timeoutMs);
46
47 bool isAncsActive() const;
48 bool isAmsActive() const;
49 bool isCtsActive() const;
50
52 void acceptCall();
54 void rejectCall();
56 bool dismissNotification(uint32_t uid);
59
60private:
61 class Impl;
62 Impl* pImpl_{nullptr};
63};
64
65} // namespace hal
66} // namespace ersa
67
68#else
69
70namespace ersa {
71namespace hal {
72
74public:
75 Esp32AppleClient() = default;
76 ~Esp32AppleClient() = default;
81 void startDiscovery(const uint8_t*, uint8_t = 0) {}
83 void stop() {}
84 bool suspendForMaintenance(uint32_t) { return true; }
86 bool isAncsActive() const { return false; }
87 bool isAmsActive() const { return false; }
88 bool isCtsActive() const { return false; }
89 void acceptCall() {}
90 void rejectCall() {}
91 bool dismissNotification(uint32_t) { return false; }
93};
94
95} // namespace hal
96} // namespace ersa
97
98#endif
Definition esp32_apple_ble.h:73
void rejectCall()
Definition esp32_apple_ble.h:90
bool suspendForMaintenance(uint32_t)
Definition esp32_apple_ble.h:84
bool isCtsActive() const
Definition esp32_apple_ble.h:88
void prepareForStackRestart()
Definition esp32_apple_ble.h:85
void mediaCommand(CompanionMediaAction)
Definition esp32_apple_ble.h:92
void stop()
Definition esp32_apple_ble.h:83
void setTimeCallback(CompanionTimeCallback, void *)
Definition esp32_apple_ble.h:80
bool isAncsActive() const
Definition esp32_apple_ble.h:86
void setMediaCallback(CompanionMediaCallback, void *)
Definition esp32_apple_ble.h:78
void authenticationComplete(bool)
Definition esp32_apple_ble.h:82
void setCallCallback(CompanionCallCallback, void *)
Definition esp32_apple_ble.h:77
void acceptCall()
Definition esp32_apple_ble.h:89
bool dismissNotification(uint32_t)
Definition esp32_apple_ble.h:91
bool isAmsActive() const
Definition esp32_apple_ble.h:87
void setNotificationCallback(CompanionNotificationCallback, void *)
Definition esp32_apple_ble.h:79
void startDiscovery(const uint8_t *, uint8_t=0)
Definition esp32_apple_ble.h:81
void(*)(const char *, const char *, const char *, uint32_t, bool, void *) CompanionNotificationCallback
Definition companion_source.h:28
void(*)(uint32_t, void *) CompanionTimeCallback
Definition companion_source.h:25
void(*)(bool, const char *, const char *, void *) CompanionMediaCallback
Definition companion_source.h:24
CompanionMediaAction
Definition companion_source.h:15
void(*)(CompanionCallAction, const char *, const char *, void *) CompanionCallCallback
Definition companion_source.h:23
Definition application.h:10