15738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/****************************************************************************** 25738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project * 35738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project * Copyright (C) 2004-2012 Broadcom Corporation 45738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project * 55738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project * Licensed under the Apache License, Version 2.0 (the "License"); 65738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project * you may not use this file except in compliance with the License. 75738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project * You may obtain a copy of the License at: 85738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project * 95738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project * http://www.apache.org/licenses/LICENSE-2.0 105738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project * 115738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project * Unless required by applicable law or agreed to in writing, software 125738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project * distributed under the License is distributed on an "AS IS" BASIS, 135738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 145738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project * See the License for the specific language governing permissions and 155738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project * limitations under the License. 165738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project * 175738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project ******************************************************************************/ 185738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 195738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/****************************************************************************** 205738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project * 215738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project * This is the public interface file for the simulatenous advanced 225738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project * audio/video streaming (AV) source and sink of BTA, Broadcom's Bluetooth 235738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project * application layer for mobile phones. 245738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project * 255738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project ******************************************************************************/ 265738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef BTA_AR_API_H 275738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTA_AR_API_H 285738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 295738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#include "avct_api.h" 30cd1fd07f1306e08fe048682dd5918987e579f937Myles Watson#include "avdt_api.h" 315738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#include "avrc_api.h" 325738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#include "bta_av_api.h" 335738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#include "bta_sys.h" 34cd1fd07f1306e08fe048682dd5918987e579f937Myles Watson#include "sdp_api.h" 355738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 365738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/***************************************************************************** 378af480e24549ba51a3f6858d9d9af504715e0beaMyles Watson * Constants and data types 388af480e24549ba51a3f6858d9d9af504715e0beaMyles Watson ****************************************************************************/ 395738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* This event signal to AR user that other profile is connected */ 40cd1fd07f1306e08fe048682dd5918987e579f937Myles Watson#define BTA_AR_AVDT_CONN_EVT (AVDT_MAX_EVT + 1) 415738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 425738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/******************************************************************************* 438af480e24549ba51a3f6858d9d9af504715e0beaMyles Watson * 448af480e24549ba51a3f6858d9d9af504715e0beaMyles Watson * Function bta_ar_init 458af480e24549ba51a3f6858d9d9af504715e0beaMyles Watson * 468af480e24549ba51a3f6858d9d9af504715e0beaMyles Watson * Description This function is called from bta_sys_init(). 478af480e24549ba51a3f6858d9d9af504715e0beaMyles Watson * to initialize the control block 488af480e24549ba51a3f6858d9d9af504715e0beaMyles Watson * 498af480e24549ba51a3f6858d9d9af504715e0beaMyles Watson * Returns void 508af480e24549ba51a3f6858d9d9af504715e0beaMyles Watson * 518af480e24549ba51a3f6858d9d9af504715e0beaMyles Watson ******************************************************************************/ 525738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projectextern void bta_ar_init(void); 535738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 545738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/******************************************************************************* 558af480e24549ba51a3f6858d9d9af504715e0beaMyles Watson * 568af480e24549ba51a3f6858d9d9af504715e0beaMyles Watson * Function bta_ar_reg_avdt 578af480e24549ba51a3f6858d9d9af504715e0beaMyles Watson * 588af480e24549ba51a3f6858d9d9af504715e0beaMyles Watson * Description This function is called to register to AVDTP. 598af480e24549ba51a3f6858d9d9af504715e0beaMyles Watson * 608af480e24549ba51a3f6858d9d9af504715e0beaMyles Watson * Returns void 618af480e24549ba51a3f6858d9d9af504715e0beaMyles Watson * 628af480e24549ba51a3f6858d9d9af504715e0beaMyles Watson ******************************************************************************/ 63cd1fd07f1306e08fe048682dd5918987e579f937Myles Watsonextern void bta_ar_reg_avdt(tAVDT_REG* p_reg, tAVDT_CTRL_CBACK* p_cback, 64cd1fd07f1306e08fe048682dd5918987e579f937Myles Watson tBTA_SYS_ID sys_id); 655738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 665738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/******************************************************************************* 678af480e24549ba51a3f6858d9d9af504715e0beaMyles Watson * 688af480e24549ba51a3f6858d9d9af504715e0beaMyles Watson * Function bta_ar_dereg_avdt 698af480e24549ba51a3f6858d9d9af504715e0beaMyles Watson * 708af480e24549ba51a3f6858d9d9af504715e0beaMyles Watson * Description This function is called to de-register from AVDTP. 718af480e24549ba51a3f6858d9d9af504715e0beaMyles Watson * 728af480e24549ba51a3f6858d9d9af504715e0beaMyles Watson * Returns void 738af480e24549ba51a3f6858d9d9af504715e0beaMyles Watson * 748af480e24549ba51a3f6858d9d9af504715e0beaMyles Watson ******************************************************************************/ 755738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projectextern void bta_ar_dereg_avdt(tBTA_SYS_ID sys_id); 765738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 775738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/******************************************************************************* 788af480e24549ba51a3f6858d9d9af504715e0beaMyles Watson * 798af480e24549ba51a3f6858d9d9af504715e0beaMyles Watson * Function bta_ar_avdt_conn 808af480e24549ba51a3f6858d9d9af504715e0beaMyles Watson * 81cd1fd07f1306e08fe048682dd5918987e579f937Myles Watson * Description This function is called to let ar know that some AVDTP 821baaae3f34a667058e7f0c5f778357d98320cf38Myles Watson * profile is connected for this sys_id. 838af480e24549ba51a3f6858d9d9af504715e0beaMyles Watson * If the other sys modules started a timer for PENDING_EVT, 848af480e24549ba51a3f6858d9d9af504715e0beaMyles Watson * the timer can be stopped now. 858af480e24549ba51a3f6858d9d9af504715e0beaMyles Watson * 868af480e24549ba51a3f6858d9d9af504715e0beaMyles Watson * Returns void 878af480e24549ba51a3f6858d9d9af504715e0beaMyles Watson * 888af480e24549ba51a3f6858d9d9af504715e0beaMyles Watson ******************************************************************************/ 899e030fde05352ec4385d7baf6cc2af89e95e039cJakub Pawlowskiextern void bta_ar_avdt_conn(tBTA_SYS_ID sys_id, const RawAddress& bd_addr); 905738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 915738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/******************************************************************************* 928af480e24549ba51a3f6858d9d9af504715e0beaMyles Watson * 938af480e24549ba51a3f6858d9d9af504715e0beaMyles Watson * Function bta_ar_reg_avct 948af480e24549ba51a3f6858d9d9af504715e0beaMyles Watson * 958af480e24549ba51a3f6858d9d9af504715e0beaMyles Watson * Description This function is called to register to AVCTP. 968af480e24549ba51a3f6858d9d9af504715e0beaMyles Watson * 978af480e24549ba51a3f6858d9d9af504715e0beaMyles Watson * Returns void 988af480e24549ba51a3f6858d9d9af504715e0beaMyles Watson * 998af480e24549ba51a3f6858d9d9af504715e0beaMyles Watson ******************************************************************************/ 100cd1fd07f1306e08fe048682dd5918987e579f937Myles Watsonextern void bta_ar_reg_avct(uint16_t mtu, uint16_t mtu_br, uint8_t sec_mask, 101cd1fd07f1306e08fe048682dd5918987e579f937Myles Watson tBTA_SYS_ID sys_id); 1025738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 1035738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/******************************************************************************* 1048af480e24549ba51a3f6858d9d9af504715e0beaMyles Watson * 1058af480e24549ba51a3f6858d9d9af504715e0beaMyles Watson * Function bta_ar_dereg_avct 1068af480e24549ba51a3f6858d9d9af504715e0beaMyles Watson * 1078af480e24549ba51a3f6858d9d9af504715e0beaMyles Watson * Description This function is called to deregister from AVCTP. 1088af480e24549ba51a3f6858d9d9af504715e0beaMyles Watson * 1098af480e24549ba51a3f6858d9d9af504715e0beaMyles Watson * Returns void 1108af480e24549ba51a3f6858d9d9af504715e0beaMyles Watson * 1118af480e24549ba51a3f6858d9d9af504715e0beaMyles Watson ******************************************************************************/ 1125738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projectextern void bta_ar_dereg_avct(tBTA_SYS_ID sys_id); 1135738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 1145738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/****************************************************************************** 1158af480e24549ba51a3f6858d9d9af504715e0beaMyles Watson * 1168af480e24549ba51a3f6858d9d9af504715e0beaMyles Watson * Function bta_ar_reg_avrc 1178af480e24549ba51a3f6858d9d9af504715e0beaMyles Watson * 1188af480e24549ba51a3f6858d9d9af504715e0beaMyles Watson * Description This function is called to register an SDP record for AVRCP. 1198af480e24549ba51a3f6858d9d9af504715e0beaMyles Watson * 1208af480e24549ba51a3f6858d9d9af504715e0beaMyles Watson * Returns void 1218af480e24549ba51a3f6858d9d9af504715e0beaMyles Watson * 1228af480e24549ba51a3f6858d9d9af504715e0beaMyles Watson *****************************************************************************/ 123cd1fd07f1306e08fe048682dd5918987e579f937Myles Watsonextern void bta_ar_reg_avrc(uint16_t service_uuid, const char* p_service_name, 124cd1fd07f1306e08fe048682dd5918987e579f937Myles Watson const char* p_provider_name, uint16_t categories, 125cc26bfcba0d5cc2473b34dc1b51913995e2db67ePavlin Radoslavov tBTA_SYS_ID sys_id, bool browse_supported, 126cc26bfcba0d5cc2473b34dc1b51913995e2db67ePavlin Radoslavov uint16_t profile_version); 1275738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 1285738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/****************************************************************************** 1298af480e24549ba51a3f6858d9d9af504715e0beaMyles Watson * 1308af480e24549ba51a3f6858d9d9af504715e0beaMyles Watson * Function bta_ar_dereg_avrc 1318af480e24549ba51a3f6858d9d9af504715e0beaMyles Watson * 132cd1fd07f1306e08fe048682dd5918987e579f937Myles Watson * Description This function is called to de-register/delete an SDP record 1331baaae3f34a667058e7f0c5f778357d98320cf38Myles Watson * for AVRCP. 1348af480e24549ba51a3f6858d9d9af504715e0beaMyles Watson * 1358af480e24549ba51a3f6858d9d9af504715e0beaMyles Watson * Returns void 1368af480e24549ba51a3f6858d9d9af504715e0beaMyles Watson * 1378af480e24549ba51a3f6858d9d9af504715e0beaMyles Watson *****************************************************************************/ 138e9e58ced195ec2c983c7723c9cbdabd45eb0f2fdMarie Janssenextern void bta_ar_dereg_avrc(uint16_t service_uuid, tBTA_SYS_ID sys_id); 1395738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 1405738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif /* BTA_AR_API_H */ 141