38 #ifndef __TENCENTROPY__
39 #define __TENCENTROPY__
184 #endif // __TENCENTROPY__
virtual Void codeMVPIdx(TComDataCU *pcCU, UInt uiAbsPartIdx, RefPicList eRefList)=0
Void encodeMergeFlag(TComDataCU *pcCU, UInt uiAbsPartIdx)
encode merge flag
sample adaptive offset class (header)
Void encodeSPS(const TComSPS *pcSPS)
Void encodeSAOBlkParam(SAOBlkParam &saoBlkParam, const BitDepths &bitDepths, Bool *sliceEnabled, Bool leftMergeAvail, Bool aboveMergeAvail)
static Int countNonZeroCoeffs(TCoeff *pcCoef, UInt uiSize)
SliceType
supported slice type
Void encodeMvdPU(TComDataCU *pcSubCU, UInt uiAbsPartIdx, RefPicList eRefList)
encode motion vector difference for a PU block
virtual Void codeDeltaQP(TComDataCU *pcCU, UInt uiAbsPartIdx)=0
virtual Void codeCrossComponentPrediction(TComTU &rTu, ComponentID compID)=0
virtual Void codeQtRootCbfZero()=0
pure virtual class for basic bit handling
virtual Void codeSAOBlkParam(SAOBlkParam &saoBlkParam, const BitDepths &bitDepths, Bool *sliceEnabled, Bool leftMergeAvail, Bool aboveMergeAvail, Bool onlyEstMergeInfo=false)=0
Void encodeTransformSubdivFlag(UInt uiSymbol, UInt uiCtx)
Void encodeChromaQpAdjustment(TComDataCU *pcCU, UInt uiAbsPartIdx, Bool bRD=false)
encode chroma qp adjustment
virtual SliceType determineCabacInitIdx(const TComSlice *pSlice)=0
Void encodePredMode(TComDataCU *pcCU, UInt uiAbsPartIdx, Bool bRD=false)
encode prediction mode
virtual Void codeSkipFlag(TComDataCU *pcCU, UInt uiAbsPartIdx)=0
slice header and SPS class (header)
Void encodeSplitFlag(TComDataCU *pcCU, UInt uiAbsPartIdx, UInt uiDepth, Bool bRD=false)
encode split flag
SliceType determineCabacInitIdx(const TComSlice *pSlice)
virtual Void codeRefFrmIdx(TComDataCU *pcCU, UInt uiAbsPartIdx, RefPicList eRefList)=0
Void encodeSliceHeader(TComSlice *pcSlice)
virtual Void codeSPS(const TComSPS *pcSPS)=0
virtual Void codeExplicitRdpcmMode(TComTU &rTu, const ComponentID compID)=0
virtual Void codeCoeffNxN(TComTU &rTu, TCoeff *pcCoef, const ComponentID compID)=0
virtual Void codeCUTransquantBypassFlag(TComDataCU *pcCU, UInt uiAbsPartIdx)=0
virtual Void codeVPS(const TComVPS *pcVPS)=0
virtual Void codeIPCMInfo(TComDataCU *pcCU, UInt uiAbsPartIdx)=0
virtual Void codePartSize(TComDataCU *pcCU, UInt uiAbsPartIdx, UInt uiDepth)=0
Void encodeQP(TComDataCU *pcCU, UInt uiAbsPartIdx, Bool bRD=false)
Void encodeRefFrmIdxPU(TComDataCU *pcSubCU, UInt uiAbsPartIdx, RefPicList eRefList)
encode reference frame index for a PU block
virtual Void codeTransformSkipFlags(TComTU &rTu, ComponentID component)=0
Void encodeCoeffNxN(TComTU &rTu, TCoeff *pcCoef, const ComponentID compID)
virtual Void codeTilesWPPEntryPoint(TComSlice *pSlice)=0
virtual Void codeQtCbfZero(TComTU &rTu, const ChannelType chType)=0
Void xEncodeTransform(Bool &bCodeDQP, Bool &codeChromaQpAdj, TComTU &rTu)
Void encodePUWise(TComDataCU *pcCU, UInt uiAbsPartIdx)
encode motion information for every PU block
virtual Void codeSliceFinish()=0
Void encodeCoeff(TComDataCU *pcCU, UInt uiAbsPartIdx, UInt uiDepth, Bool &bCodeDQP, Bool &codeChromaQpAdj)
encode coefficients
Void estimateBit(estBitsSbacStruct *pcEstBitsSbac, Int width, Int height, ChannelType chType, COEFF_SCAN_TYPE scanType)
Void encodeIPCMInfo(TComDataCU *pcCU, UInt uiAbsPartIdx, Bool bRD=false)
virtual Void codeMvd(TComDataCU *pcCU, UInt uiAbsPartIdx, RefPicList eRefList)=0
Void encodeQtCbfZero(TComTU &rTu, const ChannelType chType)
virtual UInt getNumberOfWrittenBits()=0
virtual Void codeMergeIndex(TComDataCU *pcCU, UInt uiAbsPartIdx)=0
virtual Void codeSliceHeader(TComSlice *pcSlice)=0
Int TCoeff
transform coefficient
virtual Void estBit(estBitsSbacStruct *pcEstBitsSbac, Int width, Int height, ChannelType chType, COEFF_SCAN_TYPE scanType)=0
virtual Void resetBits()=0
RefPicList
reference list index
COEFF_SCAN_TYPE
coefficient scanning type used in ACS
class for handling bitstream (header)
virtual Void codeChromaQpAdjustment(TComDataCU *pcCU, UInt uiAbsPartIdx)=0
Void encodePPS(const TComPPS *pcPPS)
entropy encoder pure class
virtual Void codeQtCbf(TComTU &rTu, const ComponentID compID, const Bool lowestLevel)=0
virtual Void resetEntropy(const TComSlice *pSlice)=0
Void encodeQtRootCbf(TComDataCU *pcCU, UInt uiAbsPartIdx)
Void encodeIntraDirModeChroma(TComDataCU *pcCU, UInt uiAbsPartIdx)
encode intra direction for chroma
virtual Void codeQtRootCbf(TComDataCU *pcCU, UInt uiAbsPartIdx)=0
virtual Void codeTransformSubdivFlag(UInt uiSymbol, UInt uiCtx)=0
virtual Void codeSplitFlag(TComDataCU *pcCU, UInt uiAbsPartIdx, UInt uiDepth)=0
Void encodeTilesWPPEntryPoint(TComSlice *pSlice)
context model class (header)
Void setEntropyCoder(TEncEntropyIf *e)
Void encodeInterDirPU(TComDataCU *pcSubCU, UInt uiAbsPartIdx)
virtual Void codeIntraDirChroma(TComDataCU *pcCU, UInt uiAbsPartIdx)=0
Void encodeCrossComponentPrediction(TComTU &rTu, ComponentID compID)
virtual Void codePredMode(TComDataCU *pcCU, UInt uiAbsPartIdx)=0
Void encodeQtCbf(TComTU &rTu, const ComponentID compID, const Bool lowestLevel)
Void encodeCUTransquantBypassFlag(TComDataCU *pcCU, UInt uiAbsPartIdx, Bool bRD=false)
Void encodePartSize(TComDataCU *pcCU, UInt uiAbsPartIdx, UInt uiDepth, Bool bRD=false)
encode partition size
Void setBitstream(TComBitIf *p)
Void encodeIntraDirModeLuma(TComDataCU *pcCU, UInt absPartIdx, Bool isMultiplePU=false)
encode intra direction for luma
Void encodeMergeIndex(TComDataCU *pcCU, UInt uiAbsPartIdx, Bool bRD=false)
encode merge index
transform and quantization class (header)
Void encodeTerminatingBit(UInt uiIsLast)
virtual Void codeMergeFlag(TComDataCU *pcCU, UInt uiAbsPartIdx)=0
virtual Void codeIntraDirLumaAng(TComDataCU *pcCU, UInt uiAbsPartIdx, Bool isMultiplePU)=0
Void encodeQtRootCbfZero()
Void encodePredInfo(TComDataCU *pcCU, UInt uiAbsPartIdx)
CU data structure (header)
Void encodeSkipFlag(TComDataCU *pcCU, UInt uiAbsPartIdx, Bool bRD=false)
Void encodeMVPIdxPU(TComDataCU *pcSubCU, UInt uiAbsPartIdx, RefPicList eRefList)
virtual Void setBitstream(TComBitIf *p)=0
virtual Void codeTerminatingBit(UInt uilsLast)=0
Void resetEntropy(const TComSlice *pSlice)
virtual Void codePPS(const TComPPS *pcPPS)=0
UInt getNumberOfWrittenBits()
Void encodeVPS(const TComVPS *pcVPS)
TEncEntropyIf * m_pcEntropyCoderIf
virtual Void codeInterDir(TComDataCU *pcCU, UInt uiAbsPartIdx)=0