Index: branches/HTM-6.2-dev3-HHI/source/Lib/TLibCommon/TComPrediction.cpp
===================================================================
--- branches/HTM-6.2-dev3-HHI/source/Lib/TLibCommon/TComPrediction.cpp	(revision 337)
+++ branches/HTM-6.2-dev3-HHI/source/Lib/TLibCommon/TComPrediction.cpp	(revision 342)
@@ -50,4 +50,9 @@
 #endif
 
+#if HHI_DELTADC_DLT_D0035
+#define GetDepthValue2Idx(val)     (pcCU->getSlice()->getSPS()->depthValue2idx(val))
+#define GetIdx2DepthValue(val)     (pcCU->getSlice()->getSPS()->idx2DepthValue(val))
+#endif
+
 TComPrediction::TComPrediction()
 : m_pLumaRecBuffer(0)
@@ -2873,6 +2878,16 @@
 
   // assign wedge pred DCs to prediction
-  if( bDelta ) { assignWedgeDCs2Pred( pcWedgelet, piPred, uiStride, Clip ( iPredDC1+iDeltaDC1 ), Clip( iPredDC2+iDeltaDC2 ) ); }
-  else         { assignWedgeDCs2Pred( pcWedgelet, piPred, uiStride,        iPredDC1,                   iPredDC2           ); }
+  if( bDelta ) 
+  { 
+#if HHI_DELTADC_DLT_D0035
+    assignWedgeDCs2Pred( pcWedgelet, piPred, uiStride, GetIdx2DepthValue( GetDepthValue2Idx(iPredDC1) + iDeltaDC1 ), GetIdx2DepthValue( GetDepthValue2Idx(iPredDC2) + iDeltaDC2 ) ); 
+#else
+    assignWedgeDCs2Pred( pcWedgelet, piPred, uiStride, Clip( iPredDC1+iDeltaDC1 ), Clip( iPredDC2+iDeltaDC2 ) ); 
+#endif
+  }
+  else 
+  { 
+    assignWedgeDCs2Pred( pcWedgelet, piPred, uiStride, iPredDC1, iPredDC2 ); 
+  }
 }
 
@@ -2892,6 +2907,16 @@
 
   // assign wedge pred DCs to prediction
-  if( bDelta ) { assignWedgeDCs2Pred( pcContourWedge, piPred, uiStride, Clip ( iPredDC1+iDeltaDC1 ), Clip( iPredDC2+iDeltaDC2 ) ); }
-  else         { assignWedgeDCs2Pred( pcContourWedge, piPred, uiStride,        iPredDC1,                   iPredDC2           ); }
+  if( bDelta ) 
+  { 
+#if HHI_DELTADC_DLT_D0035
+    assignWedgeDCs2Pred( pcContourWedge, piPred, uiStride, GetIdx2DepthValue( GetDepthValue2Idx(iPredDC1) + iDeltaDC1 ), GetIdx2DepthValue( GetDepthValue2Idx(iPredDC2) + iDeltaDC2 ) ); 
+#else
+    assignWedgeDCs2Pred( pcContourWedge, piPred, uiStride, Clip( iPredDC1+iDeltaDC1 ), Clip( iPredDC2+iDeltaDC2 ) ); 
+#endif
+  }
+  else 
+  { 
+    assignWedgeDCs2Pred( pcContourWedge, piPred, uiStride, iPredDC1, iPredDC2 ); 
+  }
 
   pcContourWedge->destroy();
@@ -3067,6 +3092,16 @@
 
   // assign wedge pred DCs to prediction
