Small Demo demonstrating BLE Advertising
Dependencies: BLE_API X_NUCLEO_IDB0XA1 mbed
Fork of BLE_HeartRate_IDB0XA1 by
Diff: bricks/get.h
- Revision:
- 28:114eaad388c1
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/bricks/get.h Sun Jan 08 23:13:25 2017 +0000 @@ -0,0 +1,42 @@ +// get.h - get data from a characteristics +// +// Synopsis: +// +// Get data from a 'characteristic' into a 'data' variable +// +// get(characteristic,data) +// +// The 'get' function (overloaded function family) is implemented for all +// types defined in "bricks/types.h". +// +// See also: CHARACTERISTIC, SET +// +#ifndef _GET_H_ +#define _GET_H_ + +#include "ble/BLE.h" +#include "ble/Gap.h" +#include "ble/GattClient.h" +#include "bricks/o.h" +#include "bricks/types.h" +#include "bricks/characteristic.h" + + inline void get(O&o, Characteristic<Bool> &chr, Bool &data) + { + uint16_t size = sizeof(Bool)/sizeof(uint8_t); + 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(O&o, Characteristic<Buffer> &chr, Buffer &data) + { + uint16_t size = sizeof(Buffer)/sizeof(uint8_t); + o.gattServer().read(chr.getValueHandle(), (uint8_t*)&data,&size); + } + +#endif // _GET_H_ \ No newline at end of file