#include <stdlib.h>
#include <string.h>
#include "att_db_util.h"
#include "ble/att_db.h"
#include "ble/core.h"
#include "btstack_util.h"
#include "btstack_debug.h"
#include "bluetooth.h"
Macros | |
#define | __BTSTACK_FILE__ "att_db_util.c" |
Functions | |
static void | att_db_util_add_attribute_uuid128 (uint8_t *uuid128, uint16_t flags, uint8_t *data, uint16_t data_len) |
static void | att_db_util_add_attribute_uuid16 (uint16_t uuid16, uint16_t flags, uint8_t *data, uint16_t data_len) |
uint16_t | att_db_util_add_characteristic_uuid128 (uint8_t *uuid128, uint16_t properties, uint8_t *data, uint16_t data_len) |
Add Characteristic with 128-bit UUID, properties, and data. More... | |
uint16_t | att_db_util_add_characteristic_uuid16 (uint16_t uuid16, uint16_t properties, uint8_t *data, uint16_t data_len) |
Add Characteristic with 16-bit UUID, properties, and data. More... | |
static void | att_db_util_add_client_characteristic_configuration (uint16_t properties) |
void | att_db_util_add_service_uuid128 (uint8_t *uuid128) |
Add primary service for 128-bit UUID. More... | |
void | att_db_util_add_service_uuid16 (uint16_t uuid16) |
Add primary service for 16-bit UUID. More... | |
static int | att_db_util_assert_space (uint16_t size) |
asserts that the requested amount of bytes can be stored in the att_db More... | |
uint8_t * | att_db_util_get_address (void) |
Get address of constructed ATT DB. More... | |
uint16_t | att_db_util_get_size (void) |
Get size of constructed ATT DB. More... | |
void | att_db_util_init (void) |
Helper to construct ATT DB at runtime (BTstack GATT Compiler is not used) More... | |
static void | att_db_util_set_end_tag (void) |
Variables | |
static uint8_t * | att_db |
static uint16_t | att_db_max_size |
static uint16_t | att_db_next_handle |
static uint16_t | att_db_size |
#define __BTSTACK_FILE__ "att_db_util.c" |
|
static |
References att_db, att_db_next_handle, att_db_size, att_db_util_assert_space(), att_db_util_set_end_tag(), ATT_PROPERTY_UUID128, little_endian_store_16(), and reverse_128().
Referenced by att_db_util_add_characteristic_uuid128().
|
static |
References att_db, att_db_next_handle, att_db_size, att_db_util_assert_space(), att_db_util_set_end_tag(), and little_endian_store_16().
Referenced by att_db_util_add_characteristic_uuid128(), att_db_util_add_characteristic_uuid16(), att_db_util_add_client_characteristic_configuration(), att_db_util_add_service_uuid128(), and att_db_util_add_service_uuid16().
uint16_t att_db_util_add_characteristic_uuid128 | ( | uint8_t * | udid128, |
uint16_t | properties, | ||
uint8_t * | data, | ||
uint16_t | data_len | ||
) |
Add Characteristic with 128-bit UUID, properties, and data.
References att_db_next_handle, att_db_util_add_attribute_uuid128(), att_db_util_add_attribute_uuid16(), att_db_util_add_client_characteristic_configuration(), ATT_PROPERTY_INDICATE, ATT_PROPERTY_NOTIFY, ATT_PROPERTY_READ, buffer, GATT_CHARACTERISTICS_UUID, little_endian_store_16(), and reverse_128().
uint16_t att_db_util_add_characteristic_uuid16 | ( | uint16_t | udid16, |
uint16_t | properties, | ||
uint8_t * | data, | ||
uint16_t | data_len | ||
) |
Add Characteristic with 16-bit UUID, properties, and data.
References att_db_next_handle, att_db_util_add_attribute_uuid16(), att_db_util_add_client_characteristic_configuration(), ATT_PROPERTY_INDICATE, ATT_PROPERTY_NOTIFY, ATT_PROPERTY_READ, buffer, GATT_CHARACTERISTICS_UUID, and little_endian_store_16().
|
static |
References ATT_DB_FLAGS_READ_WITHOUT_AUTHENTICATION, ATT_DB_PERSISTENT_WRITE_CCC, att_db_util_add_attribute_uuid16(), ATT_PROPERTY_DYNAMIC, ATT_PROPERTY_READ, ATT_PROPERTY_WRITE, buffer, GATT_CLIENT_CHARACTERISTICS_CONFIGURATION, and little_endian_store_16().
Referenced by att_db_util_add_characteristic_uuid128(), and att_db_util_add_characteristic_uuid16().
void att_db_util_add_service_uuid128 | ( | uint8_t * | uuid128 | ) |
Add primary service for 128-bit UUID.
References att_db_util_add_attribute_uuid16(), ATT_PROPERTY_READ, buffer, GATT_PRIMARY_SERVICE_UUID, and reverse_128().
void att_db_util_add_service_uuid16 | ( | uint16_t | uuid16 | ) |
Add primary service for 16-bit UUID.
References att_db_util_add_attribute_uuid16(), ATT_PROPERTY_READ, buffer, GATT_PRIMARY_SERVICE_UUID, and little_endian_store_16().
|
static |
asserts that the requested amount of bytes can be stored in the att_db
References att_db, att_db_max_size, att_db_size, and log_error.
Referenced by att_db_util_add_attribute_uuid128(), and att_db_util_add_attribute_uuid16().
uint8_t* att_db_util_get_address | ( | void | ) |
Get address of constructed ATT DB.
References att_db.
uint16_t att_db_util_get_size | ( | void | ) |
Get size of constructed ATT DB.
References att_db_size.
void att_db_util_init | ( | void | ) |
Helper to construct ATT DB at runtime (BTstack GATT Compiler is not used)
Init ATT DB storage
References att_db, att_db_max_size, att_db_next_handle, att_db_size, and att_db_util_set_end_tag().
|
static |
References att_db, and att_db_size.
Referenced by att_db_util_add_attribute_uuid128(), att_db_util_add_attribute_uuid16(), and att_db_util_init().
|
static |
|
static |
Referenced by att_db_util_assert_space(), and att_db_util_init().
|
static |
|
static |