Changeset 1372 in SHVCSoftware for branches/SHM-dev


Ignore:
Timestamp:
22 Jul 2015, 04:57:46 (9 years ago)
Author:
seregin
Message:

port rev 4490

Location:
branches/SHM-dev/source/Lib/TLibEncoder
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • branches/SHM-dev/source/Lib/TLibEncoder/TEncSearch.cpp

    r1368 r1372  
    113113
    114114TEncSearch::TEncSearch()
     115: m_puhQTTempTrIdx(NULL)
     116, m_pcQTTempTComYuv(NULL)
     117, m_pcEncCfg (NULL)
     118, m_pcTrQuant (NULL)
     119, m_pcRdCost (NULL)
     120, m_pcEntropyCoder (NULL)
     121, m_iSearchRange (0)
     122, m_bipredSearchRange (0)
     123, m_iFastSearch (0)
     124, m_pppcRDSbacCoder (NULL)
     125, m_pcRDGoOnSbacCoder (NULL)
     126, m_pTempPel (NULL)
     127, m_puiDFilter (NULL)
     128, m_isInitialized (false)
    115129{
    116130  for (UInt ch=0; ch<MAX_NUM_COMPONENT; ch++)
     
    131145    m_puhQTTempTransformSkipFlag[ch]               = NULL;
    132146  }
    133   m_puhQTTempTrIdx                                 = NULL;
    134   m_pcQTTempTComYuv                                = NULL;
    135   m_pcEncCfg                                       = NULL;
    136   m_pcEntropyCoder                                 = NULL;
    137   m_pTempPel                                       = NULL;
     147
     148  for (Int i=0; i<MAX_NUM_REF_LIST_ADAPT_SR; i++)
     149  {
     150    memset (m_aaiAdaptSR[i], 0, MAX_IDX_ADAPT_SR * sizeof (Int));
     151  }
     152  for (Int i=0; i<AMVP_MAX_NUM_CANDS+1; i++)
     153  {
     154    memset (m_auiMVPIdxCost[i], 0, (AMVP_MAX_NUM_CANDS+1) * sizeof (UInt) );
     155  }
     156
    138157  setWpScalingDistParam( NULL, -1, REF_PIC_LIST_X );
    139158}
    140159
    141160
    142 
    143 
    144 TEncSearch::~TEncSearch()
     161Void TEncSearch::destroy()
    145162{
     163  assert (m_isInitialized);
    146164  if ( m_pTempPel )
    147165  {
     
    194212
    195213  m_tmpYuvPred.destroy();
     214  m_isInitialized = false;
     215}
     216
     217TEncSearch::~TEncSearch()
     218{
     219  if (m_isInitialized)
     220  {
     221    destroy();
     222  }
    196223}
    197224
     
    213240                      )
    214241{
     242  assert (!m_isInitialized);
    215243  m_pcEncCfg             = pcEncCfg;
    216244  m_pcTrQuant            = pcTrQuant;
     
    293321  m_pcQTTempTransformSkipTComYuv.create( maxCUWidth, maxCUHeight, pcEncCfg->getChromaFormatIdc() );
    294322  m_tmpYuvPred.create(MAX_CU_SIZE, MAX_CU_SIZE, pcEncCfg->getChromaFormatIdc());
     323  m_isInitialized = true;
    295324}
    296325
  • branches/SHM-dev/source/Lib/TLibEncoder/TEncSearch.h

    r1307 r1372  
    123123  TComMv          m_integerMv2Nx2N[NUM_REF_PIC_LIST_01][MAX_NUM_REF];
    124124
     125  Bool            m_isInitialized;
     126
    125127#if SVC_EXTENSION
    126128#if N0383_IL_CONSTRAINED_TILE_SETS_SEI
    127129  Bool            m_disableILP;
    128130#endif
    129 #endif //SVC_EXTENSION
     131#endif
    130132
    131133public:
     
    133135  virtual ~TEncSearch();
    134136
    135   Void init(  TEncCfg*      pcEncCfg,
     137  Void init(TEncCfg*      pcEncCfg,
    136138            TComTrQuant*  pcTrQuant,
    137139            Int           iSearchRange,
     
    145147            TEncSbac***   pppcRDSbacCoder,
    146148            TEncSbac*     pcRDGoOnSbacCoder );
     149
     150  Void destroy();
    147151
    148152protected:
  • branches/SHM-dev/source/Lib/TLibEncoder/TEncTop.cpp

    r1366 r1372  
    185185  m_cLoopFilter.        destroy();
    186186  m_cRateCtrl.          destroy();
     187  m_cSearch.            destroy();
    187188  Int iDepth;
    188189  for ( iDepth = 0; iDepth < m_maxTotalCUDepth+1; iDepth++ )
Note: See TracChangeset for help on using the changeset viewer.