summaryrefslogtreecommitdiff
path: root/sensor/patchedBLE/src/BLEServiceMap.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'sensor/patchedBLE/src/BLEServiceMap.cpp')
-rw-r--r--sensor/patchedBLE/src/BLEServiceMap.cpp36
1 files changed, 19 insertions, 17 deletions
diff --git a/sensor/patchedBLE/src/BLEServiceMap.cpp b/sensor/patchedBLE/src/BLEServiceMap.cpp
index dd828fa..cf4f75f 100644
--- a/sensor/patchedBLE/src/BLEServiceMap.cpp
+++ b/sensor/patchedBLE/src/BLEServiceMap.cpp
@@ -17,15 +17,15 @@
* @return The characteristic.
*/
BLEService* BLEServiceMap::getByUUID(const char* uuid) {
- return getByUUID(BLEUUID(uuid));
+ return getByUUID(BLEUUID(uuid));
}
-
+
/**
* @brief Return the service by UUID.
* @param [in] UUID The UUID to look up the service.
* @return The characteristic.
*/
-BLEService* BLEServiceMap::getByUUID(BLEUUID uuid) {
+BLEService* BLEServiceMap::getByUUID(BLEUUID uuid, uint8_t inst_id) {
for (auto &myPair : m_uuidMap) {
if (myPair.first->getUUID().equals(uuid)) {
return myPair.first;
@@ -52,9 +52,8 @@ BLEService* BLEServiceMap::getByHandle(uint16_t handle) {
* @param [in] characteristic The service to cache.
* @return N/A.
*/
-void BLEServiceMap::setByUUID(BLEUUID uuid,
- BLEService *service) {
- m_uuidMap.insert(std::pair<BLEService *, std::string>(service, uuid.toString()));
+void BLEServiceMap::setByUUID(BLEUUID uuid, BLEService* service) {
+ m_uuidMap.insert(std::pair<BLEService*, std::string>(service, uuid.toString()));
} // setByUUID
@@ -64,9 +63,8 @@ void BLEServiceMap::setByUUID(BLEUUID uuid,
* @param [in] service The service to cache.
* @return N/A.
*/
-void BLEServiceMap::setByHandle(uint16_t handle,
- BLEService* service) {
- m_handleMap.insert(std::pair<uint16_t, BLEService *>(handle, service));
+void BLEServiceMap::setByHandle(uint16_t handle, BLEService* service) {
+ m_handleMap.insert(std::pair<uint16_t, BLEService*>(handle, service));
} // setByHandle
@@ -86,7 +84,7 @@ std::string BLEServiceMap::toString() {
void BLEServiceMap::handleGATTServerEvent(
esp_gatts_cb_event_t event,
esp_gatt_if_t gatts_if,
- esp_ble_gatts_cb_param_t *param) {
+ esp_ble_gatts_cb_param_t* param) {
// Invoke the handler for every Service we have.
for (auto &myPair : m_uuidMap) {
myPair.first->handleGATTServerEvent(event, gatts_if, param);
@@ -99,9 +97,7 @@ void BLEServiceMap::handleGATTServerEvent(
*/
BLEService* BLEServiceMap::getFirst() {
m_iterator = m_uuidMap.begin();
- if (m_iterator == m_uuidMap.end()) {
- return nullptr;
- }
+ if (m_iterator == m_uuidMap.end()) return nullptr;
BLEService* pRet = m_iterator->first;
m_iterator++;
return pRet;
@@ -112,9 +108,7 @@ BLEService* BLEServiceMap::getFirst() {
* @return The next service in the map.
*/
BLEService* BLEServiceMap::getNext() {
- if (m_iterator == m_uuidMap.end()) {
- return nullptr;
- }
+ if (m_iterator == m_uuidMap.end()) return nullptr;
BLEService* pRet = m_iterator->first;
m_iterator++;
return pRet;
@@ -124,9 +118,17 @@ BLEService* BLEServiceMap::getNext() {
* @brief Removes service from maps.
* @return N/A.
*/
-void BLEServiceMap::removeService(BLEService *service){
+void BLEServiceMap::removeService(BLEService* service) {
m_handleMap.erase(service->getHandle());
m_uuidMap.erase(service);
} // removeService
+/**
+ * @brief Returns the amount of registered services
+ * @return amount of registered services
+ */
+int BLEServiceMap::getRegisteredServiceCount(){
+ return m_handleMap.size();
+}
+
#endif /* CONFIG_BT_ENABLED */