Changeset 56 in 3DVCSoftware for trunk/source/Lib/TLibDecoder/TDecGop.h
- Timestamp:
- 11 May 2012, 21:20:17 (13 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/source/Lib/TLibDecoder/TDecGop.h
r5 r56 2 2 * License, included below. This software may be subject to other third party 3 3 * and contributor rights, including patent rights, and no such rights are 4 * granted under this license. 4 * granted under this license. 5 5 * 6 * Copyright (c) 2010-201 1,ISO/IEC6 * Copyright (c) 2010-2012, ITU/ISO/IEC 7 7 * All rights reserved. 8 8 * … … 15 15 * this list of conditions and the following disclaimer in the documentation 16 16 * and/or other materials provided with the distribution. 17 * * Neither the name of the I SO/IEC nor the names of its contributors may17 * * Neither the name of the ITU/ISO/IEC nor the names of its contributors may 18 18 * be used to endorse or promote products derived from this software without 19 19 * specific prior written permission. … … 32 32 */ 33 33 34 35 36 34 /** \file TDecGop.h 37 35 \brief GOP decoder class (header) … … 45 43 #endif // _MSC_VER > 1000 46 44 47 #include "../TLibCommon/CommonDef.h" 48 #include "../TLibCommon/TComBitStream.h" 49 #include "../TLibCommon/TComList.h" 50 #include "../TLibCommon/TComPicYuv.h" 51 #include "../TLibCommon/TComPic.h" 52 #include "../TLibCommon/TComLoopFilter.h" 53 #include "../TLibCommon/TComAdaptiveLoopFilter.h" 54 #include "../TLibCommon/TComDepthMapGenerator.h" 45 #include "TLibCommon/CommonDef.h" 46 #include "TLibCommon/TComBitStream.h" 47 #include "TLibCommon/TComList.h" 48 #include "TLibCommon/TComPicYuv.h" 49 #include "TLibCommon/TComPic.h" 50 #include "TLibCommon/TComLoopFilter.h" 51 #include "TLibCommon/TComAdaptiveLoopFilter.h" 52 #include "TLibCommon/TComSampleAdaptiveOffset.h" 53 #include "TLibCommon/TComDepthMapGenerator.h" 55 54 #include "../TLibCommon/TComResidualGenerator.h" 56 55 … … 59 58 #include "TDecBinCoder.h" 60 59 #include "TDecBinCoderCABAC.h" 60 61 //! \ingroup TLibDecoder 62 //! \{ 61 63 62 64 // ==================================================================================================================== … … 71 73 TComList<TComPic*> m_cListPic; // Dynamic buffer 72 74 75 Bool m_first; 76 UInt m_uiILSliceCount; 77 UInt* m_puiILSliceStartLCU; 78 std::vector<AlfCUCtrlInfo> m_vAlfCUCtrlSlices; 79 73 80 // Access channel 74 81 TDecEntropy* m_pcEntropyDecoder; 75 82 TDecSbac* m_pcSbacDecoder; 76 83 TDecBinCABAC* m_pcBinCABAC; 84 TDecSbac* m_pcSbacDecoders; // independant CABAC decoders 85 TDecBinCABAC* m_pcBinCABACs; 77 86 TDecCavlc* m_pcCavlcDecoder; 78 87 TDecSlice* m_pcSliceDecoder; 79 88 TComLoopFilter* m_pcLoopFilter; 80 81 89 #if DEPTH_MAP_GENERATION 82 90 TComDepthMapGenerator* m_pcDepthMapGenerator; … … 88 96 // Adaptive Loop filter 89 97 TComAdaptiveLoopFilter* m_pcAdaptiveLoopFilter; 90 #if MTK_SAO 91 TComSampleAdaptiveOffset* m_pcSAO; 92 SAOParam m_cSaoParam; 93 #endif 94 ALFParam m_cAlfParam; 98 TComSampleAdaptiveOffset* m_pcSAO; 95 99 Double m_dDecTime; 96 100 97 101 bool m_pictureDigestEnabled; ///< if true, handle picture_digest SEI messages 102 AlfCUCtrlInfo m_cAlfCUCtrlOneSlice; 103 #if LCU_SYNTAX_ALF 104 AlfParamSet m_alfParamSetPilot; 105 #endif 98 106 99 107 public: … … 107 115 TDecSlice* pcSliceDecoder, 108 116 TComLoopFilter* pcLoopFilter, 109 TComAdaptiveLoopFilter* pcAdaptiveLoopFilter, 110 #if MTK_SAO 111 TComSampleAdaptiveOffset* pcSAO 112 #endif 117 TComAdaptiveLoopFilter* pcAdaptiveLoopFilter 118 ,TComSampleAdaptiveOffset* pcSAO 113 119 #if DEPTH_MAP_GENERATION 114 ,TComDepthMapGenerator* pcDepthMapGenerator120 ,TComDepthMapGenerator* pcDepthMapGenerator 115 121 #endif 116 122 #if HHI_INTER_VIEW_RESIDUAL_PRED 117 ,TComResidualGenerator* pcResidualGenerator 123 ,TComResidualGenerator* pcResidualGenerator 118 124 #endif 119 125 ); 120 126 Void create (); 121 127 Void destroy (); 122 Void decompressGop ( Bool bEos, TComBitstream* pcBitstream, TComPic*& rpcPic, Bool bExecuteDeblockAndAlf );128 Void decompressGop(TComInputBitstream* pcBitstream, TComPic*& rpcPic, Bool bExecuteDeblockAndAlf ); 123 129 Void setGopSize( Int i) { m_iGopSize = i; } 124 130 125 131 void setPictureDigestEnabled(bool enabled) { m_pictureDigestEnabled = enabled; } 132 AlfCUCtrlInfo& getAlfCuCtrlParam() { return m_cAlfCUCtrlOneSlice; } 133 #if LCU_SYNTAX_ALF 134 AlfParamSet& getAlfParamSet() {return m_alfParamSetPilot;} 135 #endif 136 137 private: 138 #if LCU_SYNTAX_ALF 139 Void patchAlfLCUParams(ALFParam*** alfLCUParam, AlfParamSet* alfParamSet, Int firstLCUAddr = 0); 140 #endif 141 142 126 143 }; 144 145 //! \} 127 146 128 147 #endif // !defined(AFX_TDECGOP_H__29440B7A_7CC0_48C7_8DD5_1A531D3CED45__INCLUDED_)
Note: See TracChangeset for help on using the changeset viewer.