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_tmp3dec_file.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, tmp3dec_file.
36 This structure contains information that needs to persist between calls
37
38------------------------------------------------------------------------------
39*/
40
41/*----------------------------------------------------------------------------
42; CONTINUE ONLY IF NOT ALREADY DEFINED
43----------------------------------------------------------------------------*/
44#ifndef S_TMP3DEC_FILE_H
45#define S_TMP3DEC_FILE_H
46
47/*----------------------------------------------------------------------------
48; INCLUDES
49----------------------------------------------------------------------------*/
50#include "s_tmp3dec_chan.h"
51#include "s_mp3bits.h"
52#include "s_huffcodetab.h"
53
54/*----------------------------------------------------------------------------
55; MACROS
56; Define module specific macros here
57----------------------------------------------------------------------------*/
58
59/*----------------------------------------------------------------------------
60; DEFINES
61; Include all pre-processor statements here.
62----------------------------------------------------------------------------*/
63
64/*----------------------------------------------------------------------------
65; EXTERNAL VARIABLES REFERENCES
66; Declare variables used in this module but defined elsewhere
67----------------------------------------------------------------------------*/
68
69/*----------------------------------------------------------------------------
70; SIMPLE TYPEDEF'S
71----------------------------------------------------------------------------*/
72
73/*----------------------------------------------------------------------------
74; ENUMERATED TYPEDEF'S
75----------------------------------------------------------------------------*/
76
77/*----------------------------------------------------------------------------
78; STRUCTURES TYPEDEF'S
79----------------------------------------------------------------------------*/
80#ifdef __cplusplus
81extern "C"
82{
83#endif
84
85    typedef struct
86    {
87        int32           num_channels;
88        int32           predicted_frame_size;
89        int32           frame_start;
90        int32           Scratch_mem[198];
91        tmp3dec_chan    perChan[CHAN];
92        mp3ScaleFactors scaleFactors[CHAN];
93        mp3SideInfo     sideInfo;
94        tmp3Bits        mainDataStream;
95        uint8           mainDataBuffer[BUFSIZE];
96        tmp3Bits        inputStream;
97        huffcodetab     ht[HUFF_TBL];
98    } tmp3dec_file;
99
100
101#ifdef __cplusplus
102}
103#endif
104
105/*----------------------------------------------------------------------------
106; GLOBAL FUNCTION DEFINITIONS
107; Function Prototype declaration
108----------------------------------------------------------------------------*/
109
110/*----------------------------------------------------------------------------
111; END
112----------------------------------------------------------------------------*/
113
114#endif
115
116
117
118
119