glm/doc/api/a00186.html
2013-12-25 23:48:55 +01:00

955 lines
43 KiB
HTML

<!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"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.5"/>
<title>GLM: GLM_GTX_bit</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr style="height: 56px;">
<td style="padding-left: 0.5em;">
<div id="projectname">GLM
&#160;<span id="projectnumber">0.9.5</span>
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.5 -->
<div id="navrow1" class="tabs">
<ul class="tablist">
<li><a href="index.html"><span>Main&#160;Page</span></a></li>
<li><a href="pages.html"><span>Related&#160;Pages</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="files.html"><span>Files</span></a></li>
</ul>
</div>
</div><!-- top -->
<div class="header">
<div class="summary">
<a href="#func-members">Functions</a> </div>
<div class="headertitle">
<div class="title">GLM_GTX_bit<div class="ingroups"><a class="el" href="a00165.html">GTX Extensions (Experimental)</a></div></div> </div>
</div><!--header-->
<div class="contents">
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
Functions</h2></td></tr>
<tr class="memitem:ga24cad0069f9a0450abd80b3e89501adf"><td class="memItemLeft" align="right" valign="top">GLM_FUNC_DECL int16&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00186.html#ga24cad0069f9a0450abd80b3e89501adf">bitfieldInterleave</a> (int8 x, int8 y)</td></tr>
<tr class="separator:ga24cad0069f9a0450abd80b3e89501adf"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga9a4976a529aec2cee56525e1165da484"><td class="memItemLeft" align="right" valign="top">GLM_FUNC_DECL uint16&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00186.html#ga9a4976a529aec2cee56525e1165da484">bitfieldInterleave</a> (uint8 x, uint8 y)</td></tr>
<tr class="separator:ga9a4976a529aec2cee56525e1165da484"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gac51c33a394593f0631fa3aa5bb778809"><td class="memItemLeft" align="right" valign="top">GLM_FUNC_DECL int32&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00186.html#gac51c33a394593f0631fa3aa5bb778809">bitfieldInterleave</a> (int16 x, int16 y)</td></tr>
<tr class="separator:gac51c33a394593f0631fa3aa5bb778809"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga94f3646a5667f4be56f8dcf3310e963f"><td class="memItemLeft" align="right" valign="top">GLM_FUNC_DECL uint32&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00186.html#ga94f3646a5667f4be56f8dcf3310e963f">bitfieldInterleave</a> (uint16 x, uint16 y)</td></tr>
<tr class="separator:ga94f3646a5667f4be56f8dcf3310e963f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaebb756a24a0784e3d6fba8bd011ab77a"><td class="memItemLeft" align="right" valign="top">GLM_FUNC_DECL int64&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00186.html#gaebb756a24a0784e3d6fba8bd011ab77a">bitfieldInterleave</a> (int32 x, int32 y)</td></tr>
<tr class="separator:gaebb756a24a0784e3d6fba8bd011ab77a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga2f1e2b3fe699e7d897ae38b2115ddcbd"><td class="memItemLeft" align="right" valign="top">GLM_FUNC_DECL uint64&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00186.html#ga2f1e2b3fe699e7d897ae38b2115ddcbd">bitfieldInterleave</a> (uint32 x, uint32 y)</td></tr>
<tr class="separator:ga2f1e2b3fe699e7d897ae38b2115ddcbd"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga8fdb724dccd4a07d57efc01147102137"><td class="memItemLeft" align="right" valign="top">GLM_FUNC_DECL int32&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00186.html#ga8fdb724dccd4a07d57efc01147102137">bitfieldInterleave</a> (int8 x, int8 y, int8 z)</td></tr>
<tr class="separator:ga8fdb724dccd4a07d57efc01147102137"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga9fc2a0dd5dcf8b00e113f272a5feca93"><td class="memItemLeft" align="right" valign="top">GLM_FUNC_DECL uint32&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00186.html#ga9fc2a0dd5dcf8b00e113f272a5feca93">bitfieldInterleave</a> (uint8 x, uint8 y, uint8 z)</td></tr>
<tr class="separator:ga9fc2a0dd5dcf8b00e113f272a5feca93"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaa901c36a842fa5d126ea650549f17b24"><td class="memItemLeft" align="right" valign="top">GLM_FUNC_DECL int64&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00186.html#gaa901c36a842fa5d126ea650549f17b24">bitfieldInterleave</a> (int16 x, int16 y, int16 z)</td></tr>
<tr class="separator:gaa901c36a842fa5d126ea650549f17b24"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga3afd6d38881fe3948c53d4214d2197fd"><td class="memItemLeft" align="right" valign="top">GLM_FUNC_DECL uint64&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00186.html#ga3afd6d38881fe3948c53d4214d2197fd">bitfieldInterleave</a> (uint16 x, uint16 y, uint16 z)</td></tr>
<tr class="separator:ga3afd6d38881fe3948c53d4214d2197fd"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gad2075d96a6640121edaa98ea534102ca"><td class="memItemLeft" align="right" valign="top">GLM_FUNC_DECL int64&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00186.html#gad2075d96a6640121edaa98ea534102ca">bitfieldInterleave</a> (int32 x, int32 y, int32 z)</td></tr>
<tr class="separator:gad2075d96a6640121edaa98ea534102ca"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gab19fbc739fc0cf7247978602c36f7da8"><td class="memItemLeft" align="right" valign="top">GLM_FUNC_DECL uint64&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00186.html#gab19fbc739fc0cf7247978602c36f7da8">bitfieldInterleave</a> (uint32 x, uint32 y, uint32 z)</td></tr>
<tr class="separator:gab19fbc739fc0cf7247978602c36f7da8"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga8a44ae22f5c953b296c42d067dccbe6d"><td class="memItemLeft" align="right" valign="top">GLM_FUNC_DECL int32&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00186.html#ga8a44ae22f5c953b296c42d067dccbe6d">bitfieldInterleave</a> (int8 x, int8 y, int8 z, int8 w)</td></tr>
<tr class="separator:ga8a44ae22f5c953b296c42d067dccbe6d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga14bb274d54a3c26f4919dd7ed0dd0c36"><td class="memItemLeft" align="right" valign="top">GLM_FUNC_DECL uint32&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00186.html#ga14bb274d54a3c26f4919dd7ed0dd0c36">bitfieldInterleave</a> (uint8 x, uint8 y, uint8 z, uint8 w)</td></tr>
<tr class="separator:ga14bb274d54a3c26f4919dd7ed0dd0c36"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga180a63161e1319fbd5a53c84d0429c7a"><td class="memItemLeft" align="right" valign="top">GLM_FUNC_DECL int64&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00186.html#ga180a63161e1319fbd5a53c84d0429c7a">bitfieldInterleave</a> (int16 x, int16 y, int16 z, int16 w)</td></tr>
<tr class="separator:ga180a63161e1319fbd5a53c84d0429c7a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gafca8768671a14c8016facccb66a89f26"><td class="memItemLeft" align="right" valign="top">GLM_FUNC_DECL uint64&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00186.html#gafca8768671a14c8016facccb66a89f26">bitfieldInterleave</a> (uint16 x, uint16 y, uint16 z, uint16 w)</td></tr>
<tr class="separator:gafca8768671a14c8016facccb66a89f26"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga2d3939fbf96aa54cb2fd3461a60aba02"><td class="memTemplParams" colspan="2">template&lt;typename genType &gt; </td></tr>
<tr class="memitem:ga2d3939fbf96aa54cb2fd3461a60aba02"><td class="memTemplItemLeft" align="right" valign="top">GLM_DEPRECATED GLM_FUNC_DECL <br class="typebreak"/>
genType&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00186.html#ga2d3939fbf96aa54cb2fd3461a60aba02">bitRevert</a> (genType const &amp;value)</td></tr>
<tr class="separator:ga2d3939fbf96aa54cb2fd3461a60aba02"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga32c0a5149152a9aa75afafe81b19be53"><td class="memTemplParams" colspan="2">template&lt;typename genType &gt; </td></tr>
<tr class="memitem:ga32c0a5149152a9aa75afafe81b19be53"><td class="memTemplItemLeft" align="right" valign="top">GLM_FUNC_DECL genType&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00186.html#ga32c0a5149152a9aa75afafe81b19be53">bitRotateLeft</a> (genType const &amp;In, std::size_t Shift)</td></tr>
<tr class="separator:ga32c0a5149152a9aa75afafe81b19be53"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaf999dbfe97a5be5ea68841a58cf89a4a"><td class="memTemplParams" colspan="2">template&lt;typename genType &gt; </td></tr>
<tr class="memitem:gaf999dbfe97a5be5ea68841a58cf89a4a"><td class="memTemplItemLeft" align="right" valign="top">GLM_FUNC_DECL genType&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00186.html#gaf999dbfe97a5be5ea68841a58cf89a4a">bitRotateRight</a> (genType const &amp;In, std::size_t Shift)</td></tr>
<tr class="separator:gaf999dbfe97a5be5ea68841a58cf89a4a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gafac2a9e0ef0d5d2fc4e569bff2b2f452"><td class="memTemplParams" colspan="2">template&lt;typename genIUType &gt; </td></tr>
<tr class="memitem:gafac2a9e0ef0d5d2fc4e569bff2b2f452"><td class="memTemplItemLeft" align="right" valign="top">GLM_FUNC_DECL genIUType&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00186.html#gafac2a9e0ef0d5d2fc4e569bff2b2f452">fillBitfieldWithOne</a> (genIUType const &amp;Value, int const &amp;FromBit, int const &amp;ToBit)</td></tr>
<tr class="separator:gafac2a9e0ef0d5d2fc4e569bff2b2f452"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga0c514d45387003260783ba6a8a4f3285"><td class="memTemplParams" colspan="2">template&lt;typename genIUType &gt; </td></tr>
<tr class="memitem:ga0c514d45387003260783ba6a8a4f3285"><td class="memTemplItemLeft" align="right" valign="top">GLM_FUNC_DECL genIUType&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00186.html#ga0c514d45387003260783ba6a8a4f3285">fillBitfieldWithZero</a> (genIUType const &amp;Value, int const &amp;FromBit, int const &amp;ToBit)</td></tr>
<tr class="separator:ga0c514d45387003260783ba6a8a4f3285"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga9621840252c293918780bc3890374b86"><td class="memTemplParams" colspan="2">template&lt;typename genType &gt; </td></tr>
<tr class="memitem:ga9621840252c293918780bc3890374b86"><td class="memTemplItemLeft" align="right" valign="top">GLM_FUNC_DECL genType&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00186.html#ga9621840252c293918780bc3890374b86">highestBitValue</a> (genType const &amp;value)</td></tr>
<tr class="separator:ga9621840252c293918780bc3890374b86"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga5ddca7546d8be35992eedd3411842545"><td class="memTemplParams" colspan="2">template&lt;typename genType &gt; </td></tr>
<tr class="memitem:ga5ddca7546d8be35992eedd3411842545"><td class="memTemplItemLeft" align="right" valign="top">GLM_FUNC_DECL bool&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00186.html#ga5ddca7546d8be35992eedd3411842545">isPowerOfTwo</a> (genType const &amp;value)</td></tr>
<tr class="separator:ga5ddca7546d8be35992eedd3411842545"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga79f1482a09c91f785e7e0ea8aed2b20e"><td class="memTemplParams" colspan="2">template&lt;typename genIType &gt; </td></tr>
<tr class="memitem:ga79f1482a09c91f785e7e0ea8aed2b20e"><td class="memTemplItemLeft" align="right" valign="top">GLM_FUNC_DECL genIType&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00186.html#ga79f1482a09c91f785e7e0ea8aed2b20e">mask</a> (genIType const &amp;count)</td></tr>
<tr class="separator:ga79f1482a09c91f785e7e0ea8aed2b20e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaa49786cf3f8a1f65de6e70b6088a811e"><td class="memTemplParams" colspan="2">template&lt;typename genType &gt; </td></tr>
<tr class="memitem:gaa49786cf3f8a1f65de6e70b6088a811e"><td class="memTemplItemLeft" align="right" valign="top">GLM_FUNC_DECL genType&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00186.html#gaa49786cf3f8a1f65de6e70b6088a811e">powerOfTwoAbove</a> (genType const &amp;value)</td></tr>
<tr class="separator:gaa49786cf3f8a1f65de6e70b6088a811e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaeceaea338213cbff7a275460e35e8d0c"><td class="memTemplParams" colspan="2">template&lt;typename genType &gt; </td></tr>
<tr class="memitem:gaeceaea338213cbff7a275460e35e8d0c"><td class="memTemplItemLeft" align="right" valign="top">GLM_FUNC_DECL genType&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00186.html#gaeceaea338213cbff7a275460e35e8d0c">powerOfTwoBelow</a> (genType const &amp;value)</td></tr>
<tr class="separator:gaeceaea338213cbff7a275460e35e8d0c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga9e68299f4ca0cd6674efbee62d425b95"><td class="memTemplParams" colspan="2">template&lt;typename genType &gt; </td></tr>
<tr class="memitem:ga9e68299f4ca0cd6674efbee62d425b95"><td class="memTemplItemLeft" align="right" valign="top">GLM_FUNC_DECL genType&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00186.html#ga9e68299f4ca0cd6674efbee62d425b95">powerOfTwoNearest</a> (genType const &amp;value)</td></tr>
<tr class="separator:ga9e68299f4ca0cd6674efbee62d425b95"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<p>Allow to perform bit operations on integer values. </p>
<p>&lt;<a class="el" href="a00012.html" title="OpenGL Mathematics (glm.g-truc.net) ">glm/gtx/bit.hpp</a>&gt; need to be included to use these functionalities. </p>
<h2 class="groupheader">Function Documentation</h2>
<a class="anchor" id="ga24cad0069f9a0450abd80b3e89501adf"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">GLM_FUNC_DECL int16 glm::bitfieldInterleave </td>
<td>(</td>
<td class="paramtype">int8&#160;</td>
<td class="paramname"><em>x</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">int8&#160;</td>
<td class="paramname"><em>y</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Interleaves the bits of x and y. </p>
<p>The first bit is the first bit of x followed by the first bit of y. The other bits are interleaved following the previous sequence.</p>
<dl class="section see"><dt>See Also</dt><dd><a class="el" href="a00186.html" title="Allow to perform bit operations on integer values. ">GLM_GTX_bit</a> </dd></dl>
</div>
</div>
<a class="anchor" id="ga9a4976a529aec2cee56525e1165da484"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">GLM_FUNC_DECL uint16 glm::bitfieldInterleave </td>
<td>(</td>
<td class="paramtype">uint8&#160;</td>
<td class="paramname"><em>x</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">uint8&#160;</td>
<td class="paramname"><em>y</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Interleaves the bits of x and y. </p>
<p>The first bit is the first bit of x followed by the first bit of y. The other bits are interleaved following the previous sequence.</p>
<dl class="section see"><dt>See Also</dt><dd><a class="el" href="a00186.html" title="Allow to perform bit operations on integer values. ">GLM_GTX_bit</a> </dd></dl>
</div>
</div>
<a class="anchor" id="gac51c33a394593f0631fa3aa5bb778809"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">GLM_FUNC_DECL int32 glm::bitfieldInterleave </td>
<td>(</td>
<td class="paramtype">int16&#160;</td>
<td class="paramname"><em>x</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">int16&#160;</td>
<td class="paramname"><em>y</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Interleaves the bits of x and y. </p>
<p>The first bit is the first bit of x followed by the first bit of y. The other bits are interleaved following the previous sequence.</p>
<dl class="section see"><dt>See Also</dt><dd><a class="el" href="a00186.html" title="Allow to perform bit operations on integer values. ">GLM_GTX_bit</a> </dd></dl>
</div>
</div>
<a class="anchor" id="ga94f3646a5667f4be56f8dcf3310e963f"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">GLM_FUNC_DECL uint32 glm::bitfieldInterleave </td>
<td>(</td>
<td class="paramtype">uint16&#160;</td>
<td class="paramname"><em>x</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">uint16&#160;</td>
<td class="paramname"><em>y</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Interleaves the bits of x and y. </p>
<p>The first bit is the first bit of x followed by the first bit of y. The other bits are interleaved following the previous sequence.</p>
<dl class="section see"><dt>See Also</dt><dd><a class="el" href="a00186.html" title="Allow to perform bit operations on integer values. ">GLM_GTX_bit</a> </dd></dl>
</div>
</div>
<a class="anchor" id="gaebb756a24a0784e3d6fba8bd011ab77a"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">GLM_FUNC_DECL int64 glm::bitfieldInterleave </td>
<td>(</td>
<td class="paramtype">int32&#160;</td>
<td class="paramname"><em>x</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">int32&#160;</td>
<td class="paramname"><em>y</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Interleaves the bits of x and y. </p>
<p>The first bit is the first bit of x followed by the first bit of y. The other bits are interleaved following the previous sequence.</p>
<dl class="section see"><dt>See Also</dt><dd><a class="el" href="a00186.html" title="Allow to perform bit operations on integer values. ">GLM_GTX_bit</a> </dd></dl>
</div>
</div>
<a class="anchor" id="ga2f1e2b3fe699e7d897ae38b2115ddcbd"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">GLM_FUNC_DECL uint64 glm::bitfieldInterleave </td>
<td>(</td>
<td class="paramtype">uint32&#160;</td>
<td class="paramname"><em>x</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">uint32&#160;</td>
<td class="paramname"><em>y</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Interleaves the bits of x and y. </p>
<p>The first bit is the first bit of x followed by the first bit of y. The other bits are interleaved following the previous sequence.</p>
<dl class="section see"><dt>See Also</dt><dd><a class="el" href="a00186.html" title="Allow to perform bit operations on integer values. ">GLM_GTX_bit</a> </dd></dl>
</div>
</div>
<a class="anchor" id="ga8fdb724dccd4a07d57efc01147102137"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">GLM_FUNC_DECL int32 glm::bitfieldInterleave </td>
<td>(</td>
<td class="paramtype">int8&#160;</td>
<td class="paramname"><em>x</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">int8&#160;</td>
<td class="paramname"><em>y</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">int8&#160;</td>
<td class="paramname"><em>z</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Interleaves the bits of x, y and z. </p>
<p>The first bit is the first bit of x followed by the first bit of y and the first bit of z. The other bits are interleaved following the previous sequence.</p>
<dl class="section see"><dt>See Also</dt><dd><a class="el" href="a00186.html" title="Allow to perform bit operations on integer values. ">GLM_GTX_bit</a> </dd></dl>
</div>
</div>
<a class="anchor" id="ga9fc2a0dd5dcf8b00e113f272a5feca93"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">GLM_FUNC_DECL uint32 glm::bitfieldInterleave </td>
<td>(</td>
<td class="paramtype">uint8&#160;</td>
<td class="paramname"><em>x</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">uint8&#160;</td>
<td class="paramname"><em>y</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">uint8&#160;</td>
<td class="paramname"><em>z</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Interleaves the bits of x, y and z. </p>
<p>The first bit is the first bit of x followed by the first bit of y and the first bit of z. The other bits are interleaved following the previous sequence.</p>
<dl class="section see"><dt>See Also</dt><dd><a class="el" href="a00186.html" title="Allow to perform bit operations on integer values. ">GLM_GTX_bit</a> </dd></dl>
</div>
</div>
<a class="anchor" id="gaa901c36a842fa5d126ea650549f17b24"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">GLM_FUNC_DECL int64 glm::bitfieldInterleave </td>
<td>(</td>
<td class="paramtype">int16&#160;</td>
<td class="paramname"><em>x</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">int16&#160;</td>
<td class="paramname"><em>y</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">int16&#160;</td>
<td class="paramname"><em>z</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Interleaves the bits of x, y and z. </p>
<p>The first bit is the first bit of x followed by the first bit of y and the first bit of z. The other bits are interleaved following the previous sequence.</p>
<dl class="section see"><dt>See Also</dt><dd><a class="el" href="a00186.html" title="Allow to perform bit operations on integer values. ">GLM_GTX_bit</a> </dd></dl>
</div>
</div>
<a class="anchor" id="ga3afd6d38881fe3948c53d4214d2197fd"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">GLM_FUNC_DECL uint64 glm::bitfieldInterleave </td>
<td>(</td>
<td class="paramtype">uint16&#160;</td>
<td class="paramname"><em>x</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">uint16&#160;</td>
<td class="paramname"><em>y</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">uint16&#160;</td>
<td class="paramname"><em>z</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Interleaves the bits of x, y and z. </p>
<p>The first bit is the first bit of x followed by the first bit of y and the first bit of z. The other bits are interleaved following the previous sequence.</p>
<dl class="section see"><dt>See Also</dt><dd><a class="el" href="a00186.html" title="Allow to perform bit operations on integer values. ">GLM_GTX_bit</a> </dd></dl>
</div>
</div>
<a class="anchor" id="gad2075d96a6640121edaa98ea534102ca"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">GLM_FUNC_DECL int64 glm::bitfieldInterleave </td>
<td>(</td>
<td class="paramtype">int32&#160;</td>
<td class="paramname"><em>x</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">int32&#160;</td>
<td class="paramname"><em>y</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">int32&#160;</td>
<td class="paramname"><em>z</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Interleaves the bits of x, y and z. </p>
<p>The first bit is the first bit of x followed by the first bit of y and the first bit of z. The other bits are interleaved following the previous sequence.</p>
<dl class="section see"><dt>See Also</dt><dd><a class="el" href="a00186.html" title="Allow to perform bit operations on integer values. ">GLM_GTX_bit</a> </dd></dl>
</div>
</div>
<a class="anchor" id="gab19fbc739fc0cf7247978602c36f7da8"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">GLM_FUNC_DECL uint64 glm::bitfieldInterleave </td>
<td>(</td>
<td class="paramtype">uint32&#160;</td>
<td class="paramname"><em>x</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">uint32&#160;</td>
<td class="paramname"><em>y</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">uint32&#160;</td>
<td class="paramname"><em>z</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Interleaves the bits of x, y and z. </p>
<p>The first bit is the first bit of x followed by the first bit of y and the first bit of z. The other bits are interleaved following the previous sequence.</p>
<dl class="section see"><dt>See Also</dt><dd><a class="el" href="a00186.html" title="Allow to perform bit operations on integer values. ">GLM_GTX_bit</a> </dd></dl>
</div>
</div>
<a class="anchor" id="ga8a44ae22f5c953b296c42d067dccbe6d"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">GLM_FUNC_DECL int32 glm::bitfieldInterleave </td>
<td>(</td>
<td class="paramtype">int8&#160;</td>
<td class="paramname"><em>x</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">int8&#160;</td>
<td class="paramname"><em>y</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">int8&#160;</td>
<td class="paramname"><em>z</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">int8&#160;</td>
<td class="paramname"><em>w</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Interleaves the bits of x, y, z and w. </p>
<p>The first bit is the first bit of x followed by the first bit of y, the first bit of z and finally the first bit of w. The other bits are interleaved following the previous sequence.</p>
<dl class="section see"><dt>See Also</dt><dd><a class="el" href="a00186.html" title="Allow to perform bit operations on integer values. ">GLM_GTX_bit</a> </dd></dl>
</div>
</div>
<a class="anchor" id="ga14bb274d54a3c26f4919dd7ed0dd0c36"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">GLM_FUNC_DECL uint32 glm::bitfieldInterleave </td>
<td>(</td>
<td class="paramtype">uint8&#160;</td>
<td class="paramname"><em>x</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">uint8&#160;</td>
<td class="paramname"><em>y</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">uint8&#160;</td>
<td class="paramname"><em>z</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">uint8&#160;</td>
<td class="paramname"><em>w</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Interleaves the bits of x, y, z and w. </p>
<p>The first bit is the first bit of x followed by the first bit of y, the first bit of z and finally the first bit of w. The other bits are interleaved following the previous sequence.</p>
<dl class="section see"><dt>See Also</dt><dd><a class="el" href="a00186.html" title="Allow to perform bit operations on integer values. ">GLM_GTX_bit</a> </dd></dl>
</div>
</div>
<a class="anchor" id="ga180a63161e1319fbd5a53c84d0429c7a"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">GLM_FUNC_DECL int64 glm::bitfieldInterleave </td>
<td>(</td>
<td class="paramtype">int16&#160;</td>
<td class="paramname"><em>x</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">int16&#160;</td>
<td class="paramname"><em>y</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">int16&#160;</td>
<td class="paramname"><em>z</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">int16&#160;</td>
<td class="paramname"><em>w</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Interleaves the bits of x, y, z and w. </p>
<p>The first bit is the first bit of x followed by the first bit of y, the first bit of z and finally the first bit of w. The other bits are interleaved following the previous sequence.</p>
<dl class="section see"><dt>See Also</dt><dd><a class="el" href="a00186.html" title="Allow to perform bit operations on integer values. ">GLM_GTX_bit</a> </dd></dl>
</div>
</div>
<a class="anchor" id="gafca8768671a14c8016facccb66a89f26"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">GLM_FUNC_DECL uint64 glm::bitfieldInterleave </td>
<td>(</td>
<td class="paramtype">uint16&#160;</td>
<td class="paramname"><em>x</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">uint16&#160;</td>
<td class="paramname"><em>y</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">uint16&#160;</td>
<td class="paramname"><em>z</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">uint16&#160;</td>
<td class="paramname"><em>w</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Interleaves the bits of x, y, z and w. </p>
<p>The first bit is the first bit of x followed by the first bit of y, the first bit of z and finally the first bit of w. The other bits are interleaved following the previous sequence.</p>
<dl class="section see"><dt>See Also</dt><dd><a class="el" href="a00186.html" title="Allow to perform bit operations on integer values. ">GLM_GTX_bit</a> </dd></dl>
</div>
</div>
<a class="anchor" id="ga2d3939fbf96aa54cb2fd3461a60aba02"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">GLM_DEPRECATED GLM_FUNC_DECL genType glm::bitRevert </td>
<td>(</td>
<td class="paramtype">genType const &amp;&#160;</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>
<dl class="section see"><dt>See Also</dt><dd><a class="el" href="a00186.html" title="Allow to perform bit operations on integer values. ">GLM_GTX_bit</a> </dd></dl>
</div>
</div>
<a class="anchor" id="ga32c0a5149152a9aa75afafe81b19be53"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">GLM_FUNC_DECL genType glm::bitRotateLeft </td>
<td>(</td>
<td class="paramtype">genType const &amp;&#160;</td>
<td class="paramname"><em>In</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">std::size_t&#160;</td>
<td class="paramname"><em>Shift</em>&#160;</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>
<dl class="section see"><dt>See Also</dt><dd><a class="el" href="a00186.html" title="Allow to perform bit operations on integer values. ">GLM_GTX_bit</a> </dd></dl>
</div>
</div>
<a class="anchor" id="gaf999dbfe97a5be5ea68841a58cf89a4a"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">GLM_FUNC_DECL genType glm::bitRotateRight </td>
<td>(</td>
<td class="paramtype">genType const &amp;&#160;</td>
<td class="paramname"><em>In</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">std::size_t&#160;</td>
<td class="paramname"><em>Shift</em>&#160;</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>
<dl class="section see"><dt>See Also</dt><dd><a class="el" href="a00186.html" title="Allow to perform bit operations on integer values. ">GLM_GTX_bit</a> </dd></dl>
</div>
</div>
<a class="anchor" id="gafac2a9e0ef0d5d2fc4e569bff2b2f452"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">GLM_FUNC_DECL genIUType glm::fillBitfieldWithOne </td>
<td>(</td>
<td class="paramtype">genIUType const &amp;&#160;</td>
<td class="paramname"><em>Value</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">int const &amp;&#160;</td>
<td class="paramname"><em>FromBit</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">int const &amp;&#160;</td>
<td class="paramname"><em>ToBit</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Set to 1 a range of bits. </p>
<dl class="section see"><dt>See Also</dt><dd><a class="el" href="a00186.html" title="Allow to perform bit operations on integer values. ">GLM_GTX_bit</a> </dd></dl>
</div>
</div>
<a class="anchor" id="ga0c514d45387003260783ba6a8a4f3285"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">GLM_FUNC_DECL genIUType glm::fillBitfieldWithZero </td>
<td>(</td>
<td class="paramtype">genIUType const &amp;&#160;</td>
<td class="paramname"><em>Value</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">int const &amp;&#160;</td>
<td class="paramname"><em>FromBit</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">int const &amp;&#160;</td>
<td class="paramname"><em>ToBit</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Set to 0 a range of bits. </p>
<dl class="section see"><dt>See Also</dt><dd><a class="el" href="a00186.html" title="Allow to perform bit operations on integer values. ">GLM_GTX_bit</a> </dd></dl>
</div>
</div>
<a class="anchor" id="ga9621840252c293918780bc3890374b86"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">GLM_FUNC_DECL genType glm::highestBitValue </td>
<td>(</td>
<td class="paramtype">genType const &amp;&#160;</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>
<dl class="section see"><dt>See Also</dt><dd><a class="el" href="a00186.html" title="Allow to perform bit operations on integer values. ">GLM_GTX_bit</a> </dd></dl>
</div>
</div>
<a class="anchor" id="ga5ddca7546d8be35992eedd3411842545"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">GLM_FUNC_DECL bool glm::isPowerOfTwo </td>
<td>(</td>
<td class="paramtype">genType const &amp;&#160;</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>
<dl class="section see"><dt>See Also</dt><dd><a class="el" href="a00186.html" title="Allow to perform bit operations on integer values. ">GLM_GTX_bit</a> </dd></dl>
</div>
</div>
<a class="anchor" id="ga79f1482a09c91f785e7e0ea8aed2b20e"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">GLM_FUNC_DECL genIType glm::mask </td>
<td>(</td>
<td class="paramtype">genIType const &amp;&#160;</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. </p>
<dl class="section see"><dt>See Also</dt><dd><a class="el" href="a00186.html" title="Allow to perform bit operations on integer values. ">GLM_GTX_bit</a> </dd></dl>
</div>
</div>
<a class="anchor" id="gaa49786cf3f8a1f65de6e70b6088a811e"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">GLM_FUNC_DECL genType glm::powerOfTwoAbove </td>
<td>(</td>
<td class="paramtype">genType const &amp;&#160;</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>
<dl class="section see"><dt>See Also</dt><dd><a class="el" href="a00186.html" title="Allow to perform bit operations on integer values. ">GLM_GTX_bit</a> </dd></dl>
</div>
</div>
<a class="anchor" id="gaeceaea338213cbff7a275460e35e8d0c"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">GLM_FUNC_DECL genType glm::powerOfTwoBelow </td>
<td>(</td>
<td class="paramtype">genType const &amp;&#160;</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>
<dl class="section see"><dt>See Also</dt><dd><a class="el" href="a00186.html" title="Allow to perform bit operations on integer values. ">GLM_GTX_bit</a> </dd></dl>
</div>
</div>
<a class="anchor" id="ga9e68299f4ca0cd6674efbee62d425b95"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">GLM_FUNC_DECL genType glm::powerOfTwoNearest </td>
<td>(</td>
<td class="paramtype">genType const &amp;&#160;</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>
<dl class="section see"><dt>See Also</dt><dd><a class="el" href="a00186.html" title="Allow to perform bit operations on integer values. ">GLM_GTX_bit</a> </dd></dl>
</div>
</div>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.5
</small></address>
</body>
</html>