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
[legend]

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 
)
inline

Definition at line 185 of file TComRdCost.h.

Double TComRdCost::getChromaWeight ( )
inline

Definition at line 146 of file TComRdCost.h.

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

Definition at line 172 of file TComRdCost.h.

Distortion TComRdCost::getCost ( UInt  b)
inline

Definition at line 183 of file TComRdCost.h.

Double TComRdCost::getLambda ( )
inline

Definition at line 145 of file TComRdCost.h.

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

Definition at line 165 of file TComRdCost.h.

Double TComRdCost::getSqrtLambda ( )
inline

Definition at line 143 of file TComRdCost.h.

Void TComRdCost::setCostMode ( CostMode  m)
inline

Definition at line 148 of file TComRdCost.h.

Void TComRdCost::setCostScale ( Int  iCostScale)
inline

Definition at line 171 of file TComRdCost.h.

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

Definition at line 139 of file TComRdCost.h.

Void TComRdCost::setFrameLambda ( Double  dLambda)
inline

Definition at line 141 of file TComRdCost.h.

Void TComRdCost::setPredictor ( TComMv rcMv)
inline

Definition at line 167 of file TComRdCost.h.

Member Data Documentation

FpDistFunc TComRdCost::m_afpDistortFunc[DF_TOTAL_FUNCTIONS]
private

Definition at line 109 of file TComRdCost.h.

CostMode TComRdCost::m_costMode
private

Definition at line 110 of file TComRdCost.h.

Double TComRdCost::m_dFrameLambda
private

Definition at line 121 of file TComRdCost.h.

Double TComRdCost::m_distortionWeight[MAX_NUM_COMPONENT]
private

Definition at line 111 of file TComRdCost.h.

Double TComRdCost::m_dLambda
private

Definition at line 112 of file TComRdCost.h.

Int TComRdCost::m_iCostScale
private

Definition at line 130 of file TComRdCost.h.

TComMv TComRdCost::m_mvPredictor
private

Definition at line 124 of file TComRdCost.h.

Double TComRdCost::m_sqrtLambda
private

Definition at line 113 of file TComRdCost.h.

UInt TComRdCost::m_uiCost
private

Definition at line 128 of file TComRdCost.h.

UInt TComRdCost::m_uiLambdaMotionSAD[2]
private

Definition at line 118 of file TComRdCost.h.

UInt TComRdCost::m_uiLambdaMotionSSE[2]
private

Definition at line 119 of file TComRdCost.h.


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