Changeset 1413 in 3DVCSoftware for trunk/source/Lib/TLibCommon/TComPicSym.h


Ignore:
Timestamp:
11 Jul 2018, 15:19:49 (6 years ago)
Author:
tech
Message:

Merged HTM-16.2-dev@1412

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/source/Lib/TLibCommon/TComPicSym.h

    r1405 r1413  
    44 * granted under this license.
    55 *
    6  * Copyright (c) 2010-2016, ITU/ISO/IEC
     6 * Copyright (c) 2010-2017, ITU/ISO/IEC
    77 * All rights reserved.
    88 *
     
    106106  UInt*         m_ctuRsToTsAddrMap;    ///< for a given RS (Raster-Scan) address, returns the TS (Tile-Scan; coding order) address. cf CtbAddrRsToTs in specification.
    107107
     108#if REDUCED_ENCODER_MEMORY
     109public:
     110  struct DPBPerCtuData
     111  {
     112    Bool isInter(const UInt absPartAddr)                const { return m_pePredMode[absPartAddr] == MODE_INTER; }
     113    PartSize getPartitionSize( const UInt absPartAddr ) const { return static_cast<PartSize>( m_pePartSize[absPartAddr] ); }
     114    const TComCUMvField* getCUMvField ( RefPicList e )  const { return &m_CUMvField[e];                  }
     115    const TComSlice* getSlice()                         const { return m_pSlice; }
     116
     117    SChar        * m_pePredMode;
     118    SChar        * m_pePartSize;
     119    TComCUMvField  m_CUMvField[NUM_REF_PIC_LIST_01];
     120    TComSlice    * m_pSlice;
     121  };
     122
     123private:
     124  DPBPerCtuData *m_dpbPerCtuData;
     125#endif
    108126  SAOBlkParam  *m_saoBlkParams;
    109127#if ADAPTIVE_QP_SELECTION
     
    121139
    122140public:
     141#if REDUCED_ENCODER_MEMORY
     142  Void               create  ( const TComSPS &sps, const TComPPS &pps, UInt uiMaxDepth, const Bool bAllocateCtuArray );
     143  Void               prepareForReconstruction();
     144  Void               releaseReconstructionIntermediateData();
     145  Void               releaseAllReconstructionData();
     146#else
    123147  Void               create  ( const TComSPS &sps, const TComPPS &pps, UInt uiMaxDepth );
     148#endif
    124149  Void               destroy ();
    125150
     
    138163  const TComSPS&     getSPS()                 const                        { return m_sps; }
    139164  const TComPPS&     getPPS()                 const                        { return m_pps; }
     165#if REDUCED_ENCODER_MEMORY
     166  Bool                 hasDPBPerCtuData() const                            { return (m_dpbPerCtuData!=0); };
     167  DPBPerCtuData&       getDPBPerCtuData(UInt ctuRsAddr)                    { return m_dpbPerCtuData[ctuRsAddr]; }
     168  const DPBPerCtuData& getDPBPerCtuData(UInt ctuRsAddr) const              { return m_dpbPerCtuData[ctuRsAddr]; }
     169#endif
    140170
    141171  TComSlice *        swapSliceObject(TComSlice* p, UInt i)                 { p->setSPS(&m_sps); p->setPPS(&m_pps); TComSlice *pTmp=m_apSlices[i];m_apSlices[i] = p; pTmp->setSPS(0); pTmp->setPPS(0); return pTmp; }
     
    166196//! \}
    167197
     198#if MCTS_ENC_CHECK
     199Void getTilePosition(const TComDataCU* const pcCU, UInt &tileXPosInCtus, UInt &tileYPosInCtus, UInt &tileWidthtInCtus, UInt &tileHeightInCtus);
     200#endif
     201
    168202#endif // __TCOMPICSYM__
    169203
Note: See TracChangeset for help on using the changeset viewer.