a00159.html 11 KB

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