High level Bluetooth Low Energy API and radio abstraction layer
Fork of BLE_API by
Diff: ble/GattServer.h
- Revision:
- 1074:1fedc77d9add
- Parent:
- 1063:187f9929cb60
- Child:
- 1075:0d0dafb54bc9
diff -r edd717e9f799 -r 1fedc77d9add ble/GattServer.h --- a/ble/GattServer.h Mon Jan 11 08:51:41 2016 +0000 +++ b/ble/GattServer.h Mon Jan 11 08:51:42 2016 +0000 @@ -396,6 +396,32 @@ dataSentCallChain.call(count); } +public: + /** + * Clear all GattServer state of the associated object. + * + * This function is meant to be overridden in the platform-specific + * sub-class. Nevertheless, the sub-class is only expected to reset its + * state and not the data held in GattServer members. This shall be achieved + * by a call to GattServer::reset() from the sub-class' reset() + * implementation. + * + * @return BLE_ERROR_NONE on success. + */ + virtual ble_error_t reset(void) { + serviceCount = 0; + characteristicCount = 0; + + dataSentCallChain.clear(); + dataWrittenCallChain.clear(); + dataReadCallChain.clear(); + updatesEnabledCallback = NULL; + updatesDisabledCallback = NULL; + confirmationReceivedCallback = NULL; + + return BLE_ERROR_NONE; + } + protected: uint8_t serviceCount; uint8_t characteristicCount;