1/* ------------------------------------------------------------------ 2 * Copyright (C) 1998-2009 PacketVideo 3 * 4 * Licensed under the Apache License, Version 2.0 (the "License"); 5 * you may not use this file except in compliance with the License. 6 * You may obtain a copy of the License at 7 * 8 * http://www.apache.org/licenses/LICENSE-2.0 9 * 10 * Unless required by applicable law or agreed to in writing, software 11 * distributed under the License is distributed on an "AS IS" BASIS, 12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either 13 * express or implied. 14 * See the License for the specific language governing permissions 15 * and limitations under the License. 16 * ------------------------------------------------------------------- 17 */ 18/* 19 20 Pathname: ibstream.h 21 22------------------------------------------------------------------------------ 23 REVISION HISTORY 24 25 Description: Change names of constants. 26 27 Description: Change the buffer from UInt to UInt32 28 29 Description: Remove declaration of getbits and include header file 30 31 Description: Change input buffer to UChar 32 Add constant 33 34 Who: Date: 35 Description: 36 37------------------------------------------------------------------------------ 38 INCLUDE DESCRIPTION 39 40 Contains defines, structures, and function definitions for the 41 input bit stream used in the AAC Decoder. 42 43------------------------------------------------------------------------------ 44*/ 45 46/*---------------------------------------------------------------------------- 47; CONTINUE ONLY IF NOT ALREADY DEFINED 48----------------------------------------------------------------------------*/ 49#ifndef IBSTREAM_H 50#define IBSTREAM_H 51 52/*---------------------------------------------------------------------------- 53; INCLUDES 54----------------------------------------------------------------------------*/ 55#include "pv_audio_type_defs.h" 56#include "s_bits.h" 57#include "getbits.h" 58 59/*---------------------------------------------------------------------------- 60; MACROS 61; Define module specific macros here 62----------------------------------------------------------------------------*/ 63 64/*---------------------------------------------------------------------------- 65; DEFINES 66; Include all pre-processor statements here. 67----------------------------------------------------------------------------*/ 68 69#define INBUF_ARRAY_INDEX_SHIFT (3) 70#define INBUF_BIT_WIDTH (1<<(INBUF_ARRAY_INDEX_SHIFT)) 71#define INBUF_BIT_MODULO_MASK ((INBUF_BIT_WIDTH)-1) 72 73#define MAX_GETBITS (25) 74/*---------------------------------------------------------------------------- 75; EXTERNAL VARIABLES REFERENCES 76; Declare variables used in this module but defined elsewhere 77----------------------------------------------------------------------------*/ 78 79/*---------------------------------------------------------------------------- 80; SIMPLE TYPEDEF'S 81----------------------------------------------------------------------------*/ 82 83/*---------------------------------------------------------------------------- 84; ENUMERATED TYPEDEF'S 85----------------------------------------------------------------------------*/ 86 87/*---------------------------------------------------------------------------- 88; STRUCTURES TYPEDEF'S 89----------------------------------------------------------------------------*/ 90 91 92/*---------------------------------------------------------------------------- 93; GLOBAL FUNCTION DEFINITIONS 94; Function Prototype declaration 95----------------------------------------------------------------------------*/ 96 97#ifdef __cplusplus 98extern "C" 99{ 100#endif 101 102 void byte_align( 103 BITS *pInputStream); 104 105 106#ifdef __cplusplus 107} 108#endif 109 110/*---------------------------------------------------------------------------- 111; END 112----------------------------------------------------------------------------*/ 113#endif /* IBSTREAM_H */ 114 115 116