nRF Connect SDK API 2.8.0
Loading...
Searching...
No Matches
gatt_pool.h File Reference
#include <zephyr/bluetooth/gatt.h>
#include <zephyr/bluetooth/uuid.h>

Go to the source code of this file.

Data Structures

struct  bt_gatt_pool
 The GATT service object that uses dynamic attribute allocation. More...
 

Macros

#define BT_GATT_POOL_INIT(_attr_array_size)
 Initialization of the GATT attribute pool variable.
 
#define BT_GATT_POOL_DEF(_name, _attr_array_size)
 Define a new GATT attribute pool.
 
#define BT_GATT_POOL_SVC(_gp, _svc_uuid_init)
 Register a primary service descriptor.
 
#define BT_GATT_POOL_CHRC(_gp, _uuid, _props, _perm, _read, _write, _value)
 Register a characteristic descriptor.
 
#define BT_GATT_POOL_DESC(_gp, _uuid, _perm, _read, _write, _value)
 Register an attribute descriptor.
 
#define BT_GATT_POOL_CCC(_gp, _ccc, _ccc_changed, _perm)
 Register a CCC descriptor.
 

Functions

int bt_gatt_pool_svc_alloc (struct bt_gatt_pool *gp, struct bt_uuid const *svc_uuid)
 Take a primary service descriptor from the pool.
 
int bt_gatt_pool_chrc_alloc (struct bt_gatt_pool *gp, uint8_t props, struct bt_gatt_attr const *attr)
 Take a characteristic descriptor from the pool.
 
int bt_gatt_pool_desc_alloc (struct bt_gatt_pool *gp, struct bt_gatt_attr const *descriptor)
 Take an attribute descriptor from the pool.
 
int bt_gatt_pool_ccc_alloc (struct bt_gatt_pool *gp, struct _bt_gatt_ccc *ccc, uint8_t perm)
 Take a CCC descriptor from the pool.
 
void bt_gatt_pool_free (struct bt_gatt_pool *gp)
 Free the whole dynamically created GATT service.