HEVC Test Model (HM)  HM-16.3
Public Member Functions | Private Attributes | List of all members
TComRdCost Class Reference

RD cost computation class. More...

#include <TComRdCost.h>

Collaboration diagram for TComRdCost:
Collaboration graph

Public Member Functions

Void setDistortionWeight (const ComponentID compID, const Double distortionWeight)
Void setFrameLambda (Double dLambda)
Double getSqrtLambda ()
Double getLambda ()
Double getChromaWeight ()
Void setCostMode (CostMode m)
Void getMotionCost (Bool bSad, Int iAdd, Bool bIsTransquantBypass)
Void setPredictor (TComMv &rcMv)
Void setCostScale (Int iCostScale)
__inline Distortion getCost (Int x, Int y)
Distortion getCost (UInt b)
UInt getBits (Int x, Int y)

Private Attributes

FpDistFunc m_afpDistortFunc [DF_TOTAL_FUNCTIONS]
CostMode m_costMode
Double m_distortionWeight [MAX_NUM_COMPONENT]
Double m_dLambda
Double m_sqrtLambda
UInt m_uiLambdaMotionSAD [2]
UInt m_uiLambdaMotionSSE [2]
Double m_dFrameLambda
TComMv m_mvPredictor
UInt m_uiCost
Int m_iCostScale
 TComRdCost ()
virtual ~TComRdCost ()
Double calcRdCost (UInt uiBits, Distortion uiDistortion, Bool bFlag=false, DFunc eDFunc=DF_DEFAULT)
Double calcRdCost64 (UInt64 uiBits, UInt64 uiDistortion, Bool bFlag=false, DFunc eDFunc=DF_DEFAULT)
Void setLambda (Double dLambda)
Void init ()
Void setDistParam (UInt uiBlkWidth, UInt uiBlkHeight, DFunc eDFunc, DistParam &rcDistParam)
Void setDistParam (TComPattern *pcPatternKey, Pel *piRefY, Int iRefStride, DistParam &rcDistParam)
Void setDistParam (TComPattern *pcPatternKey, Pel *piRefY, Int iRefStride, Int iStep, DistParam &rcDistParam, Bool bHADME=false)
Void setDistParam (DistParam &rcDP, Int bitDepth, Pel *p1, Int iStride1, Pel *p2, Int iStride2, Int iWidth, Int iHeight, Bool bHadamard=false)
Distortion calcHAD (Int bitDepth, Pel *pi0, Int iStride0, Pel *pi1, Int iStride1, Int iWidth, Int iHeight)
UInt xGetComponentBits (Int iVal)
Distortion getDistPart (Int bitDepth, Pel *piCur, Int iCurStride, Pel *piOrg, Int iOrgStride, UInt uiBlkWidth, UInt uiBlkHeight, const ComponentID compID, DFunc eDFunc=DF_SSE)
static Distortion xGetSSE (DistParam *pcDtParam)
static Distortion xGetSSE4 (DistParam *pcDtParam)
static Distortion xGetSSE8 (DistParam *pcDtParam)
static Distortion xGetSSE16 (DistParam *pcDtParam)
static Distortion xGetSSE32 (DistParam *pcDtParam)
static Distortion xGetSSE64 (DistParam *pcDtParam)
static Distortion xGetSSE16N (DistParam *pcDtParam)
static Distortion xGetSAD (DistParam *pcDtParam)
static Distortion xGetSAD4 (DistParam *pcDtParam)
static Distortion xGetSAD8 (DistParam *pcDtParam)
static Distortion xGetSAD16 (DistParam *pcDtParam)
static Distortion xGetSAD32 (DistParam *pcDtParam)
static Distortion xGetSAD64 (DistParam *pcDtParam)
static Distortion xGetSAD16N (DistParam *pcDtParam)
static Distortion xGetSAD12 (DistParam *pcDtParam)
static Distortion xGetSAD24 (DistParam *pcDtParam)
static Distortion xGetSAD48 (DistParam *pcDtParam)
static Distortion xGetHADs (DistParam *pcDtParam)
static Distortion xCalcHADs2x2 (Pel *piOrg, Pel *piCurr, Int iStrideOrg, Int iStrideCur, Int iStep)
static Distortion xCalcHADs4x4 (Pel *piOrg, Pel *piCurr, Int iStrideOrg, Int iStrideCur, Int iStep)
static Distortion xCalcHADs8x8 (Pel *piOrg, Pel *piCurr, Int iStrideOrg, Int iStrideCur, Int iStep)

Detailed Description

RD cost computation class.

Definition at line 104 of file TComRdCost.h.

Member Function Documentation

UInt TComRdCost::getBits ( Int  x,
Int  y 

Definition at line 185 of file TComRdCost.h.

Double TComRdCost::getChromaWeight ( )

Definition at line 146 of file TComRdCost.h.

__inline Distortion TComRdCost::getCost ( Int  x,
Int  y 

Definition at line 172 of file TComRdCost.h.

Distortion TComRdCost::getCost ( UInt  b)

Definition at line 183 of file TComRdCost.h.

Double TComRdCost::getLambda ( )

Definition at line 145 of file TComRdCost.h.

Void TComRdCost::getMotionCost ( Bool  bSad,
Int  iAdd,
Bool  bIsTransquantBypass 

Definition at line 165 of file TComRdCost.h.

Double TComRdCost::getSqrtLambda ( )

Definition at line 143 of file TComRdCost.h.

Void TComRdCost::setCostMode ( CostMode  m)

Definition at line 148 of file TComRdCost.h.

Void TComRdCost::setCostScale ( Int  iCostScale)

Definition at line 171 of file TComRdCost.h.

Void TComRdCost::setDistortionWeight ( const ComponentID  compID,
const Double  distortionWeight 

Definition at line 139 of file TComRdCost.h.

Void TComRdCost::setFrameLambda ( Double  dLambda)

Definition at line 141 of file TComRdCost.h.

Void TComRdCost::setPredictor ( TComMv rcMv)

Definition at line 167 of file TComRdCost.h.

Member Data Documentation

FpDistFunc TComRdCost::m_afpDistortFunc[DF_TOTAL_FUNCTIONS]

Definition at line 109 of file TComRdCost.h.

CostMode TComRdCost::m_costMode

Definition at line 110 of file TComRdCost.h.

Double TComRdCost::m_dFrameLambda

Definition at line 121 of file TComRdCost.h.

Double TComRdCost::m_distortionWeight[MAX_NUM_COMPONENT]

Definition at line 111 of file TComRdCost.h.

Double TComRdCost::m_dLambda

Definition at line 112 of file TComRdCost.h.

Int TComRdCost::m_iCostScale

Definition at line 130 of file TComRdCost.h.

TComMv TComRdCost::m_mvPredictor

Definition at line 124 of file TComRdCost.h.

Double TComRdCost::m_sqrtLambda

Definition at line 113 of file TComRdCost.h.

UInt TComRdCost::m_uiCost

Definition at line 128 of file TComRdCost.h.

UInt TComRdCost::m_uiLambdaMotionSAD[2]

Definition at line 118 of file TComRdCost.h.

UInt TComRdCost::m_uiLambdaMotionSSE[2]

Definition at line 119 of file TComRdCost.h.

The documentation for this class was generated from the following files: