GAP based TOF Demo
Dependencies: BLE_API X_NUCLEO_6180XA1 mbed
Fork of BLE_HeartRate_IDB0XA1 by
Diff: bricks/get.h
- Revision:
- 27:32267cee7cb8
- Parent:
- 26:fd06c8b57d16
--- a/bricks/get.h Sat Jan 07 15:38:15 2017 +0000 +++ b/bricks/get.h Sat Jan 14 08:43:14 2017 +0000 @@ -17,20 +17,36 @@ #include "ble/BLE.h" #include "ble/Gap.h" #include "ble/GattClient.h" -#include "bricks/blob.h" +#include "bricks/o.h" #include "bricks/types.h" #include "bricks/characteristic.h" - inline void get(Blob &blue, Characteristic<Bool> &chr, Bool &data) + inline void get(O&o, Characteristic<Bool> &chr, Bool &data) { uint16_t size = sizeof(Bool)/sizeof(uint8_t); - blue.gatt().read(chr.getValueHandle(), (uint8_t*)&data,&size); + o.gattServer().read(chr.getValueHandle(), (uint8_t*)&data,&size); + } + + inline void get(O&o, Characteristic<ObjectId> &chr, ObjectId &data) + { + uint16_t size = sizeof(ObjectId)/sizeof(uint8_t); + o.gattServer().read(chr.getValueHandle(), (uint8_t*)&data,&size); } - inline void get(Blob &blue, Characteristic<ObjectId> &chr, ObjectId &data) + inline void get(O&o, Characteristic<Buffer> &chr, Buffer &data) { - uint16_t size = sizeof(ObjectId)/sizeof(uint8_t); - blue.gatt().read(chr.getValueHandle(), (uint8_t*)&data,&size); + uint16_t size = sizeof(Buffer)/sizeof(uint8_t); + o.gattServer().read(chr.getValueHandle(), (uint8_t*)&data,&size); + } + +// we provide also some GET methods for GattCharacteristics. However the use +// of these methods are more dangerous, because a GattCharacteristics can be +// of any type and the compiler cannot help us to check !!! + + inline void get(O&o,GattCharacteristic &chr, Bool &data) + { + uint16_t size = sizeof(Bool)/sizeof(uint8_t); + o.gattServer().read(chr.getValueHandle(), (uint8_t*)&data, &size); } #endif // _GET_H_ \ No newline at end of file