00001 00019 #ifndef _CABAC_H_ 00020 #define _CABAC_H_ 00021 00022 #include "global.h" 00023 00024 extern MotionInfoContexts* create_contexts_MotionInfo(void); 00025 extern TextureInfoContexts* create_contexts_TextureInfo(void); 00026 extern void delete_contexts_MotionInfo(MotionInfoContexts *enco_ctx); 00027 extern void delete_contexts_TextureInfo(TextureInfoContexts *enco_ctx); 00028 00029 extern void cabac_new_slice(Slice *currSlice); 00030 00031 extern void readMB_typeInfo_CABAC (Macroblock *currMB, SyntaxElement *se, DecodingEnvironmentPtr dep_dp); 00032 extern void readB8_typeInfo_CABAC (Macroblock *currMB, SyntaxElement *se, DecodingEnvironmentPtr dep_dp); 00033 extern void readIntraPredMode_CABAC (Macroblock *currMB, SyntaxElement *se, DecodingEnvironmentPtr dep_dp); 00034 extern void readRefFrame_CABAC (Macroblock *currMB, SyntaxElement *se, DecodingEnvironmentPtr dep_dp); 00035 extern void readMVD_CABAC (Macroblock *currMB, SyntaxElement *se, DecodingEnvironmentPtr dep_dp); 00036 extern void readCBP_CABAC (Macroblock *currMB, SyntaxElement *se, DecodingEnvironmentPtr dep_dp); 00037 extern void readRunLevel_CABAC (Macroblock *currMB, SyntaxElement *se, DecodingEnvironmentPtr dep_dp); 00038 extern void readDquant_CABAC (Macroblock *currMB, SyntaxElement *se, DecodingEnvironmentPtr dep_dp); 00039 extern void readCIPredMode_CABAC (Macroblock *currMB, SyntaxElement *se, DecodingEnvironmentPtr dep_dp); 00040 extern void readMB_skip_flagInfo_CABAC (Macroblock *currMB, SyntaxElement *se, DecodingEnvironmentPtr dep_dp); 00041 extern void readFieldModeInfo_CABAC (Macroblock *currMB, SyntaxElement *se, DecodingEnvironmentPtr dep_dp); 00042 extern void readMB_transform_size_flag_CABAC(Macroblock *currMB, SyntaxElement *se, DecodingEnvironmentPtr dep_dp); 00043 00044 extern void readIPCM_CABAC(Slice *currSlice, struct datapartition *dP); 00045 00046 extern int cabac_startcode_follows(Slice *currSlice, int eos_bit); 00047 00048 extern int readSyntaxElement_CABAC (SyntaxElement *se, ImageParameters *p_Img, DataPartition *this_dataPart); 00049 00050 extern int check_next_mb_and_get_field_mode_CABAC( Slice *currSlice, SyntaxElement *se, DataPartition *act_dp); 00051 00052 extern void CheckAvailabilityOfNeighborsCABAC(Macroblock *currMB); 00053 00054 00055 #endif // _CABAC_H_ 00056