a00207.html 9.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242
  1. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  2. <html xmlns="http://www.w3.org/1999/xhtml">
  3. <head>
  4. <meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
  5. <title>GLM_GTX_ulp: Accuracy measurement</title>
  6. <link href="tabs.css" rel="stylesheet" type="text/css"/>
  7. <link href="doxygen.css" rel="stylesheet" type="text/css" />
  8. </head>
  9. <body>
  10. <div id="top"><!-- do not remove this div! -->
  11. <div id="titlearea">
  12. <table cellspacing="0" cellpadding="0">
  13. <tbody>
  14. <tr style="height: 56px;">
  15. <td id="projectlogo"><img alt="Logo" src="logo-mini.png"/></td>
  16. </tr>
  17. </tbody>
  18. </table>
  19. </div>
  20. <!-- Generated by Doxygen 1.7.5.1 -->
  21. <div id="navrow1" class="tabs">
  22. <ul class="tablist">
  23. <li><a href="index.html"><span>Main&#160;Page</span></a></li>
  24. <li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
  25. <li><a href="modules.html"><span>Modules</span></a></li>
  26. <li><a href="annotated.html"><span>Classes</span></a></li>
  27. <li><a href="files.html"><span>Files</span></a></li>
  28. </ul>
  29. </div>
  30. </div>
  31. <div class="header">
  32. <div class="summary">
  33. <a href="#func-members">Functions</a> </div>
  34. <div class="headertitle">
  35. <div class="title">GLM_GTX_ulp: Accuracy measurement</div> </div>
  36. <div class="ingroups"><a class="el" href="a00137.html">GTX Extensions (Experimental)</a></div></div>
  37. <div class="contents">
  38. <table class="memberdecls">
  39. <tr><td colspan="2"><h2><a name="func-members"></a>
  40. Functions</h2></td></tr>
  41. <tr><td class="memTemplParams" colspan="2">template&lt;typename T &gt; </td></tr>
  42. <tr><td class="memTemplItemLeft" align="right" valign="top">uint&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00207.html#ga0c49c371f6b2adf02d03661e0f2499c9">float_distance</a> (T const &amp;x, T const &amp;y)</td></tr>
  43. <tr><td class="memTemplParams" colspan="2">template&lt;typename T , template&lt; typename &gt; class vecType&gt; </td></tr>
  44. <tr><td class="memTemplItemLeft" align="right" valign="top">vecType&lt; uint &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00207.html#ga9b2de9eb54e59f20b20f7eccd40d435e">float_distance</a> (vecType&lt; T &gt; const &amp;x, vecType&lt; T &gt; const &amp;y)</td></tr>
  45. <tr><td class="memTemplParams" colspan="2">template&lt;typename genType &gt; </td></tr>
  46. <tr><td class="memTemplItemLeft" align="right" valign="top">genType&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00207.html#ga3be6de2d954fb457ff88085128e4b521">next_float</a> (genType const &amp;x)</td></tr>
  47. <tr><td class="memTemplParams" colspan="2">template&lt;typename genType &gt; </td></tr>
  48. <tr><td class="memTemplItemLeft" align="right" valign="top">genType&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00207.html#ga27752f3f7a9a79a50e95a9ed42800ca7">next_float</a> (genType const &amp;x, uint const &amp;Distance)</td></tr>
  49. <tr><td class="memTemplParams" colspan="2">template&lt;typename genType &gt; </td></tr>
  50. <tr><td class="memTemplItemLeft" align="right" valign="top">genType&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00207.html#ga2a0122b31c643ca1546635fe8e4f9f74">prev_float</a> (genType const &amp;x)</td></tr>
  51. <tr><td class="memTemplParams" colspan="2">template&lt;typename genType &gt; </td></tr>
  52. <tr><td class="memTemplItemLeft" align="right" valign="top">genType&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00207.html#gae506d2fb08aff01e00763d7ed76fe117">prev_float</a> (genType const &amp;x, uint const &amp;Distance)</td></tr>
  53. </table>
  54. <hr/><a name="details" id="details"></a><h2>Detailed Description</h2>
  55. <p>Allow the measurement of the accuracy of a function against a reference implementation. </p>
  56. <p>This extension works on floating-point data and provide results in ULP. &lt;<a class="el" href="a00115.html" title="OpenGL Mathematics (glm.g-truc.net)">glm/gtx/ulp.hpp</a>&gt; need to be included to use these functionalities. </p>
  57. <hr/><h2>Function Documentation</h2>
  58. <a class="anchor" id="ga0c49c371f6b2adf02d03661e0f2499c9"></a><!-- doxytag: member="glm::float_distance" ref="ga0c49c371f6b2adf02d03661e0f2499c9" args="(T const &amp;x, T const &amp;y)" -->
  59. <div class="memitem">
  60. <div class="memproto">
  61. <table class="memname">
  62. <tr>
  63. <td class="memname">uint glm::float_distance </td>
  64. <td>(</td>
  65. <td class="paramtype">T const &amp;&#160;</td>
  66. <td class="paramname"><em>x</em>, </td>
  67. </tr>
  68. <tr>
  69. <td class="paramkey"></td>
  70. <td></td>
  71. <td class="paramtype">T const &amp;&#160;</td>
  72. <td class="paramname"><em>y</em>&#160;</td>
  73. </tr>
  74. <tr>
  75. <td></td>
  76. <td>)</td>
  77. <td></td><td></td>
  78. </tr>
  79. </table>
  80. </div>
  81. <div class="memdoc">
  82. <p>Return the distance in the number of ULP between 2 scalars. </p>
  83. <p>From GLM_GTX_ulp extension. </p>
  84. </div>
  85. </div>
  86. <a class="anchor" id="ga9b2de9eb54e59f20b20f7eccd40d435e"></a><!-- doxytag: member="glm::float_distance" ref="ga9b2de9eb54e59f20b20f7eccd40d435e" args="(vecType&lt; T &gt; const &amp;x, vecType&lt; T &gt; const &amp;y)" -->
  87. <div class="memitem">
  88. <div class="memproto">
  89. <table class="memname">
  90. <tr>
  91. <td class="memname">vecType&lt;uint&gt; glm::float_distance </td>
  92. <td>(</td>
  93. <td class="paramtype">vecType&lt; T &gt; const &amp;&#160;</td>
  94. <td class="paramname"><em>x</em>, </td>
  95. </tr>
  96. <tr>
  97. <td class="paramkey"></td>
  98. <td></td>
  99. <td class="paramtype">vecType&lt; T &gt; const &amp;&#160;</td>
  100. <td class="paramname"><em>y</em>&#160;</td>
  101. </tr>
  102. <tr>
  103. <td></td>
  104. <td>)</td>
  105. <td></td><td></td>
  106. </tr>
  107. </table>
  108. </div>
  109. <div class="memdoc">
  110. <p>Return the distance in the number of ULP between 2 vectors. </p>
  111. <p>From GLM_GTX_ulp extension. </p>
  112. </div>
  113. </div>
  114. <a class="anchor" id="ga3be6de2d954fb457ff88085128e4b521"></a><!-- doxytag: member="glm::next_float" ref="ga3be6de2d954fb457ff88085128e4b521" args="(genType const &amp;x)" -->
  115. <div class="memitem">
  116. <div class="memproto">
  117. <table class="memname">
  118. <tr>
  119. <td class="memname">genType glm::next_float </td>
  120. <td>(</td>
  121. <td class="paramtype">genType const &amp;&#160;</td>
  122. <td class="paramname"><em>x</em></td><td>)</td>
  123. <td></td>
  124. </tr>
  125. </table>
  126. </div>
  127. <div class="memdoc">
  128. <p>Return the next ULP value(s) after the input value(s). </p>
  129. <p>From GLM_GTX_ulp extension. </p>
  130. </div>
  131. </div>
  132. <a class="anchor" id="ga27752f3f7a9a79a50e95a9ed42800ca7"></a><!-- doxytag: member="glm::next_float" ref="ga27752f3f7a9a79a50e95a9ed42800ca7" args="(genType const &amp;x, uint const &amp;Distance)" -->
  133. <div class="memitem">
  134. <div class="memproto">
  135. <table class="memname">
  136. <tr>
  137. <td class="memname">genType glm::next_float </td>
  138. <td>(</td>
  139. <td class="paramtype">genType const &amp;&#160;</td>
  140. <td class="paramname"><em>x</em>, </td>
  141. </tr>
  142. <tr>
  143. <td class="paramkey"></td>
  144. <td></td>
  145. <td class="paramtype">uint const &amp;&#160;</td>
  146. <td class="paramname"><em>Distance</em>&#160;</td>
  147. </tr>
  148. <tr>
  149. <td></td>
  150. <td>)</td>
  151. <td></td><td></td>
  152. </tr>
  153. </table>
  154. </div>
  155. <div class="memdoc">
  156. <p>Return the value(s) ULP distance after the input value(s). </p>
  157. <p>From GLM_GTX_ulp extension. </p>
  158. </div>
  159. </div>
  160. <a class="anchor" id="ga2a0122b31c643ca1546635fe8e4f9f74"></a><!-- doxytag: member="glm::prev_float" ref="ga2a0122b31c643ca1546635fe8e4f9f74" args="(genType const &amp;x)" -->
  161. <div class="memitem">
  162. <div class="memproto">
  163. <table class="memname">
  164. <tr>
  165. <td class="memname">genType glm::prev_float </td>
  166. <td>(</td>
  167. <td class="paramtype">genType const &amp;&#160;</td>
  168. <td class="paramname"><em>x</em></td><td>)</td>
  169. <td></td>
  170. </tr>
  171. </table>
  172. </div>
  173. <div class="memdoc">
  174. <p>Return the previous ULP value(s) before the input value(s). </p>
  175. <p>From GLM_GTX_ulp extension. </p>
  176. </div>
  177. </div>
  178. <a class="anchor" id="gae506d2fb08aff01e00763d7ed76fe117"></a><!-- doxytag: member="glm::prev_float" ref="gae506d2fb08aff01e00763d7ed76fe117" args="(genType const &amp;x, uint const &amp;Distance)" -->
  179. <div class="memitem">
  180. <div class="memproto">
  181. <table class="memname">
  182. <tr>
  183. <td class="memname">genType glm::prev_float </td>
  184. <td>(</td>
  185. <td class="paramtype">genType const &amp;&#160;</td>
  186. <td class="paramname"><em>x</em>, </td>
  187. </tr>
  188. <tr>
  189. <td class="paramkey"></td>
  190. <td></td>
  191. <td class="paramtype">uint const &amp;&#160;</td>
  192. <td class="paramname"><em>Distance</em>&#160;</td>
  193. </tr>
  194. <tr>
  195. <td></td>
  196. <td>)</td>
  197. <td></td><td></td>
  198. </tr>
  199. </table>
  200. </div>
  201. <div class="memdoc">
  202. <p>Return the value(s) ULP distance before the input value(s). </p>
  203. <p>From GLM_GTX_ulp extension. </p>
  204. </div>
  205. </div>
  206. </div>
  207. <hr class="footer"/><address class="footer"><small>
  208. Generated by &#160;<a href="http://www.doxygen.org/index.html">
  209. <img class="footer" src="doxygen.png" alt="doxygen"/>
  210. </a> 1.7.5.1
  211. </small></address>
  212. </body>
  213. </html>