Home | History | Annotate | Download | only in aacdec
      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: ./include/e_HuffmanConst.h
     21 
     22 ------------------------------------------------------------------------------
     23  REVISION HISTORY
     24 
     25  Who:                       Date:
     26  Description:
     27 
     28 ------------------------------------------------------------------------------
     29  INCLUDE DESCRIPTION
     30 
     31  enum for Huffman related constants
     32 
     33 ------------------------------------------------------------------------------
     34 */
     35 
     36 /*----------------------------------------------------------------------------
     37 ; CONTINUE ONLY IF NOT ALREADY DEFINED
     38 ----------------------------------------------------------------------------*/
     39 #ifndef E_HUFFMAN_CONST_H
     40 #define E_HUFFMAN_CONST_H
     41 
     42 /*----------------------------------------------------------------------------
     43 ; INCLUDES
     44 ----------------------------------------------------------------------------*/
     45 
     46 /*----------------------------------------------------------------------------
     47 ; MACROS
     48 ; Define module specific macros here
     49 ----------------------------------------------------------------------------*/
     50 
     51 /*----------------------------------------------------------------------------
     52 ; DEFINES
     53 ; Include all pre-processor statements here.
     54 ----------------------------------------------------------------------------*/
     55 
     56 /*----------------------------------------------------------------------------
     57 ; EXTERNAL VARIABLES REFERENCES
     58 ; Declare variables used in this module but defined elsewhere
     59 ----------------------------------------------------------------------------*/
     60 
     61 /*----------------------------------------------------------------------------
     62 ; SIMPLE TYPEDEF'S
     63 ----------------------------------------------------------------------------*/
     64 
     65 /*----------------------------------------------------------------------------
     66 ; ENUMERATED TYPEDEF'S
     67 ----------------------------------------------------------------------------*/
     68 typedef enum
     69 {
     70     /*
     71      * specify huffman tables as signed (1) or unsigned (0)
     72      */
     73     HUF1SGN     = 1,
     74     HUF2SGN     = 1,
     75     HUF3SGN     = 0,
     76     HUF4SGN     = 0,
     77     HUF5SGN     = 1,
     78     HUF6SGN     = 1,
     79     HUF7SGN     = 0,
     80     HUF8SGN     = 0,
     81     HUF9SGN     = 0,
     82     HUF10SGN        = 0,
     83     HUF11SGN        = 0,
     84 
     85     ZERO_HCB        = 0,
     86     BY4BOOKS        = 4,
     87     ESCBOOK     = 11,
     88     NSPECBOOKS      = ESCBOOK + 1,
     89     BOOKSCL     = NSPECBOOKS,
     90     NBOOKS      = NSPECBOOKS + 1,
     91     INTENSITY_HCB2  = 14,
     92     INTENSITY_HCB   = 15,
     93     NOISE_HCB       = 13,
     94     NOISE_HCB2      = 113,
     95 
     96     NOISE_PCM_BITS      = 9,
     97     NOISE_PCM_OFFSET    = (1 << (NOISE_PCM_BITS - 1)),
     98 
     99     NOISE_OFFSET        = 90,
    100 
    101     LONG_SECT_BITS  = 5,
    102     SHORT_SECT_BITS = 3
    103 } eHuffmanConst;
    104 
    105 /*----------------------------------------------------------------------------
    106 ; STRUCTURES TYPEDEF'S
    107 ----------------------------------------------------------------------------*/
    108 
    109 /*----------------------------------------------------------------------------
    110 ; GLOBAL FUNCTION DEFINITIONS
    111 ; Function Prototype declaration
    112 ----------------------------------------------------------------------------*/
    113 
    114 /*----------------------------------------------------------------------------
    115 ; END
    116 ----------------------------------------------------------------------------*/
    117 #endif
    118 
    119 
    120