Ignore:
Timestamp:
17 Feb 2013, 01:49:33 (12 years ago)
Author:
tech
Message:

Integrated 5.1-dev1-LG-Fix Rev. 282

File:
1 edited

Legend:

Unmodified
Added
Removed
  • branches/HTM-5.1-dev0/source/Lib/TLibCommon/TComDataCU.cpp

    r280 r287  
    207207#if HHI_DMM_PRED_TEX
    208208  m_puiWedgePredTexTabIdx    = NULL;
     209#if LGE_DMM3_SIMP_C0044
     210  m_puiWedgePredTexIntraTabIdx = NULL;
     211#endif
    209212  m_piWedgePredTexDeltaDC1   = NULL;
    210213  m_piWedgePredTexDeltaDC2   = NULL;
     
    358361#if HHI_DMM_PRED_TEX
    359362    m_puiWedgePredTexTabIdx    = (UInt*)xMalloc(UInt, uiNumPartition);
     363#if LGE_DMM3_SIMP_C0044
     364    m_puiWedgePredTexIntraTabIdx    = (UInt*)xMalloc(UInt, uiNumPartition);
     365#endif
    360366    m_piWedgePredTexDeltaDC1   = (Int* )xMalloc(Int,  uiNumPartition);
    361367    m_piWedgePredTexDeltaDC2   = (Int* )xMalloc(Int,  uiNumPartition);
     
    486492#if HHI_DMM_PRED_TEX
    487493    if ( m_puiWedgePredTexTabIdx    ) { xFree(m_puiWedgePredTexTabIdx   ); m_puiWedgePredTexTabIdx    = NULL; }
     494#if LGE_DMM3_SIMP_C0044
     495    if ( m_puiWedgePredTexIntraTabIdx ) { xFree(m_puiWedgePredTexIntraTabIdx); m_puiWedgePredTexIntraTabIdx    = NULL; }
     496#endif
    488497    if ( m_piWedgePredTexDeltaDC1   ) { xFree(m_piWedgePredTexDeltaDC1  ); m_piWedgePredTexDeltaDC1   = NULL; }
    489498    if ( m_piWedgePredTexDeltaDC2   ) { xFree(m_piWedgePredTexDeltaDC2  ); m_piWedgePredTexDeltaDC2   = NULL; }
     
    702711#if HHI_DMM_PRED_TEX
    703712    memset( m_puiWedgePredTexTabIdx    + firstElement, 0, sizeof( UInt ) * numElements );
     713#if LGE_DMM3_SIMP_C0044
     714    memset( m_puiWedgePredTexIntraTabIdx + firstElement, 0, sizeof( UInt ) * numElements );
     715#endif
    704716    memset( m_piWedgePredTexDeltaDC1   + firstElement, 0, sizeof( Int  ) * numElements );
    705717    memset( m_piWedgePredTexDeltaDC2   + firstElement, 0, sizeof( Int  ) * numElements );
     
    890902#if HHI_DMM_PRED_TEX
    891903    m_puiWedgePredTexTabIdx   [ui] = 0;
     904#if LGE_DMM3_SIMP_C0044
     905    m_puiWedgePredTexIntraTabIdx [ui] = 0;
     906#endif
    892907    m_piWedgePredTexDeltaDC1  [ui] = 0;
    893908    m_piWedgePredTexDeltaDC2  [ui] = 0;
     
    10141029#if HHI_DMM_PRED_TEX
    10151030  memset( m_puiWedgePredTexTabIdx,    0, sizeof( UInt ) * m_uiNumPartition );
     1031#if LGE_DMM3_SIMP_C0044
     1032  memset( m_puiWedgePredTexIntraTabIdx, 0, sizeof( UInt ) * m_uiNumPartition );
     1033#endif
    10161034  memset( m_piWedgePredTexDeltaDC1,   0, sizeof( Int  ) * m_uiNumPartition );
    10171035  memset( m_piWedgePredTexDeltaDC2,   0, sizeof( Int  ) * m_uiNumPartition );
     
    10881106#if HHI_DMM_PRED_TEX
    10891107      m_puiWedgePredTexTabIdx   [ui]=pcCU->getWedgePredTexTabIdx    (uiPartOffset+ui);
     1108#if LGE_DMM3_SIMP_C0044
     1109      m_puiWedgePredTexIntraTabIdx [ui]=pcCU->getWedgePredTexIntraTabIdx (uiPartOffset+ui);
     1110#endif
    10901111      m_piWedgePredTexDeltaDC1  [ui]=pcCU->getWedgePredTexDeltaDC1  (uiPartOffset+ui);
    10911112      m_piWedgePredTexDeltaDC2  [ui]=pcCU->getWedgePredTexDeltaDC2  (uiPartOffset+ui);
     
    12921313#if HHI_DMM_PRED_TEX
    12931314  m_puiWedgePredTexTabIdx    = pcCU->getWedgePredTexTabIdx()     + uiPart;   
     1315#if LGE_DMM3_SIMP_C0044
     1316  m_puiWedgePredTexIntraTabIdx = pcCU->getWedgePredTexIntraTabIdx() + uiPart;   
     1317#endif
    12941318  m_piWedgePredTexDeltaDC1   = pcCU->getWedgePredTexDeltaDC1()   + uiPart;   
    12951319  m_piWedgePredTexDeltaDC2   = pcCU->getWedgePredTexDeltaDC2()   + uiPart;   
     
    14831507#if HHI_DMM_PRED_TEX
    14841508  memcpy( m_puiWedgePredTexTabIdx    + uiOffset, pcCU->getWedgePredTexTabIdx(),     sizeof( UInt ) * uiNumPartition );
     1509#if LGE_DMM3_SIMP_C0044
     1510  memcpy( m_puiWedgePredTexIntraTabIdx + uiOffset, pcCU->getWedgePredTexIntraTabIdx(), sizeof( UInt ) * uiNumPartition );
     1511#endif
    14851512  memcpy( m_piWedgePredTexDeltaDC1   + uiOffset, pcCU->getWedgePredTexDeltaDC1(),   sizeof( Int  ) * uiNumPartition );
    14861513  memcpy( m_piWedgePredTexDeltaDC2   + uiOffset, pcCU->getWedgePredTexDeltaDC2(),   sizeof( Int  ) * uiNumPartition );
     
    16151642#if HHI_DMM_PRED_TEX
    16161643  memcpy( rpcCU->getWedgePredTexTabIdx()     + m_uiAbsIdxInLCU, m_puiWedgePredTexTabIdx,    sizeof( UInt ) * m_uiNumPartition );
     1644#if LGE_DMM3_SIMP_C0044
     1645  memcpy( rpcCU->getWedgePredTexIntraTabIdx() + m_uiAbsIdxInLCU, m_puiWedgePredTexIntraTabIdx,    sizeof( UInt ) * m_uiNumPartition );
     1646#endif
    16171647  memcpy( rpcCU->getWedgePredTexDeltaDC1()   + m_uiAbsIdxInLCU, m_piWedgePredTexDeltaDC1,   sizeof( Int  ) * m_uiNumPartition );
    16181648  memcpy( rpcCU->getWedgePredTexDeltaDC2()   + m_uiAbsIdxInLCU, m_piWedgePredTexDeltaDC2,   sizeof( Int  ) * m_uiNumPartition );
     
    17481778#if HHI_DMM_PRED_TEX
    17491779  memcpy( rpcCU->getWedgePredTexTabIdx()     + uiPartOffset, m_puiWedgePredTexTabIdx,    sizeof( UInt ) * uiQNumPart );
     1780#if LGE_DMM3_SIMP_C0044
     1781  memcpy( rpcCU->getWedgePredTexIntraTabIdx() + uiPartOffset, m_puiWedgePredTexIntraTabIdx, sizeof( UInt ) * uiQNumPart );
     1782#endif
    17501783  memcpy( rpcCU->getWedgePredTexDeltaDC1()   + uiPartOffset, m_piWedgePredTexDeltaDC1,   sizeof( Int  ) * uiQNumPart );
    17511784  memcpy( rpcCU->getWedgePredTexDeltaDC2()   + uiPartOffset, m_piWedgePredTexDeltaDC2,   sizeof( Int  ) * uiQNumPart );
     
    31903223}
    31913224
     3225#if LGE_ILLUCOMP_DEPTH_C0046
     3226//This modification is not needed after integrating JCT3V-C0137
     3227Bool TComDataCU::isICFlagRequired(UInt uiAbsPartIdx, UInt uiDepth)
     3228{
     3229  UInt uiPartAddr;
     3230  UInt iNumbPart;
     3231
     3232  if(!getSlice()->getIsDepth())
     3233  {
     3234    Int iWidth, iHeight;
     3235
     3236    iNumbPart = ( getPartitionSize(uiAbsPartIdx) == SIZE_2Nx2N ? 1 : (getPartitionSize(uiAbsPartIdx) == SIZE_NxN ? 4 : 2) );
     3237
     3238    for(UInt i = 0; i < iNumbPart; i++)
     3239    {
     3240      getPartIndexAndSize(i, uiPartAddr, iWidth, iHeight, uiAbsPartIdx, true);
     3241      uiPartAddr += uiAbsPartIdx;
     3242
     3243      for(UInt uiRefIdx = 0; uiRefIdx < 2; uiRefIdx++)
     3244      {
     3245        RefPicList eRefList = uiRefIdx ? REF_PIC_LIST_1 : REF_PIC_LIST_0;
     3246        Int iBestRefIdx = getCUMvField(eRefList)->getRefIdx(uiPartAddr);
     3247
     3248        if((getInterDir(uiPartAddr) & (uiRefIdx+1)) && iBestRefIdx >= 0 && getSlice()->getViewId() != getSlice()->getRefViewId(eRefList, iBestRefIdx))
     3249        {
     3250          return true;
     3251        }
     3252      }
     3253    }
     3254  }
     3255  else
     3256  {
     3257    iNumbPart = getPic()->getNumPartInCU() >> (uiDepth << 1);
     3258
     3259    for(UInt i = 0; i < iNumbPart; i++)
     3260    {
     3261      uiPartAddr = uiAbsPartIdx + i;
     3262
     3263      for(UInt uiRefIdx = 0; uiRefIdx < 2; uiRefIdx++)
     3264      {
     3265        RefPicList eRefList = uiRefIdx ? REF_PIC_LIST_1 : REF_PIC_LIST_0;
     3266        Int iBestRefIdx = getCUMvField(eRefList)->getRefIdx(uiPartAddr);
     3267
     3268        if((getInterDir(uiPartAddr) & (uiRefIdx+1)) && iBestRefIdx >= 0 && getSlice()->getViewId() != getSlice()->getRefViewId(eRefList, iBestRefIdx))
     3269        {
     3270          return true;
     3271        }
     3272      }
     3273    }
     3274  }
     3275
     3276  return false;
     3277}
     3278#else
    31923279Bool TComDataCU::isICFlagRequired(UInt uiAbsPartIdx)
    31933280{
     
    32113298
    32123299      if((getInterDir(uiPartAddr) & (uiRefIdx+1)) && iBestRefIdx >= 0 && getSlice()->getViewId() != getSlice()->getRefViewId(eRefList, iBestRefIdx))
     3300      {
    32133301        return true;
    32143302    }
    32153303  }
     3304  }
    32163305  return false;
    32173306}
     3307#endif
    32183308#endif
    32193309
     
    89259015}
    89269016
     9017#if LGE_DMM3_SIMP_C0044
     9018Void TComDataCU::setWedgePredTexIntraTabIdxSubParts( UInt uiTIdx, UInt uiAbsPartIdx, UInt uiDepth )
     9019{
     9020  UInt uiCurrPartNumb = m_pcPic->getNumPartInCU() >> (uiDepth << 1);
     9021
     9022  for ( UInt ui = 0; ui < uiCurrPartNumb; ui++ )
     9023  {
     9024    m_puiWedgePredTexIntraTabIdx[uiAbsPartIdx+ui] = uiTIdx;
     9025  }
     9026}
     9027#endif
     9028
    89279029Void TComDataCU::setWedgePredTexDeltaDC1SubParts( Int iDC1, UInt uiAbsPartIdx, UInt uiDepth )
    89289030{
Note: See TracChangeset for help on using the changeset viewer.