/****************************************************************************** * * Copyright 2002-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 interface file contains the interface AVDTP conformance API. These * additional API functions and callback events are provided for * conformance testing purposes only. They are not intended to be used by * an application. * ******************************************************************************/ #ifndef AVDT_CAPI_H #define AVDT_CAPI_H #include "avdt_api.h" /* start AVDTC events here to distinguish from AVDT events */ #define AVDTC_EVT_BEGIN 0x80 /* Discover indication */ #define AVDTC_DISCOVER_IND_EVT (0 + AVDTC_EVT_BEGIN) /* Get capabilities indication */ #define AVDTC_GETCAP_IND_EVT (1 + AVDTC_EVT_BEGIN) /* Set configuration confirm */ #define AVDTC_SETCONFIG_CFM_EVT (2 + AVDTC_EVT_BEGIN) /* Get configuration indication */ #define AVDTC_GETCONFIG_IND_EVT (3 + AVDTC_EVT_BEGIN) /* Get configuration confirm */ #define AVDTC_GETCONFIG_CFM_EVT (4 + AVDTC_EVT_BEGIN) /* Open indication */ #define AVDTC_OPEN_IND_EVT (5 + AVDTC_EVT_BEGIN) /* Start indication */ #define AVDTC_START_IND_EVT (6 + AVDTC_EVT_BEGIN) /* Close indication */ #define AVDTC_CLOSE_IND_EVT (7 + AVDTC_EVT_BEGIN) /* Suspend indication */ #define AVDTC_SUSPEND_IND_EVT (8 + AVDTC_EVT_BEGIN) /* Abort indication */ #define AVDTC_ABORT_IND_EVT (9 + AVDTC_EVT_BEGIN) /* Abort confirm */ #define AVDTC_ABORT_CFM_EVT (10 + AVDTC_EVT_BEGIN) typedef struct { tAVDT_EVT_HDR hdr; /* Event header */ uint8_t seid_list[AVDT_NUM_SEPS]; /* Array of SEID values */ uint8_t num_seps; /* Number of values in array */ } tAVDT_MULTI; /* Union of all control callback event data structures */ typedef union { tAVDT_EVT_HDR hdr; tAVDT_CONFIG getconfig_cfm; tAVDT_MULTI start_ind; tAVDT_MULTI suspend_ind; } tAVDTC_CTRL; typedef void tAVDTC_CTRL_CBACK(uint8_t handle, const RawAddress& bd_addr, uint8_t event, tAVDTC_CTRL* p_data); /******************************************************************************* * * Function AVDTC_Init * * Description This function is called to begin using the conformance API. * It must be called after AVDT_Register() and before any * other API or conformance API functions are called. * * Returns void * ******************************************************************************/ extern void AVDTC_Init(tAVDTC_CTRL_CBACK* p_cback); /******************************************************************************* * * Function AVDTC_DiscoverRsp * * Description Send a discover response. * * Returns void * ******************************************************************************/ extern void AVDTC_DiscoverRsp(const RawAddress& bd_addr, uint8_t label, tAVDT_SEP_INFO sep_info[], uint8_t num_seps); /******************************************************************************* * * Function AVDTC_GetCapRsp * * Description Send a get capabilities response. * * Returns void * ******************************************************************************/ extern void AVDTC_GetCapRsp(const RawAddress& bd_addr, uint8_t label, AvdtpSepConfig* p_cap); /******************************************************************************* * * Function AVDTC_GetAllCapRsp * * Description Send a get all capabilities response. * * Returns void * ******************************************************************************/ extern void AVDTC_GetAllCapRsp(const RawAddress& bd_addr, uint8_t label, AvdtpSepConfig* p_cap); /******************************************************************************* * * Function AVDTC_GetConfigReq * * Description Send a get configuration request. * * Returns void * ******************************************************************************/ extern void AVDTC_GetConfigReq(uint8_t handle); /******************************************************************************* * * Function AVDTC_GetConfigRsp * * Description Send a get configuration response. * * Returns void * ******************************************************************************/ extern void AVDTC_GetConfigRsp(uint8_t handle, uint8_t label, AvdtpSepConfig* p_cfg); /******************************************************************************* * * Function AVDTC_OpenReq * * Description Send an open request. * * Returns void * ******************************************************************************/ extern void AVDTC_OpenReq(uint8_t handle); /******************************************************************************* * * Function AVDTC_OpenRsp * * Description Send an open response. * * Returns void * ******************************************************************************/ extern void AVDTC_OpenRsp(uint8_t handle, uint8_t label); /******************************************************************************* * * Function AVDTC_StartRsp * * Description Send a start response. * * Returns void * ******************************************************************************/ extern void AVDTC_StartRsp(uint8_t* p_handles, uint8_t num_handles, uint8_t label); /******************************************************************************* * * Function AVDTC_CloseRsp * * Description Send a close response. * * Returns void * ******************************************************************************/ extern void AVDTC_CloseRsp(uint8_t handle, uint8_t label); /******************************************************************************* * * Function AVDTC_SuspendRsp * * Description Send a suspend response. * * Returns void * ******************************************************************************/ extern void AVDTC_SuspendRsp(uint8_t* p_handles, uint8_t num_handles, uint8_t label); /******************************************************************************* * * Function AVDTC_AbortReq * * Description Send an abort request. * * Returns void * ******************************************************************************/ extern void AVDTC_AbortReq(uint8_t handle); /******************************************************************************* * * Function AVDTC_AbortRsp * * Description Send an abort response. * * Returns void * ******************************************************************************/ extern void AVDTC_AbortRsp(uint8_t handle, uint8_t label); /******************************************************************************* * * Function AVDTC_Rej * * Description Send a reject message. * * Returns void * ******************************************************************************/ extern void AVDTC_Rej(uint8_t handle, const RawAddress& bd_addr, uint8_t cmd, uint8_t label, uint8_t err_code, uint8_t err_param); #endif /* AVDT_CAPI_H */