Ignore:
Timestamp:
13 Nov 2015, 17:00:20 (9 years ago)
Author:
tech
Message:

Removed 3D.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • branches/HTM-16.0-MV-draft-5/source/Lib/TLibCommon/TComRdCost.h

    r1386 r1390  
    4646#include "TComSlice.h"
    4747#include "TComRdCostWeightPrediction.h"
    48 #if NH_3D_VSO
    49 #include "../TLibRenderer/TRenModel.h"
    50 #include "TComYuv.h"
    51 #include "TComTU.h"
    52 #endif
    5348
    5449//! \ingroup TLibCommon
     
    5752class DistParam;
    5853class TComPattern;
    59 #if NH_3D_VSO
    60 class TComRdCost;
    61 #endif
    6254
    6355// ====================================================================================================================
     
    6961
    7062
    71 #if NH_3D_VSO
    72 typedef Dist (TComRdCost::*FpDistFuncVSO) ( Int, Int, Pel*, Int, Pel*, Int, UInt, UInt, Bool );
    73 #endif
    7463// ====================================================================================================================
    7564// Class definition
     
    8473  Int   iStrideOrg;
    8574  Int   iStrideCur;
    86 #if NH_3D_VSO
    87   // SAIT_VSO_EST_A0033
    88   Pel*  pVirRec;
    89   Pel*  pVirOrg;
    90   Int   iStrideVir;
    91 #endif
    92 #if NH_3D_IC
    93   Bool  bUseIC;
    94 #endif
    95 #if NH_3D_SDC_INTER
    96   Bool  bUseSDCMRSAD;
    97 #endif
    9875  Int   iRows;
    9976  Int   iCols;
     
    130107     iSubShift(0)
    131108  {
    132 #if NH_3D_VSO
    133     // SAIT_VSO_EST_A0033
    134     pVirRec = NULL;
    135     pVirOrg = NULL;
    136     iStrideVir = 0;
    137 #endif
    138 #if NH_3D_SDC_INTER
    139     bUseSDCMRSAD = false;
    140 #endif
    141109  }
    142110};
     
    156124  Double                  m_dLambdaMotionSSE[2 /* 0=standard, 1=for transquant bypass when mixed-lossless cost evaluation enabled*/];
    157125  Double                  m_dFrameLambda;
    158 #if NH_3D_VSO
    159   // SAIT_VSO_EST_A0033
    160   static Double           m_dDisparityCoeff;
    161 #endif
    162126
    163127  // for motion cost
     
    165129  Double                  m_motionLambda;
    166130  Int                     m_iCostScale;
    167 #if NH_3D_DBBP
    168   Bool                    m_bUseMask;
    169 #endif
    170131
    171132public:
    172133  TComRdCost();
    173134  virtual ~TComRdCost();
    174 #if NH_3D_VSO
    175   Double  calcRdCost64( UInt64 uiBits , Dist64 uiDistortion, Bool bFlag = false, DFunc eDFunc = DF_DEFAULT );
    176   Double  calcRdCost( Double numBits, Dist intDistortion, DFunc eDFunc  = DF_DEFAULT );
    177 #else
    178135  Double calcRdCost( Double numBits, Double distortion, DFunc eDFunc = DF_DEFAULT );
    179 #endif
    180136
    181137
     
    185141
    186142  Double  getSqrtLambda ()   { return m_sqrtLambda; }
    187 #if NH_3D_VSO
    188   // SAIT_VSO_EST_A0033
    189   Void    setDisparityCoeff( Double dDisparityCoeff ) { m_dDisparityCoeff = dDisparityCoeff; }
    190   Double  getDisparityCoeff()                         { return m_dDisparityCoeff; }
    191 #endif
    192143
    193144  Double  getLambda() { return m_dLambda; }
     
    204155  Void    setDistParam( DistParam& rcDP, Int bitDepth, const Pel* p1, Int iStride1, const Pel* p2, Int iStride2, Int iWidth, Int iHeight, Bool bHadamard = false );
    205156
    206 #if NH_3D_DBBP
    207   Void    setUseMask(Bool b) { m_bUseMask = b; }
    208 #endif
    209157
    210158  Distortion calcHAD(Int bitDepth, const Pel* pi0, Int iStride0, const Pel* pi1, Int iStride1, Int iWidth, Int iHeight );
    211159
    212 #if NH_3D_ENC_DEPTH
    213   UInt    calcVAR(Pel* pi0, Int stride, Int width, Int height, Int cuDepth, UInt maxCuWidth );
    214 #endif 
    215160
    216161  // for motion cost
     
    242187  static Distortion xGetSSE64         ( DistParam* pcDtParam );
    243188  static Distortion xGetSSE16N        ( DistParam* pcDtParam );
    244 #if NH_3D_IC || NH_3D_SDC_INTER
    245   static UInt xGetSADic         ( DistParam* pcDtParam );
    246   static UInt xGetSAD4ic        ( DistParam* pcDtParam );
    247   static UInt xGetSAD8ic        ( DistParam* pcDtParam );
    248   static UInt xGetSAD16ic       ( DistParam* pcDtParam );
    249   static UInt xGetSAD32ic       ( DistParam* pcDtParam );
    250   static UInt xGetSAD64ic       ( DistParam* pcDtParam );
    251   static UInt xGetSAD16Nic      ( DistParam* pcDtParam );
    252 #endif
    253189
    254190  static Distortion xGetSAD           ( DistParam* pcDtParam );
     
    259195  static Distortion xGetSAD64         ( DistParam* pcDtParam );
    260196  static Distortion xGetSAD16N        ( DistParam* pcDtParam );
    261 #if NH_3D_VSO
    262   static UInt xGetVSD           ( DistParam* pcDtParam );
    263   static UInt xGetVSD4          ( DistParam* pcDtParam );
    264   static UInt xGetVSD8          ( DistParam* pcDtParam );
    265   static UInt xGetVSD16         ( DistParam* pcDtParam );
    266   static UInt xGetVSD32         ( DistParam* pcDtParam );
    267   static UInt xGetVSD64         ( DistParam* pcDtParam );
    268   static UInt xGetVSD16N        ( DistParam* pcDtParam );
    269 #endif
    270 
    271 #if NH_3D_IC || NH_3D_SDC_INTER
    272   static UInt xGetSAD12ic       ( DistParam* pcDtParam );
    273   static UInt xGetSAD24ic       ( DistParam* pcDtParam );
    274   static UInt xGetSAD48ic       ( DistParam* pcDtParam );
    275 #endif
     197
    276198
    277199  static Distortion xGetSAD12         ( DistParam* pcDtParam );
     
    280202
    281203
    282 #if NH_3D_IC || NH_3D_SDC_INTER
    283   static UInt xGetHADsic          ( DistParam* pcDtParam );
    284 #endif
    285204
    286205  static Distortion xGetHADs          ( DistParam* pcDtParam );
     
    288207  static Distortion xCalcHADs4x4      ( const Pel *piOrg, const Pel *piCurr, Int iStrideOrg, Int iStrideCur, Int iStep );
    289208  static Distortion xCalcHADs8x8      ( const Pel *piOrg, const Pel *piCurr, Int iStrideOrg, Int iStrideCur, Int iStep );
    290 #if NH_3D_DBBP
    291   static UInt xGetMaskedSSE     ( DistParam* pcDtParam );
    292   static UInt xGetMaskedSAD     ( DistParam* pcDtParam );
    293   static UInt xGetMaskedVSD     ( DistParam* pcDtParam );
    294 #endif
    295209
    296210
     
    299213  Distortion   getDistPart(Int bitDepth, const Pel* piCur, Int iCurStride, const Pel* piOrg, Int iOrgStride, UInt uiBlkWidth, UInt uiBlkHeight, const ComponentID compID, DFunc eDFunc = DF_SSE );
    300214
    301 #if KWU_RC_MADPRED_E0227
    302   UInt   getSADPart ( Int bitDepth, Pel* pelCur, Int curStride,  Pel* pelOrg, Int orgStride, UInt width, UInt height );
    303 #endif
    304 
    305 #if NH_3D_VSO
    306   // SAIT_VSO_EST_A0033
    307   UInt        getDistPartVSD( TComDataCU* pcCu, UInt uiPartOffset, Int bitDepth, Pel* piCur, Int iCurStride,  Pel* piOrg, Int iOrgStride, UInt uiBlkWidth, UInt uiBlkHeight, Bool bHad, DFunc eDFunc = DF_VSD);
    308   static UInt getVSDEstimate( Int dDM, const Pel* pOrg, Int iOrgStride,  const Pel* pVirRec, const Pel* pVirOrg, Int iVirStride, Int x, Int y );
    309 
    310 private:
    311   Double                  m_dLambdaVSO;
    312   Double                  m_dSqrtLambdaVSO;
    313   UInt                    m_uiLambdaMotionSADVSO;
    314   UInt                    m_uiLambdaMotionSSEVSO;
    315   Double                  m_dFrameLambdaVSO;
    316   Bool                    m_bAllowNegDist;
    317   Bool                    m_bUseVSO;
    318   Bool                    m_bUseLambdaScaleVSO;
    319   UInt                    m_uiVSOMode;
    320 
    321   FpDistFuncVSO           m_fpDistortFuncVSO;
    322   TRenModel*              m_pcRenModel;
    323 
    324 
    325   // SAIT_VSO_EST_A0033
    326   TComPicYuv *            m_pcVideoRecPicYuv;
    327   TComPicYuv *            m_pcDepthPicYuv;
    328   Bool                    m_bUseEstimatedVSD;
    329 
    330   // LGE_WVSO_A0119
    331   Int                     m_iDWeight;
    332   Int                     m_iVSOWeight;
    333   Int                     m_iVSDWeight;
    334   Bool                    m_bUseWVSO;
    335 
    336 public:
    337 
    338   Void    setRenModel       ( TRenModel* pcRenModel ) { m_pcRenModel = pcRenModel; }
    339   TRenModel* getRenModel    ( )                       { return m_pcRenModel; }
    340   Void    setRenModelData   ( const TComDataCU* pcCU, UInt uiAbsPartIndex, const TComYuv* pcYuv, const TComTURecurse* tuRecurseWithPU );
    341   Void    setRenModelData   ( const TComDataCU* pcCU, UInt uiAbsPartIndex, const Pel* piData, Int iStride, Int iBlkWidth, Int iBlkHeight );
    342 
    343   Void    setLambdaVSO      ( Double dLambda );
    344   Void    setFrameLambdaVSO ( Double dLambda ) { m_dFrameLambdaVSO = dLambda; };
    345 
    346 
    347   Void    setUseVSO ( Bool bIn )         { m_bUseVSO = bIn; };
    348   Bool    getUseVSO ( )                  { return m_bUseVSO;};
    349 
    350   Bool    getUseRenModel ( )             { return (m_bUseVSO && m_uiVSOMode == 4); };
    351   Void    setUseLambdaScaleVSO(Bool bIn) { m_bUseLambdaScaleVSO = bIn; };
    352   Bool    getUseLambdaScaleVSO( )        { return m_bUseLambdaScaleVSO; };
    353 
    354   Void    setVSOMode( UInt uiIn);
    355   UInt    getVSOMode( )                  { return m_uiVSOMode; }
    356   Void    setAllowNegDist ( Bool bAllowNegDist );
    357 
    358   Double  getSqrtLambdaVSO ()   { return m_dSqrtLambdaVSO; }
    359   Double  getLambdaVSO ()       { return m_dLambdaVSO; }
    360 
    361   Dist    getDistPartVSO( TComDataCU* pcCU, UInt uiAbsPartIndex, Int bitdDepth, Pel* piCur, Int iCurStride, Pel* piOrg, Int iOrgStride, UInt uiBlkWidth, UInt uiBlkHeight, Bool bSAD );
    362   Double  calcRdCostVSO ( UInt   uiBits, Dist   uiDistortion, Bool bFlag = false, DFunc eDFunc = DF_DEFAULT );
    363 
    364   // SAIT_VSO_EST_A0033
    365   Bool    getUseEstimatedVSD( )           { return m_bUseEstimatedVSD; };
    366   Void    setUseEstimatedVSD( Bool bIn )  { m_bUseEstimatedVSD = bIn; };
    367 
    368   TComPicYuv* getVideoRecPicYuv ()                               { return m_pcVideoRecPicYuv; };
    369   Void        setVideoRecPicYuv ( TComPicYuv* pcVideoRecPicYuv ) { m_pcVideoRecPicYuv = pcVideoRecPicYuv; };
    370   TComPicYuv* getDepthPicYuv    ()                               { return m_pcDepthPicYuv; };
    371   Void        setDepthPicYuv    ( TComPicYuv* pcDepthPicYuv )    { m_pcDepthPicYuv = pcDepthPicYuv; };
    372 
    373   // LGE_WVSO_A0119
    374   Void    setUseWVSO ( Bool bIn )         { m_bUseWVSO = bIn; };
    375   Bool    getUseWVSO ( )                  { return m_bUseWVSO;};
    376   Void    setDWeight   ( Int iDWeight   ) { m_iDWeight = iDWeight; };
    377   Int     getDWeight   ()                 { return m_iDWeight; };
    378   Void    setVSOWeight ( Int iVSOWeight ) { m_iVSOWeight = iVSOWeight; };
    379   Int     getVSOWeight ()                 { return m_iVSOWeight; };
    380   Void    setVSDWeight ( Int iVSDWeight ) { m_iVSDWeight = iVSDWeight; };
    381   Int     getVSDWeight ()                 { return m_iVSDWeight; };
    382 
    383 private:
    384   Dist xGetDistVSOMode4( Int iStartPosX, Int iStartPosY, Pel* piCur, Int iCurStride, Pel* piOrg, Int iOrgStride, UInt uiBlkWidth, UInt uiBlkHeight, Bool bSAD );
    385 
    386 #endif // NH_3D_VSO
     215
    387216
    388217
Note: See TracChangeset for help on using the changeset viewer.