31#include "bta_hh_api.h"
34#define BTA_HH_MAX_RPT_CHARS 8
40 BTA_HH_API_OPEN_EVT = BTA_SYS_EVT_START(BTA_ID_HH),
46 BTA_HH_INT_HANDSK_EVT,
48 BTA_HH_API_WRITE_DEV_EVT,
49 BTA_HH_API_GET_DSCP_EVT,
50 BTA_HH_API_MAINT_DEV_EVT,
54 BTA_HH_API_ENABLE_EVT,
55 BTA_HH_API_DISABLE_EVT,
58typedef UINT16 tBTA_HH_INT_EVT;
60#define BTA_HH_INVALID_EVT (BTA_HH_DISC_CMPL_EVT + 1)
63#define BTA_HH_FST_TRANS_CB_EVT BTA_HH_GET_RPT_EVT
64#define BTA_HH_FST_BTE_TRANS_EVT HID_TRANS_GET_REPORT
67#define BTA_HH_ADD_DEV 0
68#define BTA_HH_REMOVE_DEV 1
78typedef UINT8 tBTA_HH_STATE;
96 UINT8 service_name[BTA_SERVICE_NAME_LEN+1];
97 tBTA_HH_CBACK *p_cback;
105 tBTA_HH_PROTO_MODE mode;
135 tBTA_HH_STATUS status;
153 BOOLEAN incoming_conn;
155 tBTA_HH_PROTO_MODE mode;
165 UINT8 last_report[BTA_HH_MAX_RPT_CHARS];
180 UINT8 cb_index[BTA_HH_MAX_KNOWN];
182 tBTA_HH_CBACK *p_cback;
190#if BTA_DYNAMIC_MEMORY == FALSE
194#define bta_hh_cb (*bta_hh_cb_ptr)
203extern BOOLEAN bta_hh_hdl_event(
BT_HDR *p_msg);
222extern UINT8 bta_hh_find_cb(BD_ADDR bda);
224 UINT8 *p_report, UINT16 report_len);
226 UINT8 *p_report, UINT16 report_len);
227extern BOOLEAN bta_hh_tod_spt(
tBTA_HH_DEV_CB *p_cb,UINT8 sub_class);
230extern void bta_hh_add_device_to_list(
tBTA_HH_DEV_CB *p_cb, UINT8 handle,
232 tHID_DEV_DSCP_INFO *p_dscp_info,
233 UINT8 sub_class, UINT16 max_latency, UINT16 min_tout, UINT8 app_id);
234extern void bta_hh_update_di_info(
tBTA_HH_DEV_CB *p_cb, UINT16 vendor_id, UINT16 product_id,
239extern void bta_hh_api_disable(
void);
240extern void bta_hh_disc_cmpl(
void);
244extern void bta_hh_trace_dev_db(
void);