-  if( bDelta ) { assignWedgeDCs2Pred( pcWedgelet, piPred, uiStride, Clip( iPredDC1+iDeltaDC1 ), Clip( iPredDC2+iDeltaDC2 ) ); }
-  else         { assignWedgeDCs2Pred( pcWedgelet, piPred, uiStride, iPredDC1,           iPredDC2           ); }
+  if( bDelta ) 
+  { 
+#if HHI_DELTADC_DLT_D0035
+    assignWedgeDCs2Pred( pcWedgelet, piPred, uiStride, GetIdx2DepthValue( GetDepthValue2Idx(iPredDC1) + iDeltaDC1 ), GetIdx2DepthValue( GetDepthValue2Idx(iPredDC2) + iDeltaDC2 ) ); 
+#else
+    assignWedgeDCs2Pred( pcWedgelet, piPred, uiStride, Clip( iPredDC1+iDeltaDC1 ), Clip( iPredDC2+iDeltaDC2 ) ); 
+#endif
+  }
+  else 
+  { 
+    assignWedgeDCs2Pred( pcWedgelet, piPred, uiStride, iPredDC1, iPredDC2 ); 
+  }
 }
 
@@ -3102,6 +3137,16 @@
 
   // assign wedge pred DCs to prediction
-  if( bDelta ) { assignWedgeDCs2Pred( pcWedgelet, piPred, uiStride, Clip( iPredDC1+iDeltaDC1 ), Clip( iPredDC2+iDeltaDC2 ) ); }
-  else         { assignWedgeDCs2Pred( pcWedgelet, piPred, uiStride,       iPredDC1,                   iPredDC2             ); }
+  if( bDelta ) 
+  { 
+#if HHI_DELTADC_DLT_D0035
+    assignWedgeDCs2Pred( pcWedgelet, piPred, uiStride, GetIdx2DepthValue( GetDepthValue2Idx(iPredDC1) + iDeltaDC1 ), GetIdx2DepthValue( GetDepthValue2Idx(iPredDC2) + iDeltaDC2 ) ); 
+#else
+    assignWedgeDCs2Pred( pcWedgelet, piPred, uiStride, Clip( iPredDC1+iDeltaDC1 ), Clip( iPredDC2+iDeltaDC2 ) ); 
+#endif
+  }
+  else 
+  { 
+    assignWedgeDCs2Pred( pcWedgelet, piPred, uiStride, iPredDC1, iPredDC2 ); 
+  }
 }
 
Index: branches/HTM-6.2-dev3-HHI/source/Lib/TLibCommon/TypeDef.h
===================================================================
--- branches/HTM-6.2-dev3-HHI/source/Lib/TLibCommon/TypeDef.h	(revision 337)
+++ branches/HTM-6.2-dev3-HHI/source/Lib/TLibCommon/TypeDef.h	(revision 342)
@@ -67,4 +67,7 @@
                                               // SAIT_SDC_C0096 JCT3V-C0096: Improved Simple Depth Coding(removal of DMM2 among four SDC modes(DC, Planar, DMM1 and DMM2))
                                               // FIX_SDC_ENC_C0143, JCT3V-C0143 fix for unnecessary encoder checks in case of SDC
+#if RWTH_SDC_DLT_B0036
+#define HHI_DELTADC_DLT_D0035             1   // JCT3V-D0035: DLT for DMM deltaDC coding
+#endif
 
 ///// ***** TMVP/AMVP *********
Index: branches/HTM-6.2-dev3-HHI/source/Lib/TLibEncoder/TEncSearch.cpp
===================================================================
--- branches/HTM-6.2-dev3-HHI/source/Lib/TLibEncoder/TEncSearch.cpp	(revision 337)
+++ branches/HTM-6.2-dev3-HHI/source/Lib/TLibEncoder/TEncSearch.cpp	(revision 342)
@@ -6478,4 +6478,8 @@
 #endif
 
+#if HHI_DELTADC_DLT_D0035
+  riDeltaDC1 = (Int)GetDepthValue2Idx( Clip(iPredDC1 + riDeltaDC1) ) - (Int)GetDepthValue2Idx( iPredDC1 );
+  riDeltaDC2 = (Int)GetDepthValue2Idx( Clip(iPredDC2 + riDeltaDC2) ) - (Int)GetDepthValue2Idx( iPredDC2 );
+#endif
 }
 #endif
