Changeset 124 in 3DVCSoftware for trunk/source/Lib/TLibRenderer/TRenSingleModel.h
- Timestamp:
- 7 Sep 2012, 15:24:21 (12 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/source/Lib/TLibRenderer/TRenSingleModel.h
r105 r124 80 80 // Set Frame dependent data 81 81 virtual Void setLRView ( Int iViewPos, Pel** apiCurVideoPel, Int* aiCurVideoStride, Pel* piCurDepthPel, Int iCurDepthStride ) = 0; 82 #if FIX_VSO_SETUP 83 virtual Void setupPart ( UInt uiHorOffset, Int iUsedHeight ) = 0; 84 virtual Void setup ( TComPicYuv* pcOrgVideo, Int** ppiShiftLutLeft, Int** ppiBaseShiftLutLeft, Int** ppiShiftLutRight, Int** ppiBaseShiftLutRight, Int iDistToLeft, Bool bKeepReference ) = 0; 85 #else 82 86 virtual Void setup ( TComPicYuv* pcOrgVideo, Int** ppiShiftLutLeft, Int** ppiBaseShiftLutLeft, Int** ppiShiftLutRight, Int** ppiBaseShiftLutRight, Int iDistToLeft, Bool bKeepReference, UInt uiHorOffset ) = 0; 87 #endif 83 88 84 89 // Set Data … … 98 103 virtual RMDist getDistVideo ( Int iViewPos, Int iPlane, Int iStartPosX, Int iStartPosY, Int iWidth, Int iHeight, Int iStride, Pel* piNewData ) = 0; 99 104 105 #if FIX_VSO_SETUP 106 virtual Void getSynthVideo ( Int iViewPos, TComPicYuv* pcPicYuv ) = 0; 107 virtual Void getSynthDepth ( Int iViewPos, TComPicYuv* pcPicYuv ) = 0; 108 virtual Void getRefVideo ( Int iViewPos, TComPicYuv* pcPicYuv ) = 0; 109 #else 100 110 virtual Void getSynthVideo ( Int iViewPos, TComPicYuv* pcPicYuv, UInt uiHorOffset ) = 0; 101 111 virtual Void getSynthDepth ( Int iViewPos, TComPicYuv* pcPicYuv, UInt uiHorOffset ) = 0; 102 112 virtual Void getRefVideo ( Int iViewPos, TComPicYuv* pcPicYuv, UInt uiHorOffset ) = 0; 113 #endif 103 114 }; 104 115 … … 170 181 // Set Frame dependent data 171 182 Void setLRView ( Int iViewPos, Pel** apiCurVideoPel, Int* aiCurVideoStride, Pel* piCurDepthPel, Int iCurDepthStride ); 183 #if FIX_VSO_SETUP 184 Void setupPart ( UInt uiHorOffset, Int uiUsedHeight ); 185 Void setup ( TComPicYuv* pcOrgVideo, Int** ppiShiftLutLeft, Int** ppiBaseShiftLutLeft, Int** ppiShiftLutRight, Int** ppiBaseShiftLutRight, Int iDistToLeft, Bool bKeepReference ); 186 #else 172 187 Void setup ( TComPicYuv* pcOrgVideo, Int** ppiShiftLutLeft, Int** ppiBaseShiftLutLeft, Int** ppiShiftLutRight, Int** ppiBaseShiftLutRight, Int iDistToLeft, Bool bKeepReference, UInt uiHorOffset ); 188 #endif 173 189 174 190 #if LGE_VSO_EARLY_SKIP_A0093 … … 187 203 RMDist getDistVideo ( Int iViewPos, Int iPlane, Int iStartPosX, Int iStartPosY, Int iWidth, Int iHeight, Int iStride, Pel* piNewData ); 188 204 205 #if FIX_VSO_SETUP 206 Void getSynthVideo ( Int iViewPos, TComPicYuv* pcPicYuv ); 207 Void getSynthDepth ( Int iViewPos, TComPicYuv* pcPicYuv ); 208 Void getRefVideo ( Int iViewPos, TComPicYuv* pcPicYuv ); 209 #else 189 210 Void getSynthVideo ( Int iViewPos, TComPicYuv* pcPicYuv, UInt uiHorOffset ); 190 211 Void getSynthDepth ( Int iViewPos, TComPicYuv* pcPicYuv, UInt uiHorOffset ); 191 212 Void getRefVideo ( Int iViewPos, TComPicYuv* pcPicYuv, UInt uiHorOffset ); 213 #endif 192 214 193 215 private: … … 198 220 ///// Rendering ///// 199 221 // Left to Right 200 #if defLGE_VSO_EARLY_SKIP_A0093222 #if LGE_VSO_EARLY_SKIP_A0093 201 223 __inline Bool xDetectEarlySkipL ( Int iStartPosX, Int iStartPosY, Int iWidth, Int iHeight, Int iStride, Pel* piNewData,Pel* piOrgData, Int iOrgStride ); 202 224 __inline Bool xDetectEarlySkipR ( Int iStartPosX, Int iStartPosY, Int iWidth, Int iHeight, Int iStride, Pel* piNewData,Pel* piOrgData, Int iOrgStride ); … … 234 256 __inline Void xGetBlendedValueBM2 ( Pel iYL, Pel iYR, Pel iUL, Pel iUR, Pel iVL, Pel iVR, Pel iDepthL, Pel iDepthR, Int iFilledL, Int iFilledR, Pel& riY, Pel& riU, Pel&riV ); 235 257 #else 236 __inline Void xGetBlendedValue ( Pel iYL, 258 __inline Void xGetBlendedValue ( Pel iYL, Pel iYR, Pel iDepthL, Pel iDepthR, Int iFilledL, Int iFilledR, Pel& riY ); 237 259 __inline Void xGetBlendedValueBM1 ( Pel iYL, Pel iYR, Pel iDepthL, Pel iDepthR, Int iFilledL, Int iFilledR, Pel& riY ); 238 260 __inline Void xGetBlendedValueBM2 ( Pel iYL, Pel iYR, Pel iDepthL, Pel iDepthR, Int iFilledL, Int iFilledR, Pel& riY ); … … 241 263 242 264 // General 243 template<Bool bSet> __inline Void xSetShiftedPelL (Int iSourcePos, Int iSubSourcePos, Int iTargetSPos,Pel iFilled, RMDist& riError );265 template<Bool bSet> __inline Void xSetShiftedPelL (Int iSourcePos, Int iSubSourcePos, Int iTargetSPos, Pel iFilled, RMDist& riError ); 244 266 template<Bool bSet> __inline Void xSetShiftedPelBlendL (RenModelInPels* pcInSample, Int iSubSourcePos, RenModelOutPels* pcOutSample, Pel iFilled, RMDist& riError ); 245 267 template<Bool bSet> __inline Void xSetShiftedPelNoBlendL(RenModelInPels* pcInSample, Int iSubSourcePos, RenModelOutPels* pcOutSample, Pel iFilled, RMDist& riError ); 246 268 247 template<Bool bSet> __inline Void xSetShiftedPelR (Int iSourcePos, Int iSubSourcePos, Int iTargetSPos,Pel iFilled, RMDist& riError );269 template<Bool bSet> __inline Void xSetShiftedPelR (Int iSourcePos, Int iSubSourcePos, Int iTargetSPos, Pel iFilled, RMDist& riError ); 248 270 template<Bool bSet> __inline Void xSetShiftedPelBlendR (RenModelInPels* pcInSample, Int iSubSourcePos, RenModelOutPels* pcOutSample, Pel iFilled, RMDist& riError ); 249 271 template<Bool bSet> __inline Void xSetShiftedPelNoBlendR(RenModelInPels* pcInSample, Int iSubSourcePos, RenModelOutPels* pcOutSample, Pel iFilled, RMDist& riError ); … … 271 293 Void xInitSampleStructs (); 272 294 Void xSetStructSynthViewAsRefView (); 295 #if FIX_VSO_SETUP 296 Void xCopy2PicYuv ( Pel** ppiSrcVideoPel, Int* piStrides, TComPicYuv* rpcPicYuvTarget ); 297 #else 273 298 Void xCopy2PicYuv ( Pel** ppiSrcVideoPel, Int* piStrides, TComPicYuv* rpcPicYuvTarget, UInt uiHorOffset ); 274 299 #endif 275 300 276 301 template< typename S, typename T> 277 302 Void xCopyFromSampleStruct ( S* ptSource , Int iSourceStride, T S::* ptSourceElement, T* ptTarget, Int iTargetStride, Int iWidth, Int iHeight ) 278 303 { 304 #if FIX_VSO_SETUP 305 AOT( iWidth != m_iWidth ); 306 for (Int iPosY = 0; iPosY < iHeight; iPosY++) 307 #else 279 308 for (Int iPosY = 0; iPosY < m_iHeight; iPosY++) 309 #endif 280 310 { 281 311 for (Int iPosX = 0; iPosX < m_iWidth; iPosX++) … … 291 321 Void xCopyToSampleStruct ( T* ptSource , Int iSourceStride, S* ptTarget, Int iTargetStride, T S::* ptSourceElement, Int iWidth, Int iHeight ) 292 322 { 323 #if FIX_VSO_SETUP 324 AOT( iWidth != m_iWidth ); 325 for (Int iPosY = 0; iPosY < iHeight; iPosY++) 326 #else 293 327 for (Int iPosY = 0; iPosY < m_iHeight; iPosY++) 328 #endif 294 329 { 295 330 for (Int iPosX = 0; iPosX < m_iWidth; iPosX++) … … 309 344 Int m_iStride; 310 345 Int m_iPad; 346 #if FIX_VSO_SETUP 347 Int m_iUsedHeight; 348 Int m_iHorOffset; 349 #endif 311 350 312 351 Int m_iSampledWidth; 352 #if FIX_VSO_SETUP 353 #else 313 354 Int m_iSampledHeight; 355 #endif 314 356 Int m_iSampledStride; 315 357 316 358 RenModelInPels* m_pcInputSamples[2]; 317 Int 359 Int m_iInputSamplesStride; 318 360 319 361 // Base
Note: See TracChangeset for help on using the changeset viewer.