15738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/******************************************************************************
25738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project *
35738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project *  Copyright (C) 2000-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 *  nterface to low complexity subband codec (SBC)
225738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project *
235738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project ******************************************************************************/
245738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef A2D_SBC_H
255738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define A2D_SBC_H
265738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
275738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/*****************************************************************************
285738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project**  Constants
295738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project*****************************************************************************/
305738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* the length of the SBC Media Payload header. */
315738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define A2D_SBC_MPL_HDR_LEN         1
325738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
335738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* the LOSC of SBC media codec capabilitiy */
345738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define A2D_SBC_INFO_LEN            6
355738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
365738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* for Codec Specific Information Element */
375738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define A2D_SBC_IE_SAMP_FREQ_MSK    0xF0    /* b7-b4 sampling frequency */
385738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define A2D_SBC_IE_SAMP_FREQ_16     0x80    /* b7:16  kHz */
395738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define A2D_SBC_IE_SAMP_FREQ_32     0x40    /* b6:32  kHz */
405738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define A2D_SBC_IE_SAMP_FREQ_44     0x20    /* b5:44.1kHz */
415738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define A2D_SBC_IE_SAMP_FREQ_48     0x10    /* b4:48  kHz */
425738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
435738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define A2D_SBC_IE_CH_MD_MSK        0x0F    /* b3-b0 channel mode */
445738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define A2D_SBC_IE_CH_MD_MONO       0x08    /* b3: mono */
455738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define A2D_SBC_IE_CH_MD_DUAL       0x04    /* b2: dual */
465738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define A2D_SBC_IE_CH_MD_STEREO     0x02    /* b1: stereo */
475738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define A2D_SBC_IE_CH_MD_JOINT      0x01    /* b0: joint stereo */
485738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
495738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define A2D_SBC_IE_BLOCKS_MSK       0xF0    /* b7-b4 number of blocks */
505738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define A2D_SBC_IE_BLOCKS_4         0x80    /* 4 blocks */
515738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define A2D_SBC_IE_BLOCKS_8         0x40    /* 8 blocks */
525738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define A2D_SBC_IE_BLOCKS_12        0x20    /* 12blocks */
535738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define A2D_SBC_IE_BLOCKS_16        0x10    /* 16blocks */
545738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
555738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define A2D_SBC_IE_SUBBAND_MSK      0x0C    /* b3-b2 number of subbands */
565738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define A2D_SBC_IE_SUBBAND_4        0x08    /* b3: 4 */
575738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define A2D_SBC_IE_SUBBAND_8        0x04    /* b2: 8 */
585738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
595738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define A2D_SBC_IE_ALLOC_MD_MSK     0x03    /* b1-b0 allocation mode */
605738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define A2D_SBC_IE_ALLOC_MD_S       0x02    /* b1: SNR */
615738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define A2D_SBC_IE_ALLOC_MD_L       0x01    /* b0: loundess */
625738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
635738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define A2D_SBC_IE_MIN_BITPOOL      2
645738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define A2D_SBC_IE_MAX_BITPOOL      250
655738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
665738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* for media payload header */
675738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define A2D_SBC_HDR_F_MSK           0x80
685738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define A2D_SBC_HDR_S_MSK           0x40
695738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define A2D_SBC_HDR_L_MSK           0x20
705738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define A2D_SBC_HDR_NUM_MSK         0x0F
715738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
725738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/*****************************************************************************
735738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project**  Type Definitions
745738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project*****************************************************************************/
755738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
765738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* data type for the SBC Codec Information Element*/
775738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projecttypedef struct
785738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project{
795738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project    UINT8   samp_freq;      /* Sampling frequency */
805738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project    UINT8   ch_mode;        /* Channel mode */
815738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project    UINT8   block_len;      /* Block length */
825738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project    UINT8   num_subbands;   /* Number of subbands */
835738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project    UINT8   alloc_mthd;     /* Allocation method */
845738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project    UINT8   max_bitpool;    /* Maximum bitpool */
855738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project    UINT8   min_bitpool;    /* Minimum bitpool */
865738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project} tA2D_SBC_CIE;
875738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
885738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
895738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/*****************************************************************************
905738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project**  External Function Declarations
915738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project*****************************************************************************/
925738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifdef __cplusplus
935738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projectextern "C"
945738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project{
955738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif
965738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/******************************************************************************
975738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project**
985738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** Function         A2D_SbcChkFrInit
995738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project**
1005738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** Description      check if need to init the descramble control block.
1015738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project**
1025738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** Returns          nothing.
1035738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project******************************************************************************/
1045738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source ProjectA2D_API extern void A2D_SbcChkFrInit(UINT8 *p_pkt);
1055738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
1065738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/******************************************************************************
1075738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project**
1085738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** Function         A2D_SbcDescramble
1095738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project**
1105738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** Description      descramble the packet.
1115738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project**
1125738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** Returns          nothing.
1135738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project******************************************************************************/
1145738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source ProjectA2D_API extern void A2D_SbcDescramble(UINT8 *p_pkt, UINT16 len);
1155738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
1165738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/******************************************************************************
1175738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project**
1185738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** Function         A2D_BldSbcInfo
1195738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project**
1205738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** Description      This function is called by an application to build
1215738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project**                  the SBC Media Codec Capabilities byte sequence
1225738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project**                  beginning from the LOSC octet.
1235738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project**                  Input Parameters:
1245738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project**                      media_type:  Indicates Audio, or Multimedia.
1255738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project**
1265738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project**                      p_ie:  The SBC Codec Information Element information.
1275738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project**
1285738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project**                  Output Parameters:
1295738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project**                      p_result:  the resulting codec info byte sequence.
1305738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project**
1315738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** Returns          A2D_SUCCESS if function execution succeeded.
1325738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project**                  Error status code, otherwise.
1335738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project******************************************************************************/
1345738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source ProjectA2D_API extern tA2D_STATUS A2D_BldSbcInfo(UINT8 media_type, tA2D_SBC_CIE *p_ie,
1355738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project                                          UINT8 *p_result);
1365738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
1375738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/******************************************************************************
1385738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project**
1395738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** Function         A2D_ParsSbcInfo
1405738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project**
1415738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** Description      This function is called by an application to parse
1425738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project**                  the SBC Media Codec Capabilities byte sequence
1435738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project**                  beginning from the LOSC octet.
1445738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project**                  Input Parameters:
1455738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project**                      p_info:  the byte sequence to parse.
1465738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project**
1475738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project**                      for_caps:  TRUE, if the byte sequence is for get capabilities response.
1485738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project**
1495738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project**                  Output Parameters:
1505738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project**                      p_ie:  The SBC Codec Information Element information.
1515738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project**
1525738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** Returns          A2D_SUCCESS if function execution succeeded.
1535738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project**                  Error status code, otherwise.
1545738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project******************************************************************************/
1555738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source ProjectA2D_API extern tA2D_STATUS A2D_ParsSbcInfo(tA2D_SBC_CIE *p_ie, UINT8 *p_info,
1565738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project                                           BOOLEAN for_caps);
1575738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
1585738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/******************************************************************************
1595738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project**
1605738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** Function         A2D_BldSbcMplHdr
1615738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project**
1625738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** Description      This function is called by an application to parse
1635738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project**                  the SBC Media Payload header.
1645738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project**                  Input Parameters:
1655738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project**                      frag:  1, if fragmented. 0, otherwise.
1665738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project**
1675738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project**                      start:  1, if the starting packet of a fragmented frame.
1685738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project**
1695738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project**                      last:  1, if the last packet of a fragmented frame.
1705738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project**
1715738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project**                      num:  If frag is 1, this is the number of remaining fragments
1725738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project**                            (including this fragment) of this frame.
1735738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project**                            If frag is 0, this is the number of frames in this packet.
1745738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project**
1755738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project**                  Output Parameters:
1765738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project**                      p_dst:  the resulting media payload header byte sequence.
1775738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project**
1785738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** Returns          void.
1795738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project******************************************************************************/
1805738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source ProjectA2D_API extern void A2D_BldSbcMplHdr(UINT8 *p_dst, BOOLEAN frag, BOOLEAN start,
1815738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project                                     BOOLEAN last, UINT8 num);
1825738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
1835738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/******************************************************************************
1845738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project**
1855738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** Function         A2D_ParsSbcMplHdr
1865738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project**
1875738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** Description      This function is called by an application to parse
1885738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project**                  the SBC Media Payload header.
1895738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project**                  Input Parameters:
1905738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project**                      p_src:  the byte sequence to parse..
1915738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project**
1925738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project**                  Output Parameters:
1935738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project**                      frag:  1, if fragmented. 0, otherwise.
1945738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project**
1955738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project**                      start:  1, if the starting packet of a fragmented frame.
1965738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project**
1975738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project**                      last:  1, if the last packet of a fragmented frame.
1985738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project**
1995738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project**                      num:  If frag is 1, this is the number of remaining fragments
2005738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project**                            (including this fragment) of this frame.
2015738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project**                            If frag is 0, this is the number of frames in this packet.
2025738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project**
2035738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** Returns          void.
2045738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project******************************************************************************/
2055738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source ProjectA2D_API extern void A2D_ParsSbcMplHdr(UINT8 *p_src, BOOLEAN *p_frag,
2065738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project                                      BOOLEAN *p_start, BOOLEAN *p_last,
2075738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project                                      UINT8 *p_num);
2085738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifdef __cplusplus
2095738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project}
2105738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif
2115738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
2125738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif /* A2D_SBC_H */
213