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 PacketVideo Corp. 21 MP3 Decoder Library 22 23 Filename: s_mp3bits.h 24 25 Date: 09/21/2007 26 27 ------------------------------------------------------------------------------ 28 REVISION HISTORY 29 30 Description: 31 32 ------------------------------------------------------------------------------ 33 INCLUDE DESCRIPTION 34 35 This include file defines the structure, BITS 36 37 ------------------------------------------------------------------------------ 38 */ 39 40 /*---------------------------------------------------------------------------- 41 ; CONTINUE ONLY IF NOT ALREADY DEFINED 42 ----------------------------------------------------------------------------*/ 43 #ifndef S_MP3BITS_H 44 #define S_MP3BITS_H 45 46 /*---------------------------------------------------------------------------- 47 ; INCLUDES 48 ----------------------------------------------------------------------------*/ 49 #include "pvmp3_audio_type_defs.h" 50 51 /*---------------------------------------------------------------------------- 52 ; MACROS 53 ; Define module specific macros here 54 ----------------------------------------------------------------------------*/ 55 56 /*---------------------------------------------------------------------------- 57 ; DEFINES 58 ; Include all pre-processor statements here. 59 ----------------------------------------------------------------------------*/ 60 61 /*---------------------------------------------------------------------------- 62 ; EXTERNAL VARIABLES REFERENCES 63 ; Declare variables used in this module but defined elsewhere 64 ----------------------------------------------------------------------------*/ 65 66 /*---------------------------------------------------------------------------- 67 ; SIMPLE TYPEDEF'S 68 ----------------------------------------------------------------------------*/ 69 70 /*---------------------------------------------------------------------------- 71 ; ENUMERATED TYPEDEF'S 72 ----------------------------------------------------------------------------*/ 73 74 /*---------------------------------------------------------------------------- 75 ; STRUCTURES TYPEDEF'S 76 ----------------------------------------------------------------------------*/ 77 /* 78 * Name: BITS 79 * Description: Holds information for processing the input data buffer 80 * as a "stream". The data is in packed format. 81 * Fields: 82 * pBuffer - pointer to the beginning of the buffer. If the data type of 83 * this changes, make sure to update the constants in ibstream.h 84 * usedBits - number of bits read thus far from the buffer. Bit 0 is 85 * the LSB of pBuffer[0]. 86 */ 87 88 89 typedef struct 90 { 91 uint8 *pBuffer; 92 uint32 usedBits; 93 uint32 inputBufferCurrentLength; 94 uint32 offset; 95 } tmp3Bits; 96 97 98 /*---------------------------------------------------------------------------- 99 ; GLOBAL FUNCTION DEFINITIONS 100 ; Function Prototype declaration 101 ----------------------------------------------------------------------------*/ 102 103 /*---------------------------------------------------------------------------- 104 ; END 105 ----------------------------------------------------------------------------*/ 106 #endif 107 108