Changeset 554 in 3DVCSoftware for branches/HTM-DEV-2.0-dev3-Samsung/source/Lib/TLibCommon
- Timestamp:
- 6 Aug 2013, 02:51:16 (11 years ago)
- Location:
- branches/HTM-DEV-2.0-dev3-Samsung/source/Lib/TLibCommon
- Files:
-
- 6 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/HTM-DEV-2.0-dev3-Samsung/source/Lib/TLibCommon/ContextTables.h
r531 r554 112 112 #if H_3D_DIM_DMM 113 113 #define NUM_DMM1_DATA_CTX 1 ///< number of context models for DMM1 data 114 #if !SEC_DMM2_E0146 114 115 #define NUM_DMM2_DATA_CTX 1 ///< number of context models for DMM2 data 116 #endif 115 117 #define NUM_DMM3_DATA_CTX 1 ///< number of context models for DMM3 data 116 118 #endif … … 411 413 { CNU }, 412 414 }; 415 #if !SEC_DMM2_E0146 413 416 static const UChar 414 417 INIT_DMM2_DATA[3][NUM_DMM2_DATA_CTX] = … … 418 421 { CNU }, 419 422 }; 423 #endif 420 424 static const UChar 421 425 INIT_DMM3_DATA[3][NUM_DMM3_DATA_CTX] = -
branches/HTM-DEV-2.0-dev3-Samsung/source/Lib/TLibCommon/TComDataCU.cpp
r542 r554 120 120 m_dmmWedgeTabIdx[i] = NULL; 121 121 } 122 #if !SEC_DMM2_E0146 122 123 m_dmm2DeltaEnd = NULL; 124 #endif 123 125 m_dmm3IntraTabIdx = NULL; 124 126 #endif … … 264 266 m_dmmWedgeTabIdx[i] = (UInt*)xMalloc(UInt, uiNumPartition); 265 267 } 268 #if !SEC_DMM2_E0146 266 269 m_dmm2DeltaEnd = (Int* )xMalloc(Int, uiNumPartition); 270 #endif 267 271 m_dmm3IntraTabIdx = (UInt*)xMalloc(UInt, uiNumPartition); 268 272 #endif … … 389 393 if ( m_dmmWedgeTabIdx[i] ) { xFree( m_dmmWedgeTabIdx[i] ); m_dmmWedgeTabIdx[i] = NULL; } 390 394 } 395 #if !SEC_DMM2_E0146 391 396 if ( m_dmm2DeltaEnd ) { xFree( m_dmm2DeltaEnd ); m_dmm2DeltaEnd = NULL; } 397 #endif 392 398 if ( m_dmm3IntraTabIdx ) { xFree( m_dmm3IntraTabIdx ); m_dmm3IntraTabIdx = NULL; } 393 399 #endif … … 596 602 memset( m_dmmWedgeTabIdx[i] + firstElement, 0, numElements * sizeof( *m_dmmWedgeTabIdx[i] ) ); 597 603 } 604 #if !SEC_DMM2_E0146 598 605 memset( m_dmm2DeltaEnd + firstElement, 0, numElements * sizeof( *m_dmm2DeltaEnd ) ); 606 #endif 599 607 memset( m_dmm3IntraTabIdx + firstElement, 0, numElements * sizeof( *m_dmm3IntraTabIdx ) ); 600 608 #endif … … 767 775 m_dmmWedgeTabIdx[i] [ui] = 0; 768 776 } 777 #if !SEC_DMM2_E0146 769 778 m_dmm2DeltaEnd [ui] = 0; 779 #endif 770 780 m_dmm3IntraTabIdx [ui] = 0; 771 781 #endif … … 872 882 memset( m_dmmWedgeTabIdx[i], 0, sizeof(UInt) * m_uiNumPartition ); 873 883 } 884 #if !SEC_DMM2_E0146 874 885 memset( m_dmm2DeltaEnd , 0, sizeof(Int ) * m_uiNumPartition ); 886 #endif 875 887 memset( m_dmm3IntraTabIdx, 0, sizeof(UInt) * m_uiNumPartition ); 876 888 #endif … … 947 959 m_dmmWedgeTabIdx[i] [ui] = pcCU->m_dmmWedgeTabIdx[i] [uiPartOffset+ui]; 948 960 } 961 #if !SEC_DMM2_E0146 949 962 m_dmm2DeltaEnd [ui] = pcCU->m_dmm2DeltaEnd [uiPartOffset+ui]; 963 #endif 950 964 m_dmm3IntraTabIdx [ui] = pcCU->m_dmm3IntraTabIdx[uiPartOffset+ui]; 951 965 #endif … … 1095 1109 m_dmmWedgeTabIdx[i] = pcCU->getDmmWedgeTabIdx( i ) + uiPart; 1096 1110 } 1111 #if !SEC_DMM2_E0146 1097 1112 m_dmm2DeltaEnd = pcCU->getDmm2DeltaEnd() + uiPart; 1113 #endif 1098 1114 m_dmm3IntraTabIdx = pcCU->getDmm3IntraTabIdx() + uiPart; 1099 1115 #endif … … 1282 1298 memcpy( m_dmmWedgeTabIdx[i] + uiOffset, pcCU->getDmmWedgeTabIdx( i ), sizeof(UInt) * uiNumPartition ); 1283 1299 } 1300 #if !SEC_DMM2_E0146 1284 1301 memcpy( m_dmm2DeltaEnd + uiOffset, pcCU->getDmm2DeltaEnd() , sizeof(Int ) * uiNumPartition ); 1302 #endif 1285 1303 memcpy( m_dmm3IntraTabIdx + uiOffset, pcCU->getDmm3IntraTabIdx(), sizeof(UInt) * uiNumPartition ); 1286 1304 #endif … … 1402 1420 memcpy( rpcCU->getDmmWedgeTabIdx( i ) + m_uiAbsIdxInLCU, m_dmmWedgeTabIdx[i], sizeof(UInt) * m_uiNumPartition ); 1403 1421 } 1422 #if !SEC_DMM2_E0146 1404 1423 memcpy( rpcCU->getDmm2DeltaEnd() + m_uiAbsIdxInLCU, m_dmm2DeltaEnd , sizeof(Int ) * m_uiNumPartition ); 1424 #endif 1405 1425 memcpy( rpcCU->getDmm3IntraTabIdx() + m_uiAbsIdxInLCU, m_dmm3IntraTabIdx, sizeof(UInt) * m_uiNumPartition ); 1406 1426 #endif … … 1509 1529 memcpy( rpcCU->getDmmWedgeTabIdx( i ) + uiPartOffset, m_dmmWedgeTabIdx[i], sizeof(UInt) * uiQNumPart ); 1510 1530 } 1531 #if !SEC_DMM2_E0146 1511 1532 memcpy( rpcCU->getDmm2DeltaEnd() + uiPartOffset, m_dmm2DeltaEnd , sizeof(Int ) * uiQNumPart ); 1533 #endif 1512 1534 memcpy( rpcCU->getDmm3IntraTabIdx() + uiPartOffset, m_dmm3IntraTabIdx, sizeof(UInt) * uiQNumPart ); 1513 1535 #endif … … 5434 5456 for( UInt ui = 0; ui < uiCurrPartNumb; ui++ ) { m_dmmWedgeTabIdx[dmmType][uiAbsPartIdx+ui] = tabIdx; } 5435 5457 } 5458 #if !SEC_DMM2_E0146 5436 5459 Void TComDataCU::setDmm2DeltaEndSubParts( Int iDelta, UInt uiAbsPartIdx, UInt uiDepth ) 5437 5460 { … … 5439 5462 for( UInt ui = 0; ui < uiCurrPartNumb; ui++ ) { m_dmm2DeltaEnd[uiAbsPartIdx+ui] = iDelta; } 5440 5463 } 5464 #endif 5441 5465 Void TComDataCU::setDmm3IntraTabIdxSubParts( UInt uiTIdx, UInt uiAbsPartIdx, UInt uiDepth ) 5442 5466 { -
branches/HTM-DEV-2.0-dev3-Samsung/source/Lib/TLibCommon/TComDataCU.h
r531 r554 208 208 #if H_3D_DIM_DMM 209 209 UInt* m_dmmWedgeTabIdx[DMM_NUM_TYPE]; 210 #if !SEC_DMM2_E0146 210 211 Int* m_dmm2DeltaEnd; 212 #endif 211 213 UInt* m_dmm3IntraTabIdx; 212 214 #endif … … 522 524 Void setDmmWedgeTabIdxSubParts ( UInt tabIdx, UInt dmmType, UInt uiAbsPartIdx, UInt uiDepth ); 523 525 526 #if !SEC_DMM2_E0146 524 527 Int* getDmm2DeltaEnd () { return m_dmm2DeltaEnd; } 525 528 Int getDmm2DeltaEnd ( UInt uiIdx ) { return m_dmm2DeltaEnd[uiIdx]; } 526 529 Void setDmm2DeltaEnd ( UInt uiIdx, Int iD ) { m_dmm2DeltaEnd[uiIdx] = iD; } 527 530 Void setDmm2DeltaEndSubParts ( Int iDelta, UInt uiAbsPartIdx, UInt uiDepth ); 531 #endif 528 532 529 533 UInt* getDmm3IntraTabIdx () { return m_dmm3IntraTabIdx; } -
branches/HTM-DEV-2.0-dev3-Samsung/source/Lib/TLibCommon/TComPrediction.cpp
r537 r554 436 436 dmmSegmentation = &(g_dmmWedgeLists[ g_aucConvertToBit[iWidth] ][ pcCU->getDmmWedgeTabIdx( dimType, uiAbsPartIdx ) ]); 437 437 } break; 438 #if !SEC_DMM2_E0146 438 439 case( DMM2_IDX ): 439 440 { … … 447 448 dmmSegmentation = &(g_dmmWedgeLists[ g_aucConvertToBit[iWidth] ][ uiTabIdx ]); 448 449 } break; 450 #endif 449 451 case( DMM3_IDX ): 450 452 { … … 2042 2044 { 2043 2045 UInt dimType = getDimType( pcTempCU->getLumaIntraDir( uiTempPartIdx ) ); 2046 #if SEC_DMM2_E0146 2047 if( DMM1_IDX == dimType || DMM3_IDX == dimType ) 2048 #else 2044 2049 if( DMM1_IDX == dimType || DMM2_IDX == dimType || DMM3_IDX == dimType ) 2050 #endif 2045 2051 { 2046 2052 // get offset between current and reference block … … 2067 2073 { 2068 2074 UInt dimType = getDimType( pcTempCU->getLumaIntraDir( uiTempPartIdx ) ); 2075 #if SEC_DMM2_E0146 2076 if( DMM1_IDX == dimType || DMM3_IDX == dimType ) 2077 #else 2069 2078 if( DMM1_IDX == dimType || DMM2_IDX == dimType || DMM3_IDX == dimType ) 2079 #endif 2070 2080 { 2071 2081 // get offset between current and reference block -
branches/HTM-DEV-2.0-dev3-Samsung/source/Lib/TLibCommon/TComWedgelet.h
r531 r554 50 50 enum DIM_IDX 51 51 { 52 #if SEC_DMM2_E0146 53 DMM1_IDX = 0, 54 DMM3_IDX = 1, 55 DMM4_IDX = 2, 56 RBC_IDX = 3 57 #else 52 58 DMM1_IDX = 0, 53 59 DMM2_IDX = 3, … … 55 61 DMM4_IDX = 2, 56 62 RBC_IDX = 4 63 #endif 57 64 }; 65 #if SEC_DMM2_E0146 66 #define DMM_NUM_TYPE 3 67 #else 58 68 #define DMM_NUM_TYPE 4 69 #endif 59 70 #define RBC_NUM_TYPE 1 60 71 #define DIM_NUM_TYPE (DMM_NUM_TYPE+RBC_NUM_TYPE) … … 75 86 #define DMM_NO_WEDGEINDEX MAX_UINT 76 87 #define DMM_NUM_WEDGE_REFINES 8 88 #if !SEC_DMM2_E0146 77 89 #define DMM2_DELTAEND_MAX 4 90 #endif 78 91 #define DMM3_SIMPLIFY_TR 1 79 92 -
branches/HTM-DEV-2.0-dev3-Samsung/source/Lib/TLibCommon/TypeDef.h
r543 r554 170 170 #if H_3D_DIM 171 171 #define H_3D_DIM_DMM 1 // Depth Modeling Modes 172 #if H_3D_DIM 173 #define SEC_DMM2_E0146 1 // Removal of DMM2 from DMMs 174 #endif 172 175 #define H_3D_DIM_RBC 1 // Region Boundary Chain mode 173 176 #define H_3D_DIM_SDC 1 // Simplified Depth Coding method
Note: See TracChangeset for help on using the changeset viewer.