| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353 |
- <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
- <html xmlns="http://www.w3.org/1999/xhtml">
- <head>
- <meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
- <title>GLM_GTX_bit: Extended bitwise operations</title>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <!-- Generated by Doxygen 1.7.4 -->
- <div id="top">
- <div id="titlearea">
- <table cellspacing="0" cellpadding="0">
- <tbody>
- <tr style="height: 56px;">
- <td id="projectlogo"><img alt="Logo" src="logo-mini.png"/></td>
- </tr>
- </tbody>
- </table>
- </div>
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li><a href="namespaces.html"><span>Namespaces</span></a></li>
- <li><a href="annotated.html"><span>Classes</span></a></li>
- <li><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
- </div>
- <div class="header">
- <div class="summary">
- <a href="#func-members">Functions</a> </div>
- <div class="headertitle">
- <div class="title">GLM_GTX_bit: Extended bitwise operations</div> </div>
- <div class="ingroups"><a class="el" href="a00248.html">GTX Extensions (Experimental)</a></div></div>
- <div class="contents">
- <p>Allow to perform bit operations on integer values.
- <a href="#details">More...</a></p>
- <table class="memberdecls">
- <tr><td colspan="2"><h2><a name="func-members"></a>
- Functions</h2></td></tr>
- <tr><td class="memTemplParams" colspan="2">template<typename genType > </td></tr>
- <tr><td class="memTemplItemLeft" align="right" valign="top">genType </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00250.html#ga2f145f264c334caba22e6949e015d208">bitRevert</a> (genType const &value)</td></tr>
- <tr><td class="memTemplParams" colspan="2">template<typename genType > </td></tr>
- <tr><td class="memTemplItemLeft" align="right" valign="top">genType </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00250.html#gaa8de15434b73178fd1d2ea7ee16b59bd">bitRotateLeft</a> (genType const &In, std::size_t Shift)</td></tr>
- <tr><td class="memTemplParams" colspan="2">template<typename genType > </td></tr>
- <tr><td class="memTemplItemLeft" align="right" valign="top">genType </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00250.html#gaeec0d4179d7a092056e2201fff385ef6">bitRotateRight</a> (genType const &In, std::size_t Shift)</td></tr>
- <tr><td class="memTemplParams" colspan="2">template<typename genIUType , typename sizeType > </td></tr>
- <tr><td class="memTemplItemLeft" align="right" valign="top">genIUType </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00250.html#ga244734bb54e4648970c38b032258035a">extractField</a> (genIUType const &v, sizeType const &first, sizeType const &count)</td></tr>
- <tr><td class="memTemplParams" colspan="2">template<typename genType > </td></tr>
- <tr><td class="memTemplItemLeft" align="right" valign="top">int </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00250.html#ga55e17a1e9347ca10d206f62ffe294608">highestBit</a> (genType const &value)</td></tr>
- <tr><td class="memTemplParams" colspan="2">template<typename genType > </td></tr>
- <tr><td class="memTemplItemLeft" align="right" valign="top">genType </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00250.html#ga2e2ba1398ef471e40e6a07cbab9a75fe">highestBitValue</a> (genType const &value)</td></tr>
- <tr><td class="memTemplParams" colspan="2">template<typename genType > </td></tr>
- <tr><td class="memTemplItemLeft" align="right" valign="top">bool </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00250.html#gadddfcaa01efe60218e52323707331415">isPowerOfTwo</a> (genType const &value)</td></tr>
- <tr><td class="memTemplParams" colspan="2">template<typename genType > </td></tr>
- <tr><td class="memTemplItemLeft" align="right" valign="top">int </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00250.html#gace8029d9e9090f2aaa0248e320b3f24c">lowestBit</a> (genType const &value)</td></tr>
- <tr><td class="memTemplParams" colspan="2">template<typename genIType > </td></tr>
- <tr><td class="memTemplItemLeft" align="right" valign="top">genIType </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00250.html#ga31dbf05c851060984e107afb39dde5fe">mask</a> (genIType const &count)</td></tr>
- <tr><td class="memTemplParams" colspan="2">template<typename genType > </td></tr>
- <tr><td class="memTemplItemLeft" align="right" valign="top">genType </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00250.html#ga0a1683dffc58011a161c0b3cb867c93c">powerOfTwoAbove</a> (genType const &value)</td></tr>
- <tr><td class="memTemplParams" colspan="2">template<typename genType > </td></tr>
- <tr><td class="memTemplItemLeft" align="right" valign="top">genType </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00250.html#ga9adeb3bc22e67933665600e0dc2e1f8d">powerOfTwoBelow</a> (genType const &value)</td></tr>
- <tr><td class="memTemplParams" colspan="2">template<typename genType > </td></tr>
- <tr><td class="memTemplItemLeft" align="right" valign="top">genType </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00250.html#ga12d57451c94950bafe2e1fb57346f082">powerOfTwoNearest</a> (genType const &value)</td></tr>
- </table>
- <hr/><a name="details" id="details"></a><h2>Detailed Description</h2>
- <p>Allow to perform bit operations on integer values. </p>
- <p><<a class="el" href="a00027_source.html">glm/gtx/bit.hpp</a>> need to be included to use these functionalities. </p>
- <hr/><h2>Function Documentation</h2>
- <a class="anchor" id="ga2f145f264c334caba22e6949e015d208"></a><!-- doxytag: member="glm::gtx::bit::bitRevert" ref="ga2f145f264c334caba22e6949e015d208" args="(genType const &value)" -->
- <div class="memitem">
- <div class="memproto">
- <table class="memname">
- <tr>
- <td class="memname">genType glm::gtx::bit::bitRevert </td>
- <td>(</td>
- <td class="paramtype">genType const & </td>
- <td class="paramname"><em>value</em></td><td>)</td>
- <td></td>
- </tr>
- </table>
- </div>
- <div class="memdoc">
- <p>Revert all bits of any integer based type. </p>
- <p>From GLM_GTX_bit extension. </p>
- </div>
- </div>
- <a class="anchor" id="gaa8de15434b73178fd1d2ea7ee16b59bd"></a><!-- doxytag: member="glm::gtx::bit::bitRotateLeft" ref="gaa8de15434b73178fd1d2ea7ee16b59bd" args="(genType const &In, std::size_t Shift)" -->
- <div class="memitem">
- <div class="memproto">
- <table class="memname">
- <tr>
- <td class="memname">genType glm::gtx::bit::bitRotateLeft </td>
- <td>(</td>
- <td class="paramtype">genType const & </td>
- <td class="paramname"><em>In</em>, </td>
- </tr>
- <tr>
- <td class="paramkey"></td>
- <td></td>
- <td class="paramtype">std::size_t </td>
- <td class="paramname"><em>Shift</em> </td>
- </tr>
- <tr>
- <td></td>
- <td>)</td>
- <td></td><td></td>
- </tr>
- </table>
- </div>
- <div class="memdoc">
- <p>Rotate all bits to the left. </p>
- <p>From GLM_GTX_bit extension. </p>
- </div>
- </div>
- <a class="anchor" id="gaeec0d4179d7a092056e2201fff385ef6"></a><!-- doxytag: member="glm::gtx::bit::bitRotateRight" ref="gaeec0d4179d7a092056e2201fff385ef6" args="(genType const &In, std::size_t Shift)" -->
- <div class="memitem">
- <div class="memproto">
- <table class="memname">
- <tr>
- <td class="memname">genType glm::gtx::bit::bitRotateRight </td>
- <td>(</td>
- <td class="paramtype">genType const & </td>
- <td class="paramname"><em>In</em>, </td>
- </tr>
- <tr>
- <td class="paramkey"></td>
- <td></td>
- <td class="paramtype">std::size_t </td>
- <td class="paramname"><em>Shift</em> </td>
- </tr>
- <tr>
- <td></td>
- <td>)</td>
- <td></td><td></td>
- </tr>
- </table>
- </div>
- <div class="memdoc">
- <p>Rotate all bits to the right. </p>
- <p>From GLM_GTX_bit extension. </p>
- </div>
- </div>
- <a class="anchor" id="ga244734bb54e4648970c38b032258035a"></a><!-- doxytag: member="glm::gtx::bit::extractField" ref="ga244734bb54e4648970c38b032258035a" args="(genIUType const &v, sizeType const &first, sizeType const &count)" -->
- <div class="memitem">
- <div class="memproto">
- <table class="memname">
- <tr>
- <td class="memname">genIUType glm::gtx::bit::extractField </td>
- <td>(</td>
- <td class="paramtype">genIUType const & </td>
- <td class="paramname"><em>v</em>, </td>
- </tr>
- <tr>
- <td class="paramkey"></td>
- <td></td>
- <td class="paramtype">sizeType const & </td>
- <td class="paramname"><em>first</em>, </td>
- </tr>
- <tr>
- <td class="paramkey"></td>
- <td></td>
- <td class="paramtype">sizeType const & </td>
- <td class="paramname"><em>count</em> </td>
- </tr>
- <tr>
- <td></td>
- <td>)</td>
- <td></td><td></td>
- </tr>
- </table>
- </div>
- <div class="memdoc">
- <p>Component wise extraction of bit fields. </p>
- <p>genType and genIType could be a scalar or a vector. From GLM_GTX_bit extension. </p>
- </div>
- </div>
- <a class="anchor" id="ga55e17a1e9347ca10d206f62ffe294608"></a><!-- doxytag: member="glm::gtx::bit::highestBit" ref="ga55e17a1e9347ca10d206f62ffe294608" args="(genType const &value)" -->
- <div class="memitem">
- <div class="memproto">
- <table class="memname">
- <tr>
- <td class="memname">int glm::gtx::bit::highestBit </td>
- <td>(</td>
- <td class="paramtype">genType const & </td>
- <td class="paramname"><em>value</em></td><td>)</td>
- <td></td>
- </tr>
- </table>
- </div>
- <div class="memdoc">
- <p>Find the highest bit set to 1 in a integer variable. </p>
- <p>From GLM_GTX_bit extension. </p>
- </div>
- </div>
- <a class="anchor" id="ga2e2ba1398ef471e40e6a07cbab9a75fe"></a><!-- doxytag: member="glm::gtx::bit::highestBitValue" ref="ga2e2ba1398ef471e40e6a07cbab9a75fe" args="(genType const &value)" -->
- <div class="memitem">
- <div class="memproto">
- <table class="memname">
- <tr>
- <td class="memname">genType glm::gtx::bit::highestBitValue </td>
- <td>(</td>
- <td class="paramtype">genType const & </td>
- <td class="paramname"><em>value</em></td><td>)</td>
- <td></td>
- </tr>
- </table>
- </div>
- <div class="memdoc">
- <p>Find the highest bit set to 1 in a integer variable and return its value. </p>
- <p>From GLM_GTX_bit extension. </p>
- </div>
- </div>
- <a class="anchor" id="gadddfcaa01efe60218e52323707331415"></a><!-- doxytag: member="glm::gtx::bit::isPowerOfTwo" ref="gadddfcaa01efe60218e52323707331415" args="(genType const &value)" -->
- <div class="memitem">
- <div class="memproto">
- <table class="memname">
- <tr>
- <td class="memname">bool glm::gtx::bit::isPowerOfTwo </td>
- <td>(</td>
- <td class="paramtype">genType const & </td>
- <td class="paramname"><em>value</em></td><td>)</td>
- <td></td>
- </tr>
- </table>
- </div>
- <div class="memdoc">
- <p>Return true if the value is a power of two number. </p>
- <p>From GLM_GTX_bit extension. </p>
- </div>
- </div>
- <a class="anchor" id="gace8029d9e9090f2aaa0248e320b3f24c"></a><!-- doxytag: member="glm::gtx::bit::lowestBit" ref="gace8029d9e9090f2aaa0248e320b3f24c" args="(genType const &value)" -->
- <div class="memitem">
- <div class="memproto">
- <table class="memname">
- <tr>
- <td class="memname">int glm::gtx::bit::lowestBit </td>
- <td>(</td>
- <td class="paramtype">genType const & </td>
- <td class="paramname"><em>value</em></td><td>)</td>
- <td></td>
- </tr>
- </table>
- </div>
- <div class="memdoc">
- <p>Find the lowest bit set to 1 in a integer variable. </p>
- <p>From GLM_GTX_bit extension. </p>
- </div>
- </div>
- <a class="anchor" id="ga31dbf05c851060984e107afb39dde5fe"></a><!-- doxytag: member="glm::gtx::bit::mask" ref="ga31dbf05c851060984e107afb39dde5fe" args="(genIType const &count)" -->
- <div class="memitem">
- <div class="memproto">
- <table class="memname">
- <tr>
- <td class="memname">genIType glm::gtx::bit::mask </td>
- <td>(</td>
- <td class="paramtype">genIType const & </td>
- <td class="paramname"><em>count</em></td><td>)</td>
- <td></td>
- </tr>
- </table>
- </div>
- <div class="memdoc">
- <p>Build a mask of 'count' bits From GLM_GTX_bit extension. </p>
- </div>
- </div>
- <a class="anchor" id="ga0a1683dffc58011a161c0b3cb867c93c"></a><!-- doxytag: member="glm::gtx::bit::powerOfTwoAbove" ref="ga0a1683dffc58011a161c0b3cb867c93c" args="(genType const &value)" -->
- <div class="memitem">
- <div class="memproto">
- <table class="memname">
- <tr>
- <td class="memname">genType glm::gtx::bit::powerOfTwoAbove </td>
- <td>(</td>
- <td class="paramtype">genType const & </td>
- <td class="paramname"><em>value</em></td><td>)</td>
- <td></td>
- </tr>
- </table>
- </div>
- <div class="memdoc">
- <p>Return the power of two number which value is just higher the input value. </p>
- <p>From GLM_GTX_bit extension. </p>
- </div>
- </div>
- <a class="anchor" id="ga9adeb3bc22e67933665600e0dc2e1f8d"></a><!-- doxytag: member="glm::gtx::bit::powerOfTwoBelow" ref="ga9adeb3bc22e67933665600e0dc2e1f8d" args="(genType const &value)" -->
- <div class="memitem">
- <div class="memproto">
- <table class="memname">
- <tr>
- <td class="memname">genType glm::gtx::bit::powerOfTwoBelow </td>
- <td>(</td>
- <td class="paramtype">genType const & </td>
- <td class="paramname"><em>value</em></td><td>)</td>
- <td></td>
- </tr>
- </table>
- </div>
- <div class="memdoc">
- <p>Return the power of two number which value is just lower the input value. </p>
- <p>From GLM_GTX_bit extension. </p>
- </div>
- </div>
- <a class="anchor" id="ga12d57451c94950bafe2e1fb57346f082"></a><!-- doxytag: member="glm::gtx::bit::powerOfTwoNearest" ref="ga12d57451c94950bafe2e1fb57346f082" args="(genType const &value)" -->
- <div class="memitem">
- <div class="memproto">
- <table class="memname">
- <tr>
- <td class="memname">genType glm::gtx::bit::powerOfTwoNearest </td>
- <td>(</td>
- <td class="paramtype">genType const & </td>
- <td class="paramname"><em>value</em></td><td>)</td>
- <td></td>
- </tr>
- </table>
- </div>
- <div class="memdoc">
- <p>Return the power of two number which value is the closet to the input value. </p>
- <p>From GLM_GTX_bit extension. </p>
- </div>
- </div>
- </div>
- <hr class="footer"/><address class="footer"><small>Generated by 
- <a href="http://www.doxygen.org/index.html">
- <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.7.4 </small></address>
- </body>
- </html>
|