• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 /******************************************************************************
2  *
3  *  Copyright (C) 2004-2012 Broadcom Corporation
4  *
5  *  Licensed under the Apache License, Version 2.0 (the "License");
6  *  you may not use this file except in compliance with the License.
7  *  You may obtain a copy of the License at:
8  *
9  *  http://www.apache.org/licenses/LICENSE-2.0
10  *
11  *  Unless required by applicable law or agreed to in writing, software
12  *  distributed under the License is distributed on an "AS IS" BASIS,
13  *  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14  *  See the License for the specific language governing permissions and
15  *  limitations under the License.
16  *
17  ******************************************************************************/
18 
19 /******************************************************************************
20  *
21  *  This is the public interface file for the simulatenous advanced
22  *  audio/video streaming (AV) source and sink of BTA, Broadcom's Bluetooth
23  *  application layer for mobile phones.
24  *
25  ******************************************************************************/
26 #ifndef BTA_AR_API_H
27 #define BTA_AR_API_H
28 
29 #include "avdt_api.h"
30 #include "avct_api.h"
31 #include "avrc_api.h"
32 #include "sdp_api.h"
33 #include "bta_av_api.h"
34 #include "bta_sys.h"
35 
36 /*****************************************************************************
37 **  Constants and data types
38 *****************************************************************************/
39 /* This event signal to AR user that other profile is connected */
40 #define BTA_AR_AVDT_CONN_EVT    (AVDT_MAX_EVT + 1)
41 
42 /*******************************************************************************
43 **
44 ** Function         bta_ar_init
45 **
46 ** Description      This function is called from bta_sys_init().
47 **                  to initialize the control block
48 **
49 ** Returns          void
50 **
51 *******************************************************************************/
52 extern void bta_ar_init(void);
53 
54 /*******************************************************************************
55 **
56 ** Function         bta_ar_reg_avdt
57 **
58 ** Description      This function is called to register to AVDTP.
59 **
60 ** Returns          void
61 **
62 *******************************************************************************/
63 extern void bta_ar_reg_avdt(tAVDT_REG *p_reg, tAVDT_CTRL_CBACK *p_cback, tBTA_SYS_ID sys_id);
64 
65 /*******************************************************************************
66 **
67 ** Function         bta_ar_dereg_avdt
68 **
69 ** Description      This function is called to de-register from AVDTP.
70 **
71 ** Returns          void
72 **
73 *******************************************************************************/
74 extern void bta_ar_dereg_avdt(tBTA_SYS_ID sys_id);
75 
76 /*******************************************************************************
77 **
78 ** Function         bta_ar_avdt_conn
79 **
80 ** Description      This function is called to let ar know that some AVDTP profile
81 **                  is connected for this sys_id.
82 **                  If the other sys modules started a timer for PENDING_EVT,
83 **                  the timer can be stopped now.
84 **
85 ** Returns          void
86 **
87 *******************************************************************************/
88 extern void bta_ar_avdt_conn(tBTA_SYS_ID sys_id, BD_ADDR bd_addr);
89 
90 /*******************************************************************************
91 **
92 ** Function         bta_ar_reg_avct
93 **
94 ** Description      This function is called to register to AVCTP.
95 **
96 ** Returns          void
97 **
98 *******************************************************************************/
99 extern void bta_ar_reg_avct(UINT16 mtu, UINT16 mtu_br, UINT8 sec_mask, tBTA_SYS_ID sys_id);
100 
101 /*******************************************************************************
102 **
103 ** Function         bta_ar_dereg_avct
104 **
105 ** Description      This function is called to deregister from AVCTP.
106 **
107 ** Returns          void
108 **
109 *******************************************************************************/
110 extern void bta_ar_dereg_avct(tBTA_SYS_ID sys_id);
111 
112 /******************************************************************************
113 **
114 ** Function         bta_ar_reg_avrc
115 **
116 ** Description      This function is called to register an SDP record for AVRCP.
117 **
118 ** Returns          void
119 **
120 ******************************************************************************/
121 extern void bta_ar_reg_avrc(UINT16 service_uuid, char *p_service_name,
122                             char *p_provider_name, UINT16 categories, tBTA_SYS_ID sys_id,
123                             BOOLEAN browse_supported, UINT16 profile_version);
124 
125 /******************************************************************************
126 **
127 ** Function         bta_ar_dereg_avrc
128 **
129 ** Description      This function is called to de-register/delete an SDP record for AVRCP.
130 **
131 ** Returns          void
132 **
133 ******************************************************************************/
134 extern void bta_ar_dereg_avrc(UINT16 service_uuid, tBTA_SYS_ID sys_id);
135 
136 
137 #ifdef __cplusplus
138 }
139 #endif
140 
141 #endif /* BTA_AR_API_H */
142