Changeset 724 in 3DVCSoftware for trunk/source/Lib/TLibCommon/TComDataCU.h
- Timestamp:
- 30 Nov 2013, 12:29:49 (11 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/source/Lib/TLibCommon/TComDataCU.h
r655 r724 198 198 ///< 0: non-VSP; 1: VSP 199 199 #endif 200 #if MTK_SPIVMP_F0110 201 Bool* m_pbSPIVMPFlag; ///< array of sub-PU IVMP flags to indicate whehter a block uses sub-PU IVMP 202 ///< 0: non-SPIVMP; 1: SPIVMP 203 #endif 200 204 #if H_3D_ARP 201 205 UChar* m_puhARPW; … … 208 212 #if H_3D_DIM_DMM 209 213 UInt* m_dmmWedgeTabIdx[DMM_NUM_TYPE]; 214 #if !SEC_DMM3_RBC_F0147 210 215 UInt* m_dmm3IntraTabIdx; 216 #endif 211 217 #endif 212 218 #if H_3D_DIM_RBC … … 227 233 UChar* m_pucInterSDCMask; 228 234 #endif 229 235 #if ETRIKHU_MERGE_REUSE_F0093 236 Bool m_bAvailableFlagA1; ///< A1 available flag 237 Bool m_bAvailableFlagB1; ///< B1 available flag 238 Bool m_bAvailableFlagB0; ///< B0 available flag 239 Bool m_bAvailableFlagA0; ///< A0 available flag 240 Bool m_bAvailableFlagB2; ///< B2 available flag 241 #endif 230 242 // ------------------------------------------------------------------------------------------------------------------- 231 243 // misc. variables … … 244 256 UInt* m_sliceSegmentStartCU; ///< Start CU address of current slice 245 257 Char m_codedQP; 258 #if ETRIKHU_MERGE_REUSE_F0093 259 DisInfo m_cDefaultDisInfo; ///< Default disparity information for initializing 260 #endif 261 246 262 protected: 247 263 … … 250 266 Bool xAddMVPCandOrder ( AMVPInfo* pInfo, RefPicList eRefPicList, Int iRefIdx, UInt uiPartUnitIdx, MVP_DIR eDir ); 251 267 #if H_3D_VSP 268 #if ETRIKHU_MERGE_REUSE_F0093 269 Bool xAddVspCand( Int mrgCandIdx, DisInfo* pDInfo, Int& iCount, 270 Bool* abCandIsInter, TComMvField* pcMvFieldNeighbours, UChar* puhInterDirNeighbours, Int* vspFlag, Int& iCount3DV, InheritedVSPDisInfo* inheritedVSPDisInfo); 271 #else 252 272 Bool xAddVspCand( Int mrgCandIdx, DisInfo* pDInfo, Int& iCount, 253 273 Bool* abCandIsInter, TComMvField* pcMvFieldNeighbours, UChar* puhInterDirNeighbours, Int* vspFlag ); 254 274 #endif 275 #endif 255 276 #if H_3D_IV_MERGE 277 #if ETRIKHU_MERGE_REUSE_F0093 278 Bool xAddIvMRGCand( Int mrgCandIdx, Int& iCount, Bool* abCandIsInter, TComMvField* pcMvFieldNeighbours, UChar* puhInterDirNeighbours, Int* ivCandDir, TComMv* ivCandMv, 279 Int* ivCandRefIdx, Int posIvDC, Int* vspFlag, Int &iCount3DV, InheritedVSPDisInfo* inheritedVSPDisInfo ); 280 #else 256 281 Bool xAddIvMRGCand( Int mrgCandIdx, Int& iCount, Bool* abCandIsInter, TComMvField* pcMvFieldNeighbours, UChar* puhInterDirNeighbours, Int* ivCandDir, TComMv* ivCandMv, 257 282 Int* ivCandRefIdx, Int posIvDC, Int* vspFlag ); 283 #endif 258 284 Bool xGetPosFirstAvailDmvCand( Int iCount, TComMvField* pcMvFieldNeighbours, Int* ivCandDir, Int posIvDC, Int* vspFlag, Int& iFirDispCand ); 259 285 #endif … … 493 519 ); 494 520 521 #if ETRIKHU_MERGE_REUSE_F0093 522 Void rightShiftMergeCandList( TComMvField* pcMvFieldNeighbours, UChar* puhInterDirNeighbours, Int* iVSPIndexTrue, InheritedVSPDisInfo* inheritedVSPDisInfo, UInt start, UInt num, Int &iCount3DV); 523 #endif 524 #if QC_DEPTH_IV_MRG_F0125 525 Bool getDispNeighBlocks ( UInt uiPartIdx, UInt uiPartAddr, DisInfo* cDisp); 526 Bool getDispMvPredCan(UInt uiPartIdx, RefPicList eRefPicList, Int iRefIdx, Int* paiPdmRefIdx, TComMv* pacPdmMv, DisInfo* pDis, Int* iPdm ); 527 #endif 528 495 529 #if H_3D_NBDV_REF 496 530 Pel getMcpFromDM(TComPicYuv* pcBaseViewDepthPicYuv, TComMv* mv, Int iBlkX, Int iBlkY, Int iWidth, Int iHeight, Int* aiShiftLUT ); … … 501 535 Void getIVNStatus ( UInt uiPartIdx, DisInfo* pDInfo, Bool& bIVFMerge, Int& iIVFMaxD); 502 536 #endif 537 #if MTK_SPIVMP_F0110 538 Void getSPPara(Int iPUWidth, Int iPUHeight, Int& iNumSP, Int& iNumSPInOneLine, Int& iSPWidth, Int& iSPHeight); 539 Void getSPAbsPartIdx(UInt uiBaseAbsPartIdx, Int iWidth, Int iHeight, Int iPartIdx, Int iNumPartLine, UInt& ruiPartAddr ); 540 Void setInterDirSP( UInt uiDir, UInt uiAbsPartIdx, Int iWidth, Int iHeight ); 541 #endif 503 542 #if H_3D_IV_MERGE 504 Bool getInterViewMergeCands ( UInt uiPartIdx, Int* paiPdmRefIdx, TComMv* pacPdmMv, DisInfo* pDInfo, Int* availableMcDc ); 543 Bool getInterViewMergeCands ( UInt uiPartIdx, Int* paiPdmRefIdx, TComMv* pacPdmMv, DisInfo* pDInfo, Int* availableMcDc 544 #if QC_DEPTH_IV_MRG_F0125 545 , Bool bIsDepth 546 #endif 547 #if MTK_SPIVMP_F0110 548 , TComMvField* pcMFieldSP, UChar* puhInterDirSP 549 #endif 550 ); 505 551 #endif 506 552 #if H_3D_ARP … … 538 584 Void setDmmWedgeTabIdxSubParts ( UInt tabIdx, UInt dmmType, UInt uiAbsPartIdx, UInt uiDepth ); 539 585 586 #if !SEC_DMM3_RBC_F0147 540 587 UInt* getDmm3IntraTabIdx () { return m_dmm3IntraTabIdx; } 541 588 UInt getDmm3IntraTabIdx ( UInt uiIdx ) { return m_dmm3IntraTabIdx[uiIdx]; } 542 589 Void setDmm3IntraTabIdx ( UInt uiIdx, UInt uh ) { m_dmm3IntraTabIdx[uiIdx] = uh; } 543 590 Void setDmm3IntraTabIdxSubParts ( UInt uiTIdx, UInt uiAbsPartIdx, UInt uiDepth ); 591 #endif 544 592 #endif 545 593 #if H_3D_DIM_RBC … … 655 703 656 704 Bool hasEqualMotion ( UInt uiAbsPartIdx, TComDataCU* pcCandCU, UInt uiCandAbsPartIdx ); 657 Void getInterMergeCandidates ( UInt uiAbsPartIdx, UInt uiPUIdx, TComMvField* pcMFieldNeighbours, UChar* puhInterDirNeighbours 705 706 #if ETRIKHU_MERGE_REUSE_F0093 707 Bool getAvailableFlagA1() { return m_bAvailableFlagA1;} 708 Bool getAvailableFlagB1() { return m_bAvailableFlagB1;} 709 Bool getAvailableFlagB0() { return m_bAvailableFlagB0;} 710 Bool getAvailableFlagA0() { return m_bAvailableFlagA0;} 711 Bool getAvailableFlagB2() { return m_bAvailableFlagB2;} 712 Void initAvailableFlags() { m_bAvailableFlagA1 = m_bAvailableFlagB1 = m_bAvailableFlagB0 = m_bAvailableFlagA0 = m_bAvailableFlagB2 = 0; } 713 Void getInterMergeCandidates( UInt uiAbsPartIdx, UInt uiPUIdx, TComMvField* pcMvFieldNeighbours, UChar* puhInterDirNeighbours, Int& numValidMergeCand, Int mrgCandIdx = -1); 714 Void xGetInterMergeCandidates ( UInt uiAbsPartIdx, UInt uiPUIdx, TComMvField* pcMFieldNeighbours, UChar* puhInterDirNeighbours 715 #else 716 Void getInterMergeCandidates ( UInt uiAbsPartIdx, UInt uiPUIdx, TComMvField* pcMFieldNeighbours, UChar* puhInterDirNeighbours 717 #endif 658 718 #if H_3D_VSP 659 719 , Int* vspFlag 660 720 , InheritedVSPDisInfo* inheritedVSPDisInfo 661 721 #endif 662 , Int& numValidMergeCand, Int mrgCandIdx = -1 ); 722 #if MTK_SPIVMP_F0110 723 , Bool* pbSPIVMPFlag, TComMvField* pcMvFieldSP, UChar* puhInterDirSP 724 #endif 725 , Int& numValidMergeCand, Int mrgCandIdx = -1 726 ); 663 727 664 728 #if H_3D_VSP 665 729 inline Void xInheritVSPDisInfo(TComDataCU* pcCURef, UInt uiAbsPartIdx, Int iCount, InheritedVSPDisInfo* inheritedVSPDisInfo); 730 731 #if MTK_SPIVMP_F0110 732 Bool* getSPIVMPFlag () { return m_pbSPIVMPFlag; } 733 Bool getSPIVMPFlag ( UInt uiIdx ) { return m_pbSPIVMPFlag[uiIdx]; } 734 Void setSPIVMPFlag ( UInt uiIdx, Bool n ) { m_pbSPIVMPFlag[uiIdx] = n; } 735 Void setSPIVMPFlagSubParts( Bool bSPIVMPFlag, UInt uiAbsPartIdx, UInt uiPartIdx, UInt uiDepth ); 736 #endif 666 737 667 738 Char* getVSPFlag () { return m_piVSPFlag; } … … 681 752 Bool isSkipped ( UInt uiPartIdx ); ///< SKIP (no residual) 682 753 Bool isBipredRestriction( UInt puIdx ); 754 755 #if LGE_IC_CTX_F0160 756 Bool isIC ( UInt uiPartIdx ); 757 #endif 683 758 684 759 // -------------------------------------------------------------------------------------------------------------------
Note: See TracChangeset for help on using the changeset viewer.