Changeset 751 in 3DVCSoftware for branches/HTM-9.1-dev0-RWTH/source/Lib/TLibCommon/TComSlice.cpp
- Timestamp:
- 19 Dec 2013, 14:29:43 (11 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/HTM-9.1-dev0-RWTH/source/Lib/TLibCommon/TComSlice.cpp
r748 r751 2580 2580 m_iBitsPerDepthValue[layerIdInVps] = numBitsForValue(m_iNumDepthmapValues[layerIdInVps]); 2581 2581 } 2582 2583 #if RWTH_DELTA_DLT 2584 Void TComDLT::getDeltaDLT( Int layerIdInVps, Int* piDLTInRef, Int iDLTInRefNum, Int* piDeltaDLTOut, Int *piDeltaDLTOutNum ) 2585 { 2586 Bool abBM0[ 256 ]; 2587 Bool abBM1[ 256 ]; 2588 2589 memset( abBM0, 0, sizeof( abBM0 )); 2590 memset( abBM1, 0, sizeof( abBM1 )); 2591 2592 // convert reference DLT to bit string 2593 for( Int i = 0; i < iDLTInRefNum; i++ ) 2594 { 2595 abBM0[ piDLTInRef[ i ] ] = true; 2596 } 2597 // convert internal DLT to bit string 2598 for( Int i = 0; i < m_iNumDepthmapValues[ layerIdInVps ]; i++ ) 2599 { 2600 abBM1[ m_iIdx2DepthValue[ layerIdInVps ][ i ] ] = true; 2601 } 2602 2603 *piDeltaDLTOutNum = 0; 2604 for( Int i = 0; i < 256; i++ ) 2605 { 2606 if( abBM0[ i ] ^ abBM1[ i ] ) 2607 { 2608 piDeltaDLTOut[ *piDeltaDLTOutNum ] = i; 2609 *piDeltaDLTOutNum = *piDeltaDLTOutNum + 1; 2610 } 2611 } 2612 } 2613 2614 Void TComDLT::setDeltaDLT( Int layerIdInVps, Int* piDLTInRef, Int iDLTInRefNum, Int* piDeltaDLTIn, Int piDeltaDLTInNum ) 2615 { 2616 Bool abBM0[ 256 ]; 2617 Bool abBM1[ 256 ]; 2618 2619 memset( abBM0, 0, sizeof( abBM0 )); 2620 memset( abBM1, 0, sizeof( abBM1 )); 2621 2622 // convert reference DLT to bit string 2623 for( Int i = 0; i < iDLTInRefNum; i++ ) 2624 { 2625 abBM0[ piDLTInRef[ i ] ] = true; 2626 } 2627 // convert delta DLT to bit string 2628 for( Int i = 0; i < piDeltaDLTInNum; i++ ) 2629 { 2630 abBM1[ piDeltaDLTIn[ i ] ] = true; 2631 } 2632 2633 Int aiIdx2DepthValue[256]; 2634 UInt uiNumDepthValues = 0; 2635 memset( aiIdx2DepthValue, 0, sizeof( aiIdx2DepthValue )); 2636 2637 for( Int i = 0; i < 256; i++ ) 2638 { 2639 if( abBM0[ i ] ^ abBM1[ i ] ) 2640 { 2641 aiIdx2DepthValue[ uiNumDepthValues++ ] = i; 2642 } 2643 } 2644 2645 // update internal tables 2646 setDepthLUTs(layerIdInVps, aiIdx2DepthValue, uiNumDepthValues); 2647 } 2648 #endif 2649 2582 2650 #endif 2583 2651
Note: See TracChangeset for help on using the changeset viewer.