/******************************************************************************
*
* Copyright (C) 2009-2013 Broadcom Corporation
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at:
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*
******************************************************************************/
/*******************************************************************************
*
* Filename: btif_gatt.c
*
* Description: GATT Profile Bluetooth Interface
*
*******************************************************************************/
#include <hardware/bluetooth.h>
#include <hardware/bt_gatt.h>
#include <stdio.h>
#include <stdlib.h>
#include <errno.h>
#include <string.h>
#define LOG_TAG "bt_btif_gatt"
#include "btif_common.h"
#include "btif_util.h"
#if (defined(BLE_INCLUDED) && (BLE_INCLUDED == TRUE))
#include "bta_api.h"
#include "bta_gatt_api.h"
#include "btif_storage.h"
#include "btif_gatt.h"
#include "btif_gatt_util.h"
const btgatt_callbacks_t *bt_gatt_callbacks = NULL;
extern btgatt_client_interface_t btgattClientInterface;
extern btgatt_server_interface_t btgattServerInterface;
/*******************************************************************************
**
** Function btif_gatt_init
**
** Description Initializes the GATT interface
**
** Returns bt_status_t
**
*******************************************************************************/
static bt_status_t btif_gatt_init( const btgatt_callbacks_t* callbacks )
{
bt_gatt_callbacks = callbacks;
return BT_STATUS_SUCCESS;
}
/*******************************************************************************
**
** Function btif_gatt_cleanup
**
** Description Closes the GATT interface
**
** Returns void
**
*******************************************************************************/
static void btif_gatt_cleanup( void )
{
if (bt_gatt_callbacks)
bt_gatt_callbacks = NULL;
BTA_GATTC_Disable();
BTA_GATTS_Disable();
}
static const btgatt_interface_t btgattInterface = {
sizeof(btgattInterface),
btif_gatt_init,
btif_gatt_cleanup,
&btgattClientInterface,
&btgattServerInterface,
};
/*******************************************************************************
**
** Function btif_gatt_get_interface
**
** Description Get the gatt callback interface
**
** Returns btgatt_interface_t
**
*******************************************************************************/
const btgatt_interface_t *btif_gatt_get_interface()
{
return &btgattInterface;
}
#endif