/****************************************************************************** * * Copyright (C) 2009-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 the HL (HeaLth device profile) subsystem * call-out functions. * ******************************************************************************/ #ifndef BTA_HL_CO_H #define BTA_HL_CO_H #include "bta_api.h" #include "bta_hl_api.h" /***************************************************************************** ** Constants and Data Types *****************************************************************************/ /************************** ** Common Definitions ***************************/ /******************************************************************************* ** ** Function bta_hl_co_get_num_of_mdep ** ** Description This function is called to get the number of MDEPs for this ** application ID ** ** Parameters app_id - application ID ** p_num_of_mdep (output) - number of MDEP configurations supported ** by the application ** ** Returns Bloolean - TRUE success ** *******************************************************************************/ extern BOOLEAN bta_hl_co_get_num_of_mdep(UINT8 app_id, UINT8 *p_num_of_mdep); /******************************************************************************* ** ** Function bta_hl_co_advrtise_source_sdp ** ** Description This function is called to find out whether the SOURCE MDEP ** configuration information should be advertize in the SDP or nopt ** ** Parameters app_id - application ID ** ** Returns Bloolean - TRUE advertise the SOURCE MDEP configuration ** information ** *******************************************************************************/ extern BOOLEAN bta_hl_co_advrtise_source_sdp(UINT8 app_id); /******************************************************************************* ** ** Function bta_hl_co_get_mdep_config ** ** Description This function is called to get the supported feature ** configuration for the specified mdep index and it also assigns ** the MDEP ID for the specified mdep index ** ** Parameters app_id - HDP application ID ** mdep_idx - the mdep index ** mdep_counter - mdep_counter ** mdep_id - the assigned MDEP ID for the specified medp_idx ** p_mdl_cfg (output) - pointer to the MDEP configuration ** ** ** Returns Bloolean - TRUE success *******************************************************************************/ extern BOOLEAN bta_hl_co_get_mdep_config(UINT8 app_id, UINT8 mdep_idx, UINT8 mdep_counter, tBTA_HL_MDEP_ID mdep_id, tBTA_HL_MDEP_CFG *p_mdep_cfg); /******************************************************************************* ** ** Function bta_hl_co_get_echo_config ** ** Description This function is called to get the echo test ** maximum APDU size configuration ** ** Parameters app_id - HDP application ID ** p_echo_cfg (output) - pointer to the Echo test maximum APDU size ** configuration ** ** Returns Bloolean - TRUE success *******************************************************************************/ extern BOOLEAN bta_hl_co_get_echo_config(UINT8 app_id, tBTA_HL_ECHO_CFG *p_echo_cfg); /******************************************************************************* ** ** Function bta_hl_co_save_mdl ** ** Description This function is called to save a MDL configuration item in persistent ** storage ** ** Parameters app_id - HDP application ID ** item_idx - the MDL configuration storage index ** p_mdl_cfg - pointer to the MDL configuration data ** ** Returns void ** *******************************************************************************/ extern void bta_hl_co_save_mdl(UINT8 app_id, UINT8 item_idx, tBTA_HL_MDL_CFG *p_mdl_cfg ); /******************************************************************************* ** ** Function bta_hl_co_delete_mdl ** ** Description This function is called to delete a MDL configuration item in persistent ** storage ** ** Parameters app_id - HDP application ID ** item_idx - the MDL configuration storage index ** ** Returns void ** *******************************************************************************/ extern void bta_hl_co_delete_mdl(UINT8 app_id, UINT8 item_idx); /******************************************************************************* ** ** Function bta_hl_co_get_mdl_config ** ** Description This function is called to get the MDL configuration ** from teh persistent memory. This function shall only be called *8 once after the device is powered up ** ** Parameters app_id - HDP application ID ** buffer_size - the unit of the buffer size is sizeof(tBTA_HL_MDL_CFG) ** p_mdl_buf - Point to the starting location of the buffer ** ** Returns BOOLEAN ** ** *******************************************************************************/ extern BOOLEAN bta_hl_co_load_mdl_config (UINT8 app_id, UINT8 buffer_size, tBTA_HL_MDL_CFG *p_mdl_buf ); /******************************************************************************* ** ** Function bta_hl_co_get_tx_data ** ** Description Get the data to be sent ** ** Parameters app_id - HDP application ID ** mdl_handle - MDL handle ** buf_size - the size of the buffer ** p_buf - the buffer pointer ** evt - the evt to be passed back to the HL in the ** bta_hl_ci_get_tx_data call-in function ** ** Returns Void ** *******************************************************************************/ extern void bta_hl_co_get_tx_data (UINT8 app_id, tBTA_HL_MDL_HANDLE mdl_handle, UINT16 buf_size, UINT8 *p_buf, UINT16 evt); /******************************************************************************* ** ** Function bta_hl_co_put_rx_data ** ** Description Put the received data ** ** Parameters app_id - HDP application ID ** mdl_handle - MDL handle ** data_size - the size of the data ** p_data - the data pointer ** evt - the evt to be passed back to the HL in the ** bta_hl_ci_put_rx_data call-in function ** ** Returns Void ** *******************************************************************************/ extern void bta_hl_co_put_rx_data (UINT8 app_id, tBTA_HL_MDL_HANDLE mdl_handle, UINT16 data_size, UINT8 *p_data, UINT16 evt); /******************************************************************************* ** ** Function bta_hl_co_get_tx_data ** ** Description Get the Echo data to be sent ** ** Parameters app_id - HDP application ID ** mcl_handle - MCL handle ** buf_size - the size of the buffer ** p_buf - the buffer pointer ** evt - the evt to be passed back to the HL in the ** bta_hl_ci_get_tx_data call-in function ** ** Returns Void ** *******************************************************************************/ extern void bta_hl_co_get_echo_data (UINT8 app_id, tBTA_HL_MCL_HANDLE mcl_handle, UINT16 buf_size, UINT8 *p_buf, UINT16 evt); /******************************************************************************* ** ** Function bta_hl_co_put_echo_data ** ** Description Put the received loopback echo data ** ** Parameters app_id - HDP application ID ** mcl_handle - MCL handle ** data_size - the size of the data ** p_data - the data pointer ** evt - the evt to be passed back to the HL in the ** bta_hl_ci_put_echo_data call-in function ** ** Returns Void ** *******************************************************************************/ extern void bta_hl_co_put_echo_data (UINT8 app_id, tBTA_HL_MCL_HANDLE mcl_handle, UINT16 data_size, UINT8 *p_data, UINT16 evt); #endif /* BTA_HL_CO_H */