Changeset 608 in 3DVCSoftware for trunk/source/Lib/TLibDecoder/TDecGop.h


Ignore:
Timestamp:
1 Sep 2013, 22:47:26 (12 years ago)
Author:
tech
Message:

Merged DEV-2.0-dev0@604.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/source/Lib/TLibDecoder/TDecGop.h

    r443 r608  
    44 * granted under this license. 
    55 *
    6  * Copyright (c) 2010-2012, ITU/ISO/IEC
     6 * Copyright (c) 2010-2013, ITU/ISO/IEC
    77 * All rights reserved.
    88 *
     
    4949#include "TLibCommon/TComPic.h"
    5050#include "TLibCommon/TComLoopFilter.h"
    51 #include "TLibCommon/TComAdaptiveLoopFilter.h"
    5251#include "TLibCommon/TComSampleAdaptiveOffset.h"
    53 #include "TLibCommon/TComDepthMapGenerator.h"
    54 #include "../TLibCommon/TComResidualGenerator.h"
    5552
    5653#include "TDecEntropy.h"
     
    7067{
    7168private:
    72   Int                   m_iGopSize;
    7369  TComList<TComPic*>    m_cListPic;         //  Dynamic buffer
    7470 
    75   Bool m_first;
    76   UInt m_uiILSliceCount;
    77   UInt* m_puiILSliceStartLCU;
    78   std::vector<AlfCUCtrlInfo> m_vAlfCUCtrlSlices;
    79 
    8071  //  Access channel
    8172  TDecEntropy*          m_pcEntropyDecoder;
     
    8778  TDecSlice*            m_pcSliceDecoder;
    8879  TComLoopFilter*       m_pcLoopFilter;
    89 #if DEPTH_MAP_GENERATION
    90   TComDepthMapGenerator*  m_pcDepthMapGenerator;
    91 #endif
    92 #if H3D_IVRP & !QC_ARP_D0177
    93   TComResidualGenerator*  m_pcResidualGenerator;
    94 #endif
    9580 
    96   // Adaptive Loop filter
    97   TComAdaptiveLoopFilter*       m_pcAdaptiveLoopFilter;
    9881  TComSampleAdaptiveOffset*     m_pcSAO;
    9982  Double                m_dDecTime;
     83  Int                   m_decodedPictureHashSEIEnabled;  ///< Checksum(3)/CRC(2)/MD5(1)/disable(0) acting on decoded picture hash SEI message
    10084
    101   bool m_pictureDigestEnabled; ///< if true, handle picture_digest SEI messages
    102   AlfCUCtrlInfo       m_cAlfCUCtrlOneSlice;
    103   AlfParamSet           m_alfParamSetPilot;
     85  //! list that contains the CU address of each slice plus the end address
     86  std::vector<Int> m_sliceStartCUAddress;
     87  std::vector<Bool> m_LFCrossSliceBoundaryFlag;
    10488
    10589public:
     
    11296                 TDecCavlc*              pcCavlcDecoder,
    11397                 TDecSlice*              pcSliceDecoder,
    114                  TComLoopFilter*         pcLoopFilter,
    115                  TComAdaptiveLoopFilter* pcAdaptiveLoopFilter
    116                  ,TComSampleAdaptiveOffset* pcSAO
    117 #if DEPTH_MAP_GENERATION
    118                  ,TComDepthMapGenerator*  pcDepthMapGenerator
    119 #endif
    120 #if H3D_IVRP & !QC_ARP_D0177
    121                 ,TComResidualGenerator*  pcResidualGenerator
    122 #endif
     98                 TComLoopFilter*         pcLoopFilter,
     99                 TComSampleAdaptiveOffset* pcSAO
    123100                 );
    124101  Void  create  ();
    125102  Void  destroy ();
    126   Void  decompressGop(TComInputBitstream* pcBitstream, TComPic*& rpcPic, Bool bExecuteDeblockAndAlf );
    127   Void  setGopSize( Int i) { m_iGopSize = i; }
     103  Void  decompressSlice(TComInputBitstream* pcBitstream, TComPic*& rpcPic );
     104  Void  filterPicture  (TComPic*& rpcPic );
    128105
    129   void setPictureDigestEnabled(bool enabled) { m_pictureDigestEnabled = enabled; }
    130   AlfCUCtrlInfo& getAlfCuCtrlParam() { return m_cAlfCUCtrlOneSlice; }
    131   AlfParamSet& getAlfParamSet() {return m_alfParamSetPilot;}
    132 
    133 private:
    134   Void patchAlfLCUParams(ALFParam*** alfLCUParam, AlfParamSet* alfParamSet, Int firstLCUAddr = 0);
    135 
     106  void setDecodedPictureHashSEIEnabled(Int enabled) { m_decodedPictureHashSEIEnabled = enabled; }
    136107
    137108};
Note: See TracChangeset for help on using the changeset viewer.