Changeset 608 in 3DVCSoftware for trunk/source/Lib/TLibCommon/TComLoopFilter.h
- Timestamp:
- 1 Sep 2013, 22:47:26 (12 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/source/Lib/TLibCommon/TComLoopFilter.h
r296 r608 4 4 * granted under this license. 5 5 * 6 * Copyright (c) 2010-201 2, ITU/ISO/IEC6 * Copyright (c) 2010-2013, ITU/ISO/IEC 7 7 * All rights reserved. 8 8 * … … 55 55 { 56 56 private: 57 UInt m_uiDisableDeblockingFilterIdc; ///< deblocking filter idc58 Int m_betaOffsetDiv2;59 Int m_tcOffsetDiv2;60 61 57 UInt m_uiNumPartitions; 62 58 UChar* m_aapucBS[2]; ///< Bs for [Ver/Hor][Y/U/V][Blk_Idx] 63 Bool* m_aapbEdgeFilter[2] [3];59 Bool* m_aapbEdgeFilter[2]; 64 60 LFCUParam m_stLFCUParam; ///< status structure 65 61 … … 75 71 Void xSetEdgefilterTU ( TComDataCU* pcCU, UInt absTUPartIdx, UInt uiAbsZorderIdx, UInt uiDepth ); 76 72 Void xSetEdgefilterPU ( TComDataCU* pcCU, UInt uiAbsZorderIdx ); 77 Void xGetBoundaryStrengthSingle ( TComDataCU* pcCU, UInt uiAbsZorderIdx,Int iDir, UInt uiPartIdx );73 Void xGetBoundaryStrengthSingle ( TComDataCU* pcCU, Int iDir, UInt uiPartIdx ); 78 74 UInt xCalcBsIdx ( TComDataCU* pcCU, UInt uiAbsZorderIdx, Int iDir, Int iEdgeIdx, Int iBaseUnitIdx ) 79 75 { … … 81 77 const UInt uiLCUWidthInBaseUnits = pcPic->getNumPartInWidth(); 82 78 if( iDir == 0 ) 79 { 83 80 return g_auiRasterToZscan[g_auiZscanToRaster[uiAbsZorderIdx] + iBaseUnitIdx * uiLCUWidthInBaseUnits + iEdgeIdx ]; 81 } 84 82 else 83 { 85 84 return g_auiRasterToZscan[g_auiZscanToRaster[uiAbsZorderIdx] + iEdgeIdx * uiLCUWidthInBaseUnits + iBaseUnitIdx ]; 85 } 86 86 } 87 87 88 Void xSetEdgefilterMultiple( TComDataCU* pcCU, UInt uiAbsZorderIdx, UInt uiDepth, Int iDir, Int iEdgeIdx, Bool bValue ,UInt uiWidthInBaseUnits = 0, UInt uiHeightInBaseUnits = 0 , Bool nonSquare = false);88 Void xSetEdgefilterMultiple( TComDataCU* pcCU, UInt uiAbsZorderIdx, UInt uiDepth, Int iDir, Int iEdgeIdx, Bool bValue ,UInt uiWidthInBaseUnits = 0, UInt uiHeightInBaseUnits = 0 ); 89 89 90 90 Void xEdgeFilterLuma ( TComDataCU* pcCU, UInt uiAbsZorderIdx, UInt uiDepth, Int iDir, Int iEdge ); 91 91 Void xEdgeFilterChroma ( TComDataCU* pcCU, UInt uiAbsZorderIdx, UInt uiDepth, Int iDir, Int iEdge ); 92 92 93 __inline Void xPelFilterLuma( Pel* piSrc, Int iOffset, Int d, Int beta, Inttc, Bool sw, Bool bPartPNoFilter, Bool bPartQNoFilter, Int iThrCut, Bool bFilterSecondP, Bool bFilterSecondQ);93 __inline Void xPelFilterLuma( Pel* piSrc, Int iOffset, Int tc, Bool sw, Bool bPartPNoFilter, Bool bPartQNoFilter, Int iThrCut, Bool bFilterSecondP, Bool bFilterSecondQ); 94 94 __inline Void xPelFilterChroma( Pel* piSrc, Int iOffset, Int tc, Bool bPartPNoFilter, Bool bPartQNoFilter); 95 95 … … 99 99 __inline Int xCalcDQ( Pel* piSrc, Int iOffset); 100 100 101 static const UChar sm_tcTable[54]; 102 static const UChar sm_betaTable[52]; 103 101 104 public: 102 105 TComLoopFilter(); … … 107 110 108 111 /// set configuration 109 Void setCfg( Bool DeblockingFilterControlPresent, UInt uiDisableDblkIdc, Int betaOffsetDiv2, Int tcOffsetDiv2, Bool bLFCrossTileBoundary);112 Void setCfg( Bool bLFCrossTileBoundary ); 110 113 111 114 /// picture-level deblocking filter 112 115 Void loopFilterPic( TComPic* pcPic ); 116 117 static Int getBeta( Int qp ) 118 { 119 Int indexB = Clip3( 0, MAX_QP, qp ); 120 return sm_betaTable[ indexB ]; 121 } 113 122 }; 114 123
Note: See TracChangeset for help on using the changeset viewer.