You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
161 lines
6.0 KiB
161 lines
6.0 KiB
/******************************************************************************
|
|
*
|
|
* Copyright 2005-2012 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.
|
|
*
|
|
******************************************************************************/
|
|
|
|
/******************************************************************************
|
|
*
|
|
* This is the interface file for hid host call-out functions.
|
|
*
|
|
******************************************************************************/
|
|
#ifndef BTA_HH_CO_H
|
|
#define BTA_HH_CO_H
|
|
|
|
#include <cstdint>
|
|
|
|
#include "bta/include/bta_hh_api.h"
|
|
|
|
typedef struct {
|
|
uint16_t rpt_uuid;
|
|
uint8_t rpt_id;
|
|
tBTA_HH_RPT_TYPE rpt_type;
|
|
uint8_t srvc_inst_id;
|
|
uint16_t char_inst_id;
|
|
} tBTA_HH_RPT_CACHE_ENTRY;
|
|
|
|
/*******************************************************************************
|
|
*
|
|
* Function bta_hh_co_data
|
|
*
|
|
* Description This callout function is executed by HH when data is
|
|
* received
|
|
* in interupt channel.
|
|
*
|
|
*
|
|
* Returns void.
|
|
*
|
|
******************************************************************************/
|
|
extern void bta_hh_co_data(uint8_t dev_handle, uint8_t* p_rpt, uint16_t len,
|
|
tBTA_HH_PROTO_MODE mode, uint8_t sub_class,
|
|
uint8_t ctry_code, const RawAddress& peer_addr,
|
|
uint8_t app_id);
|
|
|
|
/*******************************************************************************
|
|
*
|
|
* Function bta_hh_co_open
|
|
*
|
|
* Description This callout function is executed by HH when connection is
|
|
* opened, and application may do some device specific
|
|
* initialization.
|
|
*
|
|
* Returns void.
|
|
*
|
|
******************************************************************************/
|
|
extern void bta_hh_co_open(uint8_t dev_handle, uint8_t sub_class,
|
|
uint16_t attr_mask, uint8_t app_id);
|
|
|
|
/*******************************************************************************
|
|
*
|
|
* Function bta_hh_co_close
|
|
*
|
|
* Description This callout function is executed by HH when connection is
|
|
* closed, and device specific finalizatio nmay be needed.
|
|
*
|
|
* Returns void.
|
|
*
|
|
******************************************************************************/
|
|
extern void bta_hh_co_close(uint8_t dev_handle, uint8_t app_id);
|
|
|
|
/*******************************************************************************
|
|
*
|
|
* Function bta_hh_co_set_rpt_rsp
|
|
*
|
|
* Description This callout function is executed by HH when Set Report
|
|
* Response is received on Control Channel.
|
|
*
|
|
* Returns void.
|
|
*
|
|
******************************************************************************/
|
|
extern void bta_hh_co_set_rpt_rsp(uint8_t dev_handle, uint8_t status);
|
|
|
|
/*******************************************************************************
|
|
*
|
|
* Function bta_hh_co_get_rpt_rsp
|
|
*
|
|
* Description This callout function is executed by HH when Get Report
|
|
* Response is received on Control Channel.
|
|
*
|
|
* Returns void.
|
|
*
|
|
******************************************************************************/
|
|
extern void bta_hh_co_get_rpt_rsp(uint8_t dev_handle, uint8_t status,
|
|
uint8_t* p_rpt, uint16_t len);
|
|
|
|
/*******************************************************************************
|
|
*
|
|
* Function bta_hh_le_co_rpt_info
|
|
*
|
|
* Description This callout function is to convey the report information on
|
|
* a HOGP device to the application. Application can save this
|
|
* information in NV if device is bonded and load it back when
|
|
* stack reboot.
|
|
*
|
|
* Parameters remote_bda - remote device address
|
|
* p_entry - report entry pointer
|
|
* app_id - application id
|
|
*
|
|
* Returns void.
|
|
*
|
|
******************************************************************************/
|
|
extern void bta_hh_le_co_rpt_info(const RawAddress& remote_bda,
|
|
tBTA_HH_RPT_CACHE_ENTRY* p_entry,
|
|
uint8_t app_id);
|
|
|
|
/*******************************************************************************
|
|
*
|
|
* Function bta_hh_le_co_cache_load
|
|
*
|
|
* Description This callout function is to request the application to load
|
|
* the cached HOGP report if there is any. When cache reading
|
|
* is completed, bta_hh_le_ci_cache_load() is called by the
|
|
* application.
|
|
*
|
|
* Parameters remote_bda - remote device address
|
|
* p_num_rpt: number of cached report
|
|
* app_id - application id
|
|
*
|
|
* Returns the acched report array
|
|
*
|
|
******************************************************************************/
|
|
extern tBTA_HH_RPT_CACHE_ENTRY* bta_hh_le_co_cache_load(
|
|
const RawAddress& remote_bda, uint8_t* p_num_rpt, uint8_t app_id);
|
|
|
|
/*******************************************************************************
|
|
*
|
|
* Function bta_hh_le_co_reset_rpt_cache
|
|
*
|
|
* Description This callout function is to reset the HOGP device cache.
|
|
*
|
|
* Parameters remote_bda - remote device address
|
|
*
|
|
* Returns none
|
|
*
|
|
******************************************************************************/
|
|
extern void bta_hh_le_co_reset_rpt_cache(const RawAddress& remote_bda,
|
|
uint8_t app_id);
|
|
|
|
#endif /* BTA_HH_CO_H */
|