Changeset 56 in 3DVCSoftware for trunk/source/App/TAppDecoder/TAppDecTop.h
- Timestamp:
- 11 May 2012, 21:20:17 (12 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/source/App/TAppDecoder/TAppDecTop.h
r21 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 TAppDecTop.h 37 35 \brief Decoder application class (header) … … 45 43 #endif // _MSC_VER > 1000 46 44 47 #include "../../Lib/TLibVideoIO/TVideoIOYuv.h" 48 #include "../../Lib/TLibVideoIO/TVideoIOBits.h" 49 #include "../../Lib/TLibCommon/TComList.h" 50 #include "../../Lib/TLibCommon/TComPicYuv.h" 51 #include "../../Lib/TLibCommon/TComBitStream.h" 52 #include "../../Lib/TLibCommon/TComDepthMapGenerator.h" 53 #include "../../Lib/TLibDecoder/TDecTop.h" 45 #include "TLibVideoIO/TVideoIOYuv.h" 46 #include "TLibCommon/TComList.h" 47 #include "TLibCommon/TComPicYuv.h" 48 #include "TLibCommon/TComDepthMapGenerator.h" 49 #include "TLibDecoder/TDecTop.h" 54 50 #include "TAppDecCfg.h" 51 52 //! \ingroup TAppDecoder 53 //! \{ 55 54 56 55 // ==================================================================================================================== … … 63 62 private: 64 63 // class interface 65 std::vector<TDecTop*> m_acTDecTopList; 66 std::vector<TDecTop*> m_acTDecDepthTopList; 67 TComBitstream* m_apcBitstream; ///< bitstream class 68 TVideoIOBitsStartCode m_cTVideoIOBitstreamFile; ///< file I/O class 69 std::vector<TVideoIOYuv*> m_acTVideoIOYuvReconFileList; 70 std::vector<TVideoIOYuv*> m_acTVideoIOYuvDepthReconFileList; 64 std::vector<TDecTop*> m_tDecTop; ///< decoder classes 71 65 72 Bool m_bUsingDepth;66 std::vector<TVideoIOYuv*> m_tVideoIOYuvReconFile; ///< reconstruction YUV class 73 67 74 68 // for output control 75 69 Bool m_abDecFlag[ MAX_GOP ]; ///< decoded flag in one GOP 76 // Int m_iPOCLastDisplay; ///< last POC in display order 77 78 std::vector<Bool> m_abDecFlagList; ///< decoded flag in one GOP 79 std::vector<Int> m_aiPOCLastDisplayList; 80 std::vector<Int> m_aiDepthPOCLastDisplayList; 70 std::vector<Int> m_pocLastDisplay; ///< last POC in display order 71 Bool m_useDepth; 81 72 82 73 FILE* m_pScaleOffsetFile; … … 90 81 TAppDecTop(); 91 82 virtual ~TAppDecTop() {} 92 83 93 84 Void create (); ///< create internal members 94 85 Void destroy (); ///< destroy internal members 95 86 Void decode (); ///< main decoding function 96 Void increaseNumberOfViews (Int iNewNumberOfViews);97 Void startUsingDepth();87 Void increaseNumberOfViews (Int newNumberOfViewDepth); 88 TDecTop* getTDecTop ( Int viewId, Bool isDepth ); 98 89 99 // GT FIX 100 std::vector<TComPic*> getSpatialRefPics( Int iViewIdx, Int iPoc, Bool bIsDepth ); 101 TComPic* getPicFromView( Int iViewIdx, Int iPoc, bool bDepth ); 102 // GT FIX END 90 std::vector<TComPic*> getInterViewRefPics( Int viewId, Int poc, Bool isDepth, TComSPS* sps ); 91 TComPic* getPicFromView ( Int viewId, Int poc, bool isDepth ) { return xGetPicFromView( viewId, poc, isDepth ); } 103 92 104 93 #if DEPTH_MAP_GENERATION 105 94 TComSPSAccess* getSPSAccess () { return &m_cSPSAccess; } 106 95 TComAUPicAccess* getAUPicAccess() { return &m_cAUPicAccess; } 107 TDecTop* getDecTop0 () { return m_ acTDecTopList[0]; }96 TDecTop* getDecTop0 () { return m_tDecTop[0]; } 108 97 #endif 109 98 110 99 protected: 111 Void xCreateDecLib (); ///< create internal classes100 // Void xCreateDecLib (); ///< create internal classes 112 101 Void xDestroyDecLib (); ///< destroy internal classes 113 Void xInitDecLib (); ///< initialize decoder class 102 // Void xInitDecLib (); ///< initialize decoder class 103 104 #if H0567_DPB_PARAMETERS_PER_TEMPORAL_LAYER 105 Void xWriteOutput ( TComList<TComPic*>* pcListPic, Int viewDepthId, UInt tId); ///< write YUV to file 106 #else 107 Void xWriteOutput ( TComList<TComPic*>* pcListPic, Int viewDepthId ); ///< write YUV to file 108 #endif 109 Void xFlushOutput ( TComList<TComPic*>* pcListPic, Int viewDepthId ); ///< flush all remaining decoded pictures to file 114 110 115 Void xWriteOutput ( TComList<TComPic*>* pcListPic ); ///< write YUV to file111 TComPic* xGetPicFromView( Int viewId, Int poc, Bool isDepth ); 116 112 }; 117 113 114 //! \} 118 115 #endif 119 116
Note: See TracChangeset for help on using the changeset viewer.