00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019 #ifndef _RD_OPT_CS_H_
00020 #define _RD_OPT_CS_H_
00021
00022 typedef struct {
00023
00024
00025 int no_part;
00026 EncodingEnvironment *encenv;
00027 Bitstream *bitstream;
00028
00029
00030 int symbol_mode;
00031 MotionInfoContexts *mot_ctx;
00032 TextureInfoContexts *tex_ctx;
00033
00034
00035 int bitcounter[MAX_BITCOUNTER_MB];
00036
00037
00038 short mvd[2][BLOCK_MULTIPLE][BLOCK_MULTIPLE][2];
00039 int64 cbp_bits[3];
00040 int64 cbp_bits_8x8[3];
00041 } CSobj;
00042 typedef CSobj* CSptr;
00043
00044
00045 void delete_coding_state (CSptr);
00046 CSptr create_coding_state (void);
00047
00048 void store_coding_state (Slice *currSlice, Macroblock *currMB, CSptr);
00049 void reset_coding_state (Slice *currSlice, Macroblock *currMB, CSptr);
00050
00051
00052 #endif
00053