📄 tarith_decoder_jpeg2000.h
字号:
/*****************************************************************************
File name : arith_decoder.h
Description : This file contains required strcture definition and initialization
of probability table.
*****************************************************************************/
#define PRINTF_SUPPORT
#define MAX_PERMISSIBLE_ERROR 0
#define RUNLENGTH_CX 17
#define UNIFORM_CX 18
#define MAX_CONTEXTS 18
#define MAX_PAIR 512
typedef struct
{
int I; // Index value for each context
int MPS; // Most Probable Symbol (either 0 or 1) for each context
}arith_context;
// strcture which contains required registers tp process arithmetic encoder
segment ("mydata2") struct mqdec
{
int A; // interval register A (0,75<= A <1,5)
int C; // code register
int CT; // bit counter
int B; // to hold byte value
unsigned char *input;// Address of input buffer where compressed data stored
unsigned char *out; // address where compressed bytes are stored
}dec_reg;
segment ("mydata1") typedef struct mqstate
{
int Qe; // LPS probability
int NMPS; // Next MPS index
int NLPS; // Next LPS index
int SWITCH; // To change MPS to LPS and vice versa
}mqstate_s;
segment ("mydata2") arith_context contexts[MAX_CONTEXTS+1];
segment ("mydata1") mqstate_s mqstates[47]=
{
{0x5601,1, 1 ,1},
{0x3401,2, 6, 0},
{0x1801,3, 9, 0},
{0x0AC1,4, 12,0},
{0x0521,5, 29,0},
{0x0221,38,33,0},
{0x5601,7, 6 ,1},
{0x5401,8, 14,0},
{0x4801,9, 14,0},
{0x3801,10,14,0},
{0x3001,11,17,0},
{0x2401,12,18,0},
{0x1C01,13,20,0},
{0x1601,29,21,0},
{0x5601,15,14,1},
{0x5401,16,14,0},
{0x5101,17,15,0},
{0x4801,18,16,0},
{0x3801,19,17,0},
{0x3401,20,18,0},
{0x3001,21,19,0},
{0x2801,22,19,0},
{0x2401,23,20,0},
{0x2201,24,21,0},
{0x1C01,25,22,0},
{0x1801,26,23,0},
{0x1601,27,24,0},
{0x1401,28,25,0},
{0x1201,29,26,0},
{0x1101,30,27,0},
{0x0AC1,31,28,0},
{0x09C1,32,29,0},
{0x08A1,33,30,0},
{0x0521,34,31,0},
{0x0441,35,32,0},
{0x02A1,36,33,0},
{0x0221,37,34,0},
{0x0141,38,35,0},
{0x0111,39,36,0},
{0x0085,40,37,0},
{0x0049,41,38,0},
{0x0025,42,39,0},
{0x0015,43,40,0},
{0x0009,44,41,0},
{0x0005,45,42,0},
{0x0001,45,43,0},
{0x5601,46,46,0}};
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -