<div dir="ltr"><br><div class="gmail_extra"><br><br><div class="gmail_quote">On Thu, Jul 11, 2013 at 3:40 AM,  <span dir="ltr"><<a href="mailto:praveen@multicorewareinc.com" target="_blank">praveen@multicorewareinc.com</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"># HG changeset patch<br>
# User praveentiwari<br>
# Date 1373532017 -19800<br>
# Node ID 7e7b6f6aba0910ba37310f1ececcf42326949e2e<br>
# Parent  2245a4a8b34da61d4d572b40f10024a4f1013030<br>
Replaced referance parameter for setDistParam<br></blockquote><div><br></div><div style>Can't push this one, in this case the use of reference is correct.  The caller is passing a structure and expects it to be modified.</div>
<div style><br></div><div style>The places where the HM does this incorrectly are usually pointer references like this:  TComPic*& rpcRecoYuv</div><div style>In this case, the recon YUV is an output, it it is entirely retarded to pass in the pointer to it as a reference unless the function is expected to move the pointer to another TComPic.  If the function does not do:  rpcRecoYuv = new TComPic; or some other assignment to the pointer itself, then you can remove the reference as you remove the hungarian notation.</div>
<div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
diff -r 2245a4a8b34d -r 7e7b6f6aba09 source/Lib/TLibCommon/TComRdCost.cpp<br>
--- a/source/Lib/TLibCommon/TComRdCost.cpp      Wed Jul 10 22:28:41 2013 -0500<br>
+++ b/source/Lib/TLibCommon/TComRdCost.cpp      Thu Jul 11 14:10:17 2013 +0530<br>
@@ -118,7 +118,7 @@<br>
 }<br>
<br>
 // Setting the Distortion Parameter for Inter (ME)<br>
-Void TComRdCost::setDistParam(TComPattern* patternKey, Pel* piRefY, Int iRefStride, DistParam& rcDistParam)<br>
+Void TComRdCost::setDistParam(TComPattern* patternKey, Pel* piRefY, Int iRefStride, DistParam rcDistParam)<br>
 {<br>
     // set Original & Curr Pointer / Stride<br>
     rcDistParam.fenc = patternKey->getROIY();<br>
@@ -150,7 +150,7 @@<br>
 }<br>
<br>
 // Setting the Distortion Parameter for Inter (subpel ME with step)<br>
-Void TComRdCost::setDistParam(TComPattern* patternKey, Pel* piRefY, Int iRefStride, Int iStep, DistParam& rcDistParam, Bool bHADME)<br>
+Void TComRdCost::setDistParam(TComPattern* patternKey, Pel* piRefY, Int iRefStride, Int iStep, DistParam rcDistParam, Bool bHADME)<br>
 {<br>
     // set Original & Curr Pointer / Stride<br>
     rcDistParam.fenc = patternKey->getROIY();<br>
diff -r 2245a4a8b34d -r 7e7b6f6aba09 source/Lib/TLibCommon/TComRdCost.h<br>
--- a/source/Lib/TLibCommon/TComRdCost.h        Wed Jul 10 22:28:41 2013 -0500<br>
+++ b/source/Lib/TLibCommon/TComRdCost.h        Thu Jul 11 14:10:17 2013 +0530<br>
@@ -204,8 +204,8 @@<br>
     // Distortion Functions<br>
     Void    init();<br>
<br>
-    Void    setDistParam(TComPattern* patternKey, Pel* piRefY, Int iRefStride,            DistParam& rcDistParam);<br>
-    Void    setDistParam(TComPattern* patternKey, Pel* piRefY, Int iRefStride, Int iStep, DistParam& rcDistParam, Bool bHADME = false);<br>
+    Void    setDistParam(TComPattern* patternKey, Pel* piRefY, Int iRefStride,            DistParam rcDistParam);<br>
+    Void    setDistParam(TComPattern* patternKey, Pel* piRefY, Int iRefStride, Int iStep, DistParam rcDistParam, Bool bHADME = false);<br>
<br>
 private:<br>
<br>
_______________________________________________<br>
x265-devel mailing list<br>
<a href="mailto:x265-devel@videolan.org">x265-devel@videolan.org</a><br>
<a href="http://mailman.videolan.org/listinfo/x265-devel" target="_blank">http://mailman.videolan.org/listinfo/x265-devel</a><br>
</blockquote></div><br><br clear="all"><div><br></div>-- <br>Steve Borho
</div></div>