Changeset 1072 in 3DVCSoftware for branches/HTM-12.1-MV-draft-1/source/Lib/TLibCommon/TComPrediction.h
- Timestamp:
- 13 Oct 2014, 16:44:51 (11 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
TabularUnified branches/HTM-12.1-MV-draft-1/source/Lib/TLibCommon/TComPrediction.h ¶
r1039 r1072 65 65 TComYuv m_acYuvPred[2]; 66 66 TComYuv m_cYuvPredTemp; 67 #if H_3D_ARP68 TComYuv m_acYuvPredBase[2];69 #endif70 67 TComYuv m_filteredBlock[4][4]; 71 68 TComYuv m_filteredBlockTmp[4]; … … 75 72 Pel* m_pLumaRecBuffer; ///< array for downsampled reconstructed luma sample 76 73 Int m_iLumaRecStride; ///< stride of #m_pLumaRecBuffer array 77 #if H_3D_IC78 UInt m_uiaShift[ 64 ]; // Table for multiplication to substitue of division operation79 #endif80 74 81 #if H_3D_VSP82 Int* m_pDepthBlock; ///< Store a depth block, local variable, to prevent memory allocation every time83 TComYuv m_cYuvDepthOnVsp;84 #endif85 75 86 76 Void xPredIntraAng (Int bitDepth, Int* pSrc, Int srcStride, Pel*& rpDst, Int dstStride, UInt width, UInt height, UInt dirMode, Bool blkAboveAvailable, Bool blkLeftAvailable, Bool bFilter ); … … 88 78 89 79 // motion compensation functions 90 #if H_3D_ARP91 Void xPredInterUniARP ( TComDataCU* pcCU, UInt uiPartAddr, Int iWidth, Int iHeight, RefPicList eRefPicList, TComYuv*& rpcYuvPred, Bool bi=false, TComMvField * pNewMvFiled = NULL );92 #if QC_I0051_ARP_SIMP93 Bool xCheckBiInterviewARP ( TComDataCU* pcCU, UInt uiPartAddr, Int iWidth, Int iHeight, RefPicList eBaseRefPicList, TComPic*& pcPicYuvCurrTRef, TComMv& cBaseTMV, Int& iCurrTRefPoc );94 #endif95 Void xPredInterUniARPviewRef( TComDataCU* pcCU, UInt uiPartAddr, Int iWidth, Int iHeight, RefPicList eRefPicList, TComYuv*& rpcYuvPred, Bool bi, TComMvField * pNewMvFiled = NULL );96 #endif97 80 Void xPredInterUni ( TComDataCU* pcCU, UInt uiPartAddr, Int iWidth, Int iHeight, RefPicList eRefPicList, TComYuv*& rpcYuvPred, Bool bi=false ); 98 81 Void xPredInterBi ( TComDataCU* pcCU, UInt uiPartAddr, Int iWidth, Int iHeight, TComYuv*& rpcYuvPred ); 99 #if H_3D_VSP100 Void xPredInterUniVSP ( TComDataCU* pcCU, UInt uiPartAddr, Int iWidth, Int iHeight, RefPicList eRefPicList, TComYuv*& rpcYuvPred, Bool bi=false );101 Void xPredInterBiVSP ( TComDataCU* pcCU, UInt uiPartAddr, Int iWidth, Int iHeight, TComYuv*& rpcYuvPred );102 #endif103 82 104 83 Void xPredInterLumaBlk ( TComDataCU *cu, TComPicYuv *refPic, UInt partAddr, TComMv *mv, Int width, Int height, TComYuv *&dstPic, Bool bi 105 #if H_3D_ARP106 , Bool filterType = false107 #endif108 #if H_3D_IC109 , Bool bICFlag = false110 #endif111 84 ); 112 85 Void xPredInterChromaBlk( TComDataCU *cu, TComPicYuv *refPic, UInt partAddr, TComMv *mv, Int width, Int height, TComYuv *&dstPic, Bool bi 113 86 114 #if H_3D_ARP115 , Bool filterType = false116 #endif117 #if H_3D_IC118 , Bool bICFlag = false119 #endif120 87 ); 121 88 122 #if H_3D_VSP123 Void xPredInterUniSubPU ( TComDataCU *cu, UInt uiPartAddr, Int iWidth, Int iHeight, RefPicList eRefPicList, TComYuv*& rpcYuvPred, Bool bi, Int widthSubPU=4, Int heightSubPU=4 );124 #endif125 89 126 90 Void xWeightedAverage ( TComYuv* pcYuvSrc0, TComYuv* pcYuvSrc1, Int iRefIdx0, Int iRefIdx1, UInt uiPartAddr, Int iWidth, Int iHeight, TComYuv*& rpcYuvDst ); 127 91 128 92 Void xGetLLSPrediction ( TComPattern* pcPattern, Int* pSrc0, Int iSrcStride, Pel* pDst0, Int iDstStride, UInt uiWidth, UInt uiHeight, UInt uiExt0 ); 129 #if H_3D_IC130 Void xGetLLSICPrediction( TComDataCU* pcCU, TComMv *pMv, TComPicYuv *pRefPic, Int &a, Int &b, TextType eType );131 #endif132 93 Void xDCPredFiltering( Int* pSrc, Int iSrcStride, Pel*& rpDst, Int iDstStride, Int iWidth, Int iHeight ); 133 94 Bool xCheckIdenticalMotion ( TComDataCU* pcCU, UInt PartAddr); 134 #if H_3D_SPIVMP135 Bool xCheckTwoSPMotion ( TComDataCU* pcCU, UInt PartAddr0, UInt PartAddr1 );136 Void xGetSubPUAddrAndMerge(TComDataCU* pcCU, UInt uiPartAddr, Int iSPWidth, Int iSPHeight, Int iNumSPInOneLine, Int iNumSP, UInt* uiMergedSPW, UInt* uiMergedSPH, UInt* uiSPAddr );137 #endif138 #if H_3D_DIM139 // depth intra functions140 Void xPredBiSegDCs ( Int* ptrSrc, UInt srcStride, Bool* biSegPattern, Int patternStride, Pel& predDC1, Pel& predDC2 );141 Void xAssignBiSegDCs ( Pel* ptrDst, UInt dstStride, Bool* biSegPattern, Int patternStride, Pel valDC1, Pel valDC2 );142 #if H_3D_DIM_DMM143 UInt xPredWedgeFromTex ( TComDataCU* pcCU, UInt uiAbsPartIdx, UInt uiWidth, UInt uiHeight, UInt intraTabIdx );144 Void xPredContourFromTex ( TComDataCU* pcCU, UInt uiAbsPartIdx, UInt uiWidth, UInt uiHeight, TComWedgelet* pcContourWedge );145 Void xCopyTextureLumaBlock ( TComDataCU* pcCU, UInt uiAbsPartIdx, Pel* piDestBlockY, UInt uiWidth, UInt uiHeight );146 #endif147 #endif148 95 149 96 public: … … 163 110 Void predIntraChromaAng ( Int* piSrc, UInt uiDirMode, Pel* piPred, UInt uiStride, Int iWidth, Int iHeight, Bool bAbove, Bool bLeft ); 164 111 165 #if H_3D_DIM166 // Depth intra167 Void predIntraLumaDepth ( TComDataCU* pcCU, UInt uiAbsPartIdx, UInt uiIntraMode, Pel* piPred, UInt uiStride, Int iWidth, Int iHeight, Bool bFastEnc = false168 , TComWedgelet* dmm4Segmentation = NULL169 );170 #if H_3D_DIM_SDC171 Void analyzeSegmentsSDC ( Pel* pOrig, UInt uiStride, UInt uiSize, Pel* rpSegMeans, UInt uiNumSegments, Bool* pMask, UInt uiMaskStride172 ,UInt uiIntraMode173 ,Bool orgDC=false174 );175 #endif176 #endif177 112 178 #if H_3D_DBBP179 PartSize getPartitionSizeFromDepth(Pel* pDepthPels, UInt uiDepthStride, UInt uiSize);180 Bool getSegmentMaskFromDepth( Pel* pDepthPels, UInt uiDepthStride, UInt uiWidth, UInt uiHeight, Bool* pMask );181 #if SHARP_DBBP_SIMPLE_FLTER_I0109182 Void combineSegmentsWithMask( TComYuv* pInYuv[2], TComYuv* pOutYuv, Bool* pMask, UInt uiWidth, UInt uiHeight, UInt uiPartAddr, UInt partSize );183 #else184 Void combineSegmentsWithMask( TComYuv* pInYuv[2], TComYuv* pOutYuv, Bool* pMask, UInt uiWidth, UInt uiHeight, UInt uiPartAddr = 0 );185 #endif186 #endif187 113 188 114 Pel predIntraGetPredValDC ( Int* pSrc, Int iSrcStride, UInt iWidth, UInt iHeight, Bool bAbove, Bool bLeft );
Note: See TracChangeset for help on using the changeset viewer.