SmartSnippets DA1459x SDK
Data Structures | Enumerations | Functions
ble_gatts.h File Reference

BLE GATT Server API. More...

#include <stdint.h>
#include "ble_att.h"
#include "ble_common.h"
#include "ble_gatt.h"

Go to the source code of this file.

Data Structures

struct  ble_evt_gatts_read_req_t
 
struct  ble_evt_gatts_write_req_t
 
struct  ble_evt_gatts_prepare_write_req_t
 
struct  ble_evt_gatts_event_sent_t
 

Enumerations

enum  gatts_flag_t { GATTS_FLAG_CHAR_READ_REQ = 0x01 }
 
enum  ble_evt_gatts { BLE_EVT_GATTS_READ_REQ = BLE_EVT_CAT_FIRST(BLE_EVT_CAT_GATTS), BLE_EVT_GATTS_WRITE_REQ, BLE_EVT_GATTS_PREPARE_WRITE_REQ, BLE_EVT_GATTS_EVENT_SENT }
 

Functions

ble_error_t ble_gatts_add_service (const att_uuid_t *uuid, const gatt_service_t type, uint16_t num_attrs)
 Add new GATT service. More...
 
ble_error_t ble_gatts_add_include (uint16_t handle, uint16_t *h_offset)
 Add included service to GATT service. More...
 
ble_error_t ble_gatts_add_characteristic (const att_uuid_t *uuid, gatt_prop_t prop, att_perm_t perm, uint16_t max_len, gatts_flag_t flags, uint16_t *h_offset, uint16_t *h_val_offset)
 Add characteristic to GATT service. More...
 
ble_error_t ble_gatts_add_descriptor (const att_uuid_t *uuid, att_perm_t perm, uint16_t max_len, gatts_flag_t flags, uint16_t *h_offset)
 Add descriptor to GATT service. More...
 
ble_error_t ble_gatts_register_service (uint16_t *handle,...)
 Register service in database. More...
 
ble_error_t ble_gatts_enable_service (uint16_t handle)
 Enable service in database. More...
 
ble_error_t ble_gatts_disable_service (uint16_t handle)
 Disable service in database. More...
 
ble_error_t ble_gatts_get_characteristic_prop (uint16_t handle, gatt_prop_t *prop, att_perm_t *perm)
 Read current characteristic properties and permissions. More...
 
ble_error_t ble_gatts_set_characteristic_prop (uint16_t handle, gatt_prop_t prop, att_perm_t perm)
 Set characteristic properties and permissions. More...
 
ble_error_t ble_gatts_get_value (uint16_t handle, uint16_t *length, void *value)
 Get attribute value. More...
 
ble_error_t ble_gatts_set_value (uint16_t handle, uint16_t length, const void *value)
 Set attribute value. More...
 
ble_error_t ble_gatts_read_cfm (uint16_t conn_idx, uint16_t handle, att_error_t status, uint16_t length, const void *value)
 Respond to an attribute read request. More...
 
ble_error_t ble_gatts_write_cfm (uint16_t conn_idx, uint16_t handle, att_error_t status)
 Respond to an attribute write request. More...
 
ble_error_t ble_gatts_prepare_write_cfm (uint16_t conn_idx, uint16_t handle, uint16_t length, att_error_t status)
 Respond to an attribute prepare write request. More...
 
ble_error_t ble_gatts_send_event (uint16_t conn_idx, uint16_t handle, gatt_event_t type, uint16_t length, const void *value)
 Send a characteristic value notification or indication. More...
 
ble_error_t ble_gatts_service_changed_ind (uint16_t conn_idx, uint16_t start_handle, uint16_t end_handle)
 Send indication of the Service Changed Characteristic. More...
 
__STATIC_INLINE uint16_t ble_gatts_get_num_attr (uint16_t include, uint16_t characteristic, uint16_t descriptor)
 Calculate number of attributes required for service. More...
 

Detailed Description

BLE GATT Server API.

Copyright (C) 2015-2019 Renesas Electronics Corporation and/or its affiliates. All rights reserved. Confidential Information.

This software ("Software") is supplied by Renesas Electronics Corporation and/or its affiliates ("Renesas"). Renesas grants you a personal, non-exclusive, non-transferable, revocable, non-sub-licensable right and license to use the Software, solely if used in or together with Renesas products. You may make copies of this Software, provided this copyright notice and disclaimer ("Notice") is included in all such copies. Renesas reserves the right to change or discontinue the Software at any time without notice.

THE SOFTWARE IS PROVIDED "AS IS". RENESAS DISCLAIMS ALL WARRANTIES OF ANY KIND, WHETHER EXPRESS, IMPLIED, OR STATUTORY, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT. TO THE MAXIMUM EXTENT PERMITTED UNDER LAW, IN NO EVENT SHALL RENESAS BE LIABLE FOR ANY DIRECT, INDIRECT, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE, EVEN IF RENESAS HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. USE OF THIS SOFTWARE MAY BE SUBJECT TO TERMS AND CONDITIONS CONTAINED IN AN ADDITIONAL AGREEMENT BETWEEN YOU AND RENESAS. IN CASE OF CONFLICT BETWEEN THE TERMS OF THIS NOTICE AND ANY SUCH ADDITIONAL LICENSE AGREEMENT, THE TERMS OF THE AGREEMENT SHALL TAKE PRECEDENCE. BY CONTINUING TO USE THIS SOFTWARE, YOU AGREE TO THE TERMS OF THIS NOTICE.IF YOU DO NOT AGREE TO THESE TERMS, YOU ARE NOT PERMITTED TO USE THIS SOFTWARE.