15 #ifndef COMPONENTS_NIMBLEREMOTEDESCRIPTOR_H_
16 #define COMPONENTS_NIMBLEREMOTEDESCRIPTOR_H_
19 #if defined(CONFIG_BT_ENABLED) && defined(CONFIG_BT_NIMBLE_ROLE_CENTRAL)
21 #include "NimBLERemoteCharacteristic.h"
45 if(!skipSizeCheck && value.size() <
sizeof(T))
return T();
46 const char *pData = value.data();
54 bool writeValue(const uint8_t* data,
size_t length,
bool response = false);
55 bool writeValue(const std::
string &newValue,
bool response = false);
64 return writeValue((uint8_t*)&s,
sizeof(T), response);
71 const struct ble_gatt_dsc *dsc);
72 static int onWriteCB(uint16_t conn_handle,
const struct ble_gatt_error *error,
73 struct ble_gatt_attr *attr,
void *arg);
74 static int onReadCB(uint16_t conn_handle,
const struct ble_gatt_error *error,
75 struct ble_gatt_attr *attr,
void *arg);
A model of a remote BLE characteristic.
Definition: NimBLERemoteCharacteristic.h:43
A model of remote BLE descriptor.
Definition: NimBLERemoteDescriptor.h:27
std::string toString(void)
Return a string representation of this Remote Descriptor.
Definition: NimBLERemoteDescriptor.cpp:234
bool writeValue(const uint8_t *data, size_t length, bool response=false)
Write data to the BLE Remote Descriptor.
Definition: NimBLERemoteDescriptor.cpp:276
uint16_t readUInt16() __attribute__((deprecated("Use template readValue<uint16_t>()")))
Read an unsigned 16 bit value.
Definition: NimBLERemoteDescriptor.cpp:102
uint32_t readUInt32() __attribute__((deprecated("Use template readValue<uint32_t>()")))
Read an unsigned 32 bit value.
Definition: NimBLERemoteDescriptor.cpp:116
std::string readValue()
Read the value of the remote descriptor.
Definition: NimBLERemoteDescriptor.cpp:129
NimBLERemoteCharacteristic * getRemoteCharacteristic()
Get the characteristic that owns this descriptor.
Definition: NimBLERemoteDescriptor.cpp:69
uint8_t readUInt8() __attribute__((deprecated("Use template readValue<uint8_t>()")))
Read a byte value.
Definition: NimBLERemoteDescriptor.cpp:88
uint16_t getHandle()
Retrieve the handle associated with this remote descriptor.
Definition: NimBLERemoteDescriptor.cpp:60
T readValue(bool skipSizeCheck=false)
A template to convert the remote descriptor data to <type>.
Definition: NimBLERemoteDescriptor.h:43
NimBLEUUID getUUID()
Retrieve the UUID associated this remote descriptor.
Definition: NimBLERemoteDescriptor.cpp:78
A model of a BLE UUID.
Definition: NimBLEUUID.h:37