2
0
Christophe 1 жил өмнө
parent
commit
33b0eb9fa3
100 өөрчлөгдсөн 7223 нэмэгдсэн , 17884 устгасан
  1. 0 493
      doc/api/a00001_source.html
  2. 110 128
      doc/api/a00002.html
  3. 197 61
      doc/api/a00002_source.html
  4. 0 182
      doc/api/a00003_source.html
  5. 0 905
      doc/api/a00004_source.html
  6. 414 720
      doc/api/a00005_source.html
  7. 0 262
      doc/api/a00006_source.html
  8. 43 94
      doc/api/a00008_source.html
  9. 0 212
      doc/api/a00009_source.html
  10. 0 133
      doc/api/a00010_source.html
  11. 102 78
      doc/api/a00011_source.html
  12. 0 150
      doc/api/a00013_source.html
  13. 826 81
      doc/api/a00014_source.html
  14. 0 276
      doc/api/a00015_source.html
  15. 0 139
      doc/api/a00016_source.html
  16. 703 222
      doc/api/a00017_source.html
  17. 0 145
      doc/api/a00018_source.html
  18. 0 150
      doc/api/a00019_source.html
  19. 182 69
      doc/api/a00020_source.html
  20. 0 224
      doc/api/a00021_source.html
  21. 0 317
      doc/api/a00022_source.html
  22. 71 194
      doc/api/a00023_source.html
  23. 0 132
      doc/api/a00024_source.html
  24. 0 380
      doc/api/a00025_source.html
  25. 0 143
      doc/api/a00026.html
  26. 51 87
      doc/api/a00026_source.html
  27. 0 108
      doc/api/a00027.html
  28. 0 449
      doc/api/a00027_source.html
  29. 0 127
      doc/api/a00028_source.html
  30. 252 159
      doc/api/a00029_source.html
  31. 0 121
      doc/api/a00030.html
  32. 0 125
      doc/api/a00030_source.html
  33. 0 161
      doc/api/a00031_source.html
  34. 1171 94
      doc/api/a00032_source.html
  35. 0 152
      doc/api/a00033_source.html
  36. 0 136
      doc/api/a00034_source.html
  37. 89 1483
      doc/api/a00035_source.html
  38. 0 152
      doc/api/a00036_source.html
  39. 0 108
      doc/api/a00037.html
  40. 0 154
      doc/api/a00037_source.html
  41. 37 76
      doc/api/a00038_source.html
  42. 0 134
      doc/api/a00039_source.html
  43. 0 109
      doc/api/a00040.html
  44. 24 63
      doc/api/a00041.html
  45. 198 73
      doc/api/a00041_source.html
  46. 0 149
      doc/api/a00042_source.html
  47. 0 185
      doc/api/a00043_source.html
  48. 24 75
      doc/api/a00044.html
  49. 181 108
      doc/api/a00044_source.html
  50. 0 114
      doc/api/a00045.html
  51. 0 132
      doc/api/a00046_source.html
  52. 33 38
      doc/api/a00047.html
  53. 183 2455
      doc/api/a00047_source.html
  54. 0 108
      doc/api/a00048.html
  55. 0 110
      doc/api/a00048_source.html
  56. 0 108
      doc/api/a00049.html
  57. 0 110
      doc/api/a00049_source.html
  58. 24 42
      doc/api/a00050.html
  59. 188 49
      doc/api/a00050_source.html
  60. 0 108
      doc/api/a00051.html
  61. 0 110
      doc/api/a00051_source.html
  62. 0 108
      doc/api/a00052.html
  63. 0 109
      doc/api/a00052_source.html
  64. 24 42
      doc/api/a00053.html
  65. 204 48
      doc/api/a00053_source.html
  66. 0 108
      doc/api/a00054.html
  67. 0 108
      doc/api/a00055.html
  68. 0 109
      doc/api/a00055_source.html
  69. 24 42
      doc/api/a00056.html
  70. 187 49
      doc/api/a00056_source.html
  71. 24 216
      doc/api/a00059.html
  72. 193 267
      doc/api/a00059_source.html
  73. 0 108
      doc/api/a00060.html
  74. 0 123
      doc/api/a00060_source.html
  75. 0 130
      doc/api/a00061_source.html
  76. 24 53
      doc/api/a00062.html
  77. 193 74
      doc/api/a00062_source.html
  78. 0 114
      doc/api/a00063_source.html
  79. 0 132
      doc/api/a00064.html
  80. 0 126
      doc/api/a00064_source.html
  81. 24 51
      doc/api/a00065.html
  82. 209 50
      doc/api/a00065_source.html
  83. 0 123
      doc/api/a00066.html
  84. 0 117
      doc/api/a00066_source.html
  85. 0 117
      doc/api/a00067.html
  86. 0 111
      doc/api/a00067_source.html
  87. 24 57
      doc/api/a00068.html
  88. 204 56
      doc/api/a00068_source.html
  89. 0 117
      doc/api/a00069.html
  90. 0 111
      doc/api/a00069_source.html
  91. 0 123
      doc/api/a00070.html
  92. 0 117
      doc/api/a00070_source.html
  93. 24 54
      doc/api/a00071.html
  94. 322 53
      doc/api/a00071_source.html
  95. 0 132
      doc/api/a00072.html
  96. 0 126
      doc/api/a00072_source.html
  97. 0 117
      doc/api/a00073.html
  98. 0 111
      doc/api/a00073_source.html
  99. 24 57
      doc/api/a00074.html
  100. 416 56
      doc/api/a00074_source.html

+ 0 - 493
doc/api/a00001_source.html

@@ -1,493 +0,0 @@
-<!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.10"/>
-<title>0.9.9 API documentation: _features.hpp Source File</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="search/search.css" rel="stylesheet" type="text/css"/>
-<script type="text/javascript" src="search/searchdata.js"></script>
-<script type="text/javascript" src="search/search.js"></script>
-<script type="text/javascript">
-  $(document).ready(function() { init_search(); });
-</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 id="projectlogo"><img alt="Logo" src="logo-mini.png"/></td>
-  <td id="projectalign" style="padding-left: 0.5em;">
-   <div id="projectname">0.9.9 API documentation
-   </div>
-  </td>
- </tr>
- </tbody>
-</table>
-</div>
-<!-- end header part -->
-<!-- Generated by Doxygen 1.8.10 -->
-<script type="text/javascript">
-var searchBox = new SearchBox("searchBox", "search",false,'Search');
-</script>
-  <div id="navrow1" class="tabs">
-    <ul class="tablist">
-      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
-      <li><a href="modules.html"><span>Modules</span></a></li>
-      <li class="current"><a href="files.html"><span>Files</span></a></li>
-      <li>
-        <div id="MSearchBox" class="MSearchBoxInactive">
-        <span class="left">
-          <img id="MSearchSelect" src="search/mag_sel.png"
-               onmouseover="return searchBox.OnSearchSelectShow()"
-               onmouseout="return searchBox.OnSearchSelectHide()"
-               alt=""/>
-          <input type="text" id="MSearchField" value="Search" accesskey="S"
-               onfocus="searchBox.OnSearchFieldFocus(true)" 
-               onblur="searchBox.OnSearchFieldFocus(false)" 
-               onkeyup="searchBox.OnSearchFieldChange(event)"/>
-          </span><span class="right">
-            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
-          </span>
-        </div>
-      </li>
-    </ul>
-  </div>
-  <div id="navrow2" class="tabs2">
-    <ul class="tablist">
-      <li><a href="files.html"><span>File&#160;List</span></a></li>
-    </ul>
-  </div>
-<!-- window showing the filter options -->
-<div id="MSearchSelectWindow"
-     onmouseover="return searchBox.OnSearchSelectShow()"
-     onmouseout="return searchBox.OnSearchSelectHide()"
-     onkeydown="return searchBox.OnSearchSelectKey(event)">
-</div>
-
-<!-- iframe showing the search results (closed by default) -->
-<div id="MSearchResultsWindow">
-<iframe src="javascript:void(0)" frameborder="0" 
-        name="MSearchResults" id="MSearchResults">
-</iframe>
-</div>
-
-<div id="nav-path" class="navpath">
-  <ul>
-<li class="navelem"><a class="el" href="dir_3a581ba30d25676e4b797b1f96d53b45.html">F:</a></li><li class="navelem"><a class="el" href="dir_9e5fe034a00e89334fd5186c3e7db156.html">G-Truc</a></li><li class="navelem"><a class="el" href="dir_d9496f0844b48bc7e53b5af8c99b9ab2.html">Source</a></li><li class="navelem"><a class="el" href="dir_a8bee7be44182a33f3820393ae0b105d.html">G-Truc</a></li><li class="navelem"><a class="el" href="dir_44e5e654415abd9ca6fdeaddaff8565e.html">glm</a></li><li class="navelem"><a class="el" href="dir_cef2d71d502cb69a9252bca2297d9549.html">glm</a></li><li class="navelem"><a class="el" href="dir_033f5edb0915b828d2c46ed4804e5503.html">detail</a></li>  </ul>
-</div>
-</div><!-- top -->
-<div class="header">
-  <div class="headertitle">
-<div class="title">_features.hpp</div>  </div>
-</div><!--header-->
-<div class="contents">
-<div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span>&#160;<span class="preprocessor">#pragma once</span></div>
-<div class="line"><a name="l00002"></a><span class="lineno">    2</span>&#160;</div>
-<div class="line"><a name="l00003"></a><span class="lineno">    3</span>&#160;<span class="comment">// #define GLM_CXX98_EXCEPTIONS</span></div>
-<div class="line"><a name="l00004"></a><span class="lineno">    4</span>&#160;<span class="comment">// #define GLM_CXX98_RTTI</span></div>
-<div class="line"><a name="l00005"></a><span class="lineno">    5</span>&#160;</div>
-<div class="line"><a name="l00006"></a><span class="lineno">    6</span>&#160;<span class="comment">// #define GLM_CXX11_RVALUE_REFERENCES</span></div>
-<div class="line"><a name="l00007"></a><span class="lineno">    7</span>&#160;<span class="comment">// Rvalue references - GCC 4.3</span></div>
-<div class="line"><a name="l00008"></a><span class="lineno">    8</span>&#160;<span class="comment">// http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2006/n2118.html</span></div>
-<div class="line"><a name="l00009"></a><span class="lineno">    9</span>&#160;</div>
-<div class="line"><a name="l00010"></a><span class="lineno">   10</span>&#160;<span class="comment">// GLM_CXX11_TRAILING_RETURN</span></div>
-<div class="line"><a name="l00011"></a><span class="lineno">   11</span>&#160;<span class="comment">// Rvalue references for *this - GCC not supported</span></div>
-<div class="line"><a name="l00012"></a><span class="lineno">   12</span>&#160;<span class="comment">// http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2007/n2439.htm</span></div>
-<div class="line"><a name="l00013"></a><span class="lineno">   13</span>&#160;</div>
-<div class="line"><a name="l00014"></a><span class="lineno">   14</span>&#160;<span class="comment">// GLM_CXX11_NONSTATIC_MEMBER_INIT</span></div>
-<div class="line"><a name="l00015"></a><span class="lineno">   15</span>&#160;<span class="comment">// Initialization of class objects by rvalues - GCC any</span></div>
-<div class="line"><a name="l00016"></a><span class="lineno">   16</span>&#160;<span class="comment">// http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2004/n1610.html</span></div>
-<div class="line"><a name="l00017"></a><span class="lineno">   17</span>&#160;</div>
-<div class="line"><a name="l00018"></a><span class="lineno">   18</span>&#160;<span class="comment">// GLM_CXX11_NONSTATIC_MEMBER_INIT</span></div>
-<div class="line"><a name="l00019"></a><span class="lineno">   19</span>&#160;<span class="comment">// Non-static data member initializers - GCC 4.7</span></div>
-<div class="line"><a name="l00020"></a><span class="lineno">   20</span>&#160;<span class="comment">// http://www.open-std.org/JTC1/SC22/WG21/docs/papers/2008/n2756.htm</span></div>
-<div class="line"><a name="l00021"></a><span class="lineno">   21</span>&#160;</div>
-<div class="line"><a name="l00022"></a><span class="lineno">   22</span>&#160;<span class="comment">// #define GLM_CXX11_VARIADIC_TEMPLATE</span></div>
-<div class="line"><a name="l00023"></a><span class="lineno">   23</span>&#160;<span class="comment">// Variadic templates - GCC 4.3</span></div>
-<div class="line"><a name="l00024"></a><span class="lineno">   24</span>&#160;<span class="comment">// http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2007/n2242.pdf</span></div>
-<div class="line"><a name="l00025"></a><span class="lineno">   25</span>&#160;</div>
-<div class="line"><a name="l00026"></a><span class="lineno">   26</span>&#160;<span class="comment">//</span></div>
-<div class="line"><a name="l00027"></a><span class="lineno">   27</span>&#160;<span class="comment">// Extending variadic template template parameters - GCC 4.4</span></div>
-<div class="line"><a name="l00028"></a><span class="lineno">   28</span>&#160;<span class="comment">// http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2008/n2555.pdf</span></div>
-<div class="line"><a name="l00029"></a><span class="lineno">   29</span>&#160;</div>
-<div class="line"><a name="l00030"></a><span class="lineno">   30</span>&#160;<span class="comment">// #define GLM_CXX11_GENERALIZED_INITIALIZERS</span></div>
-<div class="line"><a name="l00031"></a><span class="lineno">   31</span>&#160;<span class="comment">// Initializer lists - GCC 4.4</span></div>
-<div class="line"><a name="l00032"></a><span class="lineno">   32</span>&#160;<span class="comment">// http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2008/n2672.htm</span></div>
-<div class="line"><a name="l00033"></a><span class="lineno">   33</span>&#160;</div>
-<div class="line"><a name="l00034"></a><span class="lineno">   34</span>&#160;<span class="comment">// #define GLM_CXX11_STATIC_ASSERT</span></div>
-<div class="line"><a name="l00035"></a><span class="lineno">   35</span>&#160;<span class="comment">// Static assertions - GCC 4.3</span></div>
-<div class="line"><a name="l00036"></a><span class="lineno">   36</span>&#160;<span class="comment">// http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2004/n1720.html</span></div>
-<div class="line"><a name="l00037"></a><span class="lineno">   37</span>&#160;</div>
-<div class="line"><a name="l00038"></a><span class="lineno">   38</span>&#160;<span class="comment">// #define GLM_CXX11_AUTO_TYPE</span></div>
-<div class="line"><a name="l00039"></a><span class="lineno">   39</span>&#160;<span class="comment">// auto-typed variables - GCC 4.4</span></div>
-<div class="line"><a name="l00040"></a><span class="lineno">   40</span>&#160;<span class="comment">// http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2006/n1984.pdf</span></div>
-<div class="line"><a name="l00041"></a><span class="lineno">   41</span>&#160;</div>
-<div class="line"><a name="l00042"></a><span class="lineno">   42</span>&#160;<span class="comment">// #define GLM_CXX11_AUTO_TYPE</span></div>
-<div class="line"><a name="l00043"></a><span class="lineno">   43</span>&#160;<span class="comment">// Multi-declarator auto - GCC 4.4</span></div>
-<div class="line"><a name="l00044"></a><span class="lineno">   44</span>&#160;<span class="comment">// http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2004/n1737.pdf</span></div>
-<div class="line"><a name="l00045"></a><span class="lineno">   45</span>&#160;</div>
-<div class="line"><a name="l00046"></a><span class="lineno">   46</span>&#160;<span class="comment">// #define GLM_CXX11_AUTO_TYPE</span></div>
-<div class="line"><a name="l00047"></a><span class="lineno">   47</span>&#160;<span class="comment">// Removal of auto as a storage-class specifier - GCC 4.4</span></div>
-<div class="line"><a name="l00048"></a><span class="lineno">   48</span>&#160;<span class="comment">// http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2008/n2546.htm</span></div>
-<div class="line"><a name="l00049"></a><span class="lineno">   49</span>&#160;</div>
-<div class="line"><a name="l00050"></a><span class="lineno">   50</span>&#160;<span class="comment">// #define GLM_CXX11_AUTO_TYPE</span></div>
-<div class="line"><a name="l00051"></a><span class="lineno">   51</span>&#160;<span class="comment">// New function declarator syntax - GCC 4.4</span></div>
-<div class="line"><a name="l00052"></a><span class="lineno">   52</span>&#160;<span class="comment">// http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2008/n2541.htm</span></div>
-<div class="line"><a name="l00053"></a><span class="lineno">   53</span>&#160;</div>
-<div class="line"><a name="l00054"></a><span class="lineno">   54</span>&#160;<span class="comment">// #define GLM_CXX11_LAMBDAS</span></div>
-<div class="line"><a name="l00055"></a><span class="lineno">   55</span>&#160;<span class="comment">// New wording for C++0x lambdas - GCC 4.5</span></div>
-<div class="line"><a name="l00056"></a><span class="lineno">   56</span>&#160;<span class="comment">// http://www.open-std.org/JTC1/SC22/WG21/docs/papers/2009/n2927.pdf</span></div>
-<div class="line"><a name="l00057"></a><span class="lineno">   57</span>&#160;</div>
-<div class="line"><a name="l00058"></a><span class="lineno">   58</span>&#160;<span class="comment">// #define GLM_CXX11_DECLTYPE</span></div>
-<div class="line"><a name="l00059"></a><span class="lineno">   59</span>&#160;<span class="comment">// Declared type of an expression - GCC 4.3</span></div>
-<div class="line"><a name="l00060"></a><span class="lineno">   60</span>&#160;<span class="comment">// http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2007/n2343.pdf</span></div>
-<div class="line"><a name="l00061"></a><span class="lineno">   61</span>&#160;</div>
-<div class="line"><a name="l00062"></a><span class="lineno">   62</span>&#160;<span class="comment">//</span></div>
-<div class="line"><a name="l00063"></a><span class="lineno">   63</span>&#160;<span class="comment">// Right angle brackets - GCC 4.3</span></div>
-<div class="line"><a name="l00064"></a><span class="lineno">   64</span>&#160;<span class="comment">// http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2005/n1757.html</span></div>
-<div class="line"><a name="l00065"></a><span class="lineno">   65</span>&#160;</div>
-<div class="line"><a name="l00066"></a><span class="lineno">   66</span>&#160;<span class="comment">//</span></div>
-<div class="line"><a name="l00067"></a><span class="lineno">   67</span>&#160;<span class="comment">// Default template arguments for function templates    DR226   GCC 4.3</span></div>
-<div class="line"><a name="l00068"></a><span class="lineno">   68</span>&#160;<span class="comment">// http://www.open-std.org/jtc1/sc22/wg21/docs/cwg_defects.html#226</span></div>
-<div class="line"><a name="l00069"></a><span class="lineno">   69</span>&#160;</div>
-<div class="line"><a name="l00070"></a><span class="lineno">   70</span>&#160;<span class="comment">//</span></div>
-<div class="line"><a name="l00071"></a><span class="lineno">   71</span>&#160;<span class="comment">// Solving the SFINAE problem for expressions   DR339   GCC 4.4</span></div>
-<div class="line"><a name="l00072"></a><span class="lineno">   72</span>&#160;<span class="comment">// http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2008/n2634.html</span></div>
-<div class="line"><a name="l00073"></a><span class="lineno">   73</span>&#160;</div>
-<div class="line"><a name="l00074"></a><span class="lineno">   74</span>&#160;<span class="comment">// #define GLM_CXX11_ALIAS_TEMPLATE</span></div>
-<div class="line"><a name="l00075"></a><span class="lineno">   75</span>&#160;<span class="comment">// Template aliases     N2258   GCC 4.7</span></div>
-<div class="line"><a name="l00076"></a><span class="lineno">   76</span>&#160;<span class="comment">// http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2007/n2258.pdf</span></div>
-<div class="line"><a name="l00077"></a><span class="lineno">   77</span>&#160;</div>
-<div class="line"><a name="l00078"></a><span class="lineno">   78</span>&#160;<span class="comment">//</span></div>
-<div class="line"><a name="l00079"></a><span class="lineno">   79</span>&#160;<span class="comment">// Extern templates     N1987   Yes</span></div>
-<div class="line"><a name="l00080"></a><span class="lineno">   80</span>&#160;<span class="comment">// http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2006/n1987.htm</span></div>
-<div class="line"><a name="l00081"></a><span class="lineno">   81</span>&#160;</div>
-<div class="line"><a name="l00082"></a><span class="lineno">   82</span>&#160;<span class="comment">// #define GLM_CXX11_NULLPTR</span></div>
-<div class="line"><a name="l00083"></a><span class="lineno">   83</span>&#160;<span class="comment">// Null pointer constant        N2431   GCC 4.6</span></div>
-<div class="line"><a name="l00084"></a><span class="lineno">   84</span>&#160;<span class="comment">// http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2007/n2431.pdf</span></div>
-<div class="line"><a name="l00085"></a><span class="lineno">   85</span>&#160;</div>
-<div class="line"><a name="l00086"></a><span class="lineno">   86</span>&#160;<span class="comment">// #define GLM_CXX11_STRONG_ENUMS</span></div>
-<div class="line"><a name="l00087"></a><span class="lineno">   87</span>&#160;<span class="comment">// Strongly-typed enums N2347   GCC 4.4</span></div>
-<div class="line"><a name="l00088"></a><span class="lineno">   88</span>&#160;<span class="comment">// http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2007/n2347.pdf</span></div>
-<div class="line"><a name="l00089"></a><span class="lineno">   89</span>&#160;</div>
-<div class="line"><a name="l00090"></a><span class="lineno">   90</span>&#160;<span class="comment">//</span></div>
-<div class="line"><a name="l00091"></a><span class="lineno">   91</span>&#160;<span class="comment">// Forward declarations for enums       N2764   GCC 4.6</span></div>
-<div class="line"><a name="l00092"></a><span class="lineno">   92</span>&#160;<span class="comment">// http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2008/n2764.pdf</span></div>
-<div class="line"><a name="l00093"></a><span class="lineno">   93</span>&#160;</div>
-<div class="line"><a name="l00094"></a><span class="lineno">   94</span>&#160;<span class="comment">//</span></div>
-<div class="line"><a name="l00095"></a><span class="lineno">   95</span>&#160;<span class="comment">// Generalized attributes       N2761   GCC 4.8</span></div>
-<div class="line"><a name="l00096"></a><span class="lineno">   96</span>&#160;<span class="comment">// http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2008/n2761.pdf</span></div>
-<div class="line"><a name="l00097"></a><span class="lineno">   97</span>&#160;</div>
-<div class="line"><a name="l00098"></a><span class="lineno">   98</span>&#160;<span class="comment">//</span></div>
-<div class="line"><a name="l00099"></a><span class="lineno">   99</span>&#160;<span class="comment">// Generalized constant expressions     N2235   GCC 4.6</span></div>
-<div class="line"><a name="l00100"></a><span class="lineno">  100</span>&#160;<span class="comment">// http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2007/n2235.pdf</span></div>
-<div class="line"><a name="l00101"></a><span class="lineno">  101</span>&#160;</div>
-<div class="line"><a name="l00102"></a><span class="lineno">  102</span>&#160;<span class="comment">//</span></div>
-<div class="line"><a name="l00103"></a><span class="lineno">  103</span>&#160;<span class="comment">// Alignment support    N2341   GCC 4.8</span></div>
-<div class="line"><a name="l00104"></a><span class="lineno">  104</span>&#160;<span class="comment">// http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2007/n2341.pdf</span></div>
-<div class="line"><a name="l00105"></a><span class="lineno">  105</span>&#160;</div>
-<div class="line"><a name="l00106"></a><span class="lineno">  106</span>&#160;<span class="comment">// #define GLM_CXX11_DELEGATING_CONSTRUCTORS</span></div>
-<div class="line"><a name="l00107"></a><span class="lineno">  107</span>&#160;<span class="comment">// Delegating constructors      N1986   GCC 4.7</span></div>
-<div class="line"><a name="l00108"></a><span class="lineno">  108</span>&#160;<span class="comment">// http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2006/n1986.pdf</span></div>
-<div class="line"><a name="l00109"></a><span class="lineno">  109</span>&#160;</div>
-<div class="line"><a name="l00110"></a><span class="lineno">  110</span>&#160;<span class="comment">//</span></div>
-<div class="line"><a name="l00111"></a><span class="lineno">  111</span>&#160;<span class="comment">// Inheriting constructors      N2540   GCC 4.8</span></div>
-<div class="line"><a name="l00112"></a><span class="lineno">  112</span>&#160;<span class="comment">// http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2008/n2540.htm</span></div>
-<div class="line"><a name="l00113"></a><span class="lineno">  113</span>&#160;</div>
-<div class="line"><a name="l00114"></a><span class="lineno">  114</span>&#160;<span class="comment">// #define GLM_CXX11_EXPLICIT_CONVERSIONS</span></div>
-<div class="line"><a name="l00115"></a><span class="lineno">  115</span>&#160;<span class="comment">// Explicit conversion operators        N2437   GCC 4.5</span></div>
-<div class="line"><a name="l00116"></a><span class="lineno">  116</span>&#160;<span class="comment">// http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2007/n2437.pdf</span></div>
-<div class="line"><a name="l00117"></a><span class="lineno">  117</span>&#160;</div>
-<div class="line"><a name="l00118"></a><span class="lineno">  118</span>&#160;<span class="comment">//</span></div>
-<div class="line"><a name="l00119"></a><span class="lineno">  119</span>&#160;<span class="comment">// New character types  N2249   GCC 4.4</span></div>
-<div class="line"><a name="l00120"></a><span class="lineno">  120</span>&#160;<span class="comment">// http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2007/n2249.html</span></div>
-<div class="line"><a name="l00121"></a><span class="lineno">  121</span>&#160;</div>
-<div class="line"><a name="l00122"></a><span class="lineno">  122</span>&#160;<span class="comment">//</span></div>
-<div class="line"><a name="l00123"></a><span class="lineno">  123</span>&#160;<span class="comment">// Unicode string literals      N2442   GCC 4.5</span></div>
-<div class="line"><a name="l00124"></a><span class="lineno">  124</span>&#160;<span class="comment">// http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2007/n2442.htm</span></div>
-<div class="line"><a name="l00125"></a><span class="lineno">  125</span>&#160;</div>
-<div class="line"><a name="l00126"></a><span class="lineno">  126</span>&#160;<span class="comment">//</span></div>
-<div class="line"><a name="l00127"></a><span class="lineno">  127</span>&#160;<span class="comment">// Raw string literals  N2442   GCC 4.5</span></div>
-<div class="line"><a name="l00128"></a><span class="lineno">  128</span>&#160;<span class="comment">// http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2007/n2442.htm</span></div>
-<div class="line"><a name="l00129"></a><span class="lineno">  129</span>&#160;</div>
-<div class="line"><a name="l00130"></a><span class="lineno">  130</span>&#160;<span class="comment">//</span></div>
-<div class="line"><a name="l00131"></a><span class="lineno">  131</span>&#160;<span class="comment">// Universal character name literals    N2170   GCC 4.5</span></div>
-<div class="line"><a name="l00132"></a><span class="lineno">  132</span>&#160;<span class="comment">// http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2007/n2170.html</span></div>
-<div class="line"><a name="l00133"></a><span class="lineno">  133</span>&#160;</div>
-<div class="line"><a name="l00134"></a><span class="lineno">  134</span>&#160;<span class="comment">// #define GLM_CXX11_USER_LITERALS</span></div>
-<div class="line"><a name="l00135"></a><span class="lineno">  135</span>&#160;<span class="comment">// User-defined literals                N2765   GCC 4.7</span></div>
-<div class="line"><a name="l00136"></a><span class="lineno">  136</span>&#160;<span class="comment">// http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2008/n2765.pdf</span></div>
-<div class="line"><a name="l00137"></a><span class="lineno">  137</span>&#160;</div>
-<div class="line"><a name="l00138"></a><span class="lineno">  138</span>&#160;<span class="comment">//</span></div>
-<div class="line"><a name="l00139"></a><span class="lineno">  139</span>&#160;<span class="comment">// Standard Layout Types        N2342   GCC 4.5</span></div>
-<div class="line"><a name="l00140"></a><span class="lineno">  140</span>&#160;<span class="comment">// http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2007/n2342.htm</span></div>
-<div class="line"><a name="l00141"></a><span class="lineno">  141</span>&#160;</div>
-<div class="line"><a name="l00142"></a><span class="lineno">  142</span>&#160;<span class="comment">// #define GLM_CXX11_DEFAULTED_FUNCTIONS</span></div>
-<div class="line"><a name="l00143"></a><span class="lineno">  143</span>&#160;<span class="comment">// #define GLM_CXX11_DELETED_FUNCTIONS</span></div>
-<div class="line"><a name="l00144"></a><span class="lineno">  144</span>&#160;<span class="comment">// Defaulted and deleted functions      N2346   GCC 4.4</span></div>
-<div class="line"><a name="l00145"></a><span class="lineno">  145</span>&#160;<span class="comment">// http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2007/n2346.htm</span></div>
-<div class="line"><a name="l00146"></a><span class="lineno">  146</span>&#160;</div>
-<div class="line"><a name="l00147"></a><span class="lineno">  147</span>&#160;<span class="comment">//</span></div>
-<div class="line"><a name="l00148"></a><span class="lineno">  148</span>&#160;<span class="comment">// Extended friend declarations N1791   GCC 4.7</span></div>
-<div class="line"><a name="l00149"></a><span class="lineno">  149</span>&#160;<span class="comment">// http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2005/n1791.pdf</span></div>
-<div class="line"><a name="l00150"></a><span class="lineno">  150</span>&#160;</div>
-<div class="line"><a name="l00151"></a><span class="lineno">  151</span>&#160;<span class="comment">//</span></div>
-<div class="line"><a name="l00152"></a><span class="lineno">  152</span>&#160;<span class="comment">// Extending sizeof     N2253   GCC 4.4</span></div>
-<div class="line"><a name="l00153"></a><span class="lineno">  153</span>&#160;<span class="comment">// http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2007/n2253.html</span></div>
-<div class="line"><a name="l00154"></a><span class="lineno">  154</span>&#160;</div>
-<div class="line"><a name="l00155"></a><span class="lineno">  155</span>&#160;<span class="comment">// #define GLM_CXX11_INLINE_NAMESPACES</span></div>
-<div class="line"><a name="l00156"></a><span class="lineno">  156</span>&#160;<span class="comment">// Inline namespaces    N2535   GCC 4.4</span></div>
-<div class="line"><a name="l00157"></a><span class="lineno">  157</span>&#160;<span class="comment">// http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2008/n2535.htm</span></div>
-<div class="line"><a name="l00158"></a><span class="lineno">  158</span>&#160;</div>
-<div class="line"><a name="l00159"></a><span class="lineno">  159</span>&#160;<span class="comment">// #define GLM_CXX11_UNRESTRICTED_UNIONS</span></div>
-<div class="line"><a name="l00160"></a><span class="lineno">  160</span>&#160;<span class="comment">// Unrestricted unions  N2544   GCC 4.6</span></div>
-<div class="line"><a name="l00161"></a><span class="lineno">  161</span>&#160;<span class="comment">// http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2008/n2544.pdf</span></div>
-<div class="line"><a name="l00162"></a><span class="lineno">  162</span>&#160;</div>
-<div class="line"><a name="l00163"></a><span class="lineno">  163</span>&#160;<span class="comment">// #define GLM_CXX11_LOCAL_TYPE_TEMPLATE_ARGS</span></div>
-<div class="line"><a name="l00164"></a><span class="lineno">  164</span>&#160;<span class="comment">// Local and unnamed types as template arguments        N2657   GCC 4.5</span></div>
-<div class="line"><a name="l00165"></a><span class="lineno">  165</span>&#160;<span class="comment">// http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2008/n2657.htm</span></div>
-<div class="line"><a name="l00166"></a><span class="lineno">  166</span>&#160;</div>
-<div class="line"><a name="l00167"></a><span class="lineno">  167</span>&#160;<span class="comment">// #define GLM_CXX11_RANGE_FOR</span></div>
-<div class="line"><a name="l00168"></a><span class="lineno">  168</span>&#160;<span class="comment">// Range-based for      N2930   GCC 4.6</span></div>
-<div class="line"><a name="l00169"></a><span class="lineno">  169</span>&#160;<span class="comment">// http://www.open-std.org/JTC1/SC22/WG21/docs/papers/2009/n2930.html</span></div>
-<div class="line"><a name="l00170"></a><span class="lineno">  170</span>&#160;</div>
-<div class="line"><a name="l00171"></a><span class="lineno">  171</span>&#160;<span class="comment">// #define GLM_CXX11_OVERRIDE_CONTROL</span></div>
-<div class="line"><a name="l00172"></a><span class="lineno">  172</span>&#160;<span class="comment">// Explicit virtual overrides   N2928 N3206 N3272       GCC 4.7</span></div>
-<div class="line"><a name="l00173"></a><span class="lineno">  173</span>&#160;<span class="comment">// http://www.open-std.org/JTC1/SC22/WG21/docs/papers/2009/n2928.htm</span></div>
-<div class="line"><a name="l00174"></a><span class="lineno">  174</span>&#160;<span class="comment">// http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2010/n3206.htm</span></div>
-<div class="line"><a name="l00175"></a><span class="lineno">  175</span>&#160;<span class="comment">// http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2011/n3272.htm</span></div>
-<div class="line"><a name="l00176"></a><span class="lineno">  176</span>&#160;</div>
-<div class="line"><a name="l00177"></a><span class="lineno">  177</span>&#160;<span class="comment">//</span></div>
-<div class="line"><a name="l00178"></a><span class="lineno">  178</span>&#160;<span class="comment">// Minimal support for garbage collection and reachability-based leak detection N2670   No</span></div>
-<div class="line"><a name="l00179"></a><span class="lineno">  179</span>&#160;<span class="comment">// http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2008/n2670.htm</span></div>
-<div class="line"><a name="l00180"></a><span class="lineno">  180</span>&#160;</div>
-<div class="line"><a name="l00181"></a><span class="lineno">  181</span>&#160;<span class="comment">// #define GLM_CXX11_NOEXCEPT</span></div>
-<div class="line"><a name="l00182"></a><span class="lineno">  182</span>&#160;<span class="comment">// Allowing move constructors to throw [noexcept]       N3050   GCC 4.6 (core language only)</span></div>
-<div class="line"><a name="l00183"></a><span class="lineno">  183</span>&#160;<span class="comment">// http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2010/n3050.html</span></div>
-<div class="line"><a name="l00184"></a><span class="lineno">  184</span>&#160;</div>
-<div class="line"><a name="l00185"></a><span class="lineno">  185</span>&#160;<span class="comment">//</span></div>
-<div class="line"><a name="l00186"></a><span class="lineno">  186</span>&#160;<span class="comment">// Defining move special member functions       N3053   GCC 4.6</span></div>
-<div class="line"><a name="l00187"></a><span class="lineno">  187</span>&#160;<span class="comment">// http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2010/n3053.html</span></div>
-<div class="line"><a name="l00188"></a><span class="lineno">  188</span>&#160;</div>
-<div class="line"><a name="l00189"></a><span class="lineno">  189</span>&#160;<span class="comment">//</span></div>
-<div class="line"><a name="l00190"></a><span class="lineno">  190</span>&#160;<span class="comment">// Sequence points      N2239   Yes</span></div>
-<div class="line"><a name="l00191"></a><span class="lineno">  191</span>&#160;<span class="comment">// http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2007/n2239.html</span></div>
-<div class="line"><a name="l00192"></a><span class="lineno">  192</span>&#160;</div>
-<div class="line"><a name="l00193"></a><span class="lineno">  193</span>&#160;<span class="comment">//</span></div>
-<div class="line"><a name="l00194"></a><span class="lineno">  194</span>&#160;<span class="comment">// Atomic operations    N2427   GCC 4.4</span></div>
-<div class="line"><a name="l00195"></a><span class="lineno">  195</span>&#160;<span class="comment">// http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2007/n2239.html</span></div>
-<div class="line"><a name="l00196"></a><span class="lineno">  196</span>&#160;</div>
-<div class="line"><a name="l00197"></a><span class="lineno">  197</span>&#160;<span class="comment">//</span></div>
-<div class="line"><a name="l00198"></a><span class="lineno">  198</span>&#160;<span class="comment">// Strong Compare and Exchange  N2748   GCC 4.5</span></div>
-<div class="line"><a name="l00199"></a><span class="lineno">  199</span>&#160;<span class="comment">// http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2007/n2427.html</span></div>
-<div class="line"><a name="l00200"></a><span class="lineno">  200</span>&#160;</div>
-<div class="line"><a name="l00201"></a><span class="lineno">  201</span>&#160;<span class="comment">//</span></div>
-<div class="line"><a name="l00202"></a><span class="lineno">  202</span>&#160;<span class="comment">// Bidirectional Fences N2752   GCC 4.8</span></div>
-<div class="line"><a name="l00203"></a><span class="lineno">  203</span>&#160;<span class="comment">// http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2008/n2752.htm</span></div>
-<div class="line"><a name="l00204"></a><span class="lineno">  204</span>&#160;</div>
-<div class="line"><a name="l00205"></a><span class="lineno">  205</span>&#160;<span class="comment">//</span></div>
-<div class="line"><a name="l00206"></a><span class="lineno">  206</span>&#160;<span class="comment">// Memory model N2429   GCC 4.8</span></div>
-<div class="line"><a name="l00207"></a><span class="lineno">  207</span>&#160;<span class="comment">// http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2007/n2429.htm</span></div>
-<div class="line"><a name="l00208"></a><span class="lineno">  208</span>&#160;</div>
-<div class="line"><a name="l00209"></a><span class="lineno">  209</span>&#160;<span class="comment">//</span></div>
-<div class="line"><a name="l00210"></a><span class="lineno">  210</span>&#160;<span class="comment">// Data-dependency ordering: atomics and memory model   N2664   GCC 4.4</span></div>
-<div class="line"><a name="l00211"></a><span class="lineno">  211</span>&#160;<span class="comment">// http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2008/n2664.htm</span></div>
-<div class="line"><a name="l00212"></a><span class="lineno">  212</span>&#160;</div>
-<div class="line"><a name="l00213"></a><span class="lineno">  213</span>&#160;<span class="comment">//</span></div>
-<div class="line"><a name="l00214"></a><span class="lineno">  214</span>&#160;<span class="comment">// Propagating exceptions       N2179   GCC 4.4</span></div>
-<div class="line"><a name="l00215"></a><span class="lineno">  215</span>&#160;<span class="comment">// http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2007/n2179.html</span></div>
-<div class="line"><a name="l00216"></a><span class="lineno">  216</span>&#160;</div>
-<div class="line"><a name="l00217"></a><span class="lineno">  217</span>&#160;<span class="comment">//</span></div>
-<div class="line"><a name="l00218"></a><span class="lineno">  218</span>&#160;<span class="comment">// Abandoning a process and at_quick_exit       N2440   GCC 4.8</span></div>
-<div class="line"><a name="l00219"></a><span class="lineno">  219</span>&#160;<span class="comment">// http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2007/n2440.htm</span></div>
-<div class="line"><a name="l00220"></a><span class="lineno">  220</span>&#160;</div>
-<div class="line"><a name="l00221"></a><span class="lineno">  221</span>&#160;<span class="comment">//</span></div>
-<div class="line"><a name="l00222"></a><span class="lineno">  222</span>&#160;<span class="comment">// Allow atomics use in signal handlers N2547   Yes</span></div>
-<div class="line"><a name="l00223"></a><span class="lineno">  223</span>&#160;<span class="comment">// http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2008/n2547.htm</span></div>
-<div class="line"><a name="l00224"></a><span class="lineno">  224</span>&#160;</div>
-<div class="line"><a name="l00225"></a><span class="lineno">  225</span>&#160;<span class="comment">//</span></div>
-<div class="line"><a name="l00226"></a><span class="lineno">  226</span>&#160;<span class="comment">// Thread-local storage N2659   GCC 4.8</span></div>
-<div class="line"><a name="l00227"></a><span class="lineno">  227</span>&#160;<span class="comment">// http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2008/n2659.htm</span></div>
-<div class="line"><a name="l00228"></a><span class="lineno">  228</span>&#160;</div>
-<div class="line"><a name="l00229"></a><span class="lineno">  229</span>&#160;<span class="comment">//</span></div>
-<div class="line"><a name="l00230"></a><span class="lineno">  230</span>&#160;<span class="comment">// Dynamic initialization and destruction with concurrency      N2660   GCC 4.3</span></div>
-<div class="line"><a name="l00231"></a><span class="lineno">  231</span>&#160;<span class="comment">// http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2008/n2660.htm</span></div>
-<div class="line"><a name="l00232"></a><span class="lineno">  232</span>&#160;</div>
-<div class="line"><a name="l00233"></a><span class="lineno">  233</span>&#160;<span class="comment">//</span></div>
-<div class="line"><a name="l00234"></a><span class="lineno">  234</span>&#160;<span class="comment">// __func__ predefined identifier       N2340   GCC 4.3</span></div>
-<div class="line"><a name="l00235"></a><span class="lineno">  235</span>&#160;<span class="comment">// http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2007/n2340.htm</span></div>
-<div class="line"><a name="l00236"></a><span class="lineno">  236</span>&#160;</div>
-<div class="line"><a name="l00237"></a><span class="lineno">  237</span>&#160;<span class="comment">//</span></div>
-<div class="line"><a name="l00238"></a><span class="lineno">  238</span>&#160;<span class="comment">// C99 preprocessor     N1653   GCC 4.3</span></div>
-<div class="line"><a name="l00239"></a><span class="lineno">  239</span>&#160;<span class="comment">// http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2004/n1653.htm</span></div>
-<div class="line"><a name="l00240"></a><span class="lineno">  240</span>&#160;</div>
-<div class="line"><a name="l00241"></a><span class="lineno">  241</span>&#160;<span class="comment">//</span></div>
-<div class="line"><a name="l00242"></a><span class="lineno">  242</span>&#160;<span class="comment">// long long    N1811   GCC 4.3</span></div>
-<div class="line"><a name="l00243"></a><span class="lineno">  243</span>&#160;<span class="comment">// http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2005/n1811.pdf</span></div>
-<div class="line"><a name="l00244"></a><span class="lineno">  244</span>&#160;</div>
-<div class="line"><a name="l00245"></a><span class="lineno">  245</span>&#160;<span class="comment">//</span></div>
-<div class="line"><a name="l00246"></a><span class="lineno">  246</span>&#160;<span class="comment">// Extended integral types      N1988   Yes</span></div>
-<div class="line"><a name="l00247"></a><span class="lineno">  247</span>&#160;<span class="comment">// http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2006/n1988.pdf</span></div>
-<div class="line"><a name="l00248"></a><span class="lineno">  248</span>&#160;</div>
-<div class="line"><a name="l00249"></a><span class="lineno">  249</span>&#160;<span class="preprocessor">#if(GLM_COMPILER &amp; GLM_COMPILER_GCC)</span></div>
-<div class="line"><a name="l00250"></a><span class="lineno">  250</span>&#160;</div>
-<div class="line"><a name="l00251"></a><span class="lineno">  251</span>&#160;<span class="preprocessor">#       define GLM_CXX11_STATIC_ASSERT</span></div>
-<div class="line"><a name="l00252"></a><span class="lineno">  252</span>&#160;</div>
-<div class="line"><a name="l00253"></a><span class="lineno">  253</span>&#160;<span class="preprocessor">#elif(GLM_COMPILER &amp; GLM_COMPILER_CLANG)</span></div>
-<div class="line"><a name="l00254"></a><span class="lineno">  254</span>&#160;<span class="preprocessor">#       if(__has_feature(cxx_exceptions))</span></div>
-<div class="line"><a name="l00255"></a><span class="lineno">  255</span>&#160;<span class="preprocessor">#               define GLM_CXX98_EXCEPTIONS</span></div>
-<div class="line"><a name="l00256"></a><span class="lineno">  256</span>&#160;<span class="preprocessor">#       endif</span></div>
-<div class="line"><a name="l00257"></a><span class="lineno">  257</span>&#160;</div>
-<div class="line"><a name="l00258"></a><span class="lineno">  258</span>&#160;<span class="preprocessor">#       if(__has_feature(cxx_rtti))</span></div>
-<div class="line"><a name="l00259"></a><span class="lineno">  259</span>&#160;<span class="preprocessor">#               define GLM_CXX98_RTTI</span></div>
-<div class="line"><a name="l00260"></a><span class="lineno">  260</span>&#160;<span class="preprocessor">#       endif</span></div>
-<div class="line"><a name="l00261"></a><span class="lineno">  261</span>&#160;</div>
-<div class="line"><a name="l00262"></a><span class="lineno">  262</span>&#160;<span class="preprocessor">#       if(__has_feature(cxx_access_control_sfinae))</span></div>
-<div class="line"><a name="l00263"></a><span class="lineno">  263</span>&#160;<span class="preprocessor">#               define GLM_CXX11_ACCESS_CONTROL_SFINAE</span></div>
-<div class="line"><a name="l00264"></a><span class="lineno">  264</span>&#160;<span class="preprocessor">#       endif</span></div>
-<div class="line"><a name="l00265"></a><span class="lineno">  265</span>&#160;</div>
-<div class="line"><a name="l00266"></a><span class="lineno">  266</span>&#160;<span class="preprocessor">#       if(__has_feature(cxx_alias_templates))</span></div>
-<div class="line"><a name="l00267"></a><span class="lineno">  267</span>&#160;<span class="preprocessor">#               define GLM_CXX11_ALIAS_TEMPLATE</span></div>
-<div class="line"><a name="l00268"></a><span class="lineno">  268</span>&#160;<span class="preprocessor">#       endif</span></div>
-<div class="line"><a name="l00269"></a><span class="lineno">  269</span>&#160;</div>
-<div class="line"><a name="l00270"></a><span class="lineno">  270</span>&#160;<span class="preprocessor">#       if(__has_feature(cxx_alignas))</span></div>
-<div class="line"><a name="l00271"></a><span class="lineno">  271</span>&#160;<span class="preprocessor">#               define GLM_CXX11_ALIGNAS</span></div>
-<div class="line"><a name="l00272"></a><span class="lineno">  272</span>&#160;<span class="preprocessor">#       endif</span></div>
-<div class="line"><a name="l00273"></a><span class="lineno">  273</span>&#160;</div>
-<div class="line"><a name="l00274"></a><span class="lineno">  274</span>&#160;<span class="preprocessor">#       if(__has_feature(cxx_attributes))</span></div>
-<div class="line"><a name="l00275"></a><span class="lineno">  275</span>&#160;<span class="preprocessor">#               define GLM_CXX11_ATTRIBUTES</span></div>
-<div class="line"><a name="l00276"></a><span class="lineno">  276</span>&#160;<span class="preprocessor">#       endif</span></div>
-<div class="line"><a name="l00277"></a><span class="lineno">  277</span>&#160;</div>
-<div class="line"><a name="l00278"></a><span class="lineno">  278</span>&#160;<span class="preprocessor">#       if(__has_feature(cxx_constexpr))</span></div>
-<div class="line"><a name="l00279"></a><span class="lineno">  279</span>&#160;<span class="preprocessor">#               define GLM_CXX11_CONSTEXPR</span></div>
-<div class="line"><a name="l00280"></a><span class="lineno">  280</span>&#160;<span class="preprocessor">#       endif</span></div>
-<div class="line"><a name="l00281"></a><span class="lineno">  281</span>&#160;</div>
-<div class="line"><a name="l00282"></a><span class="lineno">  282</span>&#160;<span class="preprocessor">#       if(__has_feature(cxx_decltype))</span></div>
-<div class="line"><a name="l00283"></a><span class="lineno">  283</span>&#160;<span class="preprocessor">#               define GLM_CXX11_DECLTYPE</span></div>
-<div class="line"><a name="l00284"></a><span class="lineno">  284</span>&#160;<span class="preprocessor">#       endif</span></div>
-<div class="line"><a name="l00285"></a><span class="lineno">  285</span>&#160;</div>
-<div class="line"><a name="l00286"></a><span class="lineno">  286</span>&#160;<span class="preprocessor">#       if(__has_feature(cxx_default_function_template_args))</span></div>
-<div class="line"><a name="l00287"></a><span class="lineno">  287</span>&#160;<span class="preprocessor">#               define GLM_CXX11_DEFAULT_FUNCTION_TEMPLATE_ARGS</span></div>
-<div class="line"><a name="l00288"></a><span class="lineno">  288</span>&#160;<span class="preprocessor">#       endif</span></div>
-<div class="line"><a name="l00289"></a><span class="lineno">  289</span>&#160;</div>
-<div class="line"><a name="l00290"></a><span class="lineno">  290</span>&#160;<span class="preprocessor">#       if(__has_feature(cxx_defaulted_functions))</span></div>
-<div class="line"><a name="l00291"></a><span class="lineno">  291</span>&#160;<span class="preprocessor">#               define GLM_CXX11_DEFAULTED_FUNCTIONS</span></div>
-<div class="line"><a name="l00292"></a><span class="lineno">  292</span>&#160;<span class="preprocessor">#       endif</span></div>
-<div class="line"><a name="l00293"></a><span class="lineno">  293</span>&#160;</div>
-<div class="line"><a name="l00294"></a><span class="lineno">  294</span>&#160;<span class="preprocessor">#       if(__has_feature(cxx_delegating_constructors))</span></div>
-<div class="line"><a name="l00295"></a><span class="lineno">  295</span>&#160;<span class="preprocessor">#               define GLM_CXX11_DELEGATING_CONSTRUCTORS</span></div>
-<div class="line"><a name="l00296"></a><span class="lineno">  296</span>&#160;<span class="preprocessor">#       endif</span></div>
-<div class="line"><a name="l00297"></a><span class="lineno">  297</span>&#160;</div>
-<div class="line"><a name="l00298"></a><span class="lineno">  298</span>&#160;<span class="preprocessor">#       if(__has_feature(cxx_deleted_functions))</span></div>
-<div class="line"><a name="l00299"></a><span class="lineno">  299</span>&#160;<span class="preprocessor">#               define GLM_CXX11_DELETED_FUNCTIONS</span></div>
-<div class="line"><a name="l00300"></a><span class="lineno">  300</span>&#160;<span class="preprocessor">#       endif</span></div>
-<div class="line"><a name="l00301"></a><span class="lineno">  301</span>&#160;</div>
-<div class="line"><a name="l00302"></a><span class="lineno">  302</span>&#160;<span class="preprocessor">#       if(__has_feature(cxx_explicit_conversions))</span></div>
-<div class="line"><a name="l00303"></a><span class="lineno">  303</span>&#160;<span class="preprocessor">#               define GLM_CXX11_EXPLICIT_CONVERSIONS</span></div>
-<div class="line"><a name="l00304"></a><span class="lineno">  304</span>&#160;<span class="preprocessor">#       endif</span></div>
-<div class="line"><a name="l00305"></a><span class="lineno">  305</span>&#160;</div>
-<div class="line"><a name="l00306"></a><span class="lineno">  306</span>&#160;<span class="preprocessor">#       if(__has_feature(cxx_generalized_initializers))</span></div>
-<div class="line"><a name="l00307"></a><span class="lineno">  307</span>&#160;<span class="preprocessor">#               define GLM_CXX11_GENERALIZED_INITIALIZERS</span></div>
-<div class="line"><a name="l00308"></a><span class="lineno">  308</span>&#160;<span class="preprocessor">#       endif</span></div>
-<div class="line"><a name="l00309"></a><span class="lineno">  309</span>&#160;</div>
-<div class="line"><a name="l00310"></a><span class="lineno">  310</span>&#160;<span class="preprocessor">#       if(__has_feature(cxx_implicit_moves))</span></div>
-<div class="line"><a name="l00311"></a><span class="lineno">  311</span>&#160;<span class="preprocessor">#               define GLM_CXX11_IMPLICIT_MOVES</span></div>
-<div class="line"><a name="l00312"></a><span class="lineno">  312</span>&#160;<span class="preprocessor">#       endif</span></div>
-<div class="line"><a name="l00313"></a><span class="lineno">  313</span>&#160;</div>
-<div class="line"><a name="l00314"></a><span class="lineno">  314</span>&#160;<span class="preprocessor">#       if(__has_feature(cxx_inheriting_constructors))</span></div>
-<div class="line"><a name="l00315"></a><span class="lineno">  315</span>&#160;<span class="preprocessor">#               define GLM_CXX11_INHERITING_CONSTRUCTORS</span></div>
-<div class="line"><a name="l00316"></a><span class="lineno">  316</span>&#160;<span class="preprocessor">#       endif</span></div>
-<div class="line"><a name="l00317"></a><span class="lineno">  317</span>&#160;</div>
-<div class="line"><a name="l00318"></a><span class="lineno">  318</span>&#160;<span class="preprocessor">#       if(__has_feature(cxx_inline_namespaces))</span></div>
-<div class="line"><a name="l00319"></a><span class="lineno">  319</span>&#160;<span class="preprocessor">#               define GLM_CXX11_INLINE_NAMESPACES</span></div>
-<div class="line"><a name="l00320"></a><span class="lineno">  320</span>&#160;<span class="preprocessor">#       endif</span></div>
-<div class="line"><a name="l00321"></a><span class="lineno">  321</span>&#160;</div>
-<div class="line"><a name="l00322"></a><span class="lineno">  322</span>&#160;<span class="preprocessor">#       if(__has_feature(cxx_lambdas))</span></div>
-<div class="line"><a name="l00323"></a><span class="lineno">  323</span>&#160;<span class="preprocessor">#               define GLM_CXX11_LAMBDAS</span></div>
-<div class="line"><a name="l00324"></a><span class="lineno">  324</span>&#160;<span class="preprocessor">#       endif</span></div>
-<div class="line"><a name="l00325"></a><span class="lineno">  325</span>&#160;</div>
-<div class="line"><a name="l00326"></a><span class="lineno">  326</span>&#160;<span class="preprocessor">#       if(__has_feature(cxx_local_type_template_args))</span></div>
-<div class="line"><a name="l00327"></a><span class="lineno">  327</span>&#160;<span class="preprocessor">#               define GLM_CXX11_LOCAL_TYPE_TEMPLATE_ARGS</span></div>
-<div class="line"><a name="l00328"></a><span class="lineno">  328</span>&#160;<span class="preprocessor">#       endif</span></div>
-<div class="line"><a name="l00329"></a><span class="lineno">  329</span>&#160;</div>
-<div class="line"><a name="l00330"></a><span class="lineno">  330</span>&#160;<span class="preprocessor">#       if(__has_feature(cxx_noexcept))</span></div>
-<div class="line"><a name="l00331"></a><span class="lineno">  331</span>&#160;<span class="preprocessor">#               define GLM_CXX11_NOEXCEPT</span></div>
-<div class="line"><a name="l00332"></a><span class="lineno">  332</span>&#160;<span class="preprocessor">#       endif</span></div>
-<div class="line"><a name="l00333"></a><span class="lineno">  333</span>&#160;</div>
-<div class="line"><a name="l00334"></a><span class="lineno">  334</span>&#160;<span class="preprocessor">#       if(__has_feature(cxx_nonstatic_member_init))</span></div>
-<div class="line"><a name="l00335"></a><span class="lineno">  335</span>&#160;<span class="preprocessor">#               define GLM_CXX11_NONSTATIC_MEMBER_INIT</span></div>
-<div class="line"><a name="l00336"></a><span class="lineno">  336</span>&#160;<span class="preprocessor">#       endif</span></div>
-<div class="line"><a name="l00337"></a><span class="lineno">  337</span>&#160;</div>
-<div class="line"><a name="l00338"></a><span class="lineno">  338</span>&#160;<span class="preprocessor">#       if(__has_feature(cxx_nullptr))</span></div>
-<div class="line"><a name="l00339"></a><span class="lineno">  339</span>&#160;<span class="preprocessor">#               define GLM_CXX11_NULLPTR</span></div>
-<div class="line"><a name="l00340"></a><span class="lineno">  340</span>&#160;<span class="preprocessor">#       endif</span></div>
-<div class="line"><a name="l00341"></a><span class="lineno">  341</span>&#160;</div>
-<div class="line"><a name="l00342"></a><span class="lineno">  342</span>&#160;<span class="preprocessor">#       if(__has_feature(cxx_override_control))</span></div>
-<div class="line"><a name="l00343"></a><span class="lineno">  343</span>&#160;<span class="preprocessor">#               define GLM_CXX11_OVERRIDE_CONTROL</span></div>
-<div class="line"><a name="l00344"></a><span class="lineno">  344</span>&#160;<span class="preprocessor">#       endif</span></div>
-<div class="line"><a name="l00345"></a><span class="lineno">  345</span>&#160;</div>
-<div class="line"><a name="l00346"></a><span class="lineno">  346</span>&#160;<span class="preprocessor">#       if(__has_feature(cxx_reference_qualified_functions))</span></div>
-<div class="line"><a name="l00347"></a><span class="lineno">  347</span>&#160;<span class="preprocessor">#               define GLM_CXX11_REFERENCE_QUALIFIED_FUNCTIONS</span></div>
-<div class="line"><a name="l00348"></a><span class="lineno">  348</span>&#160;<span class="preprocessor">#       endif</span></div>
-<div class="line"><a name="l00349"></a><span class="lineno">  349</span>&#160;</div>
-<div class="line"><a name="l00350"></a><span class="lineno">  350</span>&#160;<span class="preprocessor">#       if(__has_feature(cxx_range_for))</span></div>
-<div class="line"><a name="l00351"></a><span class="lineno">  351</span>&#160;<span class="preprocessor">#               define GLM_CXX11_RANGE_FOR</span></div>
-<div class="line"><a name="l00352"></a><span class="lineno">  352</span>&#160;<span class="preprocessor">#       endif</span></div>
-<div class="line"><a name="l00353"></a><span class="lineno">  353</span>&#160;</div>
-<div class="line"><a name="l00354"></a><span class="lineno">  354</span>&#160;<span class="preprocessor">#       if(__has_feature(cxx_raw_string_literals))</span></div>
-<div class="line"><a name="l00355"></a><span class="lineno">  355</span>&#160;<span class="preprocessor">#               define GLM_CXX11_RAW_STRING_LITERALS</span></div>
-<div class="line"><a name="l00356"></a><span class="lineno">  356</span>&#160;<span class="preprocessor">#       endif</span></div>
-<div class="line"><a name="l00357"></a><span class="lineno">  357</span>&#160;</div>
-<div class="line"><a name="l00358"></a><span class="lineno">  358</span>&#160;<span class="preprocessor">#       if(__has_feature(cxx_rvalue_references))</span></div>
-<div class="line"><a name="l00359"></a><span class="lineno">  359</span>&#160;<span class="preprocessor">#               define GLM_CXX11_RVALUE_REFERENCES</span></div>
-<div class="line"><a name="l00360"></a><span class="lineno">  360</span>&#160;<span class="preprocessor">#       endif</span></div>
-<div class="line"><a name="l00361"></a><span class="lineno">  361</span>&#160;</div>
-<div class="line"><a name="l00362"></a><span class="lineno">  362</span>&#160;<span class="preprocessor">#       if(__has_feature(cxx_static_assert))</span></div>
-<div class="line"><a name="l00363"></a><span class="lineno">  363</span>&#160;<span class="preprocessor">#               define GLM_CXX11_STATIC_ASSERT</span></div>
-<div class="line"><a name="l00364"></a><span class="lineno">  364</span>&#160;<span class="preprocessor">#       endif</span></div>
-<div class="line"><a name="l00365"></a><span class="lineno">  365</span>&#160;</div>
-<div class="line"><a name="l00366"></a><span class="lineno">  366</span>&#160;<span class="preprocessor">#       if(__has_feature(cxx_auto_type))</span></div>
-<div class="line"><a name="l00367"></a><span class="lineno">  367</span>&#160;<span class="preprocessor">#               define GLM_CXX11_AUTO_TYPE</span></div>
-<div class="line"><a name="l00368"></a><span class="lineno">  368</span>&#160;<span class="preprocessor">#       endif</span></div>
-<div class="line"><a name="l00369"></a><span class="lineno">  369</span>&#160;</div>
-<div class="line"><a name="l00370"></a><span class="lineno">  370</span>&#160;<span class="preprocessor">#       if(__has_feature(cxx_strong_enums))</span></div>
-<div class="line"><a name="l00371"></a><span class="lineno">  371</span>&#160;<span class="preprocessor">#               define GLM_CXX11_STRONG_ENUMS</span></div>
-<div class="line"><a name="l00372"></a><span class="lineno">  372</span>&#160;<span class="preprocessor">#       endif</span></div>
-<div class="line"><a name="l00373"></a><span class="lineno">  373</span>&#160;</div>
-<div class="line"><a name="l00374"></a><span class="lineno">  374</span>&#160;<span class="preprocessor">#       if(__has_feature(cxx_trailing_return))</span></div>
-<div class="line"><a name="l00375"></a><span class="lineno">  375</span>&#160;<span class="preprocessor">#               define GLM_CXX11_TRAILING_RETURN</span></div>
-<div class="line"><a name="l00376"></a><span class="lineno">  376</span>&#160;<span class="preprocessor">#       endif</span></div>
-<div class="line"><a name="l00377"></a><span class="lineno">  377</span>&#160;</div>
-<div class="line"><a name="l00378"></a><span class="lineno">  378</span>&#160;<span class="preprocessor">#       if(__has_feature(cxx_unicode_literals))</span></div>
-<div class="line"><a name="l00379"></a><span class="lineno">  379</span>&#160;<span class="preprocessor">#               define GLM_CXX11_UNICODE_LITERALS</span></div>
-<div class="line"><a name="l00380"></a><span class="lineno">  380</span>&#160;<span class="preprocessor">#       endif</span></div>
-<div class="line"><a name="l00381"></a><span class="lineno">  381</span>&#160;</div>
-<div class="line"><a name="l00382"></a><span class="lineno">  382</span>&#160;<span class="preprocessor">#       if(__has_feature(cxx_unrestricted_unions))</span></div>
-<div class="line"><a name="l00383"></a><span class="lineno">  383</span>&#160;<span class="preprocessor">#               define GLM_CXX11_UNRESTRICTED_UNIONS</span></div>
-<div class="line"><a name="l00384"></a><span class="lineno">  384</span>&#160;<span class="preprocessor">#       endif</span></div>
-<div class="line"><a name="l00385"></a><span class="lineno">  385</span>&#160;</div>
-<div class="line"><a name="l00386"></a><span class="lineno">  386</span>&#160;<span class="preprocessor">#       if(__has_feature(cxx_user_literals))</span></div>
-<div class="line"><a name="l00387"></a><span class="lineno">  387</span>&#160;<span class="preprocessor">#               define GLM_CXX11_USER_LITERALS</span></div>
-<div class="line"><a name="l00388"></a><span class="lineno">  388</span>&#160;<span class="preprocessor">#       endif</span></div>
-<div class="line"><a name="l00389"></a><span class="lineno">  389</span>&#160;</div>
-<div class="line"><a name="l00390"></a><span class="lineno">  390</span>&#160;<span class="preprocessor">#       if(__has_feature(cxx_variadic_templates))</span></div>
-<div class="line"><a name="l00391"></a><span class="lineno">  391</span>&#160;<span class="preprocessor">#               define GLM_CXX11_VARIADIC_TEMPLATES</span></div>
-<div class="line"><a name="l00392"></a><span class="lineno">  392</span>&#160;<span class="preprocessor">#       endif</span></div>
-<div class="line"><a name="l00393"></a><span class="lineno">  393</span>&#160;</div>
-<div class="line"><a name="l00394"></a><span class="lineno">  394</span>&#160;<span class="preprocessor">#endif//(GLM_COMPILER &amp; GLM_COMPILER_CLANG)</span></div>
-</div><!-- fragment --></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.10
-</small></address>
-</body>
-</html>

+ 110 - 128
doc/api/a00015.html → doc/api/a00002.html

@@ -1,19 +1,17 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://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.10"/>
-<title>0.9.9 API documentation: common.hpp File Reference</title>
+<meta name="generator" content="Doxygen 1.8.18"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>1.0.0 API documentation: common.hpp File Reference</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="search/search.css" rel="stylesheet" type="text/css"/>
 <script type="text/javascript" src="search/searchdata.js"></script>
 <script type="text/javascript" src="search/search.js"></script>
-<script type="text/javascript">
-  $(document).ready(function() { init_search(); });
-</script>
 <link href="doxygen.css" rel="stylesheet" type="text/css" />
 </head>
 <body>
@@ -24,7 +22,7 @@
  <tr style="height: 56px;">
   <td id="projectlogo"><img alt="Logo" src="logo-mini.png"/></td>
   <td id="projectalign" style="padding-left: 0.5em;">
-   <div id="projectname">0.9.9 API documentation
+   <div id="projectname">1.0.0 API documentation
    </div>
   </td>
  </tr>
@@ -32,38 +30,22 @@
 </table>
 </div>
 <!-- end header part -->
-<!-- Generated by Doxygen 1.8.10 -->
+<!-- Generated by Doxygen 1.8.18 -->
 <script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
 var searchBox = new SearchBox("searchBox", "search",false,'Search');
+/* @license-end */
 </script>
-  <div id="navrow1" class="tabs">
-    <ul class="tablist">
-      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
-      <li><a href="modules.html"><span>Modules</span></a></li>
-      <li class="current"><a href="files.html"><span>Files</span></a></li>
-      <li>
-        <div id="MSearchBox" class="MSearchBoxInactive">
-        <span class="left">
-          <img id="MSearchSelect" src="search/mag_sel.png"
-               onmouseover="return searchBox.OnSearchSelectShow()"
-               onmouseout="return searchBox.OnSearchSelectHide()"
-               alt=""/>
-          <input type="text" id="MSearchField" value="Search" accesskey="S"
-               onfocus="searchBox.OnSearchFieldFocus(true)" 
-               onblur="searchBox.OnSearchFieldFocus(false)" 
-               onkeyup="searchBox.OnSearchFieldChange(event)"/>
-          </span><span class="right">
-            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
-          </span>
-        </div>
-      </li>
-    </ul>
-  </div>
-  <div id="navrow2" class="tabs2">
-    <ul class="tablist">
-      <li><a href="files.html"><span>File&#160;List</span></a></li>
-    </ul>
-  </div>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
 <!-- window showing the filter options -->
 <div id="MSearchSelectWindow"
      onmouseover="return searchBox.OnSearchSelectShow()"
@@ -80,7 +62,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 
 <div id="nav-path" class="navpath">
   <ul>
-<li class="navelem"><a class="el" href="dir_3a581ba30d25676e4b797b1f96d53b45.html">F:</a></li><li class="navelem"><a class="el" href="dir_9e5fe034a00e89334fd5186c3e7db156.html">G-Truc</a></li><li class="navelem"><a class="el" href="dir_d9496f0844b48bc7e53b5af8c99b9ab2.html">Source</a></li><li class="navelem"><a class="el" href="dir_a8bee7be44182a33f3820393ae0b105d.html">G-Truc</a></li><li class="navelem"><a class="el" href="dir_44e5e654415abd9ca6fdeaddaff8565e.html">glm</a></li><li class="navelem"><a class="el" href="dir_cef2d71d502cb69a9252bca2297d9549.html">glm</a></li>  </ul>
+<li class="navelem"><a class="el" href="dir_885cc87fac2d91e269af0a5a959fa5f6.html">E:</a></li><li class="navelem"><a class="el" href="dir_63ed049134a778d525e06b63afc2c979.html">Github</a></li><li class="navelem"><a class="el" href="dir_c98a9ac98258ab9f831b188d66361a70.html">g-truc</a></li><li class="navelem"><a class="el" href="dir_50f12b6ceb23d7f6adfb377a1ae8b006.html">glm</a></li><li class="navelem"><a class="el" href="dir_fca33f1b5115d46f42c670590789c0d2.html">glm</a></li>  </ul>
 </div>
 </div><!-- top -->
 <div class="header">
@@ -91,177 +73,177 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 </div><!--header-->
 <div class="contents">
 
-<p><a class="el" href="a00280.html">Core features</a>  
+<p><a class="el" href="a00889.html">Core features</a>  
 <a href="#details">More...</a></p>
 
-<p><a href="a00015_source.html">Go to the source code of this file.</a></p>
+<p><a href="a00002_source.html">Go to the source code of this file.</a></p>
 <table class="memberdecls">
 <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
 Functions</h2></td></tr>
 <tr class="memitem:ga439e60a72eadecfeda2df5449c613a64"><td class="memTemplParams" colspan="2">template&lt;typename genType &gt; </td></tr>
-<tr class="memitem:ga439e60a72eadecfeda2df5449c613a64"><td class="memTemplItemLeft" align="right" valign="top">GLM_FUNC_DECL GLM_CONSTEXPR genType&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00241.html#ga439e60a72eadecfeda2df5449c613a64">abs</a> (genType x)</td></tr>
-<tr class="memdesc:ga439e60a72eadecfeda2df5449c613a64"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns x if x &gt;= 0; otherwise, it returns -x.  <a href="a00241.html#ga439e60a72eadecfeda2df5449c613a64">More...</a><br /></td></tr>
+<tr class="memitem:ga439e60a72eadecfeda2df5449c613a64"><td class="memTemplItemLeft" align="right" valign="top">GLM_FUNC_DECL GLM_CONSTEXPR genType&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00803.html#ga439e60a72eadecfeda2df5449c613a64">abs</a> (genType x)</td></tr>
+<tr class="memdesc:ga439e60a72eadecfeda2df5449c613a64"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns x if x &gt;= 0; otherwise, it returns -x.  <a href="a00803.html#ga439e60a72eadecfeda2df5449c613a64">More...</a><br /></td></tr>
 <tr class="separator:ga439e60a72eadecfeda2df5449c613a64"><td class="memSeparator" colspan="2">&#160;</td></tr>
 <tr class="memitem:ga81d3abddd0ef0c8de579bc541ecadab6"><td class="memTemplParams" colspan="2">template&lt;length_t L, typename T , qualifier Q&gt; </td></tr>
-<tr class="memitem:ga81d3abddd0ef0c8de579bc541ecadab6"><td class="memTemplItemLeft" align="right" valign="top">GLM_FUNC_DECL GLM_CONSTEXPR vec&lt; L, T, Q &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00241.html#ga81d3abddd0ef0c8de579bc541ecadab6">abs</a> (vec&lt; L, T, Q &gt; const &amp;x)</td></tr>
-<tr class="memdesc:ga81d3abddd0ef0c8de579bc541ecadab6"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns x if x &gt;= 0; otherwise, it returns -x.  <a href="a00241.html#ga81d3abddd0ef0c8de579bc541ecadab6">More...</a><br /></td></tr>
+<tr class="memitem:ga81d3abddd0ef0c8de579bc541ecadab6"><td class="memTemplItemLeft" align="right" valign="top">GLM_FUNC_DECL GLM_CONSTEXPR vec&lt; L, T, Q &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00803.html#ga81d3abddd0ef0c8de579bc541ecadab6">abs</a> (vec&lt; L, T, Q &gt; const &amp;x)</td></tr>
+<tr class="memdesc:ga81d3abddd0ef0c8de579bc541ecadab6"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns x if x &gt;= 0; otherwise, it returns -x.  <a href="a00803.html#ga81d3abddd0ef0c8de579bc541ecadab6">More...</a><br /></td></tr>
 <tr class="separator:ga81d3abddd0ef0c8de579bc541ecadab6"><td class="memSeparator" colspan="2">&#160;</td></tr>
 <tr class="memitem:gafb9d2a645a23aca12d4d6de0104b7657"><td class="memTemplParams" colspan="2">template&lt;length_t L, typename T , qualifier Q&gt; </td></tr>
-<tr class="memitem:gafb9d2a645a23aca12d4d6de0104b7657"><td class="memTemplItemLeft" align="right" valign="top">GLM_FUNC_DECL vec&lt; L, T, Q &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00241.html#gafb9d2a645a23aca12d4d6de0104b7657">ceil</a> (vec&lt; L, T, Q &gt; const &amp;x)</td></tr>
-<tr class="memdesc:gafb9d2a645a23aca12d4d6de0104b7657"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns a value equal to the nearest integer that is greater than or equal to x.  <a href="a00241.html#gafb9d2a645a23aca12d4d6de0104b7657">More...</a><br /></td></tr>
+<tr class="memitem:gafb9d2a645a23aca12d4d6de0104b7657"><td class="memTemplItemLeft" align="right" valign="top">GLM_FUNC_DECL vec&lt; L, T, Q &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00803.html#gafb9d2a645a23aca12d4d6de0104b7657">ceil</a> (vec&lt; L, T, Q &gt; const &amp;x)</td></tr>
+<tr class="memdesc:gafb9d2a645a23aca12d4d6de0104b7657"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns a value equal to the nearest integer that is greater than or equal to x.  <a href="a00803.html#gafb9d2a645a23aca12d4d6de0104b7657">More...</a><br /></td></tr>
 <tr class="separator:gafb9d2a645a23aca12d4d6de0104b7657"><td class="memSeparator" colspan="2">&#160;</td></tr>
 <tr class="memitem:ga7cd77683da6361e297c56443fc70806d"><td class="memTemplParams" colspan="2">template&lt;typename genType &gt; </td></tr>
-<tr class="memitem:ga7cd77683da6361e297c56443fc70806d"><td class="memTemplItemLeft" align="right" valign="top">GLM_FUNC_DECL GLM_CONSTEXPR genType&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00241.html#ga7cd77683da6361e297c56443fc70806d">clamp</a> (genType x, genType minVal, genType maxVal)</td></tr>
-<tr class="memdesc:ga7cd77683da6361e297c56443fc70806d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns min(max(x, minVal), maxVal) for each component in x using the floating-point values minVal and maxVal.  <a href="a00241.html#ga7cd77683da6361e297c56443fc70806d">More...</a><br /></td></tr>
+<tr class="memitem:ga7cd77683da6361e297c56443fc70806d"><td class="memTemplItemLeft" align="right" valign="top">GLM_FUNC_DECL GLM_CONSTEXPR genType&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00803.html#ga7cd77683da6361e297c56443fc70806d">clamp</a> (genType x, genType minVal, genType maxVal)</td></tr>
+<tr class="memdesc:ga7cd77683da6361e297c56443fc70806d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns min(max(x, minVal), maxVal) for each component in x using the floating-point values minVal and maxVal.  <a href="a00803.html#ga7cd77683da6361e297c56443fc70806d">More...</a><br /></td></tr>
 <tr class="separator:ga7cd77683da6361e297c56443fc70806d"><td class="memSeparator" colspan="2">&#160;</td></tr>
 <tr class="memitem:gafba2e0674deb5953878d89483cd6323d"><td class="memTemplParams" colspan="2">template&lt;length_t L, typename T , qualifier Q&gt; </td></tr>
-<tr class="memitem:gafba2e0674deb5953878d89483cd6323d"><td class="memTemplItemLeft" align="right" valign="top">GLM_FUNC_DECL GLM_CONSTEXPR vec&lt; L, T, Q &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00241.html#gafba2e0674deb5953878d89483cd6323d">clamp</a> (vec&lt; L, T, Q &gt; const &amp;x, T minVal, T maxVal)</td></tr>
-<tr class="memdesc:gafba2e0674deb5953878d89483cd6323d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns min(max(x, minVal), maxVal) for each component in x using the floating-point values minVal and maxVal.  <a href="a00241.html#gafba2e0674deb5953878d89483cd6323d">More...</a><br /></td></tr>
+<tr class="memitem:gafba2e0674deb5953878d89483cd6323d"><td class="memTemplItemLeft" align="right" valign="top">GLM_FUNC_DECL GLM_CONSTEXPR vec&lt; L, T, Q &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00803.html#gafba2e0674deb5953878d89483cd6323d">clamp</a> (vec&lt; L, T, Q &gt; const &amp;x, T minVal, T maxVal)</td></tr>
+<tr class="memdesc:gafba2e0674deb5953878d89483cd6323d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns min(max(x, minVal), maxVal) for each component in x using the floating-point values minVal and maxVal.  <a href="a00803.html#gafba2e0674deb5953878d89483cd6323d">More...</a><br /></td></tr>
 <tr class="separator:gafba2e0674deb5953878d89483cd6323d"><td class="memSeparator" colspan="2">&#160;</td></tr>
 <tr class="memitem:gaa0f2f12e9108b09e22a3f0b2008a0b5d"><td class="memTemplParams" colspan="2">template&lt;length_t L, typename T , qualifier Q&gt; </td></tr>
-<tr class="memitem:gaa0f2f12e9108b09e22a3f0b2008a0b5d"><td class="memTemplItemLeft" align="right" valign="top">GLM_FUNC_DECL GLM_CONSTEXPR vec&lt; L, T, Q &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00241.html#gaa0f2f12e9108b09e22a3f0b2008a0b5d">clamp</a> (vec&lt; L, T, Q &gt; const &amp;x, vec&lt; L, T, Q &gt; const &amp;minVal, vec&lt; L, T, Q &gt; const &amp;maxVal)</td></tr>
-<tr class="memdesc:gaa0f2f12e9108b09e22a3f0b2008a0b5d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns min(max(x, minVal), maxVal) for each component in x using the floating-point values minVal and maxVal.  <a href="a00241.html#gaa0f2f12e9108b09e22a3f0b2008a0b5d">More...</a><br /></td></tr>
+<tr class="memitem:gaa0f2f12e9108b09e22a3f0b2008a0b5d"><td class="memTemplItemLeft" align="right" valign="top">GLM_FUNC_DECL GLM_CONSTEXPR vec&lt; L, T, Q &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00803.html#gaa0f2f12e9108b09e22a3f0b2008a0b5d">clamp</a> (vec&lt; L, T, Q &gt; const &amp;x, vec&lt; L, T, Q &gt; const &amp;minVal, vec&lt; L, T, Q &gt; const &amp;maxVal)</td></tr>
+<tr class="memdesc:gaa0f2f12e9108b09e22a3f0b2008a0b5d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns min(max(x, minVal), maxVal) for each component in x using the floating-point values minVal and maxVal.  <a href="a00803.html#gaa0f2f12e9108b09e22a3f0b2008a0b5d">More...</a><br /></td></tr>
 <tr class="separator:gaa0f2f12e9108b09e22a3f0b2008a0b5d"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:ga1425c1c3160ec51214b03a0469a3013d"><td class="memItemLeft" align="right" valign="top">GLM_FUNC_DECL int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00241.html#ga1425c1c3160ec51214b03a0469a3013d">floatBitsToInt</a> (float const &amp;v)</td></tr>
-<tr class="memdesc:ga1425c1c3160ec51214b03a0469a3013d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns a signed integer value representing the encoding of a floating-point value.  <a href="a00241.html#ga1425c1c3160ec51214b03a0469a3013d">More...</a><br /></td></tr>
-<tr class="separator:ga1425c1c3160ec51214b03a0469a3013d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ga8a23e454d8ae48b8f6dfdaea4b756072"><td class="memItemLeft" align="right" valign="top">GLM_FUNC_DECL int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00803.html#ga8a23e454d8ae48b8f6dfdaea4b756072">floatBitsToInt</a> (float v)</td></tr>
+<tr class="memdesc:ga8a23e454d8ae48b8f6dfdaea4b756072"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns a signed integer value representing the encoding of a floating-point value.  <a href="a00803.html#ga8a23e454d8ae48b8f6dfdaea4b756072">More...</a><br /></td></tr>
+<tr class="separator:ga8a23e454d8ae48b8f6dfdaea4b756072"><td class="memSeparator" colspan="2">&#160;</td></tr>
 <tr class="memitem:ga99f7d62f78ac5ea3b49bae715c9488ed"><td class="memTemplParams" colspan="2">template&lt;length_t L, qualifier Q&gt; </td></tr>
-<tr class="memitem:ga99f7d62f78ac5ea3b49bae715c9488ed"><td class="memTemplItemLeft" align="right" valign="top">GLM_FUNC_DECL vec&lt; L, int, Q &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00241.html#ga99f7d62f78ac5ea3b49bae715c9488ed">floatBitsToInt</a> (vec&lt; L, float, Q &gt; const &amp;v)</td></tr>
-<tr class="memdesc:ga99f7d62f78ac5ea3b49bae715c9488ed"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns a signed integer value representing the encoding of a floating-point value.  <a href="a00241.html#ga99f7d62f78ac5ea3b49bae715c9488ed">More...</a><br /></td></tr>
+<tr class="memitem:ga99f7d62f78ac5ea3b49bae715c9488ed"><td class="memTemplItemLeft" align="right" valign="top">GLM_FUNC_DECL vec&lt; L, int, Q &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00803.html#ga99f7d62f78ac5ea3b49bae715c9488ed">floatBitsToInt</a> (vec&lt; L, float, Q &gt; const &amp;v)</td></tr>
+<tr class="memdesc:ga99f7d62f78ac5ea3b49bae715c9488ed"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns a signed integer value representing the encoding of a floating-point value.  <a href="a00803.html#ga99f7d62f78ac5ea3b49bae715c9488ed">More...</a><br /></td></tr>
 <tr class="separator:ga99f7d62f78ac5ea3b49bae715c9488ed"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:ga70e0271c34af52f3100c7960e18c3f2b"><td class="memItemLeft" align="right" valign="top">GLM_FUNC_DECL uint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00241.html#ga70e0271c34af52f3100c7960e18c3f2b">floatBitsToUint</a> (float const &amp;v)</td></tr>
-<tr class="memdesc:ga70e0271c34af52f3100c7960e18c3f2b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns a unsigned integer value representing the encoding of a floating-point value.  <a href="a00241.html#ga70e0271c34af52f3100c7960e18c3f2b">More...</a><br /></td></tr>
-<tr class="separator:ga70e0271c34af52f3100c7960e18c3f2b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ga1bbdafd513ece71856e66a8ab0ea10d1"><td class="memItemLeft" align="right" valign="top">GLM_FUNC_DECL uint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00803.html#ga1bbdafd513ece71856e66a8ab0ea10d1">floatBitsToUint</a> (float v)</td></tr>
+<tr class="memdesc:ga1bbdafd513ece71856e66a8ab0ea10d1"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns a unsigned integer value representing the encoding of a floating-point value.  <a href="a00803.html#ga1bbdafd513ece71856e66a8ab0ea10d1">More...</a><br /></td></tr>
+<tr class="separator:ga1bbdafd513ece71856e66a8ab0ea10d1"><td class="memSeparator" colspan="2">&#160;</td></tr>
 <tr class="memitem:ga49418ba4c8a60fbbb5d57b705f3e26db"><td class="memTemplParams" colspan="2">template&lt;length_t L, qualifier Q&gt; </td></tr>
-<tr class="memitem:ga49418ba4c8a60fbbb5d57b705f3e26db"><td class="memTemplItemLeft" align="right" valign="top">GLM_FUNC_DECL vec&lt; L, uint, Q &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00241.html#ga49418ba4c8a60fbbb5d57b705f3e26db">floatBitsToUint</a> (vec&lt; L, float, Q &gt; const &amp;v)</td></tr>
-<tr class="memdesc:ga49418ba4c8a60fbbb5d57b705f3e26db"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns a unsigned integer value representing the encoding of a floating-point value.  <a href="a00241.html#ga49418ba4c8a60fbbb5d57b705f3e26db">More...</a><br /></td></tr>
+<tr class="memitem:ga49418ba4c8a60fbbb5d57b705f3e26db"><td class="memTemplItemLeft" align="right" valign="top">GLM_FUNC_DECL vec&lt; L, uint, Q &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00803.html#ga49418ba4c8a60fbbb5d57b705f3e26db">floatBitsToUint</a> (vec&lt; L, float, Q &gt; const &amp;v)</td></tr>
+<tr class="memdesc:ga49418ba4c8a60fbbb5d57b705f3e26db"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns a unsigned integer value representing the encoding of a floating-point value.  <a href="a00803.html#ga49418ba4c8a60fbbb5d57b705f3e26db">More...</a><br /></td></tr>
 <tr class="separator:ga49418ba4c8a60fbbb5d57b705f3e26db"><td class="memSeparator" colspan="2">&#160;</td></tr>
 <tr class="memitem:gaa9d0742639e85b29c7c5de11cfd6840d"><td class="memTemplParams" colspan="2">template&lt;length_t L, typename T , qualifier Q&gt; </td></tr>
-<tr class="memitem:gaa9d0742639e85b29c7c5de11cfd6840d"><td class="memTemplItemLeft" align="right" valign="top">GLM_FUNC_DECL vec&lt; L, T, Q &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00241.html#gaa9d0742639e85b29c7c5de11cfd6840d">floor</a> (vec&lt; L, T, Q &gt; const &amp;x)</td></tr>
-<tr class="memdesc:gaa9d0742639e85b29c7c5de11cfd6840d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns a value equal to the nearest integer that is less then or equal to x.  <a href="a00241.html#gaa9d0742639e85b29c7c5de11cfd6840d">More...</a><br /></td></tr>
+<tr class="memitem:gaa9d0742639e85b29c7c5de11cfd6840d"><td class="memTemplItemLeft" align="right" valign="top">GLM_FUNC_DECL vec&lt; L, T, Q &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00803.html#gaa9d0742639e85b29c7c5de11cfd6840d">floor</a> (vec&lt; L, T, Q &gt; const &amp;x)</td></tr>
+<tr class="memdesc:gaa9d0742639e85b29c7c5de11cfd6840d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns a value equal to the nearest integer that is less then or equal to x.  <a href="a00803.html#gaa9d0742639e85b29c7c5de11cfd6840d">More...</a><br /></td></tr>
 <tr class="separator:gaa9d0742639e85b29c7c5de11cfd6840d"><td class="memSeparator" colspan="2">&#160;</td></tr>
 <tr class="memitem:gad0f444d4b81cc53c3b6edf5aa25078c2"><td class="memTemplParams" colspan="2">template&lt;typename genType &gt; </td></tr>
-<tr class="memitem:gad0f444d4b81cc53c3b6edf5aa25078c2"><td class="memTemplItemLeft" align="right" valign="top">GLM_FUNC_DECL genType&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00241.html#gad0f444d4b81cc53c3b6edf5aa25078c2">fma</a> (genType const &amp;a, genType const &amp;b, genType const &amp;c)</td></tr>
-<tr class="memdesc:gad0f444d4b81cc53c3b6edf5aa25078c2"><td class="mdescLeft">&#160;</td><td class="mdescRight">Computes and returns a * b + c.  <a href="a00241.html#gad0f444d4b81cc53c3b6edf5aa25078c2">More...</a><br /></td></tr>
+<tr class="memitem:gad0f444d4b81cc53c3b6edf5aa25078c2"><td class="memTemplItemLeft" align="right" valign="top">GLM_FUNC_DECL genType&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00803.html#gad0f444d4b81cc53c3b6edf5aa25078c2">fma</a> (genType const &amp;a, genType const &amp;b, genType const &amp;c)</td></tr>
+<tr class="memdesc:gad0f444d4b81cc53c3b6edf5aa25078c2"><td class="mdescLeft">&#160;</td><td class="mdescRight">Computes and returns a * b + c.  <a href="a00803.html#gad0f444d4b81cc53c3b6edf5aa25078c2">More...</a><br /></td></tr>
 <tr class="separator:gad0f444d4b81cc53c3b6edf5aa25078c2"><td class="memSeparator" colspan="2">&#160;</td></tr>
 <tr class="memitem:ga8ba89e40e55ae5cdf228548f9b7639c7"><td class="memTemplParams" colspan="2">template&lt;typename genType &gt; </td></tr>
-<tr class="memitem:ga8ba89e40e55ae5cdf228548f9b7639c7"><td class="memTemplItemLeft" align="right" valign="top">GLM_FUNC_DECL genType&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00241.html#ga8ba89e40e55ae5cdf228548f9b7639c7">fract</a> (genType x)</td></tr>
-<tr class="memdesc:ga8ba89e40e55ae5cdf228548f9b7639c7"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return x - floor(x).  <a href="a00241.html#ga8ba89e40e55ae5cdf228548f9b7639c7">More...</a><br /></td></tr>
+<tr class="memitem:ga8ba89e40e55ae5cdf228548f9b7639c7"><td class="memTemplItemLeft" align="right" valign="top">GLM_FUNC_DECL genType&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00803.html#ga8ba89e40e55ae5cdf228548f9b7639c7">fract</a> (genType x)</td></tr>
+<tr class="memdesc:ga8ba89e40e55ae5cdf228548f9b7639c7"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return x - floor(x).  <a href="a00803.html#ga8ba89e40e55ae5cdf228548f9b7639c7">More...</a><br /></td></tr>
 <tr class="separator:ga8ba89e40e55ae5cdf228548f9b7639c7"><td class="memSeparator" colspan="2">&#160;</td></tr>
 <tr class="memitem:ga2df623004f634b440d61e018d62c751b"><td class="memTemplParams" colspan="2">template&lt;length_t L, typename T , qualifier Q&gt; </td></tr>
-<tr class="memitem:ga2df623004f634b440d61e018d62c751b"><td class="memTemplItemLeft" align="right" valign="top">GLM_FUNC_DECL vec&lt; L, T, Q &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00241.html#ga2df623004f634b440d61e018d62c751b">fract</a> (vec&lt; L, T, Q &gt; const &amp;x)</td></tr>
-<tr class="memdesc:ga2df623004f634b440d61e018d62c751b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return x - floor(x).  <a href="a00241.html#ga2df623004f634b440d61e018d62c751b">More...</a><br /></td></tr>
+<tr class="memitem:ga2df623004f634b440d61e018d62c751b"><td class="memTemplItemLeft" align="right" valign="top">GLM_FUNC_DECL vec&lt; L, T, Q &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00803.html#ga2df623004f634b440d61e018d62c751b">fract</a> (vec&lt; L, T, Q &gt; const &amp;x)</td></tr>
+<tr class="memdesc:ga2df623004f634b440d61e018d62c751b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return x - floor(x).  <a href="a00803.html#ga2df623004f634b440d61e018d62c751b">More...</a><br /></td></tr>
 <tr class="separator:ga2df623004f634b440d61e018d62c751b"><td class="memSeparator" colspan="2">&#160;</td></tr>
 <tr class="memitem:gaddf5ef73283c171730e0bcc11833fa81"><td class="memTemplParams" colspan="2">template&lt;typename genType &gt; </td></tr>
-<tr class="memitem:gaddf5ef73283c171730e0bcc11833fa81"><td class="memTemplItemLeft" align="right" valign="top">GLM_FUNC_DECL genType&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00241.html#gaddf5ef73283c171730e0bcc11833fa81">frexp</a> (genType x, int &amp;exp)</td></tr>
-<tr class="memdesc:gaddf5ef73283c171730e0bcc11833fa81"><td class="mdescLeft">&#160;</td><td class="mdescRight">Splits x into a floating-point significand in the range [0.5, 1.0) and an integral exponent of two, such that: x = significand * exp(2, exponent)  <a href="a00241.html#gaddf5ef73283c171730e0bcc11833fa81">More...</a><br /></td></tr>
+<tr class="memitem:gaddf5ef73283c171730e0bcc11833fa81"><td class="memTemplItemLeft" align="right" valign="top">GLM_FUNC_DECL genType&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00803.html#gaddf5ef73283c171730e0bcc11833fa81">frexp</a> (genType x, int &amp;exp)</td></tr>
+<tr class="memdesc:gaddf5ef73283c171730e0bcc11833fa81"><td class="mdescLeft">&#160;</td><td class="mdescRight">Splits x into a floating-point significand in the range [0.5, 1.0) and an integral exponent of two, such that: x = significand * exp(2, exponent)  <a href="a00803.html#gaddf5ef73283c171730e0bcc11833fa81">More...</a><br /></td></tr>
 <tr class="separator:gaddf5ef73283c171730e0bcc11833fa81"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:ga4fb7c21c2dce064b26fd9ccdaf9adcd4"><td class="memItemLeft" align="right" valign="top">GLM_FUNC_DECL float&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00241.html#ga4fb7c21c2dce064b26fd9ccdaf9adcd4">intBitsToFloat</a> (int const &amp;v)</td></tr>
-<tr class="memdesc:ga4fb7c21c2dce064b26fd9ccdaf9adcd4"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns a floating-point value corresponding to a signed integer encoding of a floating-point value.  <a href="a00241.html#ga4fb7c21c2dce064b26fd9ccdaf9adcd4">More...</a><br /></td></tr>
-<tr class="separator:ga4fb7c21c2dce064b26fd9ccdaf9adcd4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:gad780bbd088b64d823ad7049c42b157da"><td class="memItemLeft" align="right" valign="top">GLM_FUNC_DECL float&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00803.html#gad780bbd088b64d823ad7049c42b157da">intBitsToFloat</a> (int v)</td></tr>
+<tr class="memdesc:gad780bbd088b64d823ad7049c42b157da"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns a floating-point value corresponding to a signed integer encoding of a floating-point value.  <a href="a00803.html#gad780bbd088b64d823ad7049c42b157da">More...</a><br /></td></tr>
+<tr class="separator:gad780bbd088b64d823ad7049c42b157da"><td class="memSeparator" colspan="2">&#160;</td></tr>
 <tr class="memitem:ga7a0a8291a1cf3e1c2aee33030a1bd7b0"><td class="memTemplParams" colspan="2">template&lt;length_t L, qualifier Q&gt; </td></tr>
-<tr class="memitem:ga7a0a8291a1cf3e1c2aee33030a1bd7b0"><td class="memTemplItemLeft" align="right" valign="top">GLM_FUNC_DECL vec&lt; L, float, Q &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00241.html#ga7a0a8291a1cf3e1c2aee33030a1bd7b0">intBitsToFloat</a> (vec&lt; L, int, Q &gt; const &amp;v)</td></tr>
-<tr class="memdesc:ga7a0a8291a1cf3e1c2aee33030a1bd7b0"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns a floating-point value corresponding to a signed integer encoding of a floating-point value.  <a href="a00241.html#ga7a0a8291a1cf3e1c2aee33030a1bd7b0">More...</a><br /></td></tr>
+<tr class="memitem:ga7a0a8291a1cf3e1c2aee33030a1bd7b0"><td class="memTemplItemLeft" align="right" valign="top">GLM_FUNC_DECL vec&lt; L, float, Q &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00803.html#ga7a0a8291a1cf3e1c2aee33030a1bd7b0">intBitsToFloat</a> (vec&lt; L, int, Q &gt; const &amp;v)</td></tr>
+<tr class="memdesc:ga7a0a8291a1cf3e1c2aee33030a1bd7b0"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns a floating-point value corresponding to a signed integer encoding of a floating-point value.  <a href="a00803.html#ga7a0a8291a1cf3e1c2aee33030a1bd7b0">More...</a><br /></td></tr>
 <tr class="separator:ga7a0a8291a1cf3e1c2aee33030a1bd7b0"><td class="memSeparator" colspan="2">&#160;</td></tr>
 <tr class="memitem:ga2885587c23a106301f20443896365b62"><td class="memTemplParams" colspan="2">template&lt;length_t L, typename T , qualifier Q&gt; </td></tr>
-<tr class="memitem:ga2885587c23a106301f20443896365b62"><td class="memTemplItemLeft" align="right" valign="top">GLM_FUNC_DECL vec&lt; L, bool, Q &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00241.html#ga2885587c23a106301f20443896365b62">isinf</a> (vec&lt; L, T, Q &gt; const &amp;x)</td></tr>
-<tr class="memdesc:ga2885587c23a106301f20443896365b62"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns true if x holds a positive infinity or negative infinity representation in the underlying implementation's set of floating point representations.  <a href="a00241.html#ga2885587c23a106301f20443896365b62">More...</a><br /></td></tr>
+<tr class="memitem:ga2885587c23a106301f20443896365b62"><td class="memTemplItemLeft" align="right" valign="top">GLM_FUNC_DECL vec&lt; L, bool, Q &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00803.html#ga2885587c23a106301f20443896365b62">isinf</a> (vec&lt; L, T, Q &gt; const &amp;x)</td></tr>
+<tr class="memdesc:ga2885587c23a106301f20443896365b62"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns true if x holds a positive infinity or negative infinity representation in the underlying implementation's set of floating point representations.  <a href="a00803.html#ga2885587c23a106301f20443896365b62">More...</a><br /></td></tr>
 <tr class="separator:ga2885587c23a106301f20443896365b62"><td class="memSeparator" colspan="2">&#160;</td></tr>
 <tr class="memitem:ga29ef934c00306490de837b4746b4e14d"><td class="memTemplParams" colspan="2">template&lt;length_t L, typename T , qualifier Q&gt; </td></tr>
-<tr class="memitem:ga29ef934c00306490de837b4746b4e14d"><td class="memTemplItemLeft" align="right" valign="top">GLM_FUNC_DECL vec&lt; L, bool, Q &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00241.html#ga29ef934c00306490de837b4746b4e14d">isnan</a> (vec&lt; L, T, Q &gt; const &amp;x)</td></tr>
-<tr class="memdesc:ga29ef934c00306490de837b4746b4e14d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns true if x holds a NaN (not a number) representation in the underlying implementation's set of floating point representations.  <a href="a00241.html#ga29ef934c00306490de837b4746b4e14d">More...</a><br /></td></tr>
+<tr class="memitem:ga29ef934c00306490de837b4746b4e14d"><td class="memTemplItemLeft" align="right" valign="top">GLM_FUNC_DECL vec&lt; L, bool, Q &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00803.html#ga29ef934c00306490de837b4746b4e14d">isnan</a> (vec&lt; L, T, Q &gt; const &amp;x)</td></tr>
+<tr class="memdesc:ga29ef934c00306490de837b4746b4e14d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns true if x holds a NaN (not a number) representation in the underlying implementation's set of floating point representations.  <a href="a00803.html#ga29ef934c00306490de837b4746b4e14d">More...</a><br /></td></tr>
 <tr class="separator:ga29ef934c00306490de837b4746b4e14d"><td class="memSeparator" colspan="2">&#160;</td></tr>
 <tr class="memitem:gac3010e0a0c35a1b514540f2fb579c58c"><td class="memTemplParams" colspan="2">template&lt;typename genType &gt; </td></tr>
-<tr class="memitem:gac3010e0a0c35a1b514540f2fb579c58c"><td class="memTemplItemLeft" align="right" valign="top">GLM_FUNC_DECL genType&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00241.html#gac3010e0a0c35a1b514540f2fb579c58c">ldexp</a> (genType const &amp;x, int const &amp;exp)</td></tr>
-<tr class="memdesc:gac3010e0a0c35a1b514540f2fb579c58c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Builds a floating-point number from x and the corresponding integral exponent of two in exp, returning: significand * exp(2, exponent)  <a href="a00241.html#gac3010e0a0c35a1b514540f2fb579c58c">More...</a><br /></td></tr>
+<tr class="memitem:gac3010e0a0c35a1b514540f2fb579c58c"><td class="memTemplItemLeft" align="right" valign="top">GLM_FUNC_DECL genType&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00803.html#gac3010e0a0c35a1b514540f2fb579c58c">ldexp</a> (genType const &amp;x, int const &amp;exp)</td></tr>
+<tr class="memdesc:gac3010e0a0c35a1b514540f2fb579c58c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Builds a floating-point number from x and the corresponding integral exponent of two in exp, returning: significand * exp(2, exponent)  <a href="a00803.html#gac3010e0a0c35a1b514540f2fb579c58c">More...</a><br /></td></tr>
 <tr class="separator:gac3010e0a0c35a1b514540f2fb579c58c"><td class="memSeparator" colspan="2">&#160;</td></tr>
 <tr class="memitem:gae02d42887fc5570451f880e3c624b9ac"><td class="memTemplParams" colspan="2">template&lt;typename genType &gt; </td></tr>
-<tr class="memitem:gae02d42887fc5570451f880e3c624b9ac"><td class="memTemplItemLeft" align="right" valign="top">GLM_FUNC_DECL GLM_CONSTEXPR genType&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00241.html#gae02d42887fc5570451f880e3c624b9ac">max</a> (genType x, genType y)</td></tr>
-<tr class="memdesc:gae02d42887fc5570451f880e3c624b9ac"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns y if x &lt; y; otherwise, it returns x.  <a href="a00241.html#gae02d42887fc5570451f880e3c624b9ac">More...</a><br /></td></tr>
+<tr class="memitem:gae02d42887fc5570451f880e3c624b9ac"><td class="memTemplItemLeft" align="right" valign="top">GLM_FUNC_DECL GLM_CONSTEXPR genType&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00803.html#gae02d42887fc5570451f880e3c624b9ac">max</a> (genType x, genType y)</td></tr>
+<tr class="memdesc:gae02d42887fc5570451f880e3c624b9ac"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns y if x &lt; y; otherwise, it returns x.  <a href="a00803.html#gae02d42887fc5570451f880e3c624b9ac">More...</a><br /></td></tr>
 <tr class="separator:gae02d42887fc5570451f880e3c624b9ac"><td class="memSeparator" colspan="2">&#160;</td></tr>
 <tr class="memitem:ga03e45d6e60d1c36edb00c52edeea0f31"><td class="memTemplParams" colspan="2">template&lt;length_t L, typename T , qualifier Q&gt; </td></tr>
-<tr class="memitem:ga03e45d6e60d1c36edb00c52edeea0f31"><td class="memTemplItemLeft" align="right" valign="top">GLM_FUNC_DECL GLM_CONSTEXPR vec&lt; L, T, Q &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00241.html#ga03e45d6e60d1c36edb00c52edeea0f31">max</a> (vec&lt; L, T, Q &gt; const &amp;x, T y)</td></tr>
-<tr class="memdesc:ga03e45d6e60d1c36edb00c52edeea0f31"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns y if x &lt; y; otherwise, it returns x.  <a href="a00241.html#ga03e45d6e60d1c36edb00c52edeea0f31">More...</a><br /></td></tr>
+<tr class="memitem:ga03e45d6e60d1c36edb00c52edeea0f31"><td class="memTemplItemLeft" align="right" valign="top">GLM_FUNC_DECL GLM_CONSTEXPR vec&lt; L, T, Q &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00803.html#ga03e45d6e60d1c36edb00c52edeea0f31">max</a> (vec&lt; L, T, Q &gt; const &amp;x, T y)</td></tr>
+<tr class="memdesc:ga03e45d6e60d1c36edb00c52edeea0f31"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns y if x &lt; y; otherwise, it returns x.  <a href="a00803.html#ga03e45d6e60d1c36edb00c52edeea0f31">More...</a><br /></td></tr>
 <tr class="separator:ga03e45d6e60d1c36edb00c52edeea0f31"><td class="memSeparator" colspan="2">&#160;</td></tr>
 <tr class="memitem:gac1fec0c3303b572a6d4697a637213870"><td class="memTemplParams" colspan="2">template&lt;length_t L, typename T , qualifier Q&gt; </td></tr>
-<tr class="memitem:gac1fec0c3303b572a6d4697a637213870"><td class="memTemplItemLeft" align="right" valign="top">GLM_FUNC_DECL GLM_CONSTEXPR vec&lt; L, T, Q &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00241.html#gac1fec0c3303b572a6d4697a637213870">max</a> (vec&lt; L, T, Q &gt; const &amp;x, vec&lt; L, T, Q &gt; const &amp;y)</td></tr>
-<tr class="memdesc:gac1fec0c3303b572a6d4697a637213870"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns y if x &lt; y; otherwise, it returns x.  <a href="a00241.html#gac1fec0c3303b572a6d4697a637213870">More...</a><br /></td></tr>
+<tr class="memitem:gac1fec0c3303b572a6d4697a637213870"><td class="memTemplItemLeft" align="right" valign="top">GLM_FUNC_DECL GLM_CONSTEXPR vec&lt; L, T, Q &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00803.html#gac1fec0c3303b572a6d4697a637213870">max</a> (vec&lt; L, T, Q &gt; const &amp;x, vec&lt; L, T, Q &gt; const &amp;y)</td></tr>
+<tr class="memdesc:gac1fec0c3303b572a6d4697a637213870"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns y if x &lt; y; otherwise, it returns x.  <a href="a00803.html#gac1fec0c3303b572a6d4697a637213870">More...</a><br /></td></tr>
 <tr class="separator:gac1fec0c3303b572a6d4697a637213870"><td class="memSeparator" colspan="2">&#160;</td></tr>
 <tr class="memitem:ga6cf8098827054a270ee36b18e30d471d"><td class="memTemplParams" colspan="2">template&lt;typename genType &gt; </td></tr>
-<tr class="memitem:ga6cf8098827054a270ee36b18e30d471d"><td class="memTemplItemLeft" align="right" valign="top">GLM_FUNC_DECL GLM_CONSTEXPR genType&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00241.html#ga6cf8098827054a270ee36b18e30d471d">min</a> (genType x, genType y)</td></tr>
-<tr class="memdesc:ga6cf8098827054a270ee36b18e30d471d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns y if y &lt; x; otherwise, it returns x.  <a href="a00241.html#ga6cf8098827054a270ee36b18e30d471d">More...</a><br /></td></tr>
+<tr class="memitem:ga6cf8098827054a270ee36b18e30d471d"><td class="memTemplItemLeft" align="right" valign="top">GLM_FUNC_DECL GLM_CONSTEXPR genType&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00803.html#ga6cf8098827054a270ee36b18e30d471d">min</a> (genType x, genType y)</td></tr>
+<tr class="memdesc:ga6cf8098827054a270ee36b18e30d471d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns y if y &lt; x; otherwise, it returns x.  <a href="a00803.html#ga6cf8098827054a270ee36b18e30d471d">More...</a><br /></td></tr>
 <tr class="separator:ga6cf8098827054a270ee36b18e30d471d"><td class="memSeparator" colspan="2">&#160;</td></tr>
 <tr class="memitem:gaa7d015eba1f9f48519251f4abe69b14d"><td class="memTemplParams" colspan="2">template&lt;length_t L, typename T , qualifier Q&gt; </td></tr>
-<tr class="memitem:gaa7d015eba1f9f48519251f4abe69b14d"><td class="memTemplItemLeft" align="right" valign="top">GLM_FUNC_DECL GLM_CONSTEXPR vec&lt; L, T, Q &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00241.html#gaa7d015eba1f9f48519251f4abe69b14d">min</a> (vec&lt; L, T, Q &gt; const &amp;x, T y)</td></tr>
-<tr class="memdesc:gaa7d015eba1f9f48519251f4abe69b14d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns y if y &lt; x; otherwise, it returns x.  <a href="a00241.html#gaa7d015eba1f9f48519251f4abe69b14d">More...</a><br /></td></tr>
+<tr class="memitem:gaa7d015eba1f9f48519251f4abe69b14d"><td class="memTemplItemLeft" align="right" valign="top">GLM_FUNC_DECL GLM_CONSTEXPR vec&lt; L, T, Q &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00803.html#gaa7d015eba1f9f48519251f4abe69b14d">min</a> (vec&lt; L, T, Q &gt; const &amp;x, T y)</td></tr>
+<tr class="memdesc:gaa7d015eba1f9f48519251f4abe69b14d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns y if y &lt; x; otherwise, it returns x.  <a href="a00803.html#gaa7d015eba1f9f48519251f4abe69b14d">More...</a><br /></td></tr>
 <tr class="separator:gaa7d015eba1f9f48519251f4abe69b14d"><td class="memSeparator" colspan="2">&#160;</td></tr>
 <tr class="memitem:ga31f49ef9e7d1beb003160c5e009b0c48"><td class="memTemplParams" colspan="2">template&lt;length_t L, typename T , qualifier Q&gt; </td></tr>
-<tr class="memitem:ga31f49ef9e7d1beb003160c5e009b0c48"><td class="memTemplItemLeft" align="right" valign="top">GLM_FUNC_DECL GLM_CONSTEXPR vec&lt; L, T, Q &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00241.html#ga31f49ef9e7d1beb003160c5e009b0c48">min</a> (vec&lt; L, T, Q &gt; const &amp;x, vec&lt; L, T, Q &gt; const &amp;y)</td></tr>
-<tr class="memdesc:ga31f49ef9e7d1beb003160c5e009b0c48"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns y if y &lt; x; otherwise, it returns x.  <a href="a00241.html#ga31f49ef9e7d1beb003160c5e009b0c48">More...</a><br /></td></tr>
+<tr class="memitem:ga31f49ef9e7d1beb003160c5e009b0c48"><td class="memTemplItemLeft" align="right" valign="top">GLM_FUNC_DECL GLM_CONSTEXPR vec&lt; L, T, Q &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00803.html#ga31f49ef9e7d1beb003160c5e009b0c48">min</a> (vec&lt; L, T, Q &gt; const &amp;x, vec&lt; L, T, Q &gt; const &amp;y)</td></tr>
+<tr class="memdesc:ga31f49ef9e7d1beb003160c5e009b0c48"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns y if y &lt; x; otherwise, it returns x.  <a href="a00803.html#ga31f49ef9e7d1beb003160c5e009b0c48">More...</a><br /></td></tr>
 <tr class="separator:ga31f49ef9e7d1beb003160c5e009b0c48"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:ga8e93f374aae27d1a88b921860351f8d4"><td class="memTemplParams" colspan="2">template&lt;typename genTypeT , typename genTypeU &gt; </td></tr>
-<tr class="memitem:ga8e93f374aae27d1a88b921860351f8d4"><td class="memTemplItemLeft" align="right" valign="top">GLM_FUNC_DECL genTypeT&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00241.html#ga8e93f374aae27d1a88b921860351f8d4">mix</a> (genTypeT x, genTypeT y, genTypeU a)</td></tr>
-<tr class="memdesc:ga8e93f374aae27d1a88b921860351f8d4"><td class="mdescLeft">&#160;</td><td class="mdescRight">If genTypeU is a floating scalar or vector: Returns x * (1.0 - a) + y * a, i.e., the linear blend of x and y using the floating-point value a.  <a href="a00241.html#ga8e93f374aae27d1a88b921860351f8d4">More...</a><br /></td></tr>
-<tr class="separator:ga8e93f374aae27d1a88b921860351f8d4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ga6b6e0c7ecb4a5b78f929566355bb7416"><td class="memTemplParams" colspan="2">template&lt;typename genTypeT , typename genTypeU &gt; </td></tr>
+<tr class="memitem:ga6b6e0c7ecb4a5b78f929566355bb7416"><td class="memTemplItemLeft" align="right" valign="top">GLM_FUNC_DECL GLM_CONSTEXPR genTypeT&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00803.html#ga6b6e0c7ecb4a5b78f929566355bb7416">mix</a> (genTypeT x, genTypeT y, genTypeU a)</td></tr>
+<tr class="memdesc:ga6b6e0c7ecb4a5b78f929566355bb7416"><td class="mdescLeft">&#160;</td><td class="mdescRight">If genTypeU is a floating scalar or vector: Returns x * (1.0 - a) + y * a, i.e., the linear blend of x and y using the floating-point value a.  <a href="a00803.html#ga6b6e0c7ecb4a5b78f929566355bb7416">More...</a><br /></td></tr>
+<tr class="separator:ga6b6e0c7ecb4a5b78f929566355bb7416"><td class="memSeparator" colspan="2">&#160;</td></tr>
 <tr class="memitem:ga9b197a452cd52db3c5c18bac72bd7798"><td class="memTemplParams" colspan="2">template&lt;length_t L, typename T , qualifier Q&gt; </td></tr>
-<tr class="memitem:ga9b197a452cd52db3c5c18bac72bd7798"><td class="memTemplItemLeft" align="right" valign="top">GLM_FUNC_DECL vec&lt; L, T, Q &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00241.html#ga9b197a452cd52db3c5c18bac72bd7798">mod</a> (vec&lt; L, T, Q &gt; const &amp;x, vec&lt; L, T, Q &gt; const &amp;y)</td></tr>
-<tr class="memdesc:ga9b197a452cd52db3c5c18bac72bd7798"><td class="mdescLeft">&#160;</td><td class="mdescRight">Modulus.  <a href="a00241.html#ga9b197a452cd52db3c5c18bac72bd7798">More...</a><br /></td></tr>
+<tr class="memitem:ga9b197a452cd52db3c5c18bac72bd7798"><td class="memTemplItemLeft" align="right" valign="top">GLM_FUNC_DECL vec&lt; L, T, Q &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00803.html#ga9b197a452cd52db3c5c18bac72bd7798">mod</a> (vec&lt; L, T, Q &gt; const &amp;x, vec&lt; L, T, Q &gt; const &amp;y)</td></tr>
+<tr class="memdesc:ga9b197a452cd52db3c5c18bac72bd7798"><td class="mdescLeft">&#160;</td><td class="mdescRight">Modulus.  <a href="a00803.html#ga9b197a452cd52db3c5c18bac72bd7798">More...</a><br /></td></tr>
 <tr class="separator:ga9b197a452cd52db3c5c18bac72bd7798"><td class="memSeparator" colspan="2">&#160;</td></tr>
 <tr class="memitem:ga85e33f139b8db1b39b590a5713b9e679"><td class="memTemplParams" colspan="2">template&lt;typename genType &gt; </td></tr>
-<tr class="memitem:ga85e33f139b8db1b39b590a5713b9e679"><td class="memTemplItemLeft" align="right" valign="top">GLM_FUNC_DECL genType&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00241.html#ga85e33f139b8db1b39b590a5713b9e679">modf</a> (genType x, genType &amp;i)</td></tr>
-<tr class="memdesc:ga85e33f139b8db1b39b590a5713b9e679"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the fractional part of x and sets i to the integer part (as a whole number floating point value).  <a href="a00241.html#ga85e33f139b8db1b39b590a5713b9e679">More...</a><br /></td></tr>
+<tr class="memitem:ga85e33f139b8db1b39b590a5713b9e679"><td class="memTemplItemLeft" align="right" valign="top">GLM_FUNC_DECL genType&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00803.html#ga85e33f139b8db1b39b590a5713b9e679">modf</a> (genType x, genType &amp;i)</td></tr>
+<tr class="memdesc:ga85e33f139b8db1b39b590a5713b9e679"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the fractional part of x and sets i to the integer part (as a whole number floating point value).  <a href="a00803.html#ga85e33f139b8db1b39b590a5713b9e679">More...</a><br /></td></tr>
 <tr class="separator:ga85e33f139b8db1b39b590a5713b9e679"><td class="memSeparator" colspan="2">&#160;</td></tr>
 <tr class="memitem:gafa03aca8c4713e1cc892aa92ca135a7e"><td class="memTemplParams" colspan="2">template&lt;length_t L, typename T , qualifier Q&gt; </td></tr>
-<tr class="memitem:gafa03aca8c4713e1cc892aa92ca135a7e"><td class="memTemplItemLeft" align="right" valign="top">GLM_FUNC_DECL vec&lt; L, T, Q &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00241.html#gafa03aca8c4713e1cc892aa92ca135a7e">round</a> (vec&lt; L, T, Q &gt; const &amp;x)</td></tr>
-<tr class="memdesc:gafa03aca8c4713e1cc892aa92ca135a7e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns a value equal to the nearest integer to x.  <a href="a00241.html#gafa03aca8c4713e1cc892aa92ca135a7e">More...</a><br /></td></tr>
+<tr class="memitem:gafa03aca8c4713e1cc892aa92ca135a7e"><td class="memTemplItemLeft" align="right" valign="top">GLM_FUNC_DECL vec&lt; L, T, Q &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00803.html#gafa03aca8c4713e1cc892aa92ca135a7e">round</a> (vec&lt; L, T, Q &gt; const &amp;x)</td></tr>
+<tr class="memdesc:gafa03aca8c4713e1cc892aa92ca135a7e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns a value equal to the nearest integer to x.  <a href="a00803.html#gafa03aca8c4713e1cc892aa92ca135a7e">More...</a><br /></td></tr>
 <tr class="separator:gafa03aca8c4713e1cc892aa92ca135a7e"><td class="memSeparator" colspan="2">&#160;</td></tr>
 <tr class="memitem:ga76b81785045a057989a84d99aeeb1578"><td class="memTemplParams" colspan="2">template&lt;length_t L, typename T , qualifier Q&gt; </td></tr>
-<tr class="memitem:ga76b81785045a057989a84d99aeeb1578"><td class="memTemplItemLeft" align="right" valign="top">GLM_FUNC_DECL vec&lt; L, T, Q &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00241.html#ga76b81785045a057989a84d99aeeb1578">roundEven</a> (vec&lt; L, T, Q &gt; const &amp;x)</td></tr>
-<tr class="memdesc:ga76b81785045a057989a84d99aeeb1578"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns a value equal to the nearest integer to x.  <a href="a00241.html#ga76b81785045a057989a84d99aeeb1578">More...</a><br /></td></tr>
+<tr class="memitem:ga76b81785045a057989a84d99aeeb1578"><td class="memTemplItemLeft" align="right" valign="top">GLM_FUNC_DECL vec&lt; L, T, Q &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00803.html#ga76b81785045a057989a84d99aeeb1578">roundEven</a> (vec&lt; L, T, Q &gt; const &amp;x)</td></tr>
+<tr class="memdesc:ga76b81785045a057989a84d99aeeb1578"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns a value equal to the nearest integer to x.  <a href="a00803.html#ga76b81785045a057989a84d99aeeb1578">More...</a><br /></td></tr>
 <tr class="separator:ga76b81785045a057989a84d99aeeb1578"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:ga1e2e5cfff800056540e32f6c9b604b28"><td class="memTemplParams" colspan="2">template&lt;length_t L, typename T , qualifier Q&gt; </td></tr>
-<tr class="memitem:ga1e2e5cfff800056540e32f6c9b604b28"><td class="memTemplItemLeft" align="right" valign="top">GLM_FUNC_DECL vec&lt; L, T, Q &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00241.html#ga1e2e5cfff800056540e32f6c9b604b28">sign</a> (vec&lt; L, T, Q &gt; const &amp;x)</td></tr>
-<tr class="memdesc:ga1e2e5cfff800056540e32f6c9b604b28"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns 1.0 if x &gt; 0, 0.0 if x == 0, or -1.0 if x &lt; 0.  <a href="a00241.html#ga1e2e5cfff800056540e32f6c9b604b28">More...</a><br /></td></tr>
-<tr class="separator:ga1e2e5cfff800056540e32f6c9b604b28"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ga589807f35ad0a1d173762bfac3288929"><td class="memTemplParams" colspan="2">template&lt;length_t L, typename T , qualifier Q&gt; </td></tr>
+<tr class="memitem:ga589807f35ad0a1d173762bfac3288929"><td class="memTemplItemLeft" align="right" valign="top">GLM_FUNC_DECL GLM_CONSTEXPR vec&lt; L, T, Q &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00803.html#ga589807f35ad0a1d173762bfac3288929">sign</a> (vec&lt; L, T, Q &gt; const &amp;x)</td></tr>
+<tr class="memdesc:ga589807f35ad0a1d173762bfac3288929"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns 1.0 if x &gt; 0, 0.0 if x == 0, or -1.0 if x &lt; 0.  <a href="a00803.html#ga589807f35ad0a1d173762bfac3288929">More...</a><br /></td></tr>
+<tr class="separator:ga589807f35ad0a1d173762bfac3288929"><td class="memSeparator" colspan="2">&#160;</td></tr>
 <tr class="memitem:ga562edf7eca082cc5b7a0aaf180436daf"><td class="memTemplParams" colspan="2">template&lt;typename genType &gt; </td></tr>
-<tr class="memitem:ga562edf7eca082cc5b7a0aaf180436daf"><td class="memTemplItemLeft" align="right" valign="top">GLM_FUNC_DECL genType&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00241.html#ga562edf7eca082cc5b7a0aaf180436daf">smoothstep</a> (genType edge0, genType edge1, genType x)</td></tr>
-<tr class="memdesc:ga562edf7eca082cc5b7a0aaf180436daf"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns 0.0 if x &lt;= edge0 and 1.0 if x &gt;= edge1 and performs smooth Hermite interpolation between 0 and 1 when edge0 &lt; x &lt; edge1.  <a href="a00241.html#ga562edf7eca082cc5b7a0aaf180436daf">More...</a><br /></td></tr>
+<tr class="memitem:ga562edf7eca082cc5b7a0aaf180436daf"><td class="memTemplItemLeft" align="right" valign="top">GLM_FUNC_DECL genType&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00803.html#ga562edf7eca082cc5b7a0aaf180436daf">smoothstep</a> (genType edge0, genType edge1, genType x)</td></tr>
+<tr class="memdesc:ga562edf7eca082cc5b7a0aaf180436daf"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns 0.0 if x &lt;= edge0 and 1.0 if x &gt;= edge1 and performs smooth Hermite interpolation between 0 and 1 when edge0 &lt; x &lt; edge1.  <a href="a00803.html#ga562edf7eca082cc5b7a0aaf180436daf">More...</a><br /></td></tr>
 <tr class="separator:ga562edf7eca082cc5b7a0aaf180436daf"><td class="memSeparator" colspan="2">&#160;</td></tr>
 <tr class="memitem:ga015a1261ff23e12650211aa872863cce"><td class="memTemplParams" colspan="2">template&lt;typename genType &gt; </td></tr>
-<tr class="memitem:ga015a1261ff23e12650211aa872863cce"><td class="memTemplItemLeft" align="right" valign="top">GLM_FUNC_DECL genType&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00241.html#ga015a1261ff23e12650211aa872863cce">step</a> (genType edge, genType x)</td></tr>
-<tr class="memdesc:ga015a1261ff23e12650211aa872863cce"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns 0.0 if x &lt; edge, otherwise it returns 1.0 for each component of a genType.  <a href="a00241.html#ga015a1261ff23e12650211aa872863cce">More...</a><br /></td></tr>
+<tr class="memitem:ga015a1261ff23e12650211aa872863cce"><td class="memTemplItemLeft" align="right" valign="top">GLM_FUNC_DECL genType&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00803.html#ga015a1261ff23e12650211aa872863cce">step</a> (genType edge, genType x)</td></tr>
+<tr class="memdesc:ga015a1261ff23e12650211aa872863cce"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns 0.0 if x &lt; edge, otherwise it returns 1.0 for each component of a genType.  <a href="a00803.html#ga015a1261ff23e12650211aa872863cce">More...</a><br /></td></tr>
 <tr class="separator:ga015a1261ff23e12650211aa872863cce"><td class="memSeparator" colspan="2">&#160;</td></tr>
 <tr class="memitem:ga8f9a911a48ef244b51654eaefc81c551"><td class="memTemplParams" colspan="2">template&lt;length_t L, typename T , qualifier Q&gt; </td></tr>
-<tr class="memitem:ga8f9a911a48ef244b51654eaefc81c551"><td class="memTemplItemLeft" align="right" valign="top">GLM_FUNC_DECL vec&lt; L, T, Q &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00241.html#ga8f9a911a48ef244b51654eaefc81c551">step</a> (T edge, vec&lt; L, T, Q &gt; const &amp;x)</td></tr>
-<tr class="memdesc:ga8f9a911a48ef244b51654eaefc81c551"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns 0.0 if x &lt; edge, otherwise it returns 1.0.  <a href="a00241.html#ga8f9a911a48ef244b51654eaefc81c551">More...</a><br /></td></tr>
+<tr class="memitem:ga8f9a911a48ef244b51654eaefc81c551"><td class="memTemplItemLeft" align="right" valign="top">GLM_FUNC_DECL vec&lt; L, T, Q &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00803.html#ga8f9a911a48ef244b51654eaefc81c551">step</a> (T edge, vec&lt; L, T, Q &gt; const &amp;x)</td></tr>
+<tr class="memdesc:ga8f9a911a48ef244b51654eaefc81c551"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns 0.0 if x &lt; edge, otherwise it returns 1.0.  <a href="a00803.html#ga8f9a911a48ef244b51654eaefc81c551">More...</a><br /></td></tr>
 <tr class="separator:ga8f9a911a48ef244b51654eaefc81c551"><td class="memSeparator" colspan="2">&#160;</td></tr>
 <tr class="memitem:gaf4a5fc81619c7d3e8b22f53d4a098c7f"><td class="memTemplParams" colspan="2">template&lt;length_t L, typename T , qualifier Q&gt; </td></tr>
-<tr class="memitem:gaf4a5fc81619c7d3e8b22f53d4a098c7f"><td class="memTemplItemLeft" align="right" valign="top">GLM_FUNC_DECL vec&lt; L, T, Q &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00241.html#gaf4a5fc81619c7d3e8b22f53d4a098c7f">step</a> (vec&lt; L, T, Q &gt; const &amp;edge, vec&lt; L, T, Q &gt; const &amp;x)</td></tr>
-<tr class="memdesc:gaf4a5fc81619c7d3e8b22f53d4a098c7f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns 0.0 if x &lt; edge, otherwise it returns 1.0.  <a href="a00241.html#gaf4a5fc81619c7d3e8b22f53d4a098c7f">More...</a><br /></td></tr>
+<tr class="memitem:gaf4a5fc81619c7d3e8b22f53d4a098c7f"><td class="memTemplItemLeft" align="right" valign="top">GLM_FUNC_DECL vec&lt; L, T, Q &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00803.html#gaf4a5fc81619c7d3e8b22f53d4a098c7f">step</a> (vec&lt; L, T, Q &gt; const &amp;edge, vec&lt; L, T, Q &gt; const &amp;x)</td></tr>
+<tr class="memdesc:gaf4a5fc81619c7d3e8b22f53d4a098c7f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns 0.0 if x &lt; edge, otherwise it returns 1.0.  <a href="a00803.html#gaf4a5fc81619c7d3e8b22f53d4a098c7f">More...</a><br /></td></tr>
 <tr class="separator:gaf4a5fc81619c7d3e8b22f53d4a098c7f"><td class="memSeparator" colspan="2">&#160;</td></tr>
 <tr class="memitem:gaf9375e3e06173271d49e6ffa3a334259"><td class="memTemplParams" colspan="2">template&lt;length_t L, typename T , qualifier Q&gt; </td></tr>
-<tr class="memitem:gaf9375e3e06173271d49e6ffa3a334259"><td class="memTemplItemLeft" align="right" valign="top">GLM_FUNC_DECL vec&lt; L, T, Q &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00241.html#gaf9375e3e06173271d49e6ffa3a334259">trunc</a> (vec&lt; L, T, Q &gt; const &amp;x)</td></tr>
-<tr class="memdesc:gaf9375e3e06173271d49e6ffa3a334259"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns a value equal to the nearest integer to x whose absolute value is not larger than the absolute value of x.  <a href="a00241.html#gaf9375e3e06173271d49e6ffa3a334259">More...</a><br /></td></tr>
+<tr class="memitem:gaf9375e3e06173271d49e6ffa3a334259"><td class="memTemplItemLeft" align="right" valign="top">GLM_FUNC_DECL vec&lt; L, T, Q &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00803.html#gaf9375e3e06173271d49e6ffa3a334259">trunc</a> (vec&lt; L, T, Q &gt; const &amp;x)</td></tr>
+<tr class="memdesc:gaf9375e3e06173271d49e6ffa3a334259"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns a value equal to the nearest integer to x whose absolute value is not larger than the absolute value of x.  <a href="a00803.html#gaf9375e3e06173271d49e6ffa3a334259">More...</a><br /></td></tr>
 <tr class="separator:gaf9375e3e06173271d49e6ffa3a334259"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:gab2bae0d15dcdca6093f88f76b3975d97"><td class="memItemLeft" align="right" valign="top">GLM_FUNC_DECL float&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00241.html#gab2bae0d15dcdca6093f88f76b3975d97">uintBitsToFloat</a> (uint const &amp;v)</td></tr>
-<tr class="memdesc:gab2bae0d15dcdca6093f88f76b3975d97"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns a floating-point value corresponding to a unsigned integer encoding of a floating-point value.  <a href="a00241.html#gab2bae0d15dcdca6093f88f76b3975d97">More...</a><br /></td></tr>
-<tr class="separator:gab2bae0d15dcdca6093f88f76b3975d97"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:gac427a0b389f2c585269c36ccaee9c5ed"><td class="memItemLeft" align="right" valign="top">GLM_FUNC_DECL float&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00803.html#gac427a0b389f2c585269c36ccaee9c5ed">uintBitsToFloat</a> (uint v)</td></tr>
+<tr class="memdesc:gac427a0b389f2c585269c36ccaee9c5ed"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns a floating-point value corresponding to a unsigned integer encoding of a floating-point value.  <a href="a00803.html#gac427a0b389f2c585269c36ccaee9c5ed">More...</a><br /></td></tr>
+<tr class="separator:gac427a0b389f2c585269c36ccaee9c5ed"><td class="memSeparator" colspan="2">&#160;</td></tr>
 <tr class="memitem:ga97f46b5f7b42fe44482e13356eb394ae"><td class="memTemplParams" colspan="2">template&lt;length_t L, qualifier Q&gt; </td></tr>
-<tr class="memitem:ga97f46b5f7b42fe44482e13356eb394ae"><td class="memTemplItemLeft" align="right" valign="top">GLM_FUNC_DECL vec&lt; L, float, Q &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00241.html#ga97f46b5f7b42fe44482e13356eb394ae">uintBitsToFloat</a> (vec&lt; L, uint, Q &gt; const &amp;v)</td></tr>
-<tr class="memdesc:ga97f46b5f7b42fe44482e13356eb394ae"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns a floating-point value corresponding to a unsigned integer encoding of a floating-point value.  <a href="a00241.html#ga97f46b5f7b42fe44482e13356eb394ae">More...</a><br /></td></tr>
+<tr class="memitem:ga97f46b5f7b42fe44482e13356eb394ae"><td class="memTemplItemLeft" align="right" valign="top">GLM_FUNC_DECL vec&lt; L, float, Q &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00803.html#ga97f46b5f7b42fe44482e13356eb394ae">uintBitsToFloat</a> (vec&lt; L, uint, Q &gt; const &amp;v)</td></tr>
+<tr class="memdesc:ga97f46b5f7b42fe44482e13356eb394ae"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns a floating-point value corresponding to a unsigned integer encoding of a floating-point value.  <a href="a00803.html#ga97f46b5f7b42fe44482e13356eb394ae">More...</a><br /></td></tr>
 <tr class="separator:ga97f46b5f7b42fe44482e13356eb394ae"><td class="memSeparator" colspan="2">&#160;</td></tr>
 </table>
 <a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
-<div class="textblock"><p><a class="el" href="a00280.html">Core features</a> </p>
+<div class="textblock"><p><a class="el" href="a00889.html">Core features</a> </p>
 <dl class="section see"><dt>See also</dt><dd><a href="http://www.opengl.org/registry/doc/GLSLangSpec.4.20.8.pdf">GLSL 4.20.8 specification, section 8.3 Common Functions</a> </dd></dl>
 
-<p>Definition in file <a class="el" href="a00015_source.html">common.hpp</a>.</p>
+<p class="definition">Definition in file <a class="el" href="a00002_source.html">common.hpp</a>.</p>
 </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.10
+</a> 1.8.18
 </small></address>
 </body>
 </html>

+ 197 - 61
doc/api/a00002_source.html

@@ -1,19 +1,17 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://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.10"/>
-<title>0.9.9 API documentation: _fixes.hpp Source File</title>
+<meta name="generator" content="Doxygen 1.8.18"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>1.0.0 API documentation: common.hpp Source File</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="search/search.css" rel="stylesheet" type="text/css"/>
 <script type="text/javascript" src="search/searchdata.js"></script>
 <script type="text/javascript" src="search/search.js"></script>
-<script type="text/javascript">
-  $(document).ready(function() { init_search(); });
-</script>
 <link href="doxygen.css" rel="stylesheet" type="text/css" />
 </head>
 <body>
@@ -24,7 +22,7 @@
  <tr style="height: 56px;">
   <td id="projectlogo"><img alt="Logo" src="logo-mini.png"/></td>
   <td id="projectalign" style="padding-left: 0.5em;">
-   <div id="projectname">0.9.9 API documentation
+   <div id="projectname">1.0.0 API documentation
    </div>
   </td>
  </tr>
@@ -32,38 +30,22 @@
 </table>
 </div>
 <!-- end header part -->
-<!-- Generated by Doxygen 1.8.10 -->
+<!-- Generated by Doxygen 1.8.18 -->
 <script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
 var searchBox = new SearchBox("searchBox", "search",false,'Search');
+/* @license-end */
 </script>
-  <div id="navrow1" class="tabs">
-    <ul class="tablist">
-      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
-      <li><a href="modules.html"><span>Modules</span></a></li>
-      <li class="current"><a href="files.html"><span>Files</span></a></li>
-      <li>
-        <div id="MSearchBox" class="MSearchBoxInactive">
-        <span class="left">
-          <img id="MSearchSelect" src="search/mag_sel.png"
-               onmouseover="return searchBox.OnSearchSelectShow()"
-               onmouseout="return searchBox.OnSearchSelectHide()"
-               alt=""/>
-          <input type="text" id="MSearchField" value="Search" accesskey="S"
-               onfocus="searchBox.OnSearchFieldFocus(true)" 
-               onblur="searchBox.OnSearchFieldFocus(false)" 
-               onkeyup="searchBox.OnSearchFieldChange(event)"/>
-          </span><span class="right">
-            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
-          </span>
-        </div>
-      </li>
-    </ul>
-  </div>
-  <div id="navrow2" class="tabs2">
-    <ul class="tablist">
-      <li><a href="files.html"><span>File&#160;List</span></a></li>
-    </ul>
-  </div>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
 <!-- window showing the filter options -->
 <div id="MSearchSelectWindow"
      onmouseover="return searchBox.OnSearchSelectShow()"
@@ -80,42 +62,196 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 
 <div id="nav-path" class="navpath">
   <ul>
-<li class="navelem"><a class="el" href="dir_3a581ba30d25676e4b797b1f96d53b45.html">F:</a></li><li class="navelem"><a class="el" href="dir_9e5fe034a00e89334fd5186c3e7db156.html">G-Truc</a></li><li class="navelem"><a class="el" href="dir_d9496f0844b48bc7e53b5af8c99b9ab2.html">Source</a></li><li class="navelem"><a class="el" href="dir_a8bee7be44182a33f3820393ae0b105d.html">G-Truc</a></li><li class="navelem"><a class="el" href="dir_44e5e654415abd9ca6fdeaddaff8565e.html">glm</a></li><li class="navelem"><a class="el" href="dir_cef2d71d502cb69a9252bca2297d9549.html">glm</a></li><li class="navelem"><a class="el" href="dir_033f5edb0915b828d2c46ed4804e5503.html">detail</a></li>  </ul>
+<li class="navelem"><a class="el" href="dir_885cc87fac2d91e269af0a5a959fa5f6.html">E:</a></li><li class="navelem"><a class="el" href="dir_63ed049134a778d525e06b63afc2c979.html">Github</a></li><li class="navelem"><a class="el" href="dir_c98a9ac98258ab9f831b188d66361a70.html">g-truc</a></li><li class="navelem"><a class="el" href="dir_50f12b6ceb23d7f6adfb377a1ae8b006.html">glm</a></li><li class="navelem"><a class="el" href="dir_fca33f1b5115d46f42c670590789c0d2.html">glm</a></li>  </ul>
 </div>
 </div><!-- top -->
 <div class="header">
   <div class="headertitle">
-<div class="title">_fixes.hpp</div>  </div>
+<div class="title">common.hpp</div>  </div>
 </div><!--header-->
 <div class="contents">
-<div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span>&#160;<span class="preprocessor">#include &lt;cmath&gt;</span></div>
-<div class="line"><a name="l00002"></a><span class="lineno">    2</span>&#160;</div>
-<div class="line"><a name="l00004"></a><span class="lineno">    4</span>&#160;<span class="preprocessor">#ifdef max</span></div>
-<div class="line"><a name="l00005"></a><span class="lineno">    5</span>&#160;<span class="preprocessor">#undef max</span></div>
-<div class="line"><a name="l00006"></a><span class="lineno">    6</span>&#160;<span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00007"></a><span class="lineno">    7</span>&#160;</div>
-<div class="line"><a name="l00009"></a><span class="lineno">    9</span>&#160;<span class="preprocessor">#ifdef min</span></div>
-<div class="line"><a name="l00010"></a><span class="lineno">   10</span>&#160;<span class="preprocessor">#undef min</span></div>
-<div class="line"><a name="l00011"></a><span class="lineno">   11</span>&#160;<span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00012"></a><span class="lineno">   12</span>&#160;</div>
-<div class="line"><a name="l00014"></a><span class="lineno">   14</span>&#160;<span class="preprocessor">#ifdef isnan</span></div>
-<div class="line"><a name="l00015"></a><span class="lineno">   15</span>&#160;<span class="preprocessor">#undef isnan</span></div>
-<div class="line"><a name="l00016"></a><span class="lineno">   16</span>&#160;<span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00017"></a><span class="lineno">   17</span>&#160;</div>
-<div class="line"><a name="l00019"></a><span class="lineno">   19</span>&#160;<span class="preprocessor">#ifdef isinf</span></div>
-<div class="line"><a name="l00020"></a><span class="lineno">   20</span>&#160;<span class="preprocessor">#undef isinf</span></div>
-<div class="line"><a name="l00021"></a><span class="lineno">   21</span>&#160;<span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00022"></a><span class="lineno">   22</span>&#160;</div>
-<div class="line"><a name="l00024"></a><span class="lineno">   24</span>&#160;<span class="preprocessor">#ifdef log2</span></div>
-<div class="line"><a name="l00025"></a><span class="lineno">   25</span>&#160;<span class="preprocessor">#undef log2</span></div>
-<div class="line"><a name="l00026"></a><span class="lineno">   26</span>&#160;<span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00027"></a><span class="lineno">   27</span>&#160;</div>
+<a href="a00002.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span>&#160; </div>
+<div class="line"><a name="l00015"></a><span class="lineno">   15</span>&#160;<span class="preprocessor">#pragma once</span></div>
+<div class="line"><a name="l00016"></a><span class="lineno">   16</span>&#160; </div>
+<div class="line"><a name="l00017"></a><span class="lineno">   17</span>&#160;<span class="preprocessor">#include &quot;detail/qualifier.hpp&quot;</span></div>
+<div class="line"><a name="l00018"></a><span class="lineno">   18</span>&#160;<span class="preprocessor">#include &quot;detail/_fixes.hpp&quot;</span></div>
+<div class="line"><a name="l00019"></a><span class="lineno">   19</span>&#160; </div>
+<div class="line"><a name="l00020"></a><span class="lineno">   20</span>&#160;<span class="keyword">namespace </span>glm</div>
+<div class="line"><a name="l00021"></a><span class="lineno">   21</span>&#160;{</div>
+<div class="line"><a name="l00024"></a><span class="lineno">   24</span>&#160; </div>
+<div class="line"><a name="l00031"></a><span class="lineno">   31</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> genType&gt;</div>
+<div class="line"><a name="l00032"></a><span class="lineno"><a class="line" href="a00803.html#ga439e60a72eadecfeda2df5449c613a64">   32</a></span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR genType <a class="code" href="a00803.html#ga81d3abddd0ef0c8de579bc541ecadab6">abs</a>(genType x);</div>
+<div class="line"><a name="l00033"></a><span class="lineno">   33</span>&#160; </div>
+<div class="line"><a name="l00042"></a><span class="lineno">   42</span>&#160;        <span class="keyword">template</span>&lt;length_t L, <span class="keyword">typename</span> T, qualifier Q&gt;</div>
+<div class="line"><a name="l00043"></a><span class="lineno"><a class="line" href="a00803.html#ga81d3abddd0ef0c8de579bc541ecadab6">   43</a></span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR vec&lt;L, T, Q&gt; <a class="code" href="a00803.html#ga81d3abddd0ef0c8de579bc541ecadab6">abs</a>(vec&lt;L, T, Q&gt; <span class="keyword">const</span>&amp; x);</div>
+<div class="line"><a name="l00044"></a><span class="lineno">   44</span>&#160; </div>
+<div class="line"><a name="l00053"></a><span class="lineno">   53</span>&#160;        <span class="keyword">template</span>&lt;length_t L, <span class="keyword">typename</span> T, qualifier Q&gt;</div>
+<div class="line"><a name="l00054"></a><span class="lineno"><a class="line" href="a00803.html#ga589807f35ad0a1d173762bfac3288929">   54</a></span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR vec&lt;L, T, Q&gt; <a class="code" href="a00803.html#ga589807f35ad0a1d173762bfac3288929">sign</a>(vec&lt;L, T, Q&gt; <span class="keyword">const</span>&amp; x);</div>
+<div class="line"><a name="l00055"></a><span class="lineno">   55</span>&#160; </div>
+<div class="line"><a name="l00064"></a><span class="lineno">   64</span>&#160;        <span class="keyword">template</span>&lt;length_t L, <span class="keyword">typename</span> T, qualifier Q&gt;</div>
+<div class="line"><a name="l00065"></a><span class="lineno"><a class="line" href="a00803.html#gaa9d0742639e85b29c7c5de11cfd6840d">   65</a></span>&#160;        GLM_FUNC_DECL vec&lt;L, T, Q&gt; <a class="code" href="a00803.html#gaa9d0742639e85b29c7c5de11cfd6840d">floor</a>(vec&lt;L, T, Q&gt; <span class="keyword">const</span>&amp; x);</div>
+<div class="line"><a name="l00066"></a><span class="lineno">   66</span>&#160; </div>
+<div class="line"><a name="l00076"></a><span class="lineno">   76</span>&#160;        <span class="keyword">template</span>&lt;length_t L, <span class="keyword">typename</span> T, qualifier Q&gt;</div>
+<div class="line"><a name="l00077"></a><span class="lineno"><a class="line" href="a00803.html#gaf9375e3e06173271d49e6ffa3a334259">   77</a></span>&#160;        GLM_FUNC_DECL vec&lt;L, T, Q&gt; <a class="code" href="a00803.html#gaf9375e3e06173271d49e6ffa3a334259">trunc</a>(vec&lt;L, T, Q&gt; <span class="keyword">const</span>&amp; x);</div>
+<div class="line"><a name="l00078"></a><span class="lineno">   78</span>&#160; </div>
+<div class="line"><a name="l00091"></a><span class="lineno">   91</span>&#160;        <span class="keyword">template</span>&lt;length_t L, <span class="keyword">typename</span> T, qualifier Q&gt;</div>
+<div class="line"><a name="l00092"></a><span class="lineno"><a class="line" href="a00803.html#gafa03aca8c4713e1cc892aa92ca135a7e">   92</a></span>&#160;        GLM_FUNC_DECL vec&lt;L, T, Q&gt; <a class="code" href="a00803.html#gafa03aca8c4713e1cc892aa92ca135a7e">round</a>(vec&lt;L, T, Q&gt; <span class="keyword">const</span>&amp; x);</div>
+<div class="line"><a name="l00093"></a><span class="lineno">   93</span>&#160; </div>
+<div class="line"><a name="l00105"></a><span class="lineno">  105</span>&#160;        <span class="keyword">template</span>&lt;length_t L, <span class="keyword">typename</span> T, qualifier Q&gt;</div>
+<div class="line"><a name="l00106"></a><span class="lineno"><a class="line" href="a00803.html#ga76b81785045a057989a84d99aeeb1578">  106</a></span>&#160;        GLM_FUNC_DECL vec&lt;L, T, Q&gt; <a class="code" href="a00803.html#ga76b81785045a057989a84d99aeeb1578">roundEven</a>(vec&lt;L, T, Q&gt; <span class="keyword">const</span>&amp; x);</div>
+<div class="line"><a name="l00107"></a><span class="lineno">  107</span>&#160; </div>
+<div class="line"><a name="l00117"></a><span class="lineno">  117</span>&#160;        <span class="keyword">template</span>&lt;length_t L, <span class="keyword">typename</span> T, qualifier Q&gt;</div>
+<div class="line"><a name="l00118"></a><span class="lineno"><a class="line" href="a00803.html#gafb9d2a645a23aca12d4d6de0104b7657">  118</a></span>&#160;        GLM_FUNC_DECL vec&lt;L, T, Q&gt; <a class="code" href="a00803.html#gafb9d2a645a23aca12d4d6de0104b7657">ceil</a>(vec&lt;L, T, Q&gt; <span class="keyword">const</span>&amp; x);</div>
+<div class="line"><a name="l00119"></a><span class="lineno">  119</span>&#160; </div>
+<div class="line"><a name="l00126"></a><span class="lineno">  126</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> genType&gt;</div>
+<div class="line"><a name="l00127"></a><span class="lineno"><a class="line" href="a00803.html#ga8ba89e40e55ae5cdf228548f9b7639c7">  127</a></span>&#160;        GLM_FUNC_DECL genType <a class="code" href="a00803.html#ga2df623004f634b440d61e018d62c751b">fract</a>(genType x);</div>
+<div class="line"><a name="l00128"></a><span class="lineno">  128</span>&#160; </div>
+<div class="line"><a name="l00137"></a><span class="lineno">  137</span>&#160;        <span class="keyword">template</span>&lt;length_t L, <span class="keyword">typename</span> T, qualifier Q&gt;</div>
+<div class="line"><a name="l00138"></a><span class="lineno"><a class="line" href="a00803.html#ga2df623004f634b440d61e018d62c751b">  138</a></span>&#160;        GLM_FUNC_DECL vec&lt;L, T, Q&gt; <a class="code" href="a00803.html#ga2df623004f634b440d61e018d62c751b">fract</a>(vec&lt;L, T, Q&gt; <span class="keyword">const</span>&amp; x);</div>
+<div class="line"><a name="l00139"></a><span class="lineno">  139</span>&#160; </div>
+<div class="line"><a name="l00140"></a><span class="lineno">  140</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> genType&gt;</div>
+<div class="line"><a name="l00141"></a><span class="lineno">  141</span>&#160;        GLM_FUNC_DECL genType <a class="code" href="a00803.html#ga9b197a452cd52db3c5c18bac72bd7798">mod</a>(genType x, genType y);</div>
+<div class="line"><a name="l00142"></a><span class="lineno">  142</span>&#160; </div>
+<div class="line"><a name="l00143"></a><span class="lineno">  143</span>&#160;        <span class="keyword">template</span>&lt;length_t L, <span class="keyword">typename</span> T, qualifier Q&gt;</div>
+<div class="line"><a name="l00144"></a><span class="lineno">  144</span>&#160;        GLM_FUNC_DECL vec&lt;L, T, Q&gt; <a class="code" href="a00803.html#ga9b197a452cd52db3c5c18bac72bd7798">mod</a>(vec&lt;L, T, Q&gt; <span class="keyword">const</span>&amp; x, T y);</div>
+<div class="line"><a name="l00145"></a><span class="lineno">  145</span>&#160; </div>
+<div class="line"><a name="l00155"></a><span class="lineno">  155</span>&#160;        <span class="keyword">template</span>&lt;length_t L, <span class="keyword">typename</span> T, qualifier Q&gt;</div>
+<div class="line"><a name="l00156"></a><span class="lineno"><a class="line" href="a00803.html#ga9b197a452cd52db3c5c18bac72bd7798">  156</a></span>&#160;        GLM_FUNC_DECL vec&lt;L, T, Q&gt; <a class="code" href="a00803.html#ga9b197a452cd52db3c5c18bac72bd7798">mod</a>(vec&lt;L, T, Q&gt; <span class="keyword">const</span>&amp; x, vec&lt;L, T, Q&gt; <span class="keyword">const</span>&amp; y);</div>
+<div class="line"><a name="l00157"></a><span class="lineno">  157</span>&#160; </div>
+<div class="line"><a name="l00167"></a><span class="lineno">  167</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> genType&gt;</div>
+<div class="line"><a name="l00168"></a><span class="lineno"><a class="line" href="a00803.html#ga85e33f139b8db1b39b590a5713b9e679">  168</a></span>&#160;        GLM_FUNC_DECL genType <a class="code" href="a00803.html#ga85e33f139b8db1b39b590a5713b9e679">modf</a>(genType x, genType&amp; i);</div>
+<div class="line"><a name="l00169"></a><span class="lineno">  169</span>&#160; </div>
+<div class="line"><a name="l00176"></a><span class="lineno">  176</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> genType&gt;</div>
+<div class="line"><a name="l00177"></a><span class="lineno"><a class="line" href="a00803.html#ga6cf8098827054a270ee36b18e30d471d">  177</a></span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR genType <a class="code" href="a00803.html#ga31f49ef9e7d1beb003160c5e009b0c48">min</a>(genType x, genType y);</div>
+<div class="line"><a name="l00178"></a><span class="lineno">  178</span>&#160; </div>
+<div class="line"><a name="l00187"></a><span class="lineno">  187</span>&#160;        <span class="keyword">template</span>&lt;length_t L, <span class="keyword">typename</span> T, qualifier Q&gt;</div>
+<div class="line"><a name="l00188"></a><span class="lineno"><a class="line" href="a00803.html#gaa7d015eba1f9f48519251f4abe69b14d">  188</a></span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR vec&lt;L, T, Q&gt; <a class="code" href="a00803.html#ga31f49ef9e7d1beb003160c5e009b0c48">min</a>(vec&lt;L, T, Q&gt; <span class="keyword">const</span>&amp; x, T y);</div>
+<div class="line"><a name="l00189"></a><span class="lineno">  189</span>&#160; </div>
+<div class="line"><a name="l00198"></a><span class="lineno">  198</span>&#160;        <span class="keyword">template</span>&lt;length_t L, <span class="keyword">typename</span> T, qualifier Q&gt;</div>
+<div class="line"><a name="l00199"></a><span class="lineno"><a class="line" href="a00803.html#ga31f49ef9e7d1beb003160c5e009b0c48">  199</a></span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR vec&lt;L, T, Q&gt; <a class="code" href="a00803.html#ga31f49ef9e7d1beb003160c5e009b0c48">min</a>(vec&lt;L, T, Q&gt; <span class="keyword">const</span>&amp; x, vec&lt;L, T, Q&gt; <span class="keyword">const</span>&amp; y);</div>
+<div class="line"><a name="l00200"></a><span class="lineno">  200</span>&#160; </div>
+<div class="line"><a name="l00207"></a><span class="lineno">  207</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> genType&gt;</div>
+<div class="line"><a name="l00208"></a><span class="lineno"><a class="line" href="a00803.html#gae02d42887fc5570451f880e3c624b9ac">  208</a></span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR genType <a class="code" href="a00803.html#gac1fec0c3303b572a6d4697a637213870">max</a>(genType x, genType y);</div>
+<div class="line"><a name="l00209"></a><span class="lineno">  209</span>&#160; </div>
+<div class="line"><a name="l00218"></a><span class="lineno">  218</span>&#160;        <span class="keyword">template</span>&lt;length_t L, <span class="keyword">typename</span> T, qualifier Q&gt;</div>
+<div class="line"><a name="l00219"></a><span class="lineno"><a class="line" href="a00803.html#ga03e45d6e60d1c36edb00c52edeea0f31">  219</a></span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR vec&lt;L, T, Q&gt; <a class="code" href="a00803.html#gac1fec0c3303b572a6d4697a637213870">max</a>(vec&lt;L, T, Q&gt; <span class="keyword">const</span>&amp; x, T y);</div>
+<div class="line"><a name="l00220"></a><span class="lineno">  220</span>&#160; </div>
+<div class="line"><a name="l00229"></a><span class="lineno">  229</span>&#160;        <span class="keyword">template</span>&lt;length_t L, <span class="keyword">typename</span> T, qualifier Q&gt;</div>
+<div class="line"><a name="l00230"></a><span class="lineno"><a class="line" href="a00803.html#gac1fec0c3303b572a6d4697a637213870">  230</a></span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR vec&lt;L, T, Q&gt; <a class="code" href="a00803.html#gac1fec0c3303b572a6d4697a637213870">max</a>(vec&lt;L, T, Q&gt; <span class="keyword">const</span>&amp; x, vec&lt;L, T, Q&gt; <span class="keyword">const</span>&amp; y);</div>
+<div class="line"><a name="l00231"></a><span class="lineno">  231</span>&#160; </div>
+<div class="line"><a name="l00239"></a><span class="lineno">  239</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> genType&gt;</div>
+<div class="line"><a name="l00240"></a><span class="lineno"><a class="line" href="a00803.html#ga7cd77683da6361e297c56443fc70806d">  240</a></span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR genType <a class="code" href="a00803.html#gaa0f2f12e9108b09e22a3f0b2008a0b5d">clamp</a>(genType x, genType minVal, genType maxVal);</div>
+<div class="line"><a name="l00241"></a><span class="lineno">  241</span>&#160; </div>
+<div class="line"><a name="l00251"></a><span class="lineno">  251</span>&#160;        <span class="keyword">template</span>&lt;length_t L, <span class="keyword">typename</span> T, qualifier Q&gt;</div>
+<div class="line"><a name="l00252"></a><span class="lineno"><a class="line" href="a00803.html#gafba2e0674deb5953878d89483cd6323d">  252</a></span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR vec&lt;L, T, Q&gt; <a class="code" href="a00803.html#gaa0f2f12e9108b09e22a3f0b2008a0b5d">clamp</a>(vec&lt;L, T, Q&gt; <span class="keyword">const</span>&amp; x, T minVal, T maxVal);</div>
+<div class="line"><a name="l00253"></a><span class="lineno">  253</span>&#160; </div>
+<div class="line"><a name="l00263"></a><span class="lineno">  263</span>&#160;        <span class="keyword">template</span>&lt;length_t L, <span class="keyword">typename</span> T, qualifier Q&gt;</div>
+<div class="line"><a name="l00264"></a><span class="lineno"><a class="line" href="a00803.html#gaa0f2f12e9108b09e22a3f0b2008a0b5d">  264</a></span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR vec&lt;L, T, Q&gt; <a class="code" href="a00803.html#gaa0f2f12e9108b09e22a3f0b2008a0b5d">clamp</a>(vec&lt;L, T, Q&gt; <span class="keyword">const</span>&amp; x, vec&lt;L, T, Q&gt; <span class="keyword">const</span>&amp; minVal, vec&lt;L, T, Q&gt; <span class="keyword">const</span>&amp; maxVal);</div>
+<div class="line"><a name="l00265"></a><span class="lineno">  265</span>&#160; </div>
+<div class="line"><a name="l00308"></a><span class="lineno">  308</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> genTypeT, <span class="keyword">typename</span> genTypeU&gt;</div>
+<div class="line"><a name="l00309"></a><span class="lineno"><a class="line" href="a00803.html#ga6b6e0c7ecb4a5b78f929566355bb7416">  309</a></span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR genTypeT <a class="code" href="a00803.html#ga6b6e0c7ecb4a5b78f929566355bb7416">mix</a>(genTypeT x, genTypeT y, genTypeU a);</div>
+<div class="line"><a name="l00310"></a><span class="lineno">  310</span>&#160; </div>
+<div class="line"><a name="l00311"></a><span class="lineno">  311</span>&#160;        <span class="keyword">template</span>&lt;length_t L, <span class="keyword">typename</span> T, <span class="keyword">typename</span> U, qualifier Q&gt;</div>
+<div class="line"><a name="l00312"></a><span class="lineno">  312</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR vec&lt;L, T, Q&gt; <a class="code" href="a00803.html#ga6b6e0c7ecb4a5b78f929566355bb7416">mix</a>(vec&lt;L, T, Q&gt; <span class="keyword">const</span>&amp; x, vec&lt;L, T, Q&gt; <span class="keyword">const</span>&amp; y, vec&lt;L, U, Q&gt; <span class="keyword">const</span>&amp; a);</div>
+<div class="line"><a name="l00313"></a><span class="lineno">  313</span>&#160; </div>
+<div class="line"><a name="l00314"></a><span class="lineno">  314</span>&#160;        <span class="keyword">template</span>&lt;length_t L, <span class="keyword">typename</span> T, <span class="keyword">typename</span> U, qualifier Q&gt;</div>
+<div class="line"><a name="l00315"></a><span class="lineno">  315</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR vec&lt;L, T, Q&gt; <a class="code" href="a00803.html#ga6b6e0c7ecb4a5b78f929566355bb7416">mix</a>(vec&lt;L, T, Q&gt; <span class="keyword">const</span>&amp; x, vec&lt;L, T, Q&gt; <span class="keyword">const</span>&amp; y, U a);</div>
+<div class="line"><a name="l00316"></a><span class="lineno">  316</span>&#160; </div>
+<div class="line"><a name="l00321"></a><span class="lineno">  321</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> genType&gt;</div>
+<div class="line"><a name="l00322"></a><span class="lineno"><a class="line" href="a00803.html#ga015a1261ff23e12650211aa872863cce">  322</a></span>&#160;        GLM_FUNC_DECL genType <a class="code" href="a00803.html#gaf4a5fc81619c7d3e8b22f53d4a098c7f">step</a>(genType edge, genType x);</div>
+<div class="line"><a name="l00323"></a><span class="lineno">  323</span>&#160; </div>
+<div class="line"><a name="l00332"></a><span class="lineno">  332</span>&#160;        <span class="keyword">template</span>&lt;length_t L, <span class="keyword">typename</span> T, qualifier Q&gt;</div>
+<div class="line"><a name="l00333"></a><span class="lineno"><a class="line" href="a00803.html#ga8f9a911a48ef244b51654eaefc81c551">  333</a></span>&#160;        GLM_FUNC_DECL vec&lt;L, T, Q&gt; <a class="code" href="a00803.html#gaf4a5fc81619c7d3e8b22f53d4a098c7f">step</a>(T edge, vec&lt;L, T, Q&gt; <span class="keyword">const</span>&amp; x);</div>
+<div class="line"><a name="l00334"></a><span class="lineno">  334</span>&#160; </div>
+<div class="line"><a name="l00343"></a><span class="lineno">  343</span>&#160;        <span class="keyword">template</span>&lt;length_t L, <span class="keyword">typename</span> T, qualifier Q&gt;</div>
+<div class="line"><a name="l00344"></a><span class="lineno"><a class="line" href="a00803.html#gaf4a5fc81619c7d3e8b22f53d4a098c7f">  344</a></span>&#160;        GLM_FUNC_DECL vec&lt;L, T, Q&gt; <a class="code" href="a00803.html#gaf4a5fc81619c7d3e8b22f53d4a098c7f">step</a>(vec&lt;L, T, Q&gt; <span class="keyword">const</span>&amp; edge, vec&lt;L, T, Q&gt; <span class="keyword">const</span>&amp; x);</div>
+<div class="line"><a name="l00345"></a><span class="lineno">  345</span>&#160; </div>
+<div class="line"><a name="l00360"></a><span class="lineno">  360</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> genType&gt;</div>
+<div class="line"><a name="l00361"></a><span class="lineno"><a class="line" href="a00803.html#ga562edf7eca082cc5b7a0aaf180436daf">  361</a></span>&#160;        GLM_FUNC_DECL genType <a class="code" href="a00803.html#ga562edf7eca082cc5b7a0aaf180436daf">smoothstep</a>(genType edge0, genType edge1, genType x);</div>
+<div class="line"><a name="l00362"></a><span class="lineno">  362</span>&#160; </div>
+<div class="line"><a name="l00363"></a><span class="lineno">  363</span>&#160;        <span class="keyword">template</span>&lt;length_t L, <span class="keyword">typename</span> T, qualifier Q&gt;</div>
+<div class="line"><a name="l00364"></a><span class="lineno">  364</span>&#160;        GLM_FUNC_DECL vec&lt;L, T, Q&gt; <a class="code" href="a00803.html#ga562edf7eca082cc5b7a0aaf180436daf">smoothstep</a>(T edge0, T edge1, vec&lt;L, T, Q&gt; <span class="keyword">const</span>&amp; x);</div>
+<div class="line"><a name="l00365"></a><span class="lineno">  365</span>&#160; </div>
+<div class="line"><a name="l00366"></a><span class="lineno">  366</span>&#160;        <span class="keyword">template</span>&lt;length_t L, <span class="keyword">typename</span> T, qualifier Q&gt;</div>
+<div class="line"><a name="l00367"></a><span class="lineno">  367</span>&#160;        GLM_FUNC_DECL vec&lt;L, T, Q&gt; <a class="code" href="a00803.html#ga562edf7eca082cc5b7a0aaf180436daf">smoothstep</a>(vec&lt;L, T, Q&gt; <span class="keyword">const</span>&amp; edge0, vec&lt;L, T, Q&gt; <span class="keyword">const</span>&amp; edge1, vec&lt;L, T, Q&gt; <span class="keyword">const</span>&amp; x);</div>
+<div class="line"><a name="l00368"></a><span class="lineno">  368</span>&#160; </div>
+<div class="line"><a name="l00383"></a><span class="lineno">  383</span>&#160;        <span class="keyword">template</span>&lt;length_t L, <span class="keyword">typename</span> T, qualifier Q&gt;</div>
+<div class="line"><a name="l00384"></a><span class="lineno"><a class="line" href="a00803.html#ga29ef934c00306490de837b4746b4e14d">  384</a></span>&#160;        GLM_FUNC_DECL vec&lt;L, bool, Q&gt; <a class="code" href="a00803.html#ga29ef934c00306490de837b4746b4e14d">isnan</a>(vec&lt;L, T, Q&gt; <span class="keyword">const</span>&amp; x);</div>
+<div class="line"><a name="l00385"></a><span class="lineno">  385</span>&#160; </div>
+<div class="line"><a name="l00398"></a><span class="lineno">  398</span>&#160;        <span class="keyword">template</span>&lt;length_t L, <span class="keyword">typename</span> T, qualifier Q&gt;</div>
+<div class="line"><a name="l00399"></a><span class="lineno"><a class="line" href="a00803.html#ga2885587c23a106301f20443896365b62">  399</a></span>&#160;        GLM_FUNC_DECL vec&lt;L, bool, Q&gt; <a class="code" href="a00803.html#ga2885587c23a106301f20443896365b62">isinf</a>(vec&lt;L, T, Q&gt; <span class="keyword">const</span>&amp; x);</div>
+<div class="line"><a name="l00400"></a><span class="lineno">  400</span>&#160; </div>
+<div class="line"><a name="l00407"></a><span class="lineno"><a class="line" href="a00803.html#ga8a23e454d8ae48b8f6dfdaea4b756072">  407</a></span>&#160;        GLM_FUNC_DECL <span class="keywordtype">int</span> <a class="code" href="a00803.html#ga99f7d62f78ac5ea3b49bae715c9488ed">floatBitsToInt</a>(<span class="keywordtype">float</span> v);</div>
+<div class="line"><a name="l00408"></a><span class="lineno">  408</span>&#160; </div>
+<div class="line"><a name="l00418"></a><span class="lineno">  418</span>&#160;        <span class="keyword">template</span>&lt;length_t L, qualifier Q&gt;</div>
+<div class="line"><a name="l00419"></a><span class="lineno"><a class="line" href="a00803.html#ga99f7d62f78ac5ea3b49bae715c9488ed">  419</a></span>&#160;        GLM_FUNC_DECL vec&lt;L, int, Q&gt; <a class="code" href="a00803.html#ga99f7d62f78ac5ea3b49bae715c9488ed">floatBitsToInt</a>(vec&lt;L, float, Q&gt; <span class="keyword">const</span>&amp; v);</div>
+<div class="line"><a name="l00420"></a><span class="lineno">  420</span>&#160; </div>
+<div class="line"><a name="l00427"></a><span class="lineno"><a class="line" href="a00803.html#ga1bbdafd513ece71856e66a8ab0ea10d1">  427</a></span>&#160;        GLM_FUNC_DECL uint <a class="code" href="a00803.html#ga49418ba4c8a60fbbb5d57b705f3e26db">floatBitsToUint</a>(<span class="keywordtype">float</span> v);</div>
+<div class="line"><a name="l00428"></a><span class="lineno">  428</span>&#160; </div>
+<div class="line"><a name="l00438"></a><span class="lineno">  438</span>&#160;        <span class="keyword">template</span>&lt;length_t L, qualifier Q&gt;</div>
+<div class="line"><a name="l00439"></a><span class="lineno"><a class="line" href="a00803.html#ga49418ba4c8a60fbbb5d57b705f3e26db">  439</a></span>&#160;        GLM_FUNC_DECL vec&lt;L, uint, Q&gt; <a class="code" href="a00803.html#ga49418ba4c8a60fbbb5d57b705f3e26db">floatBitsToUint</a>(vec&lt;L, float, Q&gt; <span class="keyword">const</span>&amp; v);</div>
+<div class="line"><a name="l00440"></a><span class="lineno">  440</span>&#160; </div>
+<div class="line"><a name="l00449"></a><span class="lineno"><a class="line" href="a00803.html#gad780bbd088b64d823ad7049c42b157da">  449</a></span>&#160;        GLM_FUNC_DECL <span class="keywordtype">float</span> <a class="code" href="a00803.html#ga7a0a8291a1cf3e1c2aee33030a1bd7b0">intBitsToFloat</a>(<span class="keywordtype">int</span> v);</div>
+<div class="line"><a name="l00450"></a><span class="lineno">  450</span>&#160; </div>
+<div class="line"><a name="l00462"></a><span class="lineno">  462</span>&#160;        <span class="keyword">template</span>&lt;length_t L, qualifier Q&gt;</div>
+<div class="line"><a name="l00463"></a><span class="lineno"><a class="line" href="a00803.html#ga7a0a8291a1cf3e1c2aee33030a1bd7b0">  463</a></span>&#160;        GLM_FUNC_DECL vec&lt;L, float, Q&gt; <a class="code" href="a00803.html#ga7a0a8291a1cf3e1c2aee33030a1bd7b0">intBitsToFloat</a>(vec&lt;L, int, Q&gt; <span class="keyword">const</span>&amp; v);</div>
+<div class="line"><a name="l00464"></a><span class="lineno">  464</span>&#160; </div>
+<div class="line"><a name="l00473"></a><span class="lineno"><a class="line" href="a00803.html#gac427a0b389f2c585269c36ccaee9c5ed">  473</a></span>&#160;        GLM_FUNC_DECL <span class="keywordtype">float</span> <a class="code" href="a00803.html#ga97f46b5f7b42fe44482e13356eb394ae">uintBitsToFloat</a>(uint v);</div>
+<div class="line"><a name="l00474"></a><span class="lineno">  474</span>&#160; </div>
+<div class="line"><a name="l00486"></a><span class="lineno">  486</span>&#160;        <span class="keyword">template</span>&lt;length_t L, qualifier Q&gt;</div>
+<div class="line"><a name="l00487"></a><span class="lineno"><a class="line" href="a00803.html#ga97f46b5f7b42fe44482e13356eb394ae">  487</a></span>&#160;        GLM_FUNC_DECL vec&lt;L, float, Q&gt; <a class="code" href="a00803.html#ga97f46b5f7b42fe44482e13356eb394ae">uintBitsToFloat</a>(vec&lt;L, uint, Q&gt; <span class="keyword">const</span>&amp; v);</div>
+<div class="line"><a name="l00488"></a><span class="lineno">  488</span>&#160; </div>
+<div class="line"><a name="l00495"></a><span class="lineno">  495</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> genType&gt;</div>
+<div class="line"><a name="l00496"></a><span class="lineno"><a class="line" href="a00803.html#gad0f444d4b81cc53c3b6edf5aa25078c2">  496</a></span>&#160;        GLM_FUNC_DECL genType <a class="code" href="a00803.html#gad0f444d4b81cc53c3b6edf5aa25078c2">fma</a>(genType <span class="keyword">const</span>&amp; a, genType <span class="keyword">const</span>&amp; b, genType <span class="keyword">const</span>&amp; c);</div>
+<div class="line"><a name="l00497"></a><span class="lineno">  497</span>&#160; </div>
+<div class="line"><a name="l00512"></a><span class="lineno">  512</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> genType&gt;</div>
+<div class="line"><a name="l00513"></a><span class="lineno"><a class="line" href="a00803.html#gaddf5ef73283c171730e0bcc11833fa81">  513</a></span>&#160;        GLM_FUNC_DECL genType <a class="code" href="a00803.html#gaddf5ef73283c171730e0bcc11833fa81">frexp</a>(genType x, <span class="keywordtype">int</span>&amp; <a class="code" href="a00804.html#ga071566cadc7505455e611f2a0353f4d4">exp</a>);</div>
+<div class="line"><a name="l00514"></a><span class="lineno">  514</span>&#160;        </div>
+<div class="line"><a name="l00515"></a><span class="lineno">  515</span>&#160;        <span class="keyword">template</span>&lt;length_t L, <span class="keyword">typename</span> T, qualifier Q&gt;</div>
+<div class="line"><a name="l00516"></a><span class="lineno">  516</span>&#160;        GLM_FUNC_DECL vec&lt;L, T, Q&gt; <a class="code" href="a00803.html#gaddf5ef73283c171730e0bcc11833fa81">frexp</a>(vec&lt;L, T, Q&gt; <span class="keyword">const</span>&amp; v, vec&lt;L, int, Q&gt;&amp; <a class="code" href="a00804.html#ga071566cadc7505455e611f2a0353f4d4">exp</a>);</div>
+<div class="line"><a name="l00517"></a><span class="lineno">  517</span>&#160; </div>
+<div class="line"><a name="l00529"></a><span class="lineno">  529</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> genType&gt;</div>
+<div class="line"><a name="l00530"></a><span class="lineno"><a class="line" href="a00803.html#gac3010e0a0c35a1b514540f2fb579c58c">  530</a></span>&#160;        GLM_FUNC_DECL genType <a class="code" href="a00803.html#gac3010e0a0c35a1b514540f2fb579c58c">ldexp</a>(genType <span class="keyword">const</span>&amp; x, <span class="keywordtype">int</span> <span class="keyword">const</span>&amp; <a class="code" href="a00804.html#ga071566cadc7505455e611f2a0353f4d4">exp</a>);</div>
+<div class="line"><a name="l00531"></a><span class="lineno">  531</span>&#160;        </div>
+<div class="line"><a name="l00532"></a><span class="lineno">  532</span>&#160;        <span class="keyword">template</span>&lt;length_t L, <span class="keyword">typename</span> T, qualifier Q&gt;</div>
+<div class="line"><a name="l00533"></a><span class="lineno">  533</span>&#160;        GLM_FUNC_DECL vec&lt;L, T, Q&gt; <a class="code" href="a00803.html#gac3010e0a0c35a1b514540f2fb579c58c">ldexp</a>(vec&lt;L, T, Q&gt; <span class="keyword">const</span>&amp; v, vec&lt;L, int, Q&gt; <span class="keyword">const</span>&amp; <a class="code" href="a00804.html#ga071566cadc7505455e611f2a0353f4d4">exp</a>);</div>
+<div class="line"><a name="l00534"></a><span class="lineno">  534</span>&#160; </div>
+<div class="line"><a name="l00536"></a><span class="lineno">  536</span>&#160;}<span class="comment">//namespace glm</span></div>
+<div class="line"><a name="l00537"></a><span class="lineno">  537</span>&#160; </div>
+<div class="line"><a name="l00538"></a><span class="lineno">  538</span>&#160;<span class="preprocessor">#include &quot;detail/func_common.inl&quot;</span></div>
+<div class="line"><a name="l00539"></a><span class="lineno">  539</span>&#160; </div>
 </div><!-- fragment --></div><!-- contents -->
+<div class="ttc" id="aa00803_html_ga6b6e0c7ecb4a5b78f929566355bb7416"><div class="ttname"><a href="a00803.html#ga6b6e0c7ecb4a5b78f929566355bb7416">glm::mix</a></div><div class="ttdeci">GLM_FUNC_DECL GLM_CONSTEXPR genTypeT mix(genTypeT x, genTypeT y, genTypeU a)</div><div class="ttdoc">If genTypeU is a floating scalar or vector: Returns x * (1.0 - a) + y * a, i.e., the linear blend of ...</div></div>
+<div class="ttc" id="aa00803_html_ga29ef934c00306490de837b4746b4e14d"><div class="ttname"><a href="a00803.html#ga29ef934c00306490de837b4746b4e14d">glm::isnan</a></div><div class="ttdeci">GLM_FUNC_DECL vec&lt; L, bool, Q &gt; isnan(vec&lt; L, T, Q &gt; const &amp;x)</div><div class="ttdoc">Returns true if x holds a NaN (not a number) representation in the underlying implementation's set of...</div></div>
+<div class="ttc" id="aa00803_html_ga99f7d62f78ac5ea3b49bae715c9488ed"><div class="ttname"><a href="a00803.html#ga99f7d62f78ac5ea3b49bae715c9488ed">glm::floatBitsToInt</a></div><div class="ttdeci">GLM_FUNC_DECL vec&lt; L, int, Q &gt; floatBitsToInt(vec&lt; L, float, Q &gt; const &amp;v)</div><div class="ttdoc">Returns a signed integer value representing the encoding of a floating-point value.</div></div>
+<div class="ttc" id="aa00803_html_gaddf5ef73283c171730e0bcc11833fa81"><div class="ttname"><a href="a00803.html#gaddf5ef73283c171730e0bcc11833fa81">glm::frexp</a></div><div class="ttdeci">GLM_FUNC_DECL genType frexp(genType x, int &amp;exp)</div><div class="ttdoc">Splits x into a floating-point significand in the range [0.5, 1.0) and an integral exponent of two,...</div></div>
+<div class="ttc" id="aa00803_html_gafb9d2a645a23aca12d4d6de0104b7657"><div class="ttname"><a href="a00803.html#gafb9d2a645a23aca12d4d6de0104b7657">glm::ceil</a></div><div class="ttdeci">GLM_FUNC_DECL vec&lt; L, T, Q &gt; ceil(vec&lt; L, T, Q &gt; const &amp;x)</div><div class="ttdoc">Returns a value equal to the nearest integer that is greater than or equal to x.</div></div>
+<div class="ttc" id="aa00803_html_ga9b197a452cd52db3c5c18bac72bd7798"><div class="ttname"><a href="a00803.html#ga9b197a452cd52db3c5c18bac72bd7798">glm::mod</a></div><div class="ttdeci">GLM_FUNC_DECL vec&lt; L, T, Q &gt; mod(vec&lt; L, T, Q &gt; const &amp;x, vec&lt; L, T, Q &gt; const &amp;y)</div><div class="ttdoc">Modulus.</div></div>
+<div class="ttc" id="aa00803_html_ga85e33f139b8db1b39b590a5713b9e679"><div class="ttname"><a href="a00803.html#ga85e33f139b8db1b39b590a5713b9e679">glm::modf</a></div><div class="ttdeci">GLM_FUNC_DECL genType modf(genType x, genType &amp;i)</div><div class="ttdoc">Returns the fractional part of x and sets i to the integer part (as a whole number floating point val...</div></div>
+<div class="ttc" id="aa00803_html_gaf4a5fc81619c7d3e8b22f53d4a098c7f"><div class="ttname"><a href="a00803.html#gaf4a5fc81619c7d3e8b22f53d4a098c7f">glm::step</a></div><div class="ttdeci">GLM_FUNC_DECL vec&lt; L, T, Q &gt; step(vec&lt; L, T, Q &gt; const &amp;edge, vec&lt; L, T, Q &gt; const &amp;x)</div><div class="ttdoc">Returns 0.0 if x &lt; edge, otherwise it returns 1.0.</div></div>
+<div class="ttc" id="aa00803_html_ga81d3abddd0ef0c8de579bc541ecadab6"><div class="ttname"><a href="a00803.html#ga81d3abddd0ef0c8de579bc541ecadab6">glm::abs</a></div><div class="ttdeci">GLM_FUNC_DECL GLM_CONSTEXPR vec&lt; L, T, Q &gt; abs(vec&lt; L, T, Q &gt; const &amp;x)</div><div class="ttdoc">Returns x if x &gt;= 0; otherwise, it returns -x.</div></div>
+<div class="ttc" id="aa00803_html_gac3010e0a0c35a1b514540f2fb579c58c"><div class="ttname"><a href="a00803.html#gac3010e0a0c35a1b514540f2fb579c58c">glm::ldexp</a></div><div class="ttdeci">GLM_FUNC_DECL genType ldexp(genType const &amp;x, int const &amp;exp)</div><div class="ttdoc">Builds a floating-point number from x and the corresponding integral exponent of two in exp,...</div></div>
+<div class="ttc" id="aa00803_html_gaa0f2f12e9108b09e22a3f0b2008a0b5d"><div class="ttname"><a href="a00803.html#gaa0f2f12e9108b09e22a3f0b2008a0b5d">glm::clamp</a></div><div class="ttdeci">GLM_FUNC_DECL GLM_CONSTEXPR vec&lt; L, T, Q &gt; clamp(vec&lt; L, T, Q &gt; const &amp;x, vec&lt; L, T, Q &gt; const &amp;minVal, vec&lt; L, T, Q &gt; const &amp;maxVal)</div><div class="ttdoc">Returns min(max(x, minVal), maxVal) for each component in x using the floating-point values minVal an...</div></div>
+<div class="ttc" id="aa00803_html_ga97f46b5f7b42fe44482e13356eb394ae"><div class="ttname"><a href="a00803.html#ga97f46b5f7b42fe44482e13356eb394ae">glm::uintBitsToFloat</a></div><div class="ttdeci">GLM_FUNC_DECL vec&lt; L, float, Q &gt; uintBitsToFloat(vec&lt; L, uint, Q &gt; const &amp;v)</div><div class="ttdoc">Returns a floating-point value corresponding to a unsigned integer encoding of a floating-point value...</div></div>
+<div class="ttc" id="aa00803_html_gac1fec0c3303b572a6d4697a637213870"><div class="ttname"><a href="a00803.html#gac1fec0c3303b572a6d4697a637213870">glm::max</a></div><div class="ttdeci">GLM_FUNC_DECL GLM_CONSTEXPR vec&lt; L, T, Q &gt; max(vec&lt; L, T, Q &gt; const &amp;x, vec&lt; L, T, Q &gt; const &amp;y)</div><div class="ttdoc">Returns y if x &lt; y; otherwise, it returns x.</div></div>
+<div class="ttc" id="aa00803_html_ga31f49ef9e7d1beb003160c5e009b0c48"><div class="ttname"><a href="a00803.html#ga31f49ef9e7d1beb003160c5e009b0c48">glm::min</a></div><div class="ttdeci">GLM_FUNC_DECL GLM_CONSTEXPR vec&lt; L, T, Q &gt; min(vec&lt; L, T, Q &gt; const &amp;x, vec&lt; L, T, Q &gt; const &amp;y)</div><div class="ttdoc">Returns y if y &lt; x; otherwise, it returns x.</div></div>
+<div class="ttc" id="aa00803_html_ga589807f35ad0a1d173762bfac3288929"><div class="ttname"><a href="a00803.html#ga589807f35ad0a1d173762bfac3288929">glm::sign</a></div><div class="ttdeci">GLM_FUNC_DECL GLM_CONSTEXPR vec&lt; L, T, Q &gt; sign(vec&lt; L, T, Q &gt; const &amp;x)</div><div class="ttdoc">Returns 1.0 if x &gt; 0, 0.0 if x == 0, or -1.0 if x &lt; 0.</div></div>
+<div class="ttc" id="aa00803_html_ga2885587c23a106301f20443896365b62"><div class="ttname"><a href="a00803.html#ga2885587c23a106301f20443896365b62">glm::isinf</a></div><div class="ttdeci">GLM_FUNC_DECL vec&lt; L, bool, Q &gt; isinf(vec&lt; L, T, Q &gt; const &amp;x)</div><div class="ttdoc">Returns true if x holds a positive infinity or negative infinity representation in the underlying imp...</div></div>
+<div class="ttc" id="aa00803_html_ga49418ba4c8a60fbbb5d57b705f3e26db"><div class="ttname"><a href="a00803.html#ga49418ba4c8a60fbbb5d57b705f3e26db">glm::floatBitsToUint</a></div><div class="ttdeci">GLM_FUNC_DECL vec&lt; L, uint, Q &gt; floatBitsToUint(vec&lt; L, float, Q &gt; const &amp;v)</div><div class="ttdoc">Returns a unsigned integer value representing the encoding of a floating-point value.</div></div>
+<div class="ttc" id="aa00803_html_ga2df623004f634b440d61e018d62c751b"><div class="ttname"><a href="a00803.html#ga2df623004f634b440d61e018d62c751b">glm::fract</a></div><div class="ttdeci">GLM_FUNC_DECL vec&lt; L, T, Q &gt; fract(vec&lt; L, T, Q &gt; const &amp;x)</div><div class="ttdoc">Return x - floor(x).</div></div>
+<div class="ttc" id="aa00803_html_ga7a0a8291a1cf3e1c2aee33030a1bd7b0"><div class="ttname"><a href="a00803.html#ga7a0a8291a1cf3e1c2aee33030a1bd7b0">glm::intBitsToFloat</a></div><div class="ttdeci">GLM_FUNC_DECL vec&lt; L, float, Q &gt; intBitsToFloat(vec&lt; L, int, Q &gt; const &amp;v)</div><div class="ttdoc">Returns a floating-point value corresponding to a signed integer encoding of a floating-point value.</div></div>
+<div class="ttc" id="aa00803_html_ga76b81785045a057989a84d99aeeb1578"><div class="ttname"><a href="a00803.html#ga76b81785045a057989a84d99aeeb1578">glm::roundEven</a></div><div class="ttdeci">GLM_FUNC_DECL vec&lt; L, T, Q &gt; roundEven(vec&lt; L, T, Q &gt; const &amp;x)</div><div class="ttdoc">Returns a value equal to the nearest integer to x.</div></div>
+<div class="ttc" id="aa00803_html_gaa9d0742639e85b29c7c5de11cfd6840d"><div class="ttname"><a href="a00803.html#gaa9d0742639e85b29c7c5de11cfd6840d">glm::floor</a></div><div class="ttdeci">GLM_FUNC_DECL vec&lt; L, T, Q &gt; floor(vec&lt; L, T, Q &gt; const &amp;x)</div><div class="ttdoc">Returns a value equal to the nearest integer that is less then or equal to x.</div></div>
+<div class="ttc" id="aa00803_html_gad0f444d4b81cc53c3b6edf5aa25078c2"><div class="ttname"><a href="a00803.html#gad0f444d4b81cc53c3b6edf5aa25078c2">glm::fma</a></div><div class="ttdeci">GLM_FUNC_DECL genType fma(genType const &amp;a, genType const &amp;b, genType const &amp;c)</div><div class="ttdoc">Computes and returns a * b + c.</div></div>
+<div class="ttc" id="aa00803_html_ga562edf7eca082cc5b7a0aaf180436daf"><div class="ttname"><a href="a00803.html#ga562edf7eca082cc5b7a0aaf180436daf">glm::smoothstep</a></div><div class="ttdeci">GLM_FUNC_DECL genType smoothstep(genType edge0, genType edge1, genType x)</div><div class="ttdoc">Returns 0.0 if x &lt;= edge0 and 1.0 if x &gt;= edge1 and performs smooth Hermite interpolation between 0 a...</div></div>
+<div class="ttc" id="aa00803_html_gafa03aca8c4713e1cc892aa92ca135a7e"><div class="ttname"><a href="a00803.html#gafa03aca8c4713e1cc892aa92ca135a7e">glm::round</a></div><div class="ttdeci">GLM_FUNC_DECL vec&lt; L, T, Q &gt; round(vec&lt; L, T, Q &gt; const &amp;x)</div><div class="ttdoc">Returns a value equal to the nearest integer to x.</div></div>
+<div class="ttc" id="aa00804_html_ga071566cadc7505455e611f2a0353f4d4"><div class="ttname"><a href="a00804.html#ga071566cadc7505455e611f2a0353f4d4">glm::exp</a></div><div class="ttdeci">GLM_FUNC_DECL vec&lt; L, T, Q &gt; exp(vec&lt; L, T, Q &gt; const &amp;v)</div><div class="ttdoc">Returns the natural exponentiation of v, i.e., e^v.</div></div>
+<div class="ttc" id="aa00803_html_gaf9375e3e06173271d49e6ffa3a334259"><div class="ttname"><a href="a00803.html#gaf9375e3e06173271d49e6ffa3a334259">glm::trunc</a></div><div class="ttdeci">GLM_FUNC_DECL vec&lt; L, T, Q &gt; trunc(vec&lt; L, T, Q &gt; const &amp;x)</div><div class="ttdoc">Returns a value equal to the nearest integer to x whose absolute value is not larger than the absolut...</div></div>
 <!-- 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.10
+</a> 1.8.18
 </small></address>
 </body>
 </html>

+ 0 - 182
doc/api/a00003_source.html

@@ -1,182 +0,0 @@
-<!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.10"/>
-<title>0.9.9 API documentation: _noise.hpp Source File</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="search/search.css" rel="stylesheet" type="text/css"/>
-<script type="text/javascript" src="search/searchdata.js"></script>
-<script type="text/javascript" src="search/search.js"></script>
-<script type="text/javascript">
-  $(document).ready(function() { init_search(); });
-</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 id="projectlogo"><img alt="Logo" src="logo-mini.png"/></td>
-  <td id="projectalign" style="padding-left: 0.5em;">
-   <div id="projectname">0.9.9 API documentation
-   </div>
-  </td>
- </tr>
- </tbody>
-</table>
-</div>
-<!-- end header part -->
-<!-- Generated by Doxygen 1.8.10 -->
-<script type="text/javascript">
-var searchBox = new SearchBox("searchBox", "search",false,'Search');
-</script>
-  <div id="navrow1" class="tabs">
-    <ul class="tablist">
-      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
-      <li><a href="modules.html"><span>Modules</span></a></li>
-      <li class="current"><a href="files.html"><span>Files</span></a></li>
-      <li>
-        <div id="MSearchBox" class="MSearchBoxInactive">
-        <span class="left">
-          <img id="MSearchSelect" src="search/mag_sel.png"
-               onmouseover="return searchBox.OnSearchSelectShow()"
-               onmouseout="return searchBox.OnSearchSelectHide()"
-               alt=""/>
-          <input type="text" id="MSearchField" value="Search" accesskey="S"
-               onfocus="searchBox.OnSearchFieldFocus(true)" 
-               onblur="searchBox.OnSearchFieldFocus(false)" 
-               onkeyup="searchBox.OnSearchFieldChange(event)"/>
-          </span><span class="right">
-            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
-          </span>
-        </div>
-      </li>
-    </ul>
-  </div>
-  <div id="navrow2" class="tabs2">
-    <ul class="tablist">
-      <li><a href="files.html"><span>File&#160;List</span></a></li>
-    </ul>
-  </div>
-<!-- window showing the filter options -->
-<div id="MSearchSelectWindow"
-     onmouseover="return searchBox.OnSearchSelectShow()"
-     onmouseout="return searchBox.OnSearchSelectHide()"
-     onkeydown="return searchBox.OnSearchSelectKey(event)">
-</div>
-
-<!-- iframe showing the search results (closed by default) -->
-<div id="MSearchResultsWindow">
-<iframe src="javascript:void(0)" frameborder="0" 
-        name="MSearchResults" id="MSearchResults">
-</iframe>
-</div>
-
-<div id="nav-path" class="navpath">
-  <ul>
-<li class="navelem"><a class="el" href="dir_3a581ba30d25676e4b797b1f96d53b45.html">F:</a></li><li class="navelem"><a class="el" href="dir_9e5fe034a00e89334fd5186c3e7db156.html">G-Truc</a></li><li class="navelem"><a class="el" href="dir_d9496f0844b48bc7e53b5af8c99b9ab2.html">Source</a></li><li class="navelem"><a class="el" href="dir_a8bee7be44182a33f3820393ae0b105d.html">G-Truc</a></li><li class="navelem"><a class="el" href="dir_44e5e654415abd9ca6fdeaddaff8565e.html">glm</a></li><li class="navelem"><a class="el" href="dir_cef2d71d502cb69a9252bca2297d9549.html">glm</a></li><li class="navelem"><a class="el" href="dir_033f5edb0915b828d2c46ed4804e5503.html">detail</a></li>  </ul>
-</div>
-</div><!-- top -->
-<div class="header">
-  <div class="headertitle">
-<div class="title">_noise.hpp</div>  </div>
-</div><!--header-->
-<div class="contents">
-<div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span>&#160;<span class="preprocessor">#pragma once</span></div>
-<div class="line"><a name="l00002"></a><span class="lineno">    2</span>&#160;</div>
-<div class="line"><a name="l00003"></a><span class="lineno">    3</span>&#160;<span class="preprocessor">#include &quot;../common.hpp&quot;</span></div>
-<div class="line"><a name="l00004"></a><span class="lineno">    4</span>&#160;</div>
-<div class="line"><a name="l00005"></a><span class="lineno">    5</span>&#160;<span class="keyword">namespace </span><a class="code" href="a00236.html">glm</a>{</div>
-<div class="line"><a name="l00006"></a><span class="lineno">    6</span>&#160;<span class="keyword">namespace </span>detail</div>
-<div class="line"><a name="l00007"></a><span class="lineno">    7</span>&#160;{</div>
-<div class="line"><a name="l00008"></a><span class="lineno">    8</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T&gt;</div>
-<div class="line"><a name="l00009"></a><span class="lineno">    9</span>&#160;        GLM_FUNC_QUALIFIER T mod289(T <span class="keyword">const</span>&amp; x)</div>
-<div class="line"><a name="l00010"></a><span class="lineno">   10</span>&#160;        {</div>
-<div class="line"><a name="l00011"></a><span class="lineno">   11</span>&#160;                <span class="keywordflow">return</span> x - <a class="code" href="a00241.html#gaa9d0742639e85b29c7c5de11cfd6840d">floor</a>(x * (static_cast&lt;T&gt;(1.0) / static_cast&lt;T&gt;(289.0))) * <span class="keyword">static_cast&lt;</span>T<span class="keyword">&gt;</span>(289.0);</div>
-<div class="line"><a name="l00012"></a><span class="lineno">   12</span>&#160;        }</div>
-<div class="line"><a name="l00013"></a><span class="lineno">   13</span>&#160;</div>
-<div class="line"><a name="l00014"></a><span class="lineno">   14</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T&gt;</div>
-<div class="line"><a name="l00015"></a><span class="lineno">   15</span>&#160;        GLM_FUNC_QUALIFIER T permute(T <span class="keyword">const</span>&amp; x)</div>
-<div class="line"><a name="l00016"></a><span class="lineno">   16</span>&#160;        {</div>
-<div class="line"><a name="l00017"></a><span class="lineno">   17</span>&#160;                <span class="keywordflow">return</span> mod289(((x * static_cast&lt;T&gt;(34)) + static_cast&lt;T&gt;(1)) * x);</div>
-<div class="line"><a name="l00018"></a><span class="lineno">   18</span>&#160;        }</div>
-<div class="line"><a name="l00019"></a><span class="lineno">   19</span>&#160;</div>
-<div class="line"><a name="l00020"></a><span class="lineno">   20</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T, qualifier Q&gt;</div>
-<div class="line"><a name="l00021"></a><span class="lineno">   21</span>&#160;        GLM_FUNC_QUALIFIER vec&lt;2, T, Q&gt; permute(vec&lt;2, T, Q&gt; <span class="keyword">const</span>&amp; x)</div>
-<div class="line"><a name="l00022"></a><span class="lineno">   22</span>&#160;        {</div>
-<div class="line"><a name="l00023"></a><span class="lineno">   23</span>&#160;                <span class="keywordflow">return</span> mod289(((x * static_cast&lt;T&gt;(34)) + static_cast&lt;T&gt;(1)) * x);</div>
-<div class="line"><a name="l00024"></a><span class="lineno">   24</span>&#160;        }</div>
-<div class="line"><a name="l00025"></a><span class="lineno">   25</span>&#160;</div>
-<div class="line"><a name="l00026"></a><span class="lineno">   26</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T, qualifier Q&gt;</div>
-<div class="line"><a name="l00027"></a><span class="lineno">   27</span>&#160;        GLM_FUNC_QUALIFIER vec&lt;3, T, Q&gt; permute(vec&lt;3, T, Q&gt; <span class="keyword">const</span>&amp; x)</div>
-<div class="line"><a name="l00028"></a><span class="lineno">   28</span>&#160;        {</div>
-<div class="line"><a name="l00029"></a><span class="lineno">   29</span>&#160;                <span class="keywordflow">return</span> mod289(((x * static_cast&lt;T&gt;(34)) + static_cast&lt;T&gt;(1)) * x);</div>
-<div class="line"><a name="l00030"></a><span class="lineno">   30</span>&#160;        }</div>
-<div class="line"><a name="l00031"></a><span class="lineno">   31</span>&#160;</div>
-<div class="line"><a name="l00032"></a><span class="lineno">   32</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T, qualifier Q&gt;</div>
-<div class="line"><a name="l00033"></a><span class="lineno">   33</span>&#160;        GLM_FUNC_QUALIFIER vec&lt;4, T, Q&gt; permute(vec&lt;4, T, Q&gt; <span class="keyword">const</span>&amp; x)</div>
-<div class="line"><a name="l00034"></a><span class="lineno">   34</span>&#160;        {</div>
-<div class="line"><a name="l00035"></a><span class="lineno">   35</span>&#160;                <span class="keywordflow">return</span> mod289(((x * static_cast&lt;T&gt;(34)) + static_cast&lt;T&gt;(1)) * x);</div>
-<div class="line"><a name="l00036"></a><span class="lineno">   36</span>&#160;        }</div>
-<div class="line"><a name="l00037"></a><span class="lineno">   37</span>&#160;</div>
-<div class="line"><a name="l00038"></a><span class="lineno">   38</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T&gt;</div>
-<div class="line"><a name="l00039"></a><span class="lineno">   39</span>&#160;        GLM_FUNC_QUALIFIER T taylorInvSqrt(T <span class="keyword">const</span>&amp; r)</div>
-<div class="line"><a name="l00040"></a><span class="lineno">   40</span>&#160;        {</div>
-<div class="line"><a name="l00041"></a><span class="lineno">   41</span>&#160;                <span class="keywordflow">return</span> <span class="keyword">static_cast&lt;</span>T<span class="keyword">&gt;</span>(1.79284291400159) - <span class="keyword">static_cast&lt;</span>T<span class="keyword">&gt;</span>(0.85373472095314) * r;</div>
-<div class="line"><a name="l00042"></a><span class="lineno">   42</span>&#160;        }</div>
-<div class="line"><a name="l00043"></a><span class="lineno">   43</span>&#160;</div>
-<div class="line"><a name="l00044"></a><span class="lineno">   44</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T, qualifier Q&gt;</div>
-<div class="line"><a name="l00045"></a><span class="lineno">   45</span>&#160;        GLM_FUNC_QUALIFIER vec&lt;2, T, Q&gt; taylorInvSqrt(vec&lt;2, T, Q&gt; <span class="keyword">const</span>&amp; r)</div>
-<div class="line"><a name="l00046"></a><span class="lineno">   46</span>&#160;        {</div>
-<div class="line"><a name="l00047"></a><span class="lineno">   47</span>&#160;                <span class="keywordflow">return</span> <span class="keyword">static_cast&lt;</span>T<span class="keyword">&gt;</span>(1.79284291400159) - <span class="keyword">static_cast&lt;</span>T<span class="keyword">&gt;</span>(0.85373472095314) * r;</div>
-<div class="line"><a name="l00048"></a><span class="lineno">   48</span>&#160;        }</div>
-<div class="line"><a name="l00049"></a><span class="lineno">   49</span>&#160;</div>
-<div class="line"><a name="l00050"></a><span class="lineno">   50</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T, qualifier Q&gt;</div>
-<div class="line"><a name="l00051"></a><span class="lineno">   51</span>&#160;        GLM_FUNC_QUALIFIER vec&lt;3, T, Q&gt; taylorInvSqrt(vec&lt;3, T, Q&gt; <span class="keyword">const</span>&amp; r)</div>
-<div class="line"><a name="l00052"></a><span class="lineno">   52</span>&#160;        {</div>
-<div class="line"><a name="l00053"></a><span class="lineno">   53</span>&#160;                <span class="keywordflow">return</span> <span class="keyword">static_cast&lt;</span>T<span class="keyword">&gt;</span>(1.79284291400159) - <span class="keyword">static_cast&lt;</span>T<span class="keyword">&gt;</span>(0.85373472095314) * r;</div>
-<div class="line"><a name="l00054"></a><span class="lineno">   54</span>&#160;        }</div>
-<div class="line"><a name="l00055"></a><span class="lineno">   55</span>&#160;</div>
-<div class="line"><a name="l00056"></a><span class="lineno">   56</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T, qualifier Q&gt;</div>
-<div class="line"><a name="l00057"></a><span class="lineno">   57</span>&#160;        GLM_FUNC_QUALIFIER vec&lt;4, T, Q&gt; taylorInvSqrt(vec&lt;4, T, Q&gt; <span class="keyword">const</span>&amp; r)</div>
-<div class="line"><a name="l00058"></a><span class="lineno">   58</span>&#160;        {</div>
-<div class="line"><a name="l00059"></a><span class="lineno">   59</span>&#160;                <span class="keywordflow">return</span> <span class="keyword">static_cast&lt;</span>T<span class="keyword">&gt;</span>(1.79284291400159) - <span class="keyword">static_cast&lt;</span>T<span class="keyword">&gt;</span>(0.85373472095314) * r;</div>
-<div class="line"><a name="l00060"></a><span class="lineno">   60</span>&#160;        }</div>
-<div class="line"><a name="l00061"></a><span class="lineno">   61</span>&#160;</div>
-<div class="line"><a name="l00062"></a><span class="lineno">   62</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T, qualifier Q&gt;</div>
-<div class="line"><a name="l00063"></a><span class="lineno">   63</span>&#160;        GLM_FUNC_QUALIFIER vec&lt;2, T, Q&gt; fade(vec&lt;2, T, Q&gt; <span class="keyword">const</span>&amp; t)</div>
-<div class="line"><a name="l00064"></a><span class="lineno">   64</span>&#160;        {</div>
-<div class="line"><a name="l00065"></a><span class="lineno">   65</span>&#160;                <span class="keywordflow">return</span> (t * t * t) * (t * (t * <span class="keyword">static_cast&lt;</span>T<span class="keyword">&gt;</span>(6) - static_cast&lt;T&gt;(15)) + static_cast&lt;T&gt;(10));</div>
-<div class="line"><a name="l00066"></a><span class="lineno">   66</span>&#160;        }</div>
-<div class="line"><a name="l00067"></a><span class="lineno">   67</span>&#160;</div>
-<div class="line"><a name="l00068"></a><span class="lineno">   68</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T, qualifier Q&gt;</div>
-<div class="line"><a name="l00069"></a><span class="lineno">   69</span>&#160;        GLM_FUNC_QUALIFIER vec&lt;3, T, Q&gt; fade(vec&lt;3, T, Q&gt; <span class="keyword">const</span>&amp; t)</div>
-<div class="line"><a name="l00070"></a><span class="lineno">   70</span>&#160;        {</div>
-<div class="line"><a name="l00071"></a><span class="lineno">   71</span>&#160;                <span class="keywordflow">return</span> (t * t * t) * (t * (t * <span class="keyword">static_cast&lt;</span>T<span class="keyword">&gt;</span>(6) - static_cast&lt;T&gt;(15)) + static_cast&lt;T&gt;(10));</div>
-<div class="line"><a name="l00072"></a><span class="lineno">   72</span>&#160;        }</div>
-<div class="line"><a name="l00073"></a><span class="lineno">   73</span>&#160;</div>
-<div class="line"><a name="l00074"></a><span class="lineno">   74</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T, qualifier Q&gt;</div>
-<div class="line"><a name="l00075"></a><span class="lineno">   75</span>&#160;        GLM_FUNC_QUALIFIER vec&lt;4, T, Q&gt; fade(vec&lt;4, T, Q&gt; <span class="keyword">const</span>&amp; t)</div>
-<div class="line"><a name="l00076"></a><span class="lineno">   76</span>&#160;        {</div>
-<div class="line"><a name="l00077"></a><span class="lineno">   77</span>&#160;                <span class="keywordflow">return</span> (t * t * t) * (t * (t * <span class="keyword">static_cast&lt;</span>T<span class="keyword">&gt;</span>(6) - static_cast&lt;T&gt;(15)) + static_cast&lt;T&gt;(10));</div>
-<div class="line"><a name="l00078"></a><span class="lineno">   78</span>&#160;        }</div>
-<div class="line"><a name="l00079"></a><span class="lineno">   79</span>&#160;}<span class="comment">//namespace detail</span></div>
-<div class="line"><a name="l00080"></a><span class="lineno">   80</span>&#160;}<span class="comment">//namespace glm</span></div>
-<div class="line"><a name="l00081"></a><span class="lineno">   81</span>&#160;</div>
-<div class="ttc" id="a00241_html_gaa9d0742639e85b29c7c5de11cfd6840d"><div class="ttname"><a href="a00241.html#gaa9d0742639e85b29c7c5de11cfd6840d">glm::floor</a></div><div class="ttdeci">GLM_FUNC_DECL vec&lt; L, T, Q &gt; floor(vec&lt; L, T, Q &gt; const &amp;x)</div><div class="ttdoc">Returns a value equal to the nearest integer that is less then or equal to x. </div></div>
-<div class="ttc" id="a00236_html"><div class="ttname"><a href="a00236.html">glm</a></div><div class="ttdef"><b>Definition:</b> <a href="a00015_source.html#l00020">common.hpp:20</a></div></div>
-</div><!-- fragment --></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.10
-</small></address>
-</body>
-</html>

+ 0 - 905
doc/api/a00004_source.html

@@ -1,905 +0,0 @@
-<!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.10"/>
-<title>0.9.9 API documentation: _swizzle.hpp Source File</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="search/search.css" rel="stylesheet" type="text/css"/>
-<script type="text/javascript" src="search/searchdata.js"></script>
-<script type="text/javascript" src="search/search.js"></script>
-<script type="text/javascript">
-  $(document).ready(function() { init_search(); });
-</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 id="projectlogo"><img alt="Logo" src="logo-mini.png"/></td>
-  <td id="projectalign" style="padding-left: 0.5em;">
-   <div id="projectname">0.9.9 API documentation
-   </div>
-  </td>
- </tr>
- </tbody>
-</table>
-</div>
-<!-- end header part -->
-<!-- Generated by Doxygen 1.8.10 -->
-<script type="text/javascript">
-var searchBox = new SearchBox("searchBox", "search",false,'Search');
-</script>
-  <div id="navrow1" class="tabs">
-    <ul class="tablist">
-      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
-      <li><a href="modules.html"><span>Modules</span></a></li>
-      <li class="current"><a href="files.html"><span>Files</span></a></li>
-      <li>
-        <div id="MSearchBox" class="MSearchBoxInactive">
-        <span class="left">
-          <img id="MSearchSelect" src="search/mag_sel.png"
-               onmouseover="return searchBox.OnSearchSelectShow()"
-               onmouseout="return searchBox.OnSearchSelectHide()"
-               alt=""/>
-          <input type="text" id="MSearchField" value="Search" accesskey="S"
-               onfocus="searchBox.OnSearchFieldFocus(true)" 
-               onblur="searchBox.OnSearchFieldFocus(false)" 
-               onkeyup="searchBox.OnSearchFieldChange(event)"/>
-          </span><span class="right">
-            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
-          </span>
-        </div>
-      </li>
-    </ul>
-  </div>
-  <div id="navrow2" class="tabs2">
-    <ul class="tablist">
-      <li><a href="files.html"><span>File&#160;List</span></a></li>
-    </ul>
-  </div>
-<!-- window showing the filter options -->
-<div id="MSearchSelectWindow"
-     onmouseover="return searchBox.OnSearchSelectShow()"
-     onmouseout="return searchBox.OnSearchSelectHide()"
-     onkeydown="return searchBox.OnSearchSelectKey(event)">
-</div>
-
-<!-- iframe showing the search results (closed by default) -->
-<div id="MSearchResultsWindow">
-<iframe src="javascript:void(0)" frameborder="0" 
-        name="MSearchResults" id="MSearchResults">
-</iframe>
-</div>
-
-<div id="nav-path" class="navpath">
-  <ul>
-<li class="navelem"><a class="el" href="dir_3a581ba30d25676e4b797b1f96d53b45.html">F:</a></li><li class="navelem"><a class="el" href="dir_9e5fe034a00e89334fd5186c3e7db156.html">G-Truc</a></li><li class="navelem"><a class="el" href="dir_d9496f0844b48bc7e53b5af8c99b9ab2.html">Source</a></li><li class="navelem"><a class="el" href="dir_a8bee7be44182a33f3820393ae0b105d.html">G-Truc</a></li><li class="navelem"><a class="el" href="dir_44e5e654415abd9ca6fdeaddaff8565e.html">glm</a></li><li class="navelem"><a class="el" href="dir_cef2d71d502cb69a9252bca2297d9549.html">glm</a></li><li class="navelem"><a class="el" href="dir_033f5edb0915b828d2c46ed4804e5503.html">detail</a></li>  </ul>
-</div>
-</div><!-- top -->
-<div class="header">
-  <div class="headertitle">
-<div class="title">_swizzle.hpp</div>  </div>
-</div><!--header-->
-<div class="contents">
-<div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span>&#160;<span class="preprocessor">#pragma once</span></div>
-<div class="line"><a name="l00002"></a><span class="lineno">    2</span>&#160;</div>
-<div class="line"><a name="l00003"></a><span class="lineno">    3</span>&#160;<span class="keyword">namespace </span><a class="code" href="a00236.html">glm</a>{</div>
-<div class="line"><a name="l00004"></a><span class="lineno">    4</span>&#160;<span class="keyword">namespace </span>detail</div>
-<div class="line"><a name="l00005"></a><span class="lineno">    5</span>&#160;{</div>
-<div class="line"><a name="l00006"></a><span class="lineno">    6</span>&#160;        <span class="comment">// Internal class for implementing swizzle operators</span></div>
-<div class="line"><a name="l00007"></a><span class="lineno">    7</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T, <span class="keywordtype">int</span> N&gt;</div>
-<div class="line"><a name="l00008"></a><span class="lineno">    8</span>&#160;        <span class="keyword">struct </span>_swizzle_base0</div>
-<div class="line"><a name="l00009"></a><span class="lineno">    9</span>&#160;        {</div>
-<div class="line"><a name="l00010"></a><span class="lineno">   10</span>&#160;        <span class="keyword">protected</span>:</div>
-<div class="line"><a name="l00011"></a><span class="lineno">   11</span>&#160;                GLM_FUNC_QUALIFIER T&amp; elem(<span class="keywordtype">size_t</span> i){ <span class="keywordflow">return</span> (reinterpret_cast&lt;T*&gt;(_buffer))[i]; }</div>
-<div class="line"><a name="l00012"></a><span class="lineno">   12</span>&#160;                GLM_FUNC_QUALIFIER T <span class="keyword">const</span>&amp; elem(<span class="keywordtype">size_t</span> i)<span class="keyword"> const</span>{ <span class="keywordflow">return</span> (reinterpret_cast&lt;const T*&gt;(_buffer))[i]; }</div>
-<div class="line"><a name="l00013"></a><span class="lineno">   13</span>&#160;</div>
-<div class="line"><a name="l00014"></a><span class="lineno">   14</span>&#160;                <span class="comment">// Use an opaque buffer to *ensure* the compiler doesn&#39;t call a constructor.</span></div>
-<div class="line"><a name="l00015"></a><span class="lineno">   15</span>&#160;                <span class="comment">// The size 1 buffer is assumed to aligned to the actual members so that the</span></div>
-<div class="line"><a name="l00016"></a><span class="lineno">   16</span>&#160;                <span class="comment">// elem()</span></div>
-<div class="line"><a name="l00017"></a><span class="lineno">   17</span>&#160;                <span class="keywordtype">char</span>    _buffer[1];</div>
-<div class="line"><a name="l00018"></a><span class="lineno">   18</span>&#160;        };</div>
-<div class="line"><a name="l00019"></a><span class="lineno">   19</span>&#160;</div>
-<div class="line"><a name="l00020"></a><span class="lineno">   20</span>&#160;        <span class="keyword">template</span>&lt;<span class="keywordtype">int</span> N, <span class="keyword">typename</span> T, qualifier Q, <span class="keywordtype">int</span> E0, <span class="keywordtype">int</span> E1, <span class="keywordtype">int</span> E2, <span class="keywordtype">int</span> E3, <span class="keywordtype">bool</span> Aligned&gt;</div>
-<div class="line"><a name="l00021"></a><span class="lineno">   21</span>&#160;        <span class="keyword">struct </span>_swizzle_base1 : <span class="keyword">public</span> _swizzle_base0&lt;T, N&gt;</div>
-<div class="line"><a name="l00022"></a><span class="lineno">   22</span>&#160;        {</div>
-<div class="line"><a name="l00023"></a><span class="lineno">   23</span>&#160;        };</div>
-<div class="line"><a name="l00024"></a><span class="lineno">   24</span>&#160;</div>
-<div class="line"><a name="l00025"></a><span class="lineno">   25</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T, qualifier Q, <span class="keywordtype">int</span> E0, <span class="keywordtype">int</span> E1, <span class="keywordtype">bool</span> Aligned&gt;</div>
-<div class="line"><a name="l00026"></a><span class="lineno">   26</span>&#160;        <span class="keyword">struct </span>_swizzle_base1&lt;2, T, Q, E0,E1,-1,-2, Aligned&gt; : <span class="keyword">public</span> _swizzle_base0&lt;T, 2&gt;</div>
-<div class="line"><a name="l00027"></a><span class="lineno">   27</span>&#160;        {</div>
-<div class="line"><a name="l00028"></a><span class="lineno">   28</span>&#160;                GLM_FUNC_QUALIFIER vec&lt;2, T, Q&gt; operator ()()<span class="keyword">  const </span>{ <span class="keywordflow">return</span> vec&lt;2, T, Q&gt;(this-&gt;elem(E0), this-&gt;elem(E1)); }</div>
-<div class="line"><a name="l00029"></a><span class="lineno">   29</span>&#160;        };</div>
-<div class="line"><a name="l00030"></a><span class="lineno">   30</span>&#160;</div>
-<div class="line"><a name="l00031"></a><span class="lineno">   31</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T, qualifier Q, <span class="keywordtype">int</span> E0, <span class="keywordtype">int</span> E1, <span class="keywordtype">int</span> E2, <span class="keywordtype">bool</span> Aligned&gt;</div>
-<div class="line"><a name="l00032"></a><span class="lineno">   32</span>&#160;        <span class="keyword">struct </span>_swizzle_base1&lt;3, T, Q, E0,E1,E2,-1, Aligned&gt; : <span class="keyword">public</span> _swizzle_base0&lt;T, 3&gt;</div>
-<div class="line"><a name="l00033"></a><span class="lineno">   33</span>&#160;        {</div>
-<div class="line"><a name="l00034"></a><span class="lineno">   34</span>&#160;                GLM_FUNC_QUALIFIER vec&lt;3, T, Q&gt; operator ()()<span class="keyword">  const </span>{ <span class="keywordflow">return</span> vec&lt;3, T, Q&gt;(this-&gt;elem(E0), this-&gt;elem(E1), this-&gt;elem(E2)); }</div>
-<div class="line"><a name="l00035"></a><span class="lineno">   35</span>&#160;        };</div>
-<div class="line"><a name="l00036"></a><span class="lineno">   36</span>&#160;</div>
-<div class="line"><a name="l00037"></a><span class="lineno">   37</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T, qualifier Q, <span class="keywordtype">int</span> E0, <span class="keywordtype">int</span> E1, <span class="keywordtype">int</span> E2, <span class="keywordtype">int</span> E3, <span class="keywordtype">bool</span> Aligned&gt;</div>
-<div class="line"><a name="l00038"></a><span class="lineno">   38</span>&#160;        <span class="keyword">struct </span>_swizzle_base1&lt;4, T, Q, E0,E1,E2,E3, Aligned&gt; : <span class="keyword">public</span> _swizzle_base0&lt;T, 4&gt;</div>
-<div class="line"><a name="l00039"></a><span class="lineno">   39</span>&#160;        {</div>
-<div class="line"><a name="l00040"></a><span class="lineno">   40</span>&#160;                GLM_FUNC_QUALIFIER vec&lt;4, T, Q&gt; operator ()()<span class="keyword">  const </span>{ <span class="keywordflow">return</span> vec&lt;4, T, Q&gt;(this-&gt;elem(E0), this-&gt;elem(E1), this-&gt;elem(E2), this-&gt;elem(E3)); }</div>
-<div class="line"><a name="l00041"></a><span class="lineno">   41</span>&#160;        };</div>
-<div class="line"><a name="l00042"></a><span class="lineno">   42</span>&#160;</div>
-<div class="line"><a name="l00043"></a><span class="lineno">   43</span>&#160;        <span class="comment">// Internal class for implementing swizzle operators</span></div>
-<div class="line"><a name="l00044"></a><span class="lineno">   44</span>&#160;        <span class="comment">/*</span></div>
-<div class="line"><a name="l00045"></a><span class="lineno">   45</span>&#160;<span class="comment">                Template parameters:</span></div>
-<div class="line"><a name="l00046"></a><span class="lineno">   46</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l00047"></a><span class="lineno">   47</span>&#160;<span class="comment">                T                       = type of scalar values (e.g. float, double)</span></div>
-<div class="line"><a name="l00048"></a><span class="lineno">   48</span>&#160;<span class="comment">                N                       = number of components in the vector (e.g. 3)</span></div>
-<div class="line"><a name="l00049"></a><span class="lineno">   49</span>&#160;<span class="comment">                E0...3          = what index the n-th element of this swizzle refers to in the unswizzled vec</span></div>
-<div class="line"><a name="l00050"></a><span class="lineno">   50</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l00051"></a><span class="lineno">   51</span>&#160;<span class="comment">                DUPLICATE_ELEMENTS = 1 if there is a repeated element, 0 otherwise (used to specialize swizzles</span></div>
-<div class="line"><a name="l00052"></a><span class="lineno">   52</span>&#160;<span class="comment">                        containing duplicate elements so that they cannot be used as r-values).</span></div>
-<div class="line"><a name="l00053"></a><span class="lineno">   53</span>&#160;<span class="comment">        */</span></div>
-<div class="line"><a name="l00054"></a><span class="lineno">   54</span>&#160;        <span class="keyword">template</span>&lt;<span class="keywordtype">int</span> N, <span class="keyword">typename</span> T, qualifier Q, <span class="keywordtype">int</span> E0, <span class="keywordtype">int</span> E1, <span class="keywordtype">int</span> E2, <span class="keywordtype">int</span> E3, <span class="keywordtype">int</span> DUPLICATE_ELEMENTS&gt;</div>
-<div class="line"><a name="l00055"></a><span class="lineno">   55</span>&#160;        <span class="keyword">struct </span>_swizzle_base2 : <span class="keyword">public</span> _swizzle_base1&lt;N, T, Q, E0,E1,E2,E3, detail::is_aligned&lt;Q&gt;::value&gt;</div>
-<div class="line"><a name="l00056"></a><span class="lineno">   56</span>&#160;        {</div>
-<div class="line"><a name="l00057"></a><span class="lineno">   57</span>&#160;                <span class="keyword">struct </span>op_equal</div>
-<div class="line"><a name="l00058"></a><span class="lineno">   58</span>&#160;                {</div>
-<div class="line"><a name="l00059"></a><span class="lineno">   59</span>&#160;                        GLM_FUNC_QUALIFIER <span class="keywordtype">void</span> operator() (T&amp; <a class="code" href="a00290.html#ga4b7956eb6e2fbedfc7cf2e46e85c5139">e</a>, T&amp; t)<span class="keyword"> const</span>{ e = t; }</div>
-<div class="line"><a name="l00060"></a><span class="lineno">   60</span>&#160;                };</div>
-<div class="line"><a name="l00061"></a><span class="lineno">   61</span>&#160;</div>
-<div class="line"><a name="l00062"></a><span class="lineno">   62</span>&#160;                <span class="keyword">struct </span>op_minus</div>
-<div class="line"><a name="l00063"></a><span class="lineno">   63</span>&#160;                {</div>
-<div class="line"><a name="l00064"></a><span class="lineno">   64</span>&#160;                        GLM_FUNC_QUALIFIER <span class="keywordtype">void</span> operator() (T&amp; <a class="code" href="a00290.html#ga4b7956eb6e2fbedfc7cf2e46e85c5139">e</a>, T&amp; t)<span class="keyword"> const</span>{ e -= t; }</div>
-<div class="line"><a name="l00065"></a><span class="lineno">   65</span>&#160;                };</div>
-<div class="line"><a name="l00066"></a><span class="lineno">   66</span>&#160;</div>
-<div class="line"><a name="l00067"></a><span class="lineno">   67</span>&#160;                <span class="keyword">struct </span>op_plus</div>
-<div class="line"><a name="l00068"></a><span class="lineno">   68</span>&#160;                {</div>
-<div class="line"><a name="l00069"></a><span class="lineno">   69</span>&#160;                        GLM_FUNC_QUALIFIER <span class="keywordtype">void</span> operator() (T&amp; <a class="code" href="a00290.html#ga4b7956eb6e2fbedfc7cf2e46e85c5139">e</a>, T&amp; t)<span class="keyword"> const</span>{ e += t; }</div>
-<div class="line"><a name="l00070"></a><span class="lineno">   70</span>&#160;                };</div>
-<div class="line"><a name="l00071"></a><span class="lineno">   71</span>&#160;</div>
-<div class="line"><a name="l00072"></a><span class="lineno">   72</span>&#160;                <span class="keyword">struct </span>op_mul</div>
-<div class="line"><a name="l00073"></a><span class="lineno">   73</span>&#160;                {</div>
-<div class="line"><a name="l00074"></a><span class="lineno">   74</span>&#160;                        GLM_FUNC_QUALIFIER <span class="keywordtype">void</span> operator() (T&amp; <a class="code" href="a00290.html#ga4b7956eb6e2fbedfc7cf2e46e85c5139">e</a>, T&amp; t)<span class="keyword"> const</span>{ e *= t; }</div>
-<div class="line"><a name="l00075"></a><span class="lineno">   75</span>&#160;                };</div>
-<div class="line"><a name="l00076"></a><span class="lineno">   76</span>&#160;</div>
-<div class="line"><a name="l00077"></a><span class="lineno">   77</span>&#160;                <span class="keyword">struct </span>op_div</div>
-<div class="line"><a name="l00078"></a><span class="lineno">   78</span>&#160;                {</div>
-<div class="line"><a name="l00079"></a><span class="lineno">   79</span>&#160;                        GLM_FUNC_QUALIFIER <span class="keywordtype">void</span> operator() (T&amp; <a class="code" href="a00290.html#ga4b7956eb6e2fbedfc7cf2e46e85c5139">e</a>, T&amp; t)<span class="keyword"> const</span>{ e /= t; }</div>
-<div class="line"><a name="l00080"></a><span class="lineno">   80</span>&#160;                };</div>
-<div class="line"><a name="l00081"></a><span class="lineno">   81</span>&#160;</div>
-<div class="line"><a name="l00082"></a><span class="lineno">   82</span>&#160;        <span class="keyword">public</span>:</div>
-<div class="line"><a name="l00083"></a><span class="lineno">   83</span>&#160;                GLM_FUNC_QUALIFIER _swizzle_base2&amp; operator= (<span class="keyword">const</span> T&amp; t)</div>
-<div class="line"><a name="l00084"></a><span class="lineno">   84</span>&#160;                {</div>
-<div class="line"><a name="l00085"></a><span class="lineno">   85</span>&#160;                        <span class="keywordflow">for</span> (<span class="keywordtype">int</span> i = 0; i &lt; N; ++i)</div>
-<div class="line"><a name="l00086"></a><span class="lineno">   86</span>&#160;                                (*<span class="keyword">this</span>)[i] = t;</div>
-<div class="line"><a name="l00087"></a><span class="lineno">   87</span>&#160;                        <span class="keywordflow">return</span> *<span class="keyword">this</span>;</div>
-<div class="line"><a name="l00088"></a><span class="lineno">   88</span>&#160;                }</div>
-<div class="line"><a name="l00089"></a><span class="lineno">   89</span>&#160;</div>
-<div class="line"><a name="l00090"></a><span class="lineno">   90</span>&#160;                GLM_FUNC_QUALIFIER _swizzle_base2&amp; operator= (vec&lt;N, T, Q&gt; <span class="keyword">const</span>&amp; that)</div>
-<div class="line"><a name="l00091"></a><span class="lineno">   91</span>&#160;                {</div>
-<div class="line"><a name="l00092"></a><span class="lineno">   92</span>&#160;                        _apply_op(that, op_equal());</div>
-<div class="line"><a name="l00093"></a><span class="lineno">   93</span>&#160;                        <span class="keywordflow">return</span> *<span class="keyword">this</span>;</div>
-<div class="line"><a name="l00094"></a><span class="lineno">   94</span>&#160;                }</div>
-<div class="line"><a name="l00095"></a><span class="lineno">   95</span>&#160;</div>
-<div class="line"><a name="l00096"></a><span class="lineno">   96</span>&#160;                GLM_FUNC_QUALIFIER <span class="keywordtype">void</span> operator -= (vec&lt;N, T, Q&gt; <span class="keyword">const</span>&amp; that)</div>
-<div class="line"><a name="l00097"></a><span class="lineno">   97</span>&#160;                {</div>
-<div class="line"><a name="l00098"></a><span class="lineno">   98</span>&#160;                        _apply_op(that, op_minus());</div>
-<div class="line"><a name="l00099"></a><span class="lineno">   99</span>&#160;                }</div>
-<div class="line"><a name="l00100"></a><span class="lineno">  100</span>&#160;</div>
-<div class="line"><a name="l00101"></a><span class="lineno">  101</span>&#160;                GLM_FUNC_QUALIFIER <span class="keywordtype">void</span> operator += (vec&lt;N, T, Q&gt; <span class="keyword">const</span>&amp; that)</div>
-<div class="line"><a name="l00102"></a><span class="lineno">  102</span>&#160;                {</div>
-<div class="line"><a name="l00103"></a><span class="lineno">  103</span>&#160;                        _apply_op(that, op_plus());</div>
-<div class="line"><a name="l00104"></a><span class="lineno">  104</span>&#160;                }</div>
-<div class="line"><a name="l00105"></a><span class="lineno">  105</span>&#160;</div>
-<div class="line"><a name="l00106"></a><span class="lineno">  106</span>&#160;                GLM_FUNC_QUALIFIER <span class="keywordtype">void</span> operator *= (vec&lt;N, T, Q&gt; <span class="keyword">const</span>&amp; that)</div>
-<div class="line"><a name="l00107"></a><span class="lineno">  107</span>&#160;                {</div>
-<div class="line"><a name="l00108"></a><span class="lineno">  108</span>&#160;                        _apply_op(that, op_mul());</div>
-<div class="line"><a name="l00109"></a><span class="lineno">  109</span>&#160;                }</div>
-<div class="line"><a name="l00110"></a><span class="lineno">  110</span>&#160;</div>
-<div class="line"><a name="l00111"></a><span class="lineno">  111</span>&#160;                GLM_FUNC_QUALIFIER <span class="keywordtype">void</span> operator /= (vec&lt;N, T, Q&gt; <span class="keyword">const</span>&amp; that)</div>
-<div class="line"><a name="l00112"></a><span class="lineno">  112</span>&#160;                {</div>
-<div class="line"><a name="l00113"></a><span class="lineno">  113</span>&#160;                        _apply_op(that, op_div());</div>
-<div class="line"><a name="l00114"></a><span class="lineno">  114</span>&#160;                }</div>
-<div class="line"><a name="l00115"></a><span class="lineno">  115</span>&#160;</div>
-<div class="line"><a name="l00116"></a><span class="lineno">  116</span>&#160;                GLM_FUNC_QUALIFIER T&amp; operator[](<span class="keywordtype">size_t</span> i)</div>
-<div class="line"><a name="l00117"></a><span class="lineno">  117</span>&#160;                {</div>
-<div class="line"><a name="l00118"></a><span class="lineno">  118</span>&#160;                        <span class="keyword">const</span> <span class="keywordtype">int</span> offset_dst[4] = { E0, E1, E2, E3 };</div>
-<div class="line"><a name="l00119"></a><span class="lineno">  119</span>&#160;                        <span class="keywordflow">return</span> this-&gt;elem(offset_dst[i]);</div>
-<div class="line"><a name="l00120"></a><span class="lineno">  120</span>&#160;                }</div>
-<div class="line"><a name="l00121"></a><span class="lineno">  121</span>&#160;                GLM_FUNC_QUALIFIER T operator[](<span class="keywordtype">size_t</span> i)<span class="keyword"> const</span></div>
-<div class="line"><a name="l00122"></a><span class="lineno">  122</span>&#160;<span class="keyword">                </span>{</div>
-<div class="line"><a name="l00123"></a><span class="lineno">  123</span>&#160;                        <span class="keyword">const</span> <span class="keywordtype">int</span> offset_dst[4] = { E0, E1, E2, E3 };</div>
-<div class="line"><a name="l00124"></a><span class="lineno">  124</span>&#160;                        <span class="keywordflow">return</span> this-&gt;elem(offset_dst[i]);</div>
-<div class="line"><a name="l00125"></a><span class="lineno">  125</span>&#160;                }</div>
-<div class="line"><a name="l00126"></a><span class="lineno">  126</span>&#160;</div>
-<div class="line"><a name="l00127"></a><span class="lineno">  127</span>&#160;        <span class="keyword">protected</span>:</div>
-<div class="line"><a name="l00128"></a><span class="lineno">  128</span>&#160;                <span class="keyword">template</span>&lt;<span class="keyword">typename</span> U&gt;</div>
-<div class="line"><a name="l00129"></a><span class="lineno">  129</span>&#160;                GLM_FUNC_QUALIFIER <span class="keywordtype">void</span> _apply_op(vec&lt;N, T, Q&gt; <span class="keyword">const</span>&amp; that, <span class="keyword">const</span> U&amp; op)</div>
-<div class="line"><a name="l00130"></a><span class="lineno">  130</span>&#160;                {</div>
-<div class="line"><a name="l00131"></a><span class="lineno">  131</span>&#160;                        <span class="comment">// Make a copy of the data in this == &amp;that.</span></div>
-<div class="line"><a name="l00132"></a><span class="lineno">  132</span>&#160;                        <span class="comment">// The copier should optimize out the copy in cases where the function is</span></div>
-<div class="line"><a name="l00133"></a><span class="lineno">  133</span>&#160;                        <span class="comment">// properly inlined and the copy is not necessary.</span></div>
-<div class="line"><a name="l00134"></a><span class="lineno">  134</span>&#160;                        T t[N];</div>
-<div class="line"><a name="l00135"></a><span class="lineno">  135</span>&#160;                        <span class="keywordflow">for</span> (<span class="keywordtype">int</span> i = 0; i &lt; N; ++i)</div>
-<div class="line"><a name="l00136"></a><span class="lineno">  136</span>&#160;                                t[i] = that[i];</div>
-<div class="line"><a name="l00137"></a><span class="lineno">  137</span>&#160;                        <span class="keywordflow">for</span> (<span class="keywordtype">int</span> i = 0; i &lt; N; ++i)</div>
-<div class="line"><a name="l00138"></a><span class="lineno">  138</span>&#160;                                op( (*<span class="keyword">this</span>)[i], t[i] );</div>
-<div class="line"><a name="l00139"></a><span class="lineno">  139</span>&#160;                }</div>
-<div class="line"><a name="l00140"></a><span class="lineno">  140</span>&#160;        };</div>
-<div class="line"><a name="l00141"></a><span class="lineno">  141</span>&#160;</div>
-<div class="line"><a name="l00142"></a><span class="lineno">  142</span>&#160;        <span class="comment">// Specialization for swizzles containing duplicate elements.  These cannot be modified.</span></div>
-<div class="line"><a name="l00143"></a><span class="lineno">  143</span>&#160;        <span class="keyword">template</span>&lt;<span class="keywordtype">int</span> N, <span class="keyword">typename</span> T, qualifier Q, <span class="keywordtype">int</span> E0, <span class="keywordtype">int</span> E1, <span class="keywordtype">int</span> E2, <span class="keywordtype">int</span> E3&gt;</div>
-<div class="line"><a name="l00144"></a><span class="lineno">  144</span>&#160;        <span class="keyword">struct </span>_swizzle_base2&lt;N, T, Q, E0,E1,E2,E3, 1&gt; : <span class="keyword">public</span> _swizzle_base1&lt;N, T, Q, E0,E1,E2,E3, detail::is_aligned&lt;Q&gt;::value&gt;</div>
-<div class="line"><a name="l00145"></a><span class="lineno">  145</span>&#160;        {</div>
-<div class="line"><a name="l00146"></a><span class="lineno">  146</span>&#160;                <span class="keyword">struct </span>Stub {};</div>
-<div class="line"><a name="l00147"></a><span class="lineno">  147</span>&#160;</div>
-<div class="line"><a name="l00148"></a><span class="lineno">  148</span>&#160;                GLM_FUNC_QUALIFIER _swizzle_base2&amp; operator= (Stub <span class="keyword">const</span>&amp;) { <span class="keywordflow">return</span> *<span class="keyword">this</span>; }</div>
-<div class="line"><a name="l00149"></a><span class="lineno">  149</span>&#160;</div>
-<div class="line"><a name="l00150"></a><span class="lineno">  150</span>&#160;                GLM_FUNC_QUALIFIER T operator[]  (<span class="keywordtype">size_t</span> i)<span class="keyword"> const</span></div>
-<div class="line"><a name="l00151"></a><span class="lineno">  151</span>&#160;<span class="keyword">                </span>{</div>
-<div class="line"><a name="l00152"></a><span class="lineno">  152</span>&#160;                        <span class="keyword">const</span> <span class="keywordtype">int</span> offset_dst[4] = { E0, E1, E2, E3 };</div>
-<div class="line"><a name="l00153"></a><span class="lineno">  153</span>&#160;                        <span class="keywordflow">return</span> this-&gt;elem(offset_dst[i]);</div>
-<div class="line"><a name="l00154"></a><span class="lineno">  154</span>&#160;                }</div>
-<div class="line"><a name="l00155"></a><span class="lineno">  155</span>&#160;        };</div>
-<div class="line"><a name="l00156"></a><span class="lineno">  156</span>&#160;</div>
-<div class="line"><a name="l00157"></a><span class="lineno">  157</span>&#160;        <span class="keyword">template</span>&lt;<span class="keywordtype">int</span> N, <span class="keyword">typename</span> T, qualifier Q, <span class="keywordtype">int</span> E0, <span class="keywordtype">int</span> E1, <span class="keywordtype">int</span> E2, <span class="keywordtype">int</span> E3&gt;</div>
-<div class="line"><a name="l00158"></a><span class="lineno">  158</span>&#160;        <span class="keyword">struct </span>_swizzle : <span class="keyword">public</span> _swizzle_base2&lt;N, T, Q, E0, E1, E2, E3, (E0 == E1 || E0 == E2 || E0 == E3 || E1 == E2 || E1 == E3 || E2 == E3)&gt;</div>
-<div class="line"><a name="l00159"></a><span class="lineno">  159</span>&#160;        {</div>
-<div class="line"><a name="l00160"></a><span class="lineno">  160</span>&#160;                <span class="keyword">typedef</span> _swizzle_base2&lt;N, T, Q, E0, E1, E2, E3, (E0 == E1 || E0 == E2 || E0 == E3 || E1 == E2 || E1 == E3 || E2 == E3)&gt; base_type;</div>
-<div class="line"><a name="l00161"></a><span class="lineno">  161</span>&#160;</div>
-<div class="line"><a name="l00162"></a><span class="lineno">  162</span>&#160;                <span class="keyword">using</span> base_type::operator=;</div>
-<div class="line"><a name="l00163"></a><span class="lineno">  163</span>&#160;</div>
-<div class="line"><a name="l00164"></a><span class="lineno">  164</span>&#160;                GLM_FUNC_QUALIFIER <span class="keyword">operator</span> vec&lt;N, T, Q&gt; () <span class="keyword">const</span> { <span class="keywordflow">return</span> (*<span class="keyword">this</span>)(); }</div>
-<div class="line"><a name="l00165"></a><span class="lineno">  165</span>&#160;        };</div>
-<div class="line"><a name="l00166"></a><span class="lineno">  166</span>&#160;</div>
-<div class="line"><a name="l00167"></a><span class="lineno">  167</span>&#160;<span class="comment">//</span></div>
-<div class="line"><a name="l00168"></a><span class="lineno">  168</span>&#160;<span class="comment">// To prevent the C++ syntax from getting entirely overwhelming, define some alias macros</span></div>
-<div class="line"><a name="l00169"></a><span class="lineno">  169</span>&#160;<span class="comment">//</span></div>
-<div class="line"><a name="l00170"></a><span class="lineno">  170</span>&#160;<span class="preprocessor">#define GLM_SWIZZLE_TEMPLATE1   template&lt;int N, typename T, qualifier Q, int E0, int E1, int E2, int E3&gt;</span></div>
-<div class="line"><a name="l00171"></a><span class="lineno">  171</span>&#160;<span class="preprocessor">#define GLM_SWIZZLE_TEMPLATE2   template&lt;int N, typename T, qualifier Q, int E0, int E1, int E2, int E3, int F0, int F1, int F2, int F3&gt;</span></div>
-<div class="line"><a name="l00172"></a><span class="lineno">  172</span>&#160;<span class="preprocessor">#define GLM_SWIZZLE_TYPE1       _swizzle&lt;N, T, Q, E0, E1, E2, E3&gt;</span></div>
-<div class="line"><a name="l00173"></a><span class="lineno">  173</span>&#160;<span class="preprocessor">#define GLM_SWIZZLE_TYPE2       _swizzle&lt;N, T, Q, F0, F1, F2, F3&gt;</span></div>
-<div class="line"><a name="l00174"></a><span class="lineno">  174</span>&#160;</div>
-<div class="line"><a name="l00175"></a><span class="lineno">  175</span>&#160;<span class="comment">//</span></div>
-<div class="line"><a name="l00176"></a><span class="lineno">  176</span>&#160;<span class="comment">// Wrapper for a binary operator (e.g. u.yy + v.zy)</span></div>
-<div class="line"><a name="l00177"></a><span class="lineno">  177</span>&#160;<span class="comment">//</span></div>
-<div class="line"><a name="l00178"></a><span class="lineno">  178</span>&#160;<span class="preprocessor">#define GLM_SWIZZLE_VECTOR_BINARY_OPERATOR_IMPLEMENTATION(OPERAND)                 \</span></div>
-<div class="line"><a name="l00179"></a><span class="lineno">  179</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_TEMPLATE2                                                          \</span></div>
-<div class="line"><a name="l00180"></a><span class="lineno">  180</span>&#160;<span class="preprocessor">        GLM_FUNC_QUALIFIER vec&lt;N, T, Q&gt; operator OPERAND ( const GLM_SWIZZLE_TYPE1&amp; a, const GLM_SWIZZLE_TYPE2&amp; b)  \</span></div>
-<div class="line"><a name="l00181"></a><span class="lineno">  181</span>&#160;<span class="preprocessor">        {                                                                               \</span></div>
-<div class="line"><a name="l00182"></a><span class="lineno">  182</span>&#160;<span class="preprocessor">                return a() OPERAND b();                                                     \</span></div>
-<div class="line"><a name="l00183"></a><span class="lineno">  183</span>&#160;<span class="preprocessor">        }                                                                               \</span></div>
-<div class="line"><a name="l00184"></a><span class="lineno">  184</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_TEMPLATE1                                                          \</span></div>
-<div class="line"><a name="l00185"></a><span class="lineno">  185</span>&#160;<span class="preprocessor">        GLM_FUNC_QUALIFIER vec&lt;N, T, Q&gt; operator OPERAND ( const GLM_SWIZZLE_TYPE1&amp; a, const vec&lt;N, T, Q&gt;&amp; b)                   \</span></div>
-<div class="line"><a name="l00186"></a><span class="lineno">  186</span>&#160;<span class="preprocessor">        {                                                                               \</span></div>
-<div class="line"><a name="l00187"></a><span class="lineno">  187</span>&#160;<span class="preprocessor">                return a() OPERAND b;                                                       \</span></div>
-<div class="line"><a name="l00188"></a><span class="lineno">  188</span>&#160;<span class="preprocessor">        }                                                                               \</span></div>
-<div class="line"><a name="l00189"></a><span class="lineno">  189</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_TEMPLATE1                                                          \</span></div>
-<div class="line"><a name="l00190"></a><span class="lineno">  190</span>&#160;<span class="preprocessor">        GLM_FUNC_QUALIFIER vec&lt;N, T, Q&gt; operator OPERAND ( const vec&lt;N, T, Q&gt;&amp; a, const GLM_SWIZZLE_TYPE1&amp; b)                   \</span></div>
-<div class="line"><a name="l00191"></a><span class="lineno">  191</span>&#160;<span class="preprocessor">        {                                                                               \</span></div>
-<div class="line"><a name="l00192"></a><span class="lineno">  192</span>&#160;<span class="preprocessor">                return a OPERAND b();                                                       \</span></div>
-<div class="line"><a name="l00193"></a><span class="lineno">  193</span>&#160;<span class="preprocessor">        }</span></div>
-<div class="line"><a name="l00194"></a><span class="lineno">  194</span>&#160;</div>
-<div class="line"><a name="l00195"></a><span class="lineno">  195</span>&#160;<span class="comment">//</span></div>
-<div class="line"><a name="l00196"></a><span class="lineno">  196</span>&#160;<span class="comment">// Wrapper for a operand between a swizzle and a binary (e.g. 1.0f - u.xyz)</span></div>
-<div class="line"><a name="l00197"></a><span class="lineno">  197</span>&#160;<span class="comment">//</span></div>
-<div class="line"><a name="l00198"></a><span class="lineno">  198</span>&#160;<span class="preprocessor">#define GLM_SWIZZLE_SCALAR_BINARY_OPERATOR_IMPLEMENTATION(OPERAND)                                                              \</span></div>
-<div class="line"><a name="l00199"></a><span class="lineno">  199</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_TEMPLATE1                                                                                                                                           \</span></div>
-<div class="line"><a name="l00200"></a><span class="lineno">  200</span>&#160;<span class="preprocessor">        GLM_FUNC_QUALIFIER vec&lt;N, T, Q&gt; operator OPERAND ( const GLM_SWIZZLE_TYPE1&amp; a, const T&amp; b)      \</span></div>
-<div class="line"><a name="l00201"></a><span class="lineno">  201</span>&#160;<span class="preprocessor">        {                                                                                                                                                                                       \</span></div>
-<div class="line"><a name="l00202"></a><span class="lineno">  202</span>&#160;<span class="preprocessor">                return a() OPERAND b;                                                                                                                                   \</span></div>
-<div class="line"><a name="l00203"></a><span class="lineno">  203</span>&#160;<span class="preprocessor">        }                                                                                                                                                                                       \</span></div>
-<div class="line"><a name="l00204"></a><span class="lineno">  204</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_TEMPLATE1                                                                                                                                           \</span></div>
-<div class="line"><a name="l00205"></a><span class="lineno">  205</span>&#160;<span class="preprocessor">        GLM_FUNC_QUALIFIER vec&lt;N, T, Q&gt; operator OPERAND ( const T&amp; a, const GLM_SWIZZLE_TYPE1&amp; b)      \</span></div>
-<div class="line"><a name="l00206"></a><span class="lineno">  206</span>&#160;<span class="preprocessor">        {                                                                                                                                                                                       \</span></div>
-<div class="line"><a name="l00207"></a><span class="lineno">  207</span>&#160;<span class="preprocessor">                return a OPERAND b();                                                                                                                                   \</span></div>
-<div class="line"><a name="l00208"></a><span class="lineno">  208</span>&#160;<span class="preprocessor">        }</span></div>
-<div class="line"><a name="l00209"></a><span class="lineno">  209</span>&#160;</div>
-<div class="line"><a name="l00210"></a><span class="lineno">  210</span>&#160;<span class="comment">//</span></div>
-<div class="line"><a name="l00211"></a><span class="lineno">  211</span>&#160;<span class="comment">// Macro for wrapping a function taking one argument (e.g. abs())</span></div>
-<div class="line"><a name="l00212"></a><span class="lineno">  212</span>&#160;<span class="comment">//</span></div>
-<div class="line"><a name="l00213"></a><span class="lineno">  213</span>&#160;<span class="preprocessor">#define GLM_SWIZZLE_FUNCTION_1_ARGS(RETURN_TYPE,FUNCTION)                                                                                               \</span></div>
-<div class="line"><a name="l00214"></a><span class="lineno">  214</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_TEMPLATE1                                                                                                                                                           \</span></div>
-<div class="line"><a name="l00215"></a><span class="lineno">  215</span>&#160;<span class="preprocessor">        GLM_FUNC_QUALIFIER typename GLM_SWIZZLE_TYPE1::RETURN_TYPE FUNCTION(const GLM_SWIZZLE_TYPE1&amp; a)         \</span></div>
-<div class="line"><a name="l00216"></a><span class="lineno">  216</span>&#160;<span class="preprocessor">        {                                                                                                                                                                                                       \</span></div>
-<div class="line"><a name="l00217"></a><span class="lineno">  217</span>&#160;<span class="preprocessor">                return FUNCTION(a());                                                                                                                                                   \</span></div>
-<div class="line"><a name="l00218"></a><span class="lineno">  218</span>&#160;<span class="preprocessor">        }</span></div>
-<div class="line"><a name="l00219"></a><span class="lineno">  219</span>&#160;</div>
-<div class="line"><a name="l00220"></a><span class="lineno">  220</span>&#160;<span class="comment">//</span></div>
-<div class="line"><a name="l00221"></a><span class="lineno">  221</span>&#160;<span class="comment">// Macro for wrapping a function taking two vector arguments (e.g. dot()).</span></div>
-<div class="line"><a name="l00222"></a><span class="lineno">  222</span>&#160;<span class="comment">//</span></div>
-<div class="line"><a name="l00223"></a><span class="lineno">  223</span>&#160;<span class="preprocessor">#define GLM_SWIZZLE_FUNCTION_2_ARGS(RETURN_TYPE,FUNCTION)                                                       \</span></div>
-<div class="line"><a name="l00224"></a><span class="lineno">  224</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_TEMPLATE2                                                                                       \</span></div>
-<div class="line"><a name="l00225"></a><span class="lineno">  225</span>&#160;<span class="preprocessor">        GLM_FUNC_QUALIFIER typename GLM_SWIZZLE_TYPE1::RETURN_TYPE FUNCTION(const GLM_SWIZZLE_TYPE1&amp; a, const GLM_SWIZZLE_TYPE2&amp; b) \</span></div>
-<div class="line"><a name="l00226"></a><span class="lineno">  226</span>&#160;<span class="preprocessor">        {                                                                                                           \</span></div>
-<div class="line"><a name="l00227"></a><span class="lineno">  227</span>&#160;<span class="preprocessor">                return FUNCTION(a(), b());                                                                              \</span></div>
-<div class="line"><a name="l00228"></a><span class="lineno">  228</span>&#160;<span class="preprocessor">        }                                                                                                           \</span></div>
-<div class="line"><a name="l00229"></a><span class="lineno">  229</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_TEMPLATE1                                                                                       \</span></div>
-<div class="line"><a name="l00230"></a><span class="lineno">  230</span>&#160;<span class="preprocessor">        GLM_FUNC_QUALIFIER typename GLM_SWIZZLE_TYPE1::RETURN_TYPE FUNCTION(const GLM_SWIZZLE_TYPE1&amp; a, const GLM_SWIZZLE_TYPE1&amp; b) \</span></div>
-<div class="line"><a name="l00231"></a><span class="lineno">  231</span>&#160;<span class="preprocessor">        {                                                                                                           \</span></div>
-<div class="line"><a name="l00232"></a><span class="lineno">  232</span>&#160;<span class="preprocessor">                return FUNCTION(a(), b());                                                                              \</span></div>
-<div class="line"><a name="l00233"></a><span class="lineno">  233</span>&#160;<span class="preprocessor">        }                                                                                                           \</span></div>
-<div class="line"><a name="l00234"></a><span class="lineno">  234</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_TEMPLATE1                                                                                       \</span></div>
-<div class="line"><a name="l00235"></a><span class="lineno">  235</span>&#160;<span class="preprocessor">        GLM_FUNC_QUALIFIER typename GLM_SWIZZLE_TYPE1::RETURN_TYPE FUNCTION(const GLM_SWIZZLE_TYPE1&amp; a, const typename V&amp; b)         \</span></div>
-<div class="line"><a name="l00236"></a><span class="lineno">  236</span>&#160;<span class="preprocessor">        {                                                                                                           \</span></div>
-<div class="line"><a name="l00237"></a><span class="lineno">  237</span>&#160;<span class="preprocessor">                return FUNCTION(a(), b);                                                                                \</span></div>
-<div class="line"><a name="l00238"></a><span class="lineno">  238</span>&#160;<span class="preprocessor">        }                                                                                                           \</span></div>
-<div class="line"><a name="l00239"></a><span class="lineno">  239</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_TEMPLATE1                                                                                       \</span></div>
-<div class="line"><a name="l00240"></a><span class="lineno">  240</span>&#160;<span class="preprocessor">        GLM_FUNC_QUALIFIER typename GLM_SWIZZLE_TYPE1::RETURN_TYPE FUNCTION(const V&amp; a, const GLM_SWIZZLE_TYPE1&amp; b)                  \</span></div>
-<div class="line"><a name="l00241"></a><span class="lineno">  241</span>&#160;<span class="preprocessor">        {                                                                                                           \</span></div>
-<div class="line"><a name="l00242"></a><span class="lineno">  242</span>&#160;<span class="preprocessor">                return FUNCTION(a, b());                                                                                \</span></div>
-<div class="line"><a name="l00243"></a><span class="lineno">  243</span>&#160;<span class="preprocessor">        }</span></div>
-<div class="line"><a name="l00244"></a><span class="lineno">  244</span>&#160;</div>
-<div class="line"><a name="l00245"></a><span class="lineno">  245</span>&#160;<span class="comment">//</span></div>
-<div class="line"><a name="l00246"></a><span class="lineno">  246</span>&#160;<span class="comment">// Macro for wrapping a function take 2 vec arguments followed by a scalar (e.g. mix()).</span></div>
-<div class="line"><a name="l00247"></a><span class="lineno">  247</span>&#160;<span class="comment">//</span></div>
-<div class="line"><a name="l00248"></a><span class="lineno">  248</span>&#160;<span class="preprocessor">#define GLM_SWIZZLE_FUNCTION_2_ARGS_SCALAR(RETURN_TYPE,FUNCTION)                                                             \</span></div>
-<div class="line"><a name="l00249"></a><span class="lineno">  249</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_TEMPLATE2                                                                                                    \</span></div>
-<div class="line"><a name="l00250"></a><span class="lineno">  250</span>&#160;<span class="preprocessor">        GLM_FUNC_QUALIFIER typename GLM_SWIZZLE_TYPE1::RETURN_TYPE FUNCTION(const GLM_SWIZZLE_TYPE1&amp; a, const GLM_SWIZZLE_TYPE2&amp; b, const T&amp; c)   \</span></div>
-<div class="line"><a name="l00251"></a><span class="lineno">  251</span>&#160;<span class="preprocessor">        {                                                                                                                         \</span></div>
-<div class="line"><a name="l00252"></a><span class="lineno">  252</span>&#160;<span class="preprocessor">                return FUNCTION(a(), b(), c);                                                                                         \</span></div>
-<div class="line"><a name="l00253"></a><span class="lineno">  253</span>&#160;<span class="preprocessor">        }                                                                                                                         \</span></div>
-<div class="line"><a name="l00254"></a><span class="lineno">  254</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_TEMPLATE1                                                                                                    \</span></div>
-<div class="line"><a name="l00255"></a><span class="lineno">  255</span>&#160;<span class="preprocessor">        GLM_FUNC_QUALIFIER typename GLM_SWIZZLE_TYPE1::RETURN_TYPE FUNCTION(const GLM_SWIZZLE_TYPE1&amp; a, const GLM_SWIZZLE_TYPE1&amp; b, const T&amp; c)   \</span></div>
-<div class="line"><a name="l00256"></a><span class="lineno">  256</span>&#160;<span class="preprocessor">        {                                                                                                                         \</span></div>
-<div class="line"><a name="l00257"></a><span class="lineno">  257</span>&#160;<span class="preprocessor">                return FUNCTION(a(), b(), c);                                                                                         \</span></div>
-<div class="line"><a name="l00258"></a><span class="lineno">  258</span>&#160;<span class="preprocessor">        }                                                                                                                         \</span></div>
-<div class="line"><a name="l00259"></a><span class="lineno">  259</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_TEMPLATE1                                                                                                    \</span></div>
-<div class="line"><a name="l00260"></a><span class="lineno">  260</span>&#160;<span class="preprocessor">        GLM_FUNC_QUALIFIER typename GLM_SWIZZLE_TYPE1::RETURN_TYPE FUNCTION(const GLM_SWIZZLE_TYPE1&amp; a, const typename S0::vec_type&amp; b, const T&amp; c)\</span></div>
-<div class="line"><a name="l00261"></a><span class="lineno">  261</span>&#160;<span class="preprocessor">        {                                                                                                                         \</span></div>
-<div class="line"><a name="l00262"></a><span class="lineno">  262</span>&#160;<span class="preprocessor">                return FUNCTION(a(), b, c);                                                                                           \</span></div>
-<div class="line"><a name="l00263"></a><span class="lineno">  263</span>&#160;<span class="preprocessor">        }                                                                                                                         \</span></div>
-<div class="line"><a name="l00264"></a><span class="lineno">  264</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_TEMPLATE1                                                                                                    \</span></div>
-<div class="line"><a name="l00265"></a><span class="lineno">  265</span>&#160;<span class="preprocessor">        GLM_FUNC_QUALIFIER typename GLM_SWIZZLE_TYPE1::RETURN_TYPE FUNCTION(const typename V&amp; a, const GLM_SWIZZLE_TYPE1&amp; b, const T&amp; c)           \</span></div>
-<div class="line"><a name="l00266"></a><span class="lineno">  266</span>&#160;<span class="preprocessor">        {                                                                                                                         \</span></div>
-<div class="line"><a name="l00267"></a><span class="lineno">  267</span>&#160;<span class="preprocessor">                return FUNCTION(a, b(), c);                                                                                           \</span></div>
-<div class="line"><a name="l00268"></a><span class="lineno">  268</span>&#160;<span class="preprocessor">        }</span></div>
-<div class="line"><a name="l00269"></a><span class="lineno">  269</span>&#160;</div>
-<div class="line"><a name="l00270"></a><span class="lineno">  270</span>&#160;}<span class="comment">//namespace detail</span></div>
-<div class="line"><a name="l00271"></a><span class="lineno">  271</span>&#160;}<span class="comment">//namespace glm</span></div>
-<div class="line"><a name="l00272"></a><span class="lineno">  272</span>&#160;</div>
-<div class="line"><a name="l00273"></a><span class="lineno">  273</span>&#160;<span class="keyword">namespace </span><a class="code" href="a00236.html">glm</a></div>
-<div class="line"><a name="l00274"></a><span class="lineno">  274</span>&#160;{</div>
-<div class="line"><a name="l00275"></a><span class="lineno">  275</span>&#160;        <span class="keyword">namespace </span>detail</div>
-<div class="line"><a name="l00276"></a><span class="lineno">  276</span>&#160;        {</div>
-<div class="line"><a name="l00277"></a><span class="lineno">  277</span>&#160;                GLM_SWIZZLE_SCALAR_BINARY_OPERATOR_IMPLEMENTATION(-)</div>
-<div class="line"><a name="l00278"></a><span class="lineno">  278</span>&#160;                GLM_SWIZZLE_SCALAR_BINARY_OPERATOR_IMPLEMENTATION(*)</div>
-<div class="line"><a name="l00279"></a><span class="lineno">  279</span>&#160;                GLM_SWIZZLE_VECTOR_BINARY_OPERATOR_IMPLEMENTATION(+)</div>
-<div class="line"><a name="l00280"></a><span class="lineno">  280</span>&#160;                GLM_SWIZZLE_VECTOR_BINARY_OPERATOR_IMPLEMENTATION(-)</div>
-<div class="line"><a name="l00281"></a><span class="lineno">  281</span>&#160;                GLM_SWIZZLE_VECTOR_BINARY_OPERATOR_IMPLEMENTATION(*)</div>
-<div class="line"><a name="l00282"></a><span class="lineno">  282</span>&#160;                GLM_SWIZZLE_VECTOR_BINARY_OPERATOR_IMPLEMENTATION(/)</div>
-<div class="line"><a name="l00283"></a><span class="lineno">  283</span>&#160;        }</div>
-<div class="line"><a name="l00284"></a><span class="lineno">  284</span>&#160;</div>
-<div class="line"><a name="l00285"></a><span class="lineno">  285</span>&#160;        <span class="comment">//</span></div>
-<div class="line"><a name="l00286"></a><span class="lineno">  286</span>&#160;        <span class="comment">// Swizzles are distinct types from the unswizzled type.  The below macros will</span></div>
-<div class="line"><a name="l00287"></a><span class="lineno">  287</span>&#160;        <span class="comment">// provide template specializations for the swizzle types for the given functions</span></div>
-<div class="line"><a name="l00288"></a><span class="lineno">  288</span>&#160;        <span class="comment">// so that the compiler does not have any ambiguity to choosing how to handle</span></div>
-<div class="line"><a name="l00289"></a><span class="lineno">  289</span>&#160;        <span class="comment">// the function.</span></div>
-<div class="line"><a name="l00290"></a><span class="lineno">  290</span>&#160;        <span class="comment">//</span></div>
-<div class="line"><a name="l00291"></a><span class="lineno">  291</span>&#160;        <span class="comment">// The alternative is to use the operator()() when calling the function in order</span></div>
-<div class="line"><a name="l00292"></a><span class="lineno">  292</span>&#160;        <span class="comment">// to explicitly convert the swizzled type to the unswizzled type.</span></div>
-<div class="line"><a name="l00293"></a><span class="lineno">  293</span>&#160;        <span class="comment">//</span></div>
-<div class="line"><a name="l00294"></a><span class="lineno">  294</span>&#160;</div>
-<div class="line"><a name="l00295"></a><span class="lineno">  295</span>&#160;        <span class="comment">//GLM_SWIZZLE_FUNCTION_1_ARGS(vec_type,    abs);</span></div>
-<div class="line"><a name="l00296"></a><span class="lineno">  296</span>&#160;        <span class="comment">//GLM_SWIZZLE_FUNCTION_1_ARGS(vec_type,    acos);</span></div>
-<div class="line"><a name="l00297"></a><span class="lineno">  297</span>&#160;        <span class="comment">//GLM_SWIZZLE_FUNCTION_1_ARGS(vec_type,    acosh);</span></div>
-<div class="line"><a name="l00298"></a><span class="lineno">  298</span>&#160;        <span class="comment">//GLM_SWIZZLE_FUNCTION_1_ARGS(vec_type,    all);</span></div>
-<div class="line"><a name="l00299"></a><span class="lineno">  299</span>&#160;        <span class="comment">//GLM_SWIZZLE_FUNCTION_1_ARGS(vec_type,    any);</span></div>
-<div class="line"><a name="l00300"></a><span class="lineno">  300</span>&#160;</div>
-<div class="line"><a name="l00301"></a><span class="lineno">  301</span>&#160;        <span class="comment">//GLM_SWIZZLE_FUNCTION_2_ARGS(value_type,  dot);</span></div>
-<div class="line"><a name="l00302"></a><span class="lineno">  302</span>&#160;        <span class="comment">//GLM_SWIZZLE_FUNCTION_2_ARGS(vec_type,    cross);</span></div>
-<div class="line"><a name="l00303"></a><span class="lineno">  303</span>&#160;        <span class="comment">//GLM_SWIZZLE_FUNCTION_2_ARGS(vec_type,    step);</span></div>
-<div class="line"><a name="l00304"></a><span class="lineno">  304</span>&#160;        <span class="comment">//GLM_SWIZZLE_FUNCTION_2_ARGS_SCALAR(vec_type, mix);</span></div>
-<div class="line"><a name="l00305"></a><span class="lineno">  305</span>&#160;}</div>
-<div class="line"><a name="l00306"></a><span class="lineno">  306</span>&#160;</div>
-<div class="line"><a name="l00307"></a><span class="lineno">  307</span>&#160;<span class="preprocessor">#define GLM_SWIZZLE2_2_MEMBERS(T, Q, E0,E1) \</span></div>
-<div class="line"><a name="l00308"></a><span class="lineno">  308</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;2, T, Q, 0,0,-1,-2&gt; E0 ## E0; }; \</span></div>
-<div class="line"><a name="l00309"></a><span class="lineno">  309</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;2, T, Q, 0,1,-1,-2&gt; E0 ## E1; }; \</span></div>
-<div class="line"><a name="l00310"></a><span class="lineno">  310</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;2, T, Q, 1,0,-1,-2&gt; E1 ## E0; }; \</span></div>
-<div class="line"><a name="l00311"></a><span class="lineno">  311</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;2, T, Q, 1,1,-1,-2&gt; E1 ## E1; };</span></div>
-<div class="line"><a name="l00312"></a><span class="lineno">  312</span>&#160;</div>
-<div class="line"><a name="l00313"></a><span class="lineno">  313</span>&#160;<span class="preprocessor">#define GLM_SWIZZLE2_3_MEMBERS(T, Q, E0,E1) \</span></div>
-<div class="line"><a name="l00314"></a><span class="lineno">  314</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;3,T, Q, 0,0,0,-1&gt; E0 ## E0 ## E0; }; \</span></div>
-<div class="line"><a name="l00315"></a><span class="lineno">  315</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;3,T, Q, 0,0,1,-1&gt; E0 ## E0 ## E1; }; \</span></div>
-<div class="line"><a name="l00316"></a><span class="lineno">  316</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;3,T, Q, 0,1,0,-1&gt; E0 ## E1 ## E0; }; \</span></div>
-<div class="line"><a name="l00317"></a><span class="lineno">  317</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;3,T, Q, 0,1,1,-1&gt; E0 ## E1 ## E1; }; \</span></div>
-<div class="line"><a name="l00318"></a><span class="lineno">  318</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;3,T, Q, 1,0,0,-1&gt; E1 ## E0 ## E0; }; \</span></div>
-<div class="line"><a name="l00319"></a><span class="lineno">  319</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;3,T, Q, 1,0,1,-1&gt; E1 ## E0 ## E1; }; \</span></div>
-<div class="line"><a name="l00320"></a><span class="lineno">  320</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;3,T, Q, 1,1,0,-1&gt; E1 ## E1 ## E0; }; \</span></div>
-<div class="line"><a name="l00321"></a><span class="lineno">  321</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;3,T, Q, 1,1,1,-1&gt; E1 ## E1 ## E1; };</span></div>
-<div class="line"><a name="l00322"></a><span class="lineno">  322</span>&#160;</div>
-<div class="line"><a name="l00323"></a><span class="lineno">  323</span>&#160;<span class="preprocessor">#define GLM_SWIZZLE2_4_MEMBERS(T, Q, E0,E1) \</span></div>
-<div class="line"><a name="l00324"></a><span class="lineno">  324</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4,T, Q, 0,0,0,0&gt; E0 ## E0 ## E0 ## E0; }; \</span></div>
-<div class="line"><a name="l00325"></a><span class="lineno">  325</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4,T, Q, 0,0,0,1&gt; E0 ## E0 ## E0 ## E1; }; \</span></div>
-<div class="line"><a name="l00326"></a><span class="lineno">  326</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4,T, Q, 0,0,1,0&gt; E0 ## E0 ## E1 ## E0; }; \</span></div>
-<div class="line"><a name="l00327"></a><span class="lineno">  327</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4,T, Q, 0,0,1,1&gt; E0 ## E0 ## E1 ## E1; }; \</span></div>
-<div class="line"><a name="l00328"></a><span class="lineno">  328</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4,T, Q, 0,1,0,0&gt; E0 ## E1 ## E0 ## E0; }; \</span></div>
-<div class="line"><a name="l00329"></a><span class="lineno">  329</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4,T, Q, 0,1,0,1&gt; E0 ## E1 ## E0 ## E1; }; \</span></div>
-<div class="line"><a name="l00330"></a><span class="lineno">  330</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4,T, Q, 0,1,1,0&gt; E0 ## E1 ## E1 ## E0; }; \</span></div>
-<div class="line"><a name="l00331"></a><span class="lineno">  331</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4,T, Q, 0,1,1,1&gt; E0 ## E1 ## E1 ## E1; }; \</span></div>
-<div class="line"><a name="l00332"></a><span class="lineno">  332</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4,T, Q, 1,0,0,0&gt; E1 ## E0 ## E0 ## E0; }; \</span></div>
-<div class="line"><a name="l00333"></a><span class="lineno">  333</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4,T, Q, 1,0,0,1&gt; E1 ## E0 ## E0 ## E1; }; \</span></div>
-<div class="line"><a name="l00334"></a><span class="lineno">  334</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4,T, Q, 1,0,1,0&gt; E1 ## E0 ## E1 ## E0; }; \</span></div>
-<div class="line"><a name="l00335"></a><span class="lineno">  335</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4,T, Q, 1,0,1,1&gt; E1 ## E0 ## E1 ## E1; }; \</span></div>
-<div class="line"><a name="l00336"></a><span class="lineno">  336</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4,T, Q, 1,1,0,0&gt; E1 ## E1 ## E0 ## E0; }; \</span></div>
-<div class="line"><a name="l00337"></a><span class="lineno">  337</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4,T, Q, 1,1,0,1&gt; E1 ## E1 ## E0 ## E1; }; \</span></div>
-<div class="line"><a name="l00338"></a><span class="lineno">  338</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4,T, Q, 1,1,1,0&gt; E1 ## E1 ## E1 ## E0; }; \</span></div>
-<div class="line"><a name="l00339"></a><span class="lineno">  339</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4,T, Q, 1,1,1,1&gt; E1 ## E1 ## E1 ## E1; };</span></div>
-<div class="line"><a name="l00340"></a><span class="lineno">  340</span>&#160;</div>
-<div class="line"><a name="l00341"></a><span class="lineno">  341</span>&#160;<span class="preprocessor">#define GLM_SWIZZLE3_2_MEMBERS(T, Q, E0,E1,E2) \</span></div>
-<div class="line"><a name="l00342"></a><span class="lineno">  342</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;2,T, Q, 0,0,-1,-2&gt; E0 ## E0; }; \</span></div>
-<div class="line"><a name="l00343"></a><span class="lineno">  343</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;2,T, Q, 0,1,-1,-2&gt; E0 ## E1; }; \</span></div>
-<div class="line"><a name="l00344"></a><span class="lineno">  344</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;2,T, Q, 0,2,-1,-2&gt; E0 ## E2; }; \</span></div>
-<div class="line"><a name="l00345"></a><span class="lineno">  345</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;2,T, Q, 1,0,-1,-2&gt; E1 ## E0; }; \</span></div>
-<div class="line"><a name="l00346"></a><span class="lineno">  346</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;2,T, Q, 1,1,-1,-2&gt; E1 ## E1; }; \</span></div>
-<div class="line"><a name="l00347"></a><span class="lineno">  347</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;2,T, Q, 1,2,-1,-2&gt; E1 ## E2; }; \</span></div>
-<div class="line"><a name="l00348"></a><span class="lineno">  348</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;2,T, Q, 2,0,-1,-2&gt; E2 ## E0; }; \</span></div>
-<div class="line"><a name="l00349"></a><span class="lineno">  349</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;2,T, Q, 2,1,-1,-2&gt; E2 ## E1; }; \</span></div>
-<div class="line"><a name="l00350"></a><span class="lineno">  350</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;2,T, Q, 2,2,-1,-2&gt; E2 ## E2; };</span></div>
-<div class="line"><a name="l00351"></a><span class="lineno">  351</span>&#160;</div>
-<div class="line"><a name="l00352"></a><span class="lineno">  352</span>&#160;<span class="preprocessor">#define GLM_SWIZZLE3_3_MEMBERS(T, Q ,E0,E1,E2) \</span></div>
-<div class="line"><a name="l00353"></a><span class="lineno">  353</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;3, T, Q, 0,0,0,-1&gt; E0 ## E0 ## E0; }; \</span></div>
-<div class="line"><a name="l00354"></a><span class="lineno">  354</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;3, T, Q, 0,0,1,-1&gt; E0 ## E0 ## E1; }; \</span></div>
-<div class="line"><a name="l00355"></a><span class="lineno">  355</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;3, T, Q, 0,0,2,-1&gt; E0 ## E0 ## E2; }; \</span></div>
-<div class="line"><a name="l00356"></a><span class="lineno">  356</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;3, T, Q, 0,1,0,-1&gt; E0 ## E1 ## E0; }; \</span></div>
-<div class="line"><a name="l00357"></a><span class="lineno">  357</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;3, T, Q, 0,1,1,-1&gt; E0 ## E1 ## E1; }; \</span></div>
-<div class="line"><a name="l00358"></a><span class="lineno">  358</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;3, T, Q, 0,1,2,-1&gt; E0 ## E1 ## E2; }; \</span></div>
-<div class="line"><a name="l00359"></a><span class="lineno">  359</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;3, T, Q, 0,2,0,-1&gt; E0 ## E2 ## E0; }; \</span></div>
-<div class="line"><a name="l00360"></a><span class="lineno">  360</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;3, T, Q, 0,2,1,-1&gt; E0 ## E2 ## E1; }; \</span></div>
-<div class="line"><a name="l00361"></a><span class="lineno">  361</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;3, T, Q, 0,2,2,-1&gt; E0 ## E2 ## E2; }; \</span></div>
-<div class="line"><a name="l00362"></a><span class="lineno">  362</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;3, T, Q, 1,0,0,-1&gt; E1 ## E0 ## E0; }; \</span></div>
-<div class="line"><a name="l00363"></a><span class="lineno">  363</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;3, T, Q, 1,0,1,-1&gt; E1 ## E0 ## E1; }; \</span></div>
-<div class="line"><a name="l00364"></a><span class="lineno">  364</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;3, T, Q, 1,0,2,-1&gt; E1 ## E0 ## E2; }; \</span></div>
-<div class="line"><a name="l00365"></a><span class="lineno">  365</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;3, T, Q, 1,1,0,-1&gt; E1 ## E1 ## E0; }; \</span></div>
-<div class="line"><a name="l00366"></a><span class="lineno">  366</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;3, T, Q, 1,1,1,-1&gt; E1 ## E1 ## E1; }; \</span></div>
-<div class="line"><a name="l00367"></a><span class="lineno">  367</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;3, T, Q, 1,1,2,-1&gt; E1 ## E1 ## E2; }; \</span></div>
-<div class="line"><a name="l00368"></a><span class="lineno">  368</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;3, T, Q, 1,2,0,-1&gt; E1 ## E2 ## E0; }; \</span></div>
-<div class="line"><a name="l00369"></a><span class="lineno">  369</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;3, T, Q, 1,2,1,-1&gt; E1 ## E2 ## E1; }; \</span></div>
-<div class="line"><a name="l00370"></a><span class="lineno">  370</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;3, T, Q, 1,2,2,-1&gt; E1 ## E2 ## E2; }; \</span></div>
-<div class="line"><a name="l00371"></a><span class="lineno">  371</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;3, T, Q, 2,0,0,-1&gt; E2 ## E0 ## E0; }; \</span></div>
-<div class="line"><a name="l00372"></a><span class="lineno">  372</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;3, T, Q, 2,0,1,-1&gt; E2 ## E0 ## E1; }; \</span></div>
-<div class="line"><a name="l00373"></a><span class="lineno">  373</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;3, T, Q, 2,0,2,-1&gt; E2 ## E0 ## E2; }; \</span></div>
-<div class="line"><a name="l00374"></a><span class="lineno">  374</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;3, T, Q, 2,1,0,-1&gt; E2 ## E1 ## E0; }; \</span></div>
-<div class="line"><a name="l00375"></a><span class="lineno">  375</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;3, T, Q, 2,1,1,-1&gt; E2 ## E1 ## E1; }; \</span></div>
-<div class="line"><a name="l00376"></a><span class="lineno">  376</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;3, T, Q, 2,1,2,-1&gt; E2 ## E1 ## E2; }; \</span></div>
-<div class="line"><a name="l00377"></a><span class="lineno">  377</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;3, T, Q, 2,2,0,-1&gt; E2 ## E2 ## E0; }; \</span></div>
-<div class="line"><a name="l00378"></a><span class="lineno">  378</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;3, T, Q, 2,2,1,-1&gt; E2 ## E2 ## E1; }; \</span></div>
-<div class="line"><a name="l00379"></a><span class="lineno">  379</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;3, T, Q, 2,2,2,-1&gt; E2 ## E2 ## E2; };</span></div>
-<div class="line"><a name="l00380"></a><span class="lineno">  380</span>&#160;</div>
-<div class="line"><a name="l00381"></a><span class="lineno">  381</span>&#160;<span class="preprocessor">#define GLM_SWIZZLE3_4_MEMBERS(T, Q, E0,E1,E2) \</span></div>
-<div class="line"><a name="l00382"></a><span class="lineno">  382</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4,T, Q, 0,0,0,0&gt; E0 ## E0 ## E0 ## E0; }; \</span></div>
-<div class="line"><a name="l00383"></a><span class="lineno">  383</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4,T, Q, 0,0,0,1&gt; E0 ## E0 ## E0 ## E1; }; \</span></div>
-<div class="line"><a name="l00384"></a><span class="lineno">  384</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4,T, Q, 0,0,0,2&gt; E0 ## E0 ## E0 ## E2; }; \</span></div>
-<div class="line"><a name="l00385"></a><span class="lineno">  385</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4,T, Q, 0,0,1,0&gt; E0 ## E0 ## E1 ## E0; }; \</span></div>
-<div class="line"><a name="l00386"></a><span class="lineno">  386</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4,T, Q, 0,0,1,1&gt; E0 ## E0 ## E1 ## E1; }; \</span></div>
-<div class="line"><a name="l00387"></a><span class="lineno">  387</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4,T, Q, 0,0,1,2&gt; E0 ## E0 ## E1 ## E2; }; \</span></div>
-<div class="line"><a name="l00388"></a><span class="lineno">  388</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4,T, Q, 0,0,2,0&gt; E0 ## E0 ## E2 ## E0; }; \</span></div>
-<div class="line"><a name="l00389"></a><span class="lineno">  389</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4,T, Q, 0,0,2,1&gt; E0 ## E0 ## E2 ## E1; }; \</span></div>
-<div class="line"><a name="l00390"></a><span class="lineno">  390</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4,T, Q, 0,0,2,2&gt; E0 ## E0 ## E2 ## E2; }; \</span></div>
-<div class="line"><a name="l00391"></a><span class="lineno">  391</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4,T, Q, 0,1,0,0&gt; E0 ## E1 ## E0 ## E0; }; \</span></div>
-<div class="line"><a name="l00392"></a><span class="lineno">  392</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4,T, Q, 0,1,0,1&gt; E0 ## E1 ## E0 ## E1; }; \</span></div>
-<div class="line"><a name="l00393"></a><span class="lineno">  393</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4,T, Q, 0,1,0,2&gt; E0 ## E1 ## E0 ## E2; }; \</span></div>
-<div class="line"><a name="l00394"></a><span class="lineno">  394</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4,T, Q, 0,1,1,0&gt; E0 ## E1 ## E1 ## E0; }; \</span></div>
-<div class="line"><a name="l00395"></a><span class="lineno">  395</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4,T, Q, 0,1,1,1&gt; E0 ## E1 ## E1 ## E1; }; \</span></div>
-<div class="line"><a name="l00396"></a><span class="lineno">  396</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4,T, Q, 0,1,1,2&gt; E0 ## E1 ## E1 ## E2; }; \</span></div>
-<div class="line"><a name="l00397"></a><span class="lineno">  397</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4,T, Q, 0,1,2,0&gt; E0 ## E1 ## E2 ## E0; }; \</span></div>
-<div class="line"><a name="l00398"></a><span class="lineno">  398</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4,T, Q, 0,1,2,1&gt; E0 ## E1 ## E2 ## E1; }; \</span></div>
-<div class="line"><a name="l00399"></a><span class="lineno">  399</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4,T, Q, 0,1,2,2&gt; E0 ## E1 ## E2 ## E2; }; \</span></div>
-<div class="line"><a name="l00400"></a><span class="lineno">  400</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4,T, Q, 0,2,0,0&gt; E0 ## E2 ## E0 ## E0; }; \</span></div>
-<div class="line"><a name="l00401"></a><span class="lineno">  401</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4,T, Q, 0,2,0,1&gt; E0 ## E2 ## E0 ## E1; }; \</span></div>
-<div class="line"><a name="l00402"></a><span class="lineno">  402</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4,T, Q, 0,2,0,2&gt; E0 ## E2 ## E0 ## E2; }; \</span></div>
-<div class="line"><a name="l00403"></a><span class="lineno">  403</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4,T, Q, 0,2,1,0&gt; E0 ## E2 ## E1 ## E0; }; \</span></div>
-<div class="line"><a name="l00404"></a><span class="lineno">  404</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4,T, Q, 0,2,1,1&gt; E0 ## E2 ## E1 ## E1; }; \</span></div>
-<div class="line"><a name="l00405"></a><span class="lineno">  405</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4,T, Q, 0,2,1,2&gt; E0 ## E2 ## E1 ## E2; }; \</span></div>
-<div class="line"><a name="l00406"></a><span class="lineno">  406</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4,T, Q, 0,2,2,0&gt; E0 ## E2 ## E2 ## E0; }; \</span></div>
-<div class="line"><a name="l00407"></a><span class="lineno">  407</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4,T, Q, 0,2,2,1&gt; E0 ## E2 ## E2 ## E1; }; \</span></div>
-<div class="line"><a name="l00408"></a><span class="lineno">  408</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4,T, Q, 0,2,2,2&gt; E0 ## E2 ## E2 ## E2; }; \</span></div>
-<div class="line"><a name="l00409"></a><span class="lineno">  409</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4,T, Q, 1,0,0,0&gt; E1 ## E0 ## E0 ## E0; }; \</span></div>
-<div class="line"><a name="l00410"></a><span class="lineno">  410</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4,T, Q, 1,0,0,1&gt; E1 ## E0 ## E0 ## E1; }; \</span></div>
-<div class="line"><a name="l00411"></a><span class="lineno">  411</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4,T, Q, 1,0,0,2&gt; E1 ## E0 ## E0 ## E2; }; \</span></div>
-<div class="line"><a name="l00412"></a><span class="lineno">  412</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4,T, Q, 1,0,1,0&gt; E1 ## E0 ## E1 ## E0; }; \</span></div>
-<div class="line"><a name="l00413"></a><span class="lineno">  413</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4,T, Q, 1,0,1,1&gt; E1 ## E0 ## E1 ## E1; }; \</span></div>
-<div class="line"><a name="l00414"></a><span class="lineno">  414</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4,T, Q, 1,0,1,2&gt; E1 ## E0 ## E1 ## E2; }; \</span></div>
-<div class="line"><a name="l00415"></a><span class="lineno">  415</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4,T, Q, 1,0,2,0&gt; E1 ## E0 ## E2 ## E0; }; \</span></div>
-<div class="line"><a name="l00416"></a><span class="lineno">  416</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4,T, Q, 1,0,2,1&gt; E1 ## E0 ## E2 ## E1; }; \</span></div>
-<div class="line"><a name="l00417"></a><span class="lineno">  417</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4,T, Q, 1,0,2,2&gt; E1 ## E0 ## E2 ## E2; }; \</span></div>
-<div class="line"><a name="l00418"></a><span class="lineno">  418</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4,T, Q, 1,1,0,0&gt; E1 ## E1 ## E0 ## E0; }; \</span></div>
-<div class="line"><a name="l00419"></a><span class="lineno">  419</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4,T, Q, 1,1,0,1&gt; E1 ## E1 ## E0 ## E1; }; \</span></div>
-<div class="line"><a name="l00420"></a><span class="lineno">  420</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4,T, Q, 1,1,0,2&gt; E1 ## E1 ## E0 ## E2; }; \</span></div>
-<div class="line"><a name="l00421"></a><span class="lineno">  421</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4,T, Q, 1,1,1,0&gt; E1 ## E1 ## E1 ## E0; }; \</span></div>
-<div class="line"><a name="l00422"></a><span class="lineno">  422</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4,T, Q, 1,1,1,1&gt; E1 ## E1 ## E1 ## E1; }; \</span></div>
-<div class="line"><a name="l00423"></a><span class="lineno">  423</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4,T, Q, 1,1,1,2&gt; E1 ## E1 ## E1 ## E2; }; \</span></div>
-<div class="line"><a name="l00424"></a><span class="lineno">  424</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4,T, Q, 1,1,2,0&gt; E1 ## E1 ## E2 ## E0; }; \</span></div>
-<div class="line"><a name="l00425"></a><span class="lineno">  425</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4,T, Q, 1,1,2,1&gt; E1 ## E1 ## E2 ## E1; }; \</span></div>
-<div class="line"><a name="l00426"></a><span class="lineno">  426</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4,T, Q, 1,1,2,2&gt; E1 ## E1 ## E2 ## E2; }; \</span></div>
-<div class="line"><a name="l00427"></a><span class="lineno">  427</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4,T, Q, 1,2,0,0&gt; E1 ## E2 ## E0 ## E0; }; \</span></div>
-<div class="line"><a name="l00428"></a><span class="lineno">  428</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4,T, Q, 1,2,0,1&gt; E1 ## E2 ## E0 ## E1; }; \</span></div>
-<div class="line"><a name="l00429"></a><span class="lineno">  429</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4,T, Q, 1,2,0,2&gt; E1 ## E2 ## E0 ## E2; }; \</span></div>
-<div class="line"><a name="l00430"></a><span class="lineno">  430</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4,T, Q, 1,2,1,0&gt; E1 ## E2 ## E1 ## E0; }; \</span></div>
-<div class="line"><a name="l00431"></a><span class="lineno">  431</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4,T, Q, 1,2,1,1&gt; E1 ## E2 ## E1 ## E1; }; \</span></div>
-<div class="line"><a name="l00432"></a><span class="lineno">  432</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4,T, Q, 1,2,1,2&gt; E1 ## E2 ## E1 ## E2; }; \</span></div>
-<div class="line"><a name="l00433"></a><span class="lineno">  433</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4,T, Q, 1,2,2,0&gt; E1 ## E2 ## E2 ## E0; }; \</span></div>
-<div class="line"><a name="l00434"></a><span class="lineno">  434</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4,T, Q, 1,2,2,1&gt; E1 ## E2 ## E2 ## E1; }; \</span></div>
-<div class="line"><a name="l00435"></a><span class="lineno">  435</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4,T, Q, 1,2,2,2&gt; E1 ## E2 ## E2 ## E2; }; \</span></div>
-<div class="line"><a name="l00436"></a><span class="lineno">  436</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4,T, Q, 2,0,0,0&gt; E2 ## E0 ## E0 ## E0; }; \</span></div>
-<div class="line"><a name="l00437"></a><span class="lineno">  437</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4,T, Q, 2,0,0,1&gt; E2 ## E0 ## E0 ## E1; }; \</span></div>
-<div class="line"><a name="l00438"></a><span class="lineno">  438</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4,T, Q, 2,0,0,2&gt; E2 ## E0 ## E0 ## E2; }; \</span></div>
-<div class="line"><a name="l00439"></a><span class="lineno">  439</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4,T, Q, 2,0,1,0&gt; E2 ## E0 ## E1 ## E0; }; \</span></div>
-<div class="line"><a name="l00440"></a><span class="lineno">  440</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4,T, Q, 2,0,1,1&gt; E2 ## E0 ## E1 ## E1; }; \</span></div>
-<div class="line"><a name="l00441"></a><span class="lineno">  441</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4,T, Q, 2,0,1,2&gt; E2 ## E0 ## E1 ## E2; }; \</span></div>
-<div class="line"><a name="l00442"></a><span class="lineno">  442</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4,T, Q, 2,0,2,0&gt; E2 ## E0 ## E2 ## E0; }; \</span></div>
-<div class="line"><a name="l00443"></a><span class="lineno">  443</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4,T, Q, 2,0,2,1&gt; E2 ## E0 ## E2 ## E1; }; \</span></div>
-<div class="line"><a name="l00444"></a><span class="lineno">  444</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4,T, Q, 2,0,2,2&gt; E2 ## E0 ## E2 ## E2; }; \</span></div>
-<div class="line"><a name="l00445"></a><span class="lineno">  445</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4,T, Q, 2,1,0,0&gt; E2 ## E1 ## E0 ## E0; }; \</span></div>
-<div class="line"><a name="l00446"></a><span class="lineno">  446</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4,T, Q, 2,1,0,1&gt; E2 ## E1 ## E0 ## E1; }; \</span></div>
-<div class="line"><a name="l00447"></a><span class="lineno">  447</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4,T, Q, 2,1,0,2&gt; E2 ## E1 ## E0 ## E2; }; \</span></div>
-<div class="line"><a name="l00448"></a><span class="lineno">  448</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4,T, Q, 2,1,1,0&gt; E2 ## E1 ## E1 ## E0; }; \</span></div>
-<div class="line"><a name="l00449"></a><span class="lineno">  449</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4,T, Q, 2,1,1,1&gt; E2 ## E1 ## E1 ## E1; }; \</span></div>
-<div class="line"><a name="l00450"></a><span class="lineno">  450</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4,T, Q, 2,1,1,2&gt; E2 ## E1 ## E1 ## E2; }; \</span></div>
-<div class="line"><a name="l00451"></a><span class="lineno">  451</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4,T, Q, 2,1,2,0&gt; E2 ## E1 ## E2 ## E0; }; \</span></div>
-<div class="line"><a name="l00452"></a><span class="lineno">  452</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4,T, Q, 2,1,2,1&gt; E2 ## E1 ## E2 ## E1; }; \</span></div>
-<div class="line"><a name="l00453"></a><span class="lineno">  453</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4,T, Q, 2,1,2,2&gt; E2 ## E1 ## E2 ## E2; }; \</span></div>
-<div class="line"><a name="l00454"></a><span class="lineno">  454</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4,T, Q, 2,2,0,0&gt; E2 ## E2 ## E0 ## E0; }; \</span></div>
-<div class="line"><a name="l00455"></a><span class="lineno">  455</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4,T, Q, 2,2,0,1&gt; E2 ## E2 ## E0 ## E1; }; \</span></div>
-<div class="line"><a name="l00456"></a><span class="lineno">  456</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4,T, Q, 2,2,0,2&gt; E2 ## E2 ## E0 ## E2; }; \</span></div>
-<div class="line"><a name="l00457"></a><span class="lineno">  457</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4,T, Q, 2,2,1,0&gt; E2 ## E2 ## E1 ## E0; }; \</span></div>
-<div class="line"><a name="l00458"></a><span class="lineno">  458</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4,T, Q, 2,2,1,1&gt; E2 ## E2 ## E1 ## E1; }; \</span></div>
-<div class="line"><a name="l00459"></a><span class="lineno">  459</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4,T, Q, 2,2,1,2&gt; E2 ## E2 ## E1 ## E2; }; \</span></div>
-<div class="line"><a name="l00460"></a><span class="lineno">  460</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4,T, Q, 2,2,2,0&gt; E2 ## E2 ## E2 ## E0; }; \</span></div>
-<div class="line"><a name="l00461"></a><span class="lineno">  461</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4,T, Q, 2,2,2,1&gt; E2 ## E2 ## E2 ## E1; }; \</span></div>
-<div class="line"><a name="l00462"></a><span class="lineno">  462</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4,T, Q, 2,2,2,2&gt; E2 ## E2 ## E2 ## E2; };</span></div>
-<div class="line"><a name="l00463"></a><span class="lineno">  463</span>&#160;</div>
-<div class="line"><a name="l00464"></a><span class="lineno">  464</span>&#160;<span class="preprocessor">#define GLM_SWIZZLE4_2_MEMBERS(T, Q, E0,E1,E2,E3) \</span></div>
-<div class="line"><a name="l00465"></a><span class="lineno">  465</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;2,T, Q, 0,0,-1,-2&gt; E0 ## E0; }; \</span></div>
-<div class="line"><a name="l00466"></a><span class="lineno">  466</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;2,T, Q, 0,1,-1,-2&gt; E0 ## E1; }; \</span></div>
-<div class="line"><a name="l00467"></a><span class="lineno">  467</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;2,T, Q, 0,2,-1,-2&gt; E0 ## E2; }; \</span></div>
-<div class="line"><a name="l00468"></a><span class="lineno">  468</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;2,T, Q, 0,3,-1,-2&gt; E0 ## E3; }; \</span></div>
-<div class="line"><a name="l00469"></a><span class="lineno">  469</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;2,T, Q, 1,0,-1,-2&gt; E1 ## E0; }; \</span></div>
-<div class="line"><a name="l00470"></a><span class="lineno">  470</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;2,T, Q, 1,1,-1,-2&gt; E1 ## E1; }; \</span></div>
-<div class="line"><a name="l00471"></a><span class="lineno">  471</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;2,T, Q, 1,2,-1,-2&gt; E1 ## E2; }; \</span></div>
-<div class="line"><a name="l00472"></a><span class="lineno">  472</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;2,T, Q, 1,3,-1,-2&gt; E1 ## E3; }; \</span></div>
-<div class="line"><a name="l00473"></a><span class="lineno">  473</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;2,T, Q, 2,0,-1,-2&gt; E2 ## E0; }; \</span></div>
-<div class="line"><a name="l00474"></a><span class="lineno">  474</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;2,T, Q, 2,1,-1,-2&gt; E2 ## E1; }; \</span></div>
-<div class="line"><a name="l00475"></a><span class="lineno">  475</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;2,T, Q, 2,2,-1,-2&gt; E2 ## E2; }; \</span></div>
-<div class="line"><a name="l00476"></a><span class="lineno">  476</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;2,T, Q, 2,3,-1,-2&gt; E2 ## E3; }; \</span></div>
-<div class="line"><a name="l00477"></a><span class="lineno">  477</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;2,T, Q, 3,0,-1,-2&gt; E3 ## E0; }; \</span></div>
-<div class="line"><a name="l00478"></a><span class="lineno">  478</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;2,T, Q, 3,1,-1,-2&gt; E3 ## E1; }; \</span></div>
-<div class="line"><a name="l00479"></a><span class="lineno">  479</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;2,T, Q, 3,2,-1,-2&gt; E3 ## E2; }; \</span></div>
-<div class="line"><a name="l00480"></a><span class="lineno">  480</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;2,T, Q, 3,3,-1,-2&gt; E3 ## E3; };</span></div>
-<div class="line"><a name="l00481"></a><span class="lineno">  481</span>&#160;</div>
-<div class="line"><a name="l00482"></a><span class="lineno">  482</span>&#160;<span class="preprocessor">#define GLM_SWIZZLE4_3_MEMBERS(T, Q, E0,E1,E2,E3) \</span></div>
-<div class="line"><a name="l00483"></a><span class="lineno">  483</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;3, T, Q, 0,0,0,-1&gt; E0 ## E0 ## E0; }; \</span></div>
-<div class="line"><a name="l00484"></a><span class="lineno">  484</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;3, T, Q, 0,0,1,-1&gt; E0 ## E0 ## E1; }; \</span></div>
-<div class="line"><a name="l00485"></a><span class="lineno">  485</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;3, T, Q, 0,0,2,-1&gt; E0 ## E0 ## E2; }; \</span></div>
-<div class="line"><a name="l00486"></a><span class="lineno">  486</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;3, T, Q, 0,0,3,-1&gt; E0 ## E0 ## E3; }; \</span></div>
-<div class="line"><a name="l00487"></a><span class="lineno">  487</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;3, T, Q, 0,1,0,-1&gt; E0 ## E1 ## E0; }; \</span></div>
-<div class="line"><a name="l00488"></a><span class="lineno">  488</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;3, T, Q, 0,1,1,-1&gt; E0 ## E1 ## E1; }; \</span></div>
-<div class="line"><a name="l00489"></a><span class="lineno">  489</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;3, T, Q, 0,1,2,-1&gt; E0 ## E1 ## E2; }; \</span></div>
-<div class="line"><a name="l00490"></a><span class="lineno">  490</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;3, T, Q, 0,1,3,-1&gt; E0 ## E1 ## E3; }; \</span></div>
-<div class="line"><a name="l00491"></a><span class="lineno">  491</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;3, T, Q, 0,2,0,-1&gt; E0 ## E2 ## E0; }; \</span></div>
-<div class="line"><a name="l00492"></a><span class="lineno">  492</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;3, T, Q, 0,2,1,-1&gt; E0 ## E2 ## E1; }; \</span></div>
-<div class="line"><a name="l00493"></a><span class="lineno">  493</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;3, T, Q, 0,2,2,-1&gt; E0 ## E2 ## E2; }; \</span></div>
-<div class="line"><a name="l00494"></a><span class="lineno">  494</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;3, T, Q, 0,2,3,-1&gt; E0 ## E2 ## E3; }; \</span></div>
-<div class="line"><a name="l00495"></a><span class="lineno">  495</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;3, T, Q, 0,3,0,-1&gt; E0 ## E3 ## E0; }; \</span></div>
-<div class="line"><a name="l00496"></a><span class="lineno">  496</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;3, T, Q, 0,3,1,-1&gt; E0 ## E3 ## E1; }; \</span></div>
-<div class="line"><a name="l00497"></a><span class="lineno">  497</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;3, T, Q, 0,3,2,-1&gt; E0 ## E3 ## E2; }; \</span></div>
-<div class="line"><a name="l00498"></a><span class="lineno">  498</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;3, T, Q, 0,3,3,-1&gt; E0 ## E3 ## E3; }; \</span></div>
-<div class="line"><a name="l00499"></a><span class="lineno">  499</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;3, T, Q, 1,0,0,-1&gt; E1 ## E0 ## E0; }; \</span></div>
-<div class="line"><a name="l00500"></a><span class="lineno">  500</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;3, T, Q, 1,0,1,-1&gt; E1 ## E0 ## E1; }; \</span></div>
-<div class="line"><a name="l00501"></a><span class="lineno">  501</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;3, T, Q, 1,0,2,-1&gt; E1 ## E0 ## E2; }; \</span></div>
-<div class="line"><a name="l00502"></a><span class="lineno">  502</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;3, T, Q, 1,0,3,-1&gt; E1 ## E0 ## E3; }; \</span></div>
-<div class="line"><a name="l00503"></a><span class="lineno">  503</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;3, T, Q, 1,1,0,-1&gt; E1 ## E1 ## E0; }; \</span></div>
-<div class="line"><a name="l00504"></a><span class="lineno">  504</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;3, T, Q, 1,1,1,-1&gt; E1 ## E1 ## E1; }; \</span></div>
-<div class="line"><a name="l00505"></a><span class="lineno">  505</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;3, T, Q, 1,1,2,-1&gt; E1 ## E1 ## E2; }; \</span></div>
-<div class="line"><a name="l00506"></a><span class="lineno">  506</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;3, T, Q, 1,1,3,-1&gt; E1 ## E1 ## E3; }; \</span></div>
-<div class="line"><a name="l00507"></a><span class="lineno">  507</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;3, T, Q, 1,2,0,-1&gt; E1 ## E2 ## E0; }; \</span></div>
-<div class="line"><a name="l00508"></a><span class="lineno">  508</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;3, T, Q, 1,2,1,-1&gt; E1 ## E2 ## E1; }; \</span></div>
-<div class="line"><a name="l00509"></a><span class="lineno">  509</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;3, T, Q, 1,2,2,-1&gt; E1 ## E2 ## E2; }; \</span></div>
-<div class="line"><a name="l00510"></a><span class="lineno">  510</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;3, T, Q, 1,2,3,-1&gt; E1 ## E2 ## E3; }; \</span></div>
-<div class="line"><a name="l00511"></a><span class="lineno">  511</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;3, T, Q, 1,3,0,-1&gt; E1 ## E3 ## E0; }; \</span></div>
-<div class="line"><a name="l00512"></a><span class="lineno">  512</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;3, T, Q, 1,3,1,-1&gt; E1 ## E3 ## E1; }; \</span></div>
-<div class="line"><a name="l00513"></a><span class="lineno">  513</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;3, T, Q, 1,3,2,-1&gt; E1 ## E3 ## E2; }; \</span></div>
-<div class="line"><a name="l00514"></a><span class="lineno">  514</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;3, T, Q, 1,3,3,-1&gt; E1 ## E3 ## E3; }; \</span></div>
-<div class="line"><a name="l00515"></a><span class="lineno">  515</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;3, T, Q, 2,0,0,-1&gt; E2 ## E0 ## E0; }; \</span></div>
-<div class="line"><a name="l00516"></a><span class="lineno">  516</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;3, T, Q, 2,0,1,-1&gt; E2 ## E0 ## E1; }; \</span></div>
-<div class="line"><a name="l00517"></a><span class="lineno">  517</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;3, T, Q, 2,0,2,-1&gt; E2 ## E0 ## E2; }; \</span></div>
-<div class="line"><a name="l00518"></a><span class="lineno">  518</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;3, T, Q, 2,0,3,-1&gt; E2 ## E0 ## E3; }; \</span></div>
-<div class="line"><a name="l00519"></a><span class="lineno">  519</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;3, T, Q, 2,1,0,-1&gt; E2 ## E1 ## E0; }; \</span></div>
-<div class="line"><a name="l00520"></a><span class="lineno">  520</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;3, T, Q, 2,1,1,-1&gt; E2 ## E1 ## E1; }; \</span></div>
-<div class="line"><a name="l00521"></a><span class="lineno">  521</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;3, T, Q, 2,1,2,-1&gt; E2 ## E1 ## E2; }; \</span></div>
-<div class="line"><a name="l00522"></a><span class="lineno">  522</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;3, T, Q, 2,1,3,-1&gt; E2 ## E1 ## E3; }; \</span></div>
-<div class="line"><a name="l00523"></a><span class="lineno">  523</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;3, T, Q, 2,2,0,-1&gt; E2 ## E2 ## E0; }; \</span></div>
-<div class="line"><a name="l00524"></a><span class="lineno">  524</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;3, T, Q, 2,2,1,-1&gt; E2 ## E2 ## E1; }; \</span></div>
-<div class="line"><a name="l00525"></a><span class="lineno">  525</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;3, T, Q, 2,2,2,-1&gt; E2 ## E2 ## E2; }; \</span></div>
-<div class="line"><a name="l00526"></a><span class="lineno">  526</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;3, T, Q, 2,2,3,-1&gt; E2 ## E2 ## E3; }; \</span></div>
-<div class="line"><a name="l00527"></a><span class="lineno">  527</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;3, T, Q, 2,3,0,-1&gt; E2 ## E3 ## E0; }; \</span></div>
-<div class="line"><a name="l00528"></a><span class="lineno">  528</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;3, T, Q, 2,3,1,-1&gt; E2 ## E3 ## E1; }; \</span></div>
-<div class="line"><a name="l00529"></a><span class="lineno">  529</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;3, T, Q, 2,3,2,-1&gt; E2 ## E3 ## E2; }; \</span></div>
-<div class="line"><a name="l00530"></a><span class="lineno">  530</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;3, T, Q, 2,3,3,-1&gt; E2 ## E3 ## E3; }; \</span></div>
-<div class="line"><a name="l00531"></a><span class="lineno">  531</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;3, T, Q, 3,0,0,-1&gt; E3 ## E0 ## E0; }; \</span></div>
-<div class="line"><a name="l00532"></a><span class="lineno">  532</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;3, T, Q, 3,0,1,-1&gt; E3 ## E0 ## E1; }; \</span></div>
-<div class="line"><a name="l00533"></a><span class="lineno">  533</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;3, T, Q, 3,0,2,-1&gt; E3 ## E0 ## E2; }; \</span></div>
-<div class="line"><a name="l00534"></a><span class="lineno">  534</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;3, T, Q, 3,0,3,-1&gt; E3 ## E0 ## E3; }; \</span></div>
-<div class="line"><a name="l00535"></a><span class="lineno">  535</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;3, T, Q, 3,1,0,-1&gt; E3 ## E1 ## E0; }; \</span></div>
-<div class="line"><a name="l00536"></a><span class="lineno">  536</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;3, T, Q, 3,1,1,-1&gt; E3 ## E1 ## E1; }; \</span></div>
-<div class="line"><a name="l00537"></a><span class="lineno">  537</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;3, T, Q, 3,1,2,-1&gt; E3 ## E1 ## E2; }; \</span></div>
-<div class="line"><a name="l00538"></a><span class="lineno">  538</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;3, T, Q, 3,1,3,-1&gt; E3 ## E1 ## E3; }; \</span></div>
-<div class="line"><a name="l00539"></a><span class="lineno">  539</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;3, T, Q, 3,2,0,-1&gt; E3 ## E2 ## E0; }; \</span></div>
-<div class="line"><a name="l00540"></a><span class="lineno">  540</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;3, T, Q, 3,2,1,-1&gt; E3 ## E2 ## E1; }; \</span></div>
-<div class="line"><a name="l00541"></a><span class="lineno">  541</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;3, T, Q, 3,2,2,-1&gt; E3 ## E2 ## E2; }; \</span></div>
-<div class="line"><a name="l00542"></a><span class="lineno">  542</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;3, T, Q, 3,2,3,-1&gt; E3 ## E2 ## E3; }; \</span></div>
-<div class="line"><a name="l00543"></a><span class="lineno">  543</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;3, T, Q, 3,3,0,-1&gt; E3 ## E3 ## E0; }; \</span></div>
-<div class="line"><a name="l00544"></a><span class="lineno">  544</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;3, T, Q, 3,3,1,-1&gt; E3 ## E3 ## E1; }; \</span></div>
-<div class="line"><a name="l00545"></a><span class="lineno">  545</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;3, T, Q, 3,3,2,-1&gt; E3 ## E3 ## E2; }; \</span></div>
-<div class="line"><a name="l00546"></a><span class="lineno">  546</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;3, T, Q, 3,3,3,-1&gt; E3 ## E3 ## E3; };</span></div>
-<div class="line"><a name="l00547"></a><span class="lineno">  547</span>&#160;</div>
-<div class="line"><a name="l00548"></a><span class="lineno">  548</span>&#160;<span class="preprocessor">#define GLM_SWIZZLE4_4_MEMBERS(T, Q, E0,E1,E2,E3) \</span></div>
-<div class="line"><a name="l00549"></a><span class="lineno">  549</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 0,0,0,0&gt; E0 ## E0 ## E0 ## E0; }; \</span></div>
-<div class="line"><a name="l00550"></a><span class="lineno">  550</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 0,0,0,1&gt; E0 ## E0 ## E0 ## E1; }; \</span></div>
-<div class="line"><a name="l00551"></a><span class="lineno">  551</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 0,0,0,2&gt; E0 ## E0 ## E0 ## E2; }; \</span></div>
-<div class="line"><a name="l00552"></a><span class="lineno">  552</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 0,0,0,3&gt; E0 ## E0 ## E0 ## E3; }; \</span></div>
-<div class="line"><a name="l00553"></a><span class="lineno">  553</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 0,0,1,0&gt; E0 ## E0 ## E1 ## E0; }; \</span></div>
-<div class="line"><a name="l00554"></a><span class="lineno">  554</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 0,0,1,1&gt; E0 ## E0 ## E1 ## E1; }; \</span></div>
-<div class="line"><a name="l00555"></a><span class="lineno">  555</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 0,0,1,2&gt; E0 ## E0 ## E1 ## E2; }; \</span></div>
-<div class="line"><a name="l00556"></a><span class="lineno">  556</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 0,0,1,3&gt; E0 ## E0 ## E1 ## E3; }; \</span></div>
-<div class="line"><a name="l00557"></a><span class="lineno">  557</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 0,0,2,0&gt; E0 ## E0 ## E2 ## E0; }; \</span></div>
-<div class="line"><a name="l00558"></a><span class="lineno">  558</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 0,0,2,1&gt; E0 ## E0 ## E2 ## E1; }; \</span></div>
-<div class="line"><a name="l00559"></a><span class="lineno">  559</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 0,0,2,2&gt; E0 ## E0 ## E2 ## E2; }; \</span></div>
-<div class="line"><a name="l00560"></a><span class="lineno">  560</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 0,0,2,3&gt; E0 ## E0 ## E2 ## E3; }; \</span></div>
-<div class="line"><a name="l00561"></a><span class="lineno">  561</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 0,0,3,0&gt; E0 ## E0 ## E3 ## E0; }; \</span></div>
-<div class="line"><a name="l00562"></a><span class="lineno">  562</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 0,0,3,1&gt; E0 ## E0 ## E3 ## E1; }; \</span></div>
-<div class="line"><a name="l00563"></a><span class="lineno">  563</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 0,0,3,2&gt; E0 ## E0 ## E3 ## E2; }; \</span></div>
-<div class="line"><a name="l00564"></a><span class="lineno">  564</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 0,0,3,3&gt; E0 ## E0 ## E3 ## E3; }; \</span></div>
-<div class="line"><a name="l00565"></a><span class="lineno">  565</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 0,1,0,0&gt; E0 ## E1 ## E0 ## E0; }; \</span></div>
-<div class="line"><a name="l00566"></a><span class="lineno">  566</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 0,1,0,1&gt; E0 ## E1 ## E0 ## E1; }; \</span></div>
-<div class="line"><a name="l00567"></a><span class="lineno">  567</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 0,1,0,2&gt; E0 ## E1 ## E0 ## E2; }; \</span></div>
-<div class="line"><a name="l00568"></a><span class="lineno">  568</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 0,1,0,3&gt; E0 ## E1 ## E0 ## E3; }; \</span></div>
-<div class="line"><a name="l00569"></a><span class="lineno">  569</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 0,1,1,0&gt; E0 ## E1 ## E1 ## E0; }; \</span></div>
-<div class="line"><a name="l00570"></a><span class="lineno">  570</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 0,1,1,1&gt; E0 ## E1 ## E1 ## E1; }; \</span></div>
-<div class="line"><a name="l00571"></a><span class="lineno">  571</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 0,1,1,2&gt; E0 ## E1 ## E1 ## E2; }; \</span></div>
-<div class="line"><a name="l00572"></a><span class="lineno">  572</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 0,1,1,3&gt; E0 ## E1 ## E1 ## E3; }; \</span></div>
-<div class="line"><a name="l00573"></a><span class="lineno">  573</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 0,1,2,0&gt; E0 ## E1 ## E2 ## E0; }; \</span></div>
-<div class="line"><a name="l00574"></a><span class="lineno">  574</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 0,1,2,1&gt; E0 ## E1 ## E2 ## E1; }; \</span></div>
-<div class="line"><a name="l00575"></a><span class="lineno">  575</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 0,1,2,2&gt; E0 ## E1 ## E2 ## E2; }; \</span></div>
-<div class="line"><a name="l00576"></a><span class="lineno">  576</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 0,1,2,3&gt; E0 ## E1 ## E2 ## E3; }; \</span></div>
-<div class="line"><a name="l00577"></a><span class="lineno">  577</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 0,1,3,0&gt; E0 ## E1 ## E3 ## E0; }; \</span></div>
-<div class="line"><a name="l00578"></a><span class="lineno">  578</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 0,1,3,1&gt; E0 ## E1 ## E3 ## E1; }; \</span></div>
-<div class="line"><a name="l00579"></a><span class="lineno">  579</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 0,1,3,2&gt; E0 ## E1 ## E3 ## E2; }; \</span></div>
-<div class="line"><a name="l00580"></a><span class="lineno">  580</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 0,1,3,3&gt; E0 ## E1 ## E3 ## E3; }; \</span></div>
-<div class="line"><a name="l00581"></a><span class="lineno">  581</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 0,2,0,0&gt; E0 ## E2 ## E0 ## E0; }; \</span></div>
-<div class="line"><a name="l00582"></a><span class="lineno">  582</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 0,2,0,1&gt; E0 ## E2 ## E0 ## E1; }; \</span></div>
-<div class="line"><a name="l00583"></a><span class="lineno">  583</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 0,2,0,2&gt; E0 ## E2 ## E0 ## E2; }; \</span></div>
-<div class="line"><a name="l00584"></a><span class="lineno">  584</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 0,2,0,3&gt; E0 ## E2 ## E0 ## E3; }; \</span></div>
-<div class="line"><a name="l00585"></a><span class="lineno">  585</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 0,2,1,0&gt; E0 ## E2 ## E1 ## E0; }; \</span></div>
-<div class="line"><a name="l00586"></a><span class="lineno">  586</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 0,2,1,1&gt; E0 ## E2 ## E1 ## E1; }; \</span></div>
-<div class="line"><a name="l00587"></a><span class="lineno">  587</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 0,2,1,2&gt; E0 ## E2 ## E1 ## E2; }; \</span></div>
-<div class="line"><a name="l00588"></a><span class="lineno">  588</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 0,2,1,3&gt; E0 ## E2 ## E1 ## E3; }; \</span></div>
-<div class="line"><a name="l00589"></a><span class="lineno">  589</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 0,2,2,0&gt; E0 ## E2 ## E2 ## E0; }; \</span></div>
-<div class="line"><a name="l00590"></a><span class="lineno">  590</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 0,2,2,1&gt; E0 ## E2 ## E2 ## E1; }; \</span></div>
-<div class="line"><a name="l00591"></a><span class="lineno">  591</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 0,2,2,2&gt; E0 ## E2 ## E2 ## E2; }; \</span></div>
-<div class="line"><a name="l00592"></a><span class="lineno">  592</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 0,2,2,3&gt; E0 ## E2 ## E2 ## E3; }; \</span></div>
-<div class="line"><a name="l00593"></a><span class="lineno">  593</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 0,2,3,0&gt; E0 ## E2 ## E3 ## E0; }; \</span></div>
-<div class="line"><a name="l00594"></a><span class="lineno">  594</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 0,2,3,1&gt; E0 ## E2 ## E3 ## E1; }; \</span></div>
-<div class="line"><a name="l00595"></a><span class="lineno">  595</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 0,2,3,2&gt; E0 ## E2 ## E3 ## E2; }; \</span></div>
-<div class="line"><a name="l00596"></a><span class="lineno">  596</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 0,2,3,3&gt; E0 ## E2 ## E3 ## E3; }; \</span></div>
-<div class="line"><a name="l00597"></a><span class="lineno">  597</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 0,3,0,0&gt; E0 ## E3 ## E0 ## E0; }; \</span></div>
-<div class="line"><a name="l00598"></a><span class="lineno">  598</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 0,3,0,1&gt; E0 ## E3 ## E0 ## E1; }; \</span></div>
-<div class="line"><a name="l00599"></a><span class="lineno">  599</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 0,3,0,2&gt; E0 ## E3 ## E0 ## E2; }; \</span></div>
-<div class="line"><a name="l00600"></a><span class="lineno">  600</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 0,3,0,3&gt; E0 ## E3 ## E0 ## E3; }; \</span></div>
-<div class="line"><a name="l00601"></a><span class="lineno">  601</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 0,3,1,0&gt; E0 ## E3 ## E1 ## E0; }; \</span></div>
-<div class="line"><a name="l00602"></a><span class="lineno">  602</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 0,3,1,1&gt; E0 ## E3 ## E1 ## E1; }; \</span></div>
-<div class="line"><a name="l00603"></a><span class="lineno">  603</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 0,3,1,2&gt; E0 ## E3 ## E1 ## E2; }; \</span></div>
-<div class="line"><a name="l00604"></a><span class="lineno">  604</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 0,3,1,3&gt; E0 ## E3 ## E1 ## E3; }; \</span></div>
-<div class="line"><a name="l00605"></a><span class="lineno">  605</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 0,3,2,0&gt; E0 ## E3 ## E2 ## E0; }; \</span></div>
-<div class="line"><a name="l00606"></a><span class="lineno">  606</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 0,3,2,1&gt; E0 ## E3 ## E2 ## E1; }; \</span></div>
-<div class="line"><a name="l00607"></a><span class="lineno">  607</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 0,3,2,2&gt; E0 ## E3 ## E2 ## E2; }; \</span></div>
-<div class="line"><a name="l00608"></a><span class="lineno">  608</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 0,3,2,3&gt; E0 ## E3 ## E2 ## E3; }; \</span></div>
-<div class="line"><a name="l00609"></a><span class="lineno">  609</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 0,3,3,0&gt; E0 ## E3 ## E3 ## E0; }; \</span></div>
-<div class="line"><a name="l00610"></a><span class="lineno">  610</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 0,3,3,1&gt; E0 ## E3 ## E3 ## E1; }; \</span></div>
-<div class="line"><a name="l00611"></a><span class="lineno">  611</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 0,3,3,2&gt; E0 ## E3 ## E3 ## E2; }; \</span></div>
-<div class="line"><a name="l00612"></a><span class="lineno">  612</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 0,3,3,3&gt; E0 ## E3 ## E3 ## E3; }; \</span></div>
-<div class="line"><a name="l00613"></a><span class="lineno">  613</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 1,0,0,0&gt; E1 ## E0 ## E0 ## E0; }; \</span></div>
-<div class="line"><a name="l00614"></a><span class="lineno">  614</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 1,0,0,1&gt; E1 ## E0 ## E0 ## E1; }; \</span></div>
-<div class="line"><a name="l00615"></a><span class="lineno">  615</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 1,0,0,2&gt; E1 ## E0 ## E0 ## E2; }; \</span></div>
-<div class="line"><a name="l00616"></a><span class="lineno">  616</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 1,0,0,3&gt; E1 ## E0 ## E0 ## E3; }; \</span></div>
-<div class="line"><a name="l00617"></a><span class="lineno">  617</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 1,0,1,0&gt; E1 ## E0 ## E1 ## E0; }; \</span></div>
-<div class="line"><a name="l00618"></a><span class="lineno">  618</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 1,0,1,1&gt; E1 ## E0 ## E1 ## E1; }; \</span></div>
-<div class="line"><a name="l00619"></a><span class="lineno">  619</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 1,0,1,2&gt; E1 ## E0 ## E1 ## E2; }; \</span></div>
-<div class="line"><a name="l00620"></a><span class="lineno">  620</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 1,0,1,3&gt; E1 ## E0 ## E1 ## E3; }; \</span></div>
-<div class="line"><a name="l00621"></a><span class="lineno">  621</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 1,0,2,0&gt; E1 ## E0 ## E2 ## E0; }; \</span></div>
-<div class="line"><a name="l00622"></a><span class="lineno">  622</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 1,0,2,1&gt; E1 ## E0 ## E2 ## E1; }; \</span></div>
-<div class="line"><a name="l00623"></a><span class="lineno">  623</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 1,0,2,2&gt; E1 ## E0 ## E2 ## E2; }; \</span></div>
-<div class="line"><a name="l00624"></a><span class="lineno">  624</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 1,0,2,3&gt; E1 ## E0 ## E2 ## E3; }; \</span></div>
-<div class="line"><a name="l00625"></a><span class="lineno">  625</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 1,0,3,0&gt; E1 ## E0 ## E3 ## E0; }; \</span></div>
-<div class="line"><a name="l00626"></a><span class="lineno">  626</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 1,0,3,1&gt; E1 ## E0 ## E3 ## E1; }; \</span></div>
-<div class="line"><a name="l00627"></a><span class="lineno">  627</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 1,0,3,2&gt; E1 ## E0 ## E3 ## E2; }; \</span></div>
-<div class="line"><a name="l00628"></a><span class="lineno">  628</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 1,0,3,3&gt; E1 ## E0 ## E3 ## E3; }; \</span></div>
-<div class="line"><a name="l00629"></a><span class="lineno">  629</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 1,1,0,0&gt; E1 ## E1 ## E0 ## E0; }; \</span></div>
-<div class="line"><a name="l00630"></a><span class="lineno">  630</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 1,1,0,1&gt; E1 ## E1 ## E0 ## E1; }; \</span></div>
-<div class="line"><a name="l00631"></a><span class="lineno">  631</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 1,1,0,2&gt; E1 ## E1 ## E0 ## E2; }; \</span></div>
-<div class="line"><a name="l00632"></a><span class="lineno">  632</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 1,1,0,3&gt; E1 ## E1 ## E0 ## E3; }; \</span></div>
-<div class="line"><a name="l00633"></a><span class="lineno">  633</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 1,1,1,0&gt; E1 ## E1 ## E1 ## E0; }; \</span></div>
-<div class="line"><a name="l00634"></a><span class="lineno">  634</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 1,1,1,1&gt; E1 ## E1 ## E1 ## E1; }; \</span></div>
-<div class="line"><a name="l00635"></a><span class="lineno">  635</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 1,1,1,2&gt; E1 ## E1 ## E1 ## E2; }; \</span></div>
-<div class="line"><a name="l00636"></a><span class="lineno">  636</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 1,1,1,3&gt; E1 ## E1 ## E1 ## E3; }; \</span></div>
-<div class="line"><a name="l00637"></a><span class="lineno">  637</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 1,1,2,0&gt; E1 ## E1 ## E2 ## E0; }; \</span></div>
-<div class="line"><a name="l00638"></a><span class="lineno">  638</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 1,1,2,1&gt; E1 ## E1 ## E2 ## E1; }; \</span></div>
-<div class="line"><a name="l00639"></a><span class="lineno">  639</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 1,1,2,2&gt; E1 ## E1 ## E2 ## E2; }; \</span></div>
-<div class="line"><a name="l00640"></a><span class="lineno">  640</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 1,1,2,3&gt; E1 ## E1 ## E2 ## E3; }; \</span></div>
-<div class="line"><a name="l00641"></a><span class="lineno">  641</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 1,1,3,0&gt; E1 ## E1 ## E3 ## E0; }; \</span></div>
-<div class="line"><a name="l00642"></a><span class="lineno">  642</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 1,1,3,1&gt; E1 ## E1 ## E3 ## E1; }; \</span></div>
-<div class="line"><a name="l00643"></a><span class="lineno">  643</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 1,1,3,2&gt; E1 ## E1 ## E3 ## E2; }; \</span></div>
-<div class="line"><a name="l00644"></a><span class="lineno">  644</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 1,1,3,3&gt; E1 ## E1 ## E3 ## E3; }; \</span></div>
-<div class="line"><a name="l00645"></a><span class="lineno">  645</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 1,2,0,0&gt; E1 ## E2 ## E0 ## E0; }; \</span></div>
-<div class="line"><a name="l00646"></a><span class="lineno">  646</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 1,2,0,1&gt; E1 ## E2 ## E0 ## E1; }; \</span></div>
-<div class="line"><a name="l00647"></a><span class="lineno">  647</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 1,2,0,2&gt; E1 ## E2 ## E0 ## E2; }; \</span></div>
-<div class="line"><a name="l00648"></a><span class="lineno">  648</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 1,2,0,3&gt; E1 ## E2 ## E0 ## E3; }; \</span></div>
-<div class="line"><a name="l00649"></a><span class="lineno">  649</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 1,2,1,0&gt; E1 ## E2 ## E1 ## E0; }; \</span></div>
-<div class="line"><a name="l00650"></a><span class="lineno">  650</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 1,2,1,1&gt; E1 ## E2 ## E1 ## E1; }; \</span></div>
-<div class="line"><a name="l00651"></a><span class="lineno">  651</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 1,2,1,2&gt; E1 ## E2 ## E1 ## E2; }; \</span></div>
-<div class="line"><a name="l00652"></a><span class="lineno">  652</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 1,2,1,3&gt; E1 ## E2 ## E1 ## E3; }; \</span></div>
-<div class="line"><a name="l00653"></a><span class="lineno">  653</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 1,2,2,0&gt; E1 ## E2 ## E2 ## E0; }; \</span></div>
-<div class="line"><a name="l00654"></a><span class="lineno">  654</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 1,2,2,1&gt; E1 ## E2 ## E2 ## E1; }; \</span></div>
-<div class="line"><a name="l00655"></a><span class="lineno">  655</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 1,2,2,2&gt; E1 ## E2 ## E2 ## E2; }; \</span></div>
-<div class="line"><a name="l00656"></a><span class="lineno">  656</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 1,2,2,3&gt; E1 ## E2 ## E2 ## E3; }; \</span></div>
-<div class="line"><a name="l00657"></a><span class="lineno">  657</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 1,2,3,0&gt; E1 ## E2 ## E3 ## E0; }; \</span></div>
-<div class="line"><a name="l00658"></a><span class="lineno">  658</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 1,2,3,1&gt; E1 ## E2 ## E3 ## E1; }; \</span></div>
-<div class="line"><a name="l00659"></a><span class="lineno">  659</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 1,2,3,2&gt; E1 ## E2 ## E3 ## E2; }; \</span></div>
-<div class="line"><a name="l00660"></a><span class="lineno">  660</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 1,2,3,3&gt; E1 ## E2 ## E3 ## E3; }; \</span></div>
-<div class="line"><a name="l00661"></a><span class="lineno">  661</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 1,3,0,0&gt; E1 ## E3 ## E0 ## E0; }; \</span></div>
-<div class="line"><a name="l00662"></a><span class="lineno">  662</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 1,3,0,1&gt; E1 ## E3 ## E0 ## E1; }; \</span></div>
-<div class="line"><a name="l00663"></a><span class="lineno">  663</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 1,3,0,2&gt; E1 ## E3 ## E0 ## E2; }; \</span></div>
-<div class="line"><a name="l00664"></a><span class="lineno">  664</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 1,3,0,3&gt; E1 ## E3 ## E0 ## E3; }; \</span></div>
-<div class="line"><a name="l00665"></a><span class="lineno">  665</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 1,3,1,0&gt; E1 ## E3 ## E1 ## E0; }; \</span></div>
-<div class="line"><a name="l00666"></a><span class="lineno">  666</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 1,3,1,1&gt; E1 ## E3 ## E1 ## E1; }; \</span></div>
-<div class="line"><a name="l00667"></a><span class="lineno">  667</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 1,3,1,2&gt; E1 ## E3 ## E1 ## E2; }; \</span></div>
-<div class="line"><a name="l00668"></a><span class="lineno">  668</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 1,3,1,3&gt; E1 ## E3 ## E1 ## E3; }; \</span></div>
-<div class="line"><a name="l00669"></a><span class="lineno">  669</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 1,3,2,0&gt; E1 ## E3 ## E2 ## E0; }; \</span></div>
-<div class="line"><a name="l00670"></a><span class="lineno">  670</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 1,3,2,1&gt; E1 ## E3 ## E2 ## E1; }; \</span></div>
-<div class="line"><a name="l00671"></a><span class="lineno">  671</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 1,3,2,2&gt; E1 ## E3 ## E2 ## E2; }; \</span></div>
-<div class="line"><a name="l00672"></a><span class="lineno">  672</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 1,3,2,3&gt; E1 ## E3 ## E2 ## E3; }; \</span></div>
-<div class="line"><a name="l00673"></a><span class="lineno">  673</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 1,3,3,0&gt; E1 ## E3 ## E3 ## E0; }; \</span></div>
-<div class="line"><a name="l00674"></a><span class="lineno">  674</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 1,3,3,1&gt; E1 ## E3 ## E3 ## E1; }; \</span></div>
-<div class="line"><a name="l00675"></a><span class="lineno">  675</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 1,3,3,2&gt; E1 ## E3 ## E3 ## E2; }; \</span></div>
-<div class="line"><a name="l00676"></a><span class="lineno">  676</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 1,3,3,3&gt; E1 ## E3 ## E3 ## E3; }; \</span></div>
-<div class="line"><a name="l00677"></a><span class="lineno">  677</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 2,0,0,0&gt; E2 ## E0 ## E0 ## E0; }; \</span></div>
-<div class="line"><a name="l00678"></a><span class="lineno">  678</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 2,0,0,1&gt; E2 ## E0 ## E0 ## E1; }; \</span></div>
-<div class="line"><a name="l00679"></a><span class="lineno">  679</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 2,0,0,2&gt; E2 ## E0 ## E0 ## E2; }; \</span></div>
-<div class="line"><a name="l00680"></a><span class="lineno">  680</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 2,0,0,3&gt; E2 ## E0 ## E0 ## E3; }; \</span></div>
-<div class="line"><a name="l00681"></a><span class="lineno">  681</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 2,0,1,0&gt; E2 ## E0 ## E1 ## E0; }; \</span></div>
-<div class="line"><a name="l00682"></a><span class="lineno">  682</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 2,0,1,1&gt; E2 ## E0 ## E1 ## E1; }; \</span></div>
-<div class="line"><a name="l00683"></a><span class="lineno">  683</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 2,0,1,2&gt; E2 ## E0 ## E1 ## E2; }; \</span></div>
-<div class="line"><a name="l00684"></a><span class="lineno">  684</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 2,0,1,3&gt; E2 ## E0 ## E1 ## E3; }; \</span></div>
-<div class="line"><a name="l00685"></a><span class="lineno">  685</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 2,0,2,0&gt; E2 ## E0 ## E2 ## E0; }; \</span></div>
-<div class="line"><a name="l00686"></a><span class="lineno">  686</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 2,0,2,1&gt; E2 ## E0 ## E2 ## E1; }; \</span></div>
-<div class="line"><a name="l00687"></a><span class="lineno">  687</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 2,0,2,2&gt; E2 ## E0 ## E2 ## E2; }; \</span></div>
-<div class="line"><a name="l00688"></a><span class="lineno">  688</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 2,0,2,3&gt; E2 ## E0 ## E2 ## E3; }; \</span></div>
-<div class="line"><a name="l00689"></a><span class="lineno">  689</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 2,0,3,0&gt; E2 ## E0 ## E3 ## E0; }; \</span></div>
-<div class="line"><a name="l00690"></a><span class="lineno">  690</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 2,0,3,1&gt; E2 ## E0 ## E3 ## E1; }; \</span></div>
-<div class="line"><a name="l00691"></a><span class="lineno">  691</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 2,0,3,2&gt; E2 ## E0 ## E3 ## E2; }; \</span></div>
-<div class="line"><a name="l00692"></a><span class="lineno">  692</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 2,0,3,3&gt; E2 ## E0 ## E3 ## E3; }; \</span></div>
-<div class="line"><a name="l00693"></a><span class="lineno">  693</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 2,1,0,0&gt; E2 ## E1 ## E0 ## E0; }; \</span></div>
-<div class="line"><a name="l00694"></a><span class="lineno">  694</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 2,1,0,1&gt; E2 ## E1 ## E0 ## E1; }; \</span></div>
-<div class="line"><a name="l00695"></a><span class="lineno">  695</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 2,1,0,2&gt; E2 ## E1 ## E0 ## E2; }; \</span></div>
-<div class="line"><a name="l00696"></a><span class="lineno">  696</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 2,1,0,3&gt; E2 ## E1 ## E0 ## E3; }; \</span></div>
-<div class="line"><a name="l00697"></a><span class="lineno">  697</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 2,1,1,0&gt; E2 ## E1 ## E1 ## E0; }; \</span></div>
-<div class="line"><a name="l00698"></a><span class="lineno">  698</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 2,1,1,1&gt; E2 ## E1 ## E1 ## E1; }; \</span></div>
-<div class="line"><a name="l00699"></a><span class="lineno">  699</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 2,1,1,2&gt; E2 ## E1 ## E1 ## E2; }; \</span></div>
-<div class="line"><a name="l00700"></a><span class="lineno">  700</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 2,1,1,3&gt; E2 ## E1 ## E1 ## E3; }; \</span></div>
-<div class="line"><a name="l00701"></a><span class="lineno">  701</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 2,1,2,0&gt; E2 ## E1 ## E2 ## E0; }; \</span></div>
-<div class="line"><a name="l00702"></a><span class="lineno">  702</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 2,1,2,1&gt; E2 ## E1 ## E2 ## E1; }; \</span></div>
-<div class="line"><a name="l00703"></a><span class="lineno">  703</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 2,1,2,2&gt; E2 ## E1 ## E2 ## E2; }; \</span></div>
-<div class="line"><a name="l00704"></a><span class="lineno">  704</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 2,1,2,3&gt; E2 ## E1 ## E2 ## E3; }; \</span></div>
-<div class="line"><a name="l00705"></a><span class="lineno">  705</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 2,1,3,0&gt; E2 ## E1 ## E3 ## E0; }; \</span></div>
-<div class="line"><a name="l00706"></a><span class="lineno">  706</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 2,1,3,1&gt; E2 ## E1 ## E3 ## E1; }; \</span></div>
-<div class="line"><a name="l00707"></a><span class="lineno">  707</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 2,1,3,2&gt; E2 ## E1 ## E3 ## E2; }; \</span></div>
-<div class="line"><a name="l00708"></a><span class="lineno">  708</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 2,1,3,3&gt; E2 ## E1 ## E3 ## E3; }; \</span></div>
-<div class="line"><a name="l00709"></a><span class="lineno">  709</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 2,2,0,0&gt; E2 ## E2 ## E0 ## E0; }; \</span></div>
-<div class="line"><a name="l00710"></a><span class="lineno">  710</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 2,2,0,1&gt; E2 ## E2 ## E0 ## E1; }; \</span></div>
-<div class="line"><a name="l00711"></a><span class="lineno">  711</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 2,2,0,2&gt; E2 ## E2 ## E0 ## E2; }; \</span></div>
-<div class="line"><a name="l00712"></a><span class="lineno">  712</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 2,2,0,3&gt; E2 ## E2 ## E0 ## E3; }; \</span></div>
-<div class="line"><a name="l00713"></a><span class="lineno">  713</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 2,2,1,0&gt; E2 ## E2 ## E1 ## E0; }; \</span></div>
-<div class="line"><a name="l00714"></a><span class="lineno">  714</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 2,2,1,1&gt; E2 ## E2 ## E1 ## E1; }; \</span></div>
-<div class="line"><a name="l00715"></a><span class="lineno">  715</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 2,2,1,2&gt; E2 ## E2 ## E1 ## E2; }; \</span></div>
-<div class="line"><a name="l00716"></a><span class="lineno">  716</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 2,2,1,3&gt; E2 ## E2 ## E1 ## E3; }; \</span></div>
-<div class="line"><a name="l00717"></a><span class="lineno">  717</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 2,2,2,0&gt; E2 ## E2 ## E2 ## E0; }; \</span></div>
-<div class="line"><a name="l00718"></a><span class="lineno">  718</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 2,2,2,1&gt; E2 ## E2 ## E2 ## E1; }; \</span></div>
-<div class="line"><a name="l00719"></a><span class="lineno">  719</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 2,2,2,2&gt; E2 ## E2 ## E2 ## E2; }; \</span></div>
-<div class="line"><a name="l00720"></a><span class="lineno">  720</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 2,2,2,3&gt; E2 ## E2 ## E2 ## E3; }; \</span></div>
-<div class="line"><a name="l00721"></a><span class="lineno">  721</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 2,2,3,0&gt; E2 ## E2 ## E3 ## E0; }; \</span></div>
-<div class="line"><a name="l00722"></a><span class="lineno">  722</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 2,2,3,1&gt; E2 ## E2 ## E3 ## E1; }; \</span></div>
-<div class="line"><a name="l00723"></a><span class="lineno">  723</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 2,2,3,2&gt; E2 ## E2 ## E3 ## E2; }; \</span></div>
-<div class="line"><a name="l00724"></a><span class="lineno">  724</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 2,2,3,3&gt; E2 ## E2 ## E3 ## E3; }; \</span></div>
-<div class="line"><a name="l00725"></a><span class="lineno">  725</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 2,3,0,0&gt; E2 ## E3 ## E0 ## E0; }; \</span></div>
-<div class="line"><a name="l00726"></a><span class="lineno">  726</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 2,3,0,1&gt; E2 ## E3 ## E0 ## E1; }; \</span></div>
-<div class="line"><a name="l00727"></a><span class="lineno">  727</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 2,3,0,2&gt; E2 ## E3 ## E0 ## E2; }; \</span></div>
-<div class="line"><a name="l00728"></a><span class="lineno">  728</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 2,3,0,3&gt; E2 ## E3 ## E0 ## E3; }; \</span></div>
-<div class="line"><a name="l00729"></a><span class="lineno">  729</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 2,3,1,0&gt; E2 ## E3 ## E1 ## E0; }; \</span></div>
-<div class="line"><a name="l00730"></a><span class="lineno">  730</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 2,3,1,1&gt; E2 ## E3 ## E1 ## E1; }; \</span></div>
-<div class="line"><a name="l00731"></a><span class="lineno">  731</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 2,3,1,2&gt; E2 ## E3 ## E1 ## E2; }; \</span></div>
-<div class="line"><a name="l00732"></a><span class="lineno">  732</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 2,3,1,3&gt; E2 ## E3 ## E1 ## E3; }; \</span></div>
-<div class="line"><a name="l00733"></a><span class="lineno">  733</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 2,3,2,0&gt; E2 ## E3 ## E2 ## E0; }; \</span></div>
-<div class="line"><a name="l00734"></a><span class="lineno">  734</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 2,3,2,1&gt; E2 ## E3 ## E2 ## E1; }; \</span></div>
-<div class="line"><a name="l00735"></a><span class="lineno">  735</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 2,3,2,2&gt; E2 ## E3 ## E2 ## E2; }; \</span></div>
-<div class="line"><a name="l00736"></a><span class="lineno">  736</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 2,3,2,3&gt; E2 ## E3 ## E2 ## E3; }; \</span></div>
-<div class="line"><a name="l00737"></a><span class="lineno">  737</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 2,3,3,0&gt; E2 ## E3 ## E3 ## E0; }; \</span></div>
-<div class="line"><a name="l00738"></a><span class="lineno">  738</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 2,3,3,1&gt; E2 ## E3 ## E3 ## E1; }; \</span></div>
-<div class="line"><a name="l00739"></a><span class="lineno">  739</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 2,3,3,2&gt; E2 ## E3 ## E3 ## E2; }; \</span></div>
-<div class="line"><a name="l00740"></a><span class="lineno">  740</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 2,3,3,3&gt; E2 ## E3 ## E3 ## E3; }; \</span></div>
-<div class="line"><a name="l00741"></a><span class="lineno">  741</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 3,0,0,0&gt; E3 ## E0 ## E0 ## E0; }; \</span></div>
-<div class="line"><a name="l00742"></a><span class="lineno">  742</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 3,0,0,1&gt; E3 ## E0 ## E0 ## E1; }; \</span></div>
-<div class="line"><a name="l00743"></a><span class="lineno">  743</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 3,0,0,2&gt; E3 ## E0 ## E0 ## E2; }; \</span></div>
-<div class="line"><a name="l00744"></a><span class="lineno">  744</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 3,0,0,3&gt; E3 ## E0 ## E0 ## E3; }; \</span></div>
-<div class="line"><a name="l00745"></a><span class="lineno">  745</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 3,0,1,0&gt; E3 ## E0 ## E1 ## E0; }; \</span></div>
-<div class="line"><a name="l00746"></a><span class="lineno">  746</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 3,0,1,1&gt; E3 ## E0 ## E1 ## E1; }; \</span></div>
-<div class="line"><a name="l00747"></a><span class="lineno">  747</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 3,0,1,2&gt; E3 ## E0 ## E1 ## E2; }; \</span></div>
-<div class="line"><a name="l00748"></a><span class="lineno">  748</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 3,0,1,3&gt; E3 ## E0 ## E1 ## E3; }; \</span></div>
-<div class="line"><a name="l00749"></a><span class="lineno">  749</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 3,0,2,0&gt; E3 ## E0 ## E2 ## E0; }; \</span></div>
-<div class="line"><a name="l00750"></a><span class="lineno">  750</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 3,0,2,1&gt; E3 ## E0 ## E2 ## E1; }; \</span></div>
-<div class="line"><a name="l00751"></a><span class="lineno">  751</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 3,0,2,2&gt; E3 ## E0 ## E2 ## E2; }; \</span></div>
-<div class="line"><a name="l00752"></a><span class="lineno">  752</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 3,0,2,3&gt; E3 ## E0 ## E2 ## E3; }; \</span></div>
-<div class="line"><a name="l00753"></a><span class="lineno">  753</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 3,0,3,0&gt; E3 ## E0 ## E3 ## E0; }; \</span></div>
-<div class="line"><a name="l00754"></a><span class="lineno">  754</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 3,0,3,1&gt; E3 ## E0 ## E3 ## E1; }; \</span></div>
-<div class="line"><a name="l00755"></a><span class="lineno">  755</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 3,0,3,2&gt; E3 ## E0 ## E3 ## E2; }; \</span></div>
-<div class="line"><a name="l00756"></a><span class="lineno">  756</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 3,0,3,3&gt; E3 ## E0 ## E3 ## E3; }; \</span></div>
-<div class="line"><a name="l00757"></a><span class="lineno">  757</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 3,1,0,0&gt; E3 ## E1 ## E0 ## E0; }; \</span></div>
-<div class="line"><a name="l00758"></a><span class="lineno">  758</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 3,1,0,1&gt; E3 ## E1 ## E0 ## E1; }; \</span></div>
-<div class="line"><a name="l00759"></a><span class="lineno">  759</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 3,1,0,2&gt; E3 ## E1 ## E0 ## E2; }; \</span></div>
-<div class="line"><a name="l00760"></a><span class="lineno">  760</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 3,1,0,3&gt; E3 ## E1 ## E0 ## E3; }; \</span></div>
-<div class="line"><a name="l00761"></a><span class="lineno">  761</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 3,1,1,0&gt; E3 ## E1 ## E1 ## E0; }; \</span></div>
-<div class="line"><a name="l00762"></a><span class="lineno">  762</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 3,1,1,1&gt; E3 ## E1 ## E1 ## E1; }; \</span></div>
-<div class="line"><a name="l00763"></a><span class="lineno">  763</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 3,1,1,2&gt; E3 ## E1 ## E1 ## E2; }; \</span></div>
-<div class="line"><a name="l00764"></a><span class="lineno">  764</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 3,1,1,3&gt; E3 ## E1 ## E1 ## E3; }; \</span></div>
-<div class="line"><a name="l00765"></a><span class="lineno">  765</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 3,1,2,0&gt; E3 ## E1 ## E2 ## E0; }; \</span></div>
-<div class="line"><a name="l00766"></a><span class="lineno">  766</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 3,1,2,1&gt; E3 ## E1 ## E2 ## E1; }; \</span></div>
-<div class="line"><a name="l00767"></a><span class="lineno">  767</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 3,1,2,2&gt; E3 ## E1 ## E2 ## E2; }; \</span></div>
-<div class="line"><a name="l00768"></a><span class="lineno">  768</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 3,1,2,3&gt; E3 ## E1 ## E2 ## E3; }; \</span></div>
-<div class="line"><a name="l00769"></a><span class="lineno">  769</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 3,1,3,0&gt; E3 ## E1 ## E3 ## E0; }; \</span></div>
-<div class="line"><a name="l00770"></a><span class="lineno">  770</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 3,1,3,1&gt; E3 ## E1 ## E3 ## E1; }; \</span></div>
-<div class="line"><a name="l00771"></a><span class="lineno">  771</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 3,1,3,2&gt; E3 ## E1 ## E3 ## E2; }; \</span></div>
-<div class="line"><a name="l00772"></a><span class="lineno">  772</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 3,1,3,3&gt; E3 ## E1 ## E3 ## E3; }; \</span></div>
-<div class="line"><a name="l00773"></a><span class="lineno">  773</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 3,2,0,0&gt; E3 ## E2 ## E0 ## E0; }; \</span></div>
-<div class="line"><a name="l00774"></a><span class="lineno">  774</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 3,2,0,1&gt; E3 ## E2 ## E0 ## E1; }; \</span></div>
-<div class="line"><a name="l00775"></a><span class="lineno">  775</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 3,2,0,2&gt; E3 ## E2 ## E0 ## E2; }; \</span></div>
-<div class="line"><a name="l00776"></a><span class="lineno">  776</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 3,2,0,3&gt; E3 ## E2 ## E0 ## E3; }; \</span></div>
-<div class="line"><a name="l00777"></a><span class="lineno">  777</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 3,2,1,0&gt; E3 ## E2 ## E1 ## E0; }; \</span></div>
-<div class="line"><a name="l00778"></a><span class="lineno">  778</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 3,2,1,1&gt; E3 ## E2 ## E1 ## E1; }; \</span></div>
-<div class="line"><a name="l00779"></a><span class="lineno">  779</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 3,2,1,2&gt; E3 ## E2 ## E1 ## E2; }; \</span></div>
-<div class="line"><a name="l00780"></a><span class="lineno">  780</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 3,2,1,3&gt; E3 ## E2 ## E1 ## E3; }; \</span></div>
-<div class="line"><a name="l00781"></a><span class="lineno">  781</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 3,2,2,0&gt; E3 ## E2 ## E2 ## E0; }; \</span></div>
-<div class="line"><a name="l00782"></a><span class="lineno">  782</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 3,2,2,1&gt; E3 ## E2 ## E2 ## E1; }; \</span></div>
-<div class="line"><a name="l00783"></a><span class="lineno">  783</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 3,2,2,2&gt; E3 ## E2 ## E2 ## E2; }; \</span></div>
-<div class="line"><a name="l00784"></a><span class="lineno">  784</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 3,2,2,3&gt; E3 ## E2 ## E2 ## E3; }; \</span></div>
-<div class="line"><a name="l00785"></a><span class="lineno">  785</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 3,2,3,0&gt; E3 ## E2 ## E3 ## E0; }; \</span></div>
-<div class="line"><a name="l00786"></a><span class="lineno">  786</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 3,2,3,1&gt; E3 ## E2 ## E3 ## E1; }; \</span></div>
-<div class="line"><a name="l00787"></a><span class="lineno">  787</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 3,2,3,2&gt; E3 ## E2 ## E3 ## E2; }; \</span></div>
-<div class="line"><a name="l00788"></a><span class="lineno">  788</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 3,2,3,3&gt; E3 ## E2 ## E3 ## E3; }; \</span></div>
-<div class="line"><a name="l00789"></a><span class="lineno">  789</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 3,3,0,0&gt; E3 ## E3 ## E0 ## E0; }; \</span></div>
-<div class="line"><a name="l00790"></a><span class="lineno">  790</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 3,3,0,1&gt; E3 ## E3 ## E0 ## E1; }; \</span></div>
-<div class="line"><a name="l00791"></a><span class="lineno">  791</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 3,3,0,2&gt; E3 ## E3 ## E0 ## E2; }; \</span></div>
-<div class="line"><a name="l00792"></a><span class="lineno">  792</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 3,3,0,3&gt; E3 ## E3 ## E0 ## E3; }; \</span></div>
-<div class="line"><a name="l00793"></a><span class="lineno">  793</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 3,3,1,0&gt; E3 ## E3 ## E1 ## E0; }; \</span></div>
-<div class="line"><a name="l00794"></a><span class="lineno">  794</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 3,3,1,1&gt; E3 ## E3 ## E1 ## E1; }; \</span></div>
-<div class="line"><a name="l00795"></a><span class="lineno">  795</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 3,3,1,2&gt; E3 ## E3 ## E1 ## E2; }; \</span></div>
-<div class="line"><a name="l00796"></a><span class="lineno">  796</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 3,3,1,3&gt; E3 ## E3 ## E1 ## E3; }; \</span></div>
-<div class="line"><a name="l00797"></a><span class="lineno">  797</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 3,3,2,0&gt; E3 ## E3 ## E2 ## E0; }; \</span></div>
-<div class="line"><a name="l00798"></a><span class="lineno">  798</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 3,3,2,1&gt; E3 ## E3 ## E2 ## E1; }; \</span></div>
-<div class="line"><a name="l00799"></a><span class="lineno">  799</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 3,3,2,2&gt; E3 ## E3 ## E2 ## E2; }; \</span></div>
-<div class="line"><a name="l00800"></a><span class="lineno">  800</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 3,3,2,3&gt; E3 ## E3 ## E2 ## E3; }; \</span></div>
-<div class="line"><a name="l00801"></a><span class="lineno">  801</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 3,3,3,0&gt; E3 ## E3 ## E3 ## E0; }; \</span></div>
-<div class="line"><a name="l00802"></a><span class="lineno">  802</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 3,3,3,1&gt; E3 ## E3 ## E3 ## E1; }; \</span></div>
-<div class="line"><a name="l00803"></a><span class="lineno">  803</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 3,3,3,2&gt; E3 ## E3 ## E3 ## E2; }; \</span></div>
-<div class="line"><a name="l00804"></a><span class="lineno">  804</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 3,3,3,3&gt; E3 ## E3 ## E3 ## E3; };</span></div>
-<div class="ttc" id="a00290_html_ga4b7956eb6e2fbedfc7cf2e46e85c5139"><div class="ttname"><a href="a00290.html#ga4b7956eb6e2fbedfc7cf2e46e85c5139">glm::e</a></div><div class="ttdeci">GLM_FUNC_DECL GLM_CONSTEXPR genType e()</div><div class="ttdoc">Return e constant. </div></div>
-<div class="ttc" id="a00236_html"><div class="ttname"><a href="a00236.html">glm</a></div><div class="ttdef"><b>Definition:</b> <a href="a00015_source.html#l00020">common.hpp:20</a></div></div>
-</div><!-- fragment --></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.10
-</small></address>
-</body>
-</html>

+ 414 - 720
doc/api/a00005_source.html

@@ -1,19 +1,17 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://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.10"/>
-<title>0.9.9 API documentation: _swizzle_func.hpp Source File</title>
+<meta name="generator" content="Doxygen 1.8.18"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>1.0.0 API documentation: _features.hpp Source File</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="search/search.css" rel="stylesheet" type="text/css"/>
 <script type="text/javascript" src="search/searchdata.js"></script>
 <script type="text/javascript" src="search/search.js"></script>
-<script type="text/javascript">
-  $(document).ready(function() { init_search(); });
-</script>
 <link href="doxygen.css" rel="stylesheet" type="text/css" />
 </head>
 <body>
@@ -24,7 +22,7 @@
  <tr style="height: 56px;">
   <td id="projectlogo"><img alt="Logo" src="logo-mini.png"/></td>
   <td id="projectalign" style="padding-left: 0.5em;">
-   <div id="projectname">0.9.9 API documentation
+   <div id="projectname">1.0.0 API documentation
    </div>
   </td>
  </tr>
@@ -32,38 +30,22 @@
 </table>
 </div>
 <!-- end header part -->
-<!-- Generated by Doxygen 1.8.10 -->
+<!-- Generated by Doxygen 1.8.18 -->
 <script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
 var searchBox = new SearchBox("searchBox", "search",false,'Search');
+/* @license-end */
 </script>
-  <div id="navrow1" class="tabs">
-    <ul class="tablist">
-      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
-      <li><a href="modules.html"><span>Modules</span></a></li>
-      <li class="current"><a href="files.html"><span>Files</span></a></li>
-      <li>
-        <div id="MSearchBox" class="MSearchBoxInactive">
-        <span class="left">
-          <img id="MSearchSelect" src="search/mag_sel.png"
-               onmouseover="return searchBox.OnSearchSelectShow()"
-               onmouseout="return searchBox.OnSearchSelectHide()"
-               alt=""/>
-          <input type="text" id="MSearchField" value="Search" accesskey="S"
-               onfocus="searchBox.OnSearchFieldFocus(true)" 
-               onblur="searchBox.OnSearchFieldFocus(false)" 
-               onkeyup="searchBox.OnSearchFieldChange(event)"/>
-          </span><span class="right">
-            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
-          </span>
-        </div>
-      </li>
-    </ul>
-  </div>
-  <div id="navrow2" class="tabs2">
-    <ul class="tablist">
-      <li><a href="files.html"><span>File&#160;List</span></a></li>
-    </ul>
-  </div>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
 <!-- window showing the filter options -->
 <div id="MSearchSelectWindow"
      onmouseover="return searchBox.OnSearchSelectShow()"
@@ -80,702 +62,414 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 
 <div id="nav-path" class="navpath">
   <ul>
-<li class="navelem"><a class="el" href="dir_3a581ba30d25676e4b797b1f96d53b45.html">F:</a></li><li class="navelem"><a class="el" href="dir_9e5fe034a00e89334fd5186c3e7db156.html">G-Truc</a></li><li class="navelem"><a class="el" href="dir_d9496f0844b48bc7e53b5af8c99b9ab2.html">Source</a></li><li class="navelem"><a class="el" href="dir_a8bee7be44182a33f3820393ae0b105d.html">G-Truc</a></li><li class="navelem"><a class="el" href="dir_44e5e654415abd9ca6fdeaddaff8565e.html">glm</a></li><li class="navelem"><a class="el" href="dir_cef2d71d502cb69a9252bca2297d9549.html">glm</a></li><li class="navelem"><a class="el" href="dir_033f5edb0915b828d2c46ed4804e5503.html">detail</a></li>  </ul>
+<li class="navelem"><a class="el" href="dir_885cc87fac2d91e269af0a5a959fa5f6.html">E:</a></li><li class="navelem"><a class="el" href="dir_63ed049134a778d525e06b63afc2c979.html">Github</a></li><li class="navelem"><a class="el" href="dir_c98a9ac98258ab9f831b188d66361a70.html">g-truc</a></li><li class="navelem"><a class="el" href="dir_50f12b6ceb23d7f6adfb377a1ae8b006.html">glm</a></li><li class="navelem"><a class="el" href="dir_fca33f1b5115d46f42c670590789c0d2.html">glm</a></li><li class="navelem"><a class="el" href="dir_382f4fd018b81be8753cb53c0a41a09a.html">detail</a></li>  </ul>
 </div>
 </div><!-- top -->
 <div class="header">
   <div class="headertitle">
-<div class="title">_swizzle_func.hpp</div>  </div>
+<div class="title">_features.hpp</div>  </div>
 </div><!--header-->
 <div class="contents">
 <div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span>&#160;<span class="preprocessor">#pragma once</span></div>
-<div class="line"><a name="l00002"></a><span class="lineno">    2</span>&#160;</div>
-<div class="line"><a name="l00003"></a><span class="lineno">    3</span>&#160;<span class="preprocessor">#define GLM_SWIZZLE_GEN_VEC2_ENTRY(T, P, CONST, A, B)   \</span></div>
-<div class="line"><a name="l00004"></a><span class="lineno">    4</span>&#160;<span class="preprocessor">        vec&lt;2, T, Q&gt; A ## B() CONST                                                     \</span></div>
-<div class="line"><a name="l00005"></a><span class="lineno">    5</span>&#160;<span class="preprocessor">        {                                                                                                       \</span></div>
-<div class="line"><a name="l00006"></a><span class="lineno">    6</span>&#160;<span class="preprocessor">                return vec&lt;2, T, Q&gt;(this-&gt;A, this-&gt;B);                  \</span></div>
-<div class="line"><a name="l00007"></a><span class="lineno">    7</span>&#160;<span class="preprocessor">        }</span></div>
-<div class="line"><a name="l00008"></a><span class="lineno">    8</span>&#160;</div>
-<div class="line"><a name="l00009"></a><span class="lineno">    9</span>&#160;<span class="preprocessor">#define GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, CONST, A, B, C)                \</span></div>
-<div class="line"><a name="l00010"></a><span class="lineno">   10</span>&#160;<span class="preprocessor">        vec&lt;3, T, Q&gt; A ## B ## C() CONST                                                        \</span></div>
-<div class="line"><a name="l00011"></a><span class="lineno">   11</span>&#160;<span class="preprocessor">        {                                                                                                                       \</span></div>
-<div class="line"><a name="l00012"></a><span class="lineno">   12</span>&#160;<span class="preprocessor">                return vec&lt;3, T, Q&gt;(this-&gt;A, this-&gt;B, this-&gt;C);                 \</span></div>
-<div class="line"><a name="l00013"></a><span class="lineno">   13</span>&#160;<span class="preprocessor">        }</span></div>
-<div class="line"><a name="l00014"></a><span class="lineno">   14</span>&#160;</div>
-<div class="line"><a name="l00015"></a><span class="lineno">   15</span>&#160;<span class="preprocessor">#define GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, CONST, A, B, C, D)                                     \</span></div>
-<div class="line"><a name="l00016"></a><span class="lineno">   16</span>&#160;<span class="preprocessor">        vec&lt;4, T, Q&gt; A ## B ## C ## D() CONST                                                                   \</span></div>
-<div class="line"><a name="l00017"></a><span class="lineno">   17</span>&#160;<span class="preprocessor">        {                                                                                                                                               \</span></div>
-<div class="line"><a name="l00018"></a><span class="lineno">   18</span>&#160;<span class="preprocessor">                return vec&lt;4, T, Q&gt;(this-&gt;A, this-&gt;B, this-&gt;C, this-&gt;D);                        \</span></div>
-<div class="line"><a name="l00019"></a><span class="lineno">   19</span>&#160;<span class="preprocessor">        }</span></div>
-<div class="line"><a name="l00020"></a><span class="lineno">   20</span>&#160;</div>
-<div class="line"><a name="l00021"></a><span class="lineno">   21</span>&#160;<span class="preprocessor">#define GLM_SWIZZLE_GEN_VEC2_ENTRY_DEF(T, P, L, CONST, A, B)    \</span></div>
-<div class="line"><a name="l00022"></a><span class="lineno">   22</span>&#160;<span class="preprocessor">        template&lt;typename T&gt;                                                                            \</span></div>
-<div class="line"><a name="l00023"></a><span class="lineno">   23</span>&#160;<span class="preprocessor">        vec&lt;L, T, Q&gt; vec&lt;L, T, Q&gt;::A ## B() CONST                                       \</span></div>
-<div class="line"><a name="l00024"></a><span class="lineno">   24</span>&#160;<span class="preprocessor">        {                                                                                                                       \</span></div>
-<div class="line"><a name="l00025"></a><span class="lineno">   25</span>&#160;<span class="preprocessor">                return vec&lt;2, T, Q&gt;(this-&gt;A, this-&gt;B);                                  \</span></div>
-<div class="line"><a name="l00026"></a><span class="lineno">   26</span>&#160;<span class="preprocessor">        }</span></div>
-<div class="line"><a name="l00027"></a><span class="lineno">   27</span>&#160;</div>
-<div class="line"><a name="l00028"></a><span class="lineno">   28</span>&#160;<span class="preprocessor">#define GLM_SWIZZLE_GEN_VEC3_ENTRY_DEF(T, P, L, CONST, A, B, C)         \</span></div>
-<div class="line"><a name="l00029"></a><span class="lineno">   29</span>&#160;<span class="preprocessor">        template&lt;typename T&gt;                                                                                    \</span></div>
-<div class="line"><a name="l00030"></a><span class="lineno">   30</span>&#160;<span class="preprocessor">        vec&lt;3, T, Q&gt; vec&lt;L, T, Q&gt;::A ## B ## C() CONST                                  \</span></div>
-<div class="line"><a name="l00031"></a><span class="lineno">   31</span>&#160;<span class="preprocessor">        {                                                                                                                               \</span></div>
-<div class="line"><a name="l00032"></a><span class="lineno">   32</span>&#160;<span class="preprocessor">                return vec&lt;3, T, Q&gt;(this-&gt;A, this-&gt;B, this-&gt;C);                         \</span></div>
-<div class="line"><a name="l00033"></a><span class="lineno">   33</span>&#160;<span class="preprocessor">        }</span></div>
-<div class="line"><a name="l00034"></a><span class="lineno">   34</span>&#160;</div>
-<div class="line"><a name="l00035"></a><span class="lineno">   35</span>&#160;<span class="preprocessor">#define GLM_SWIZZLE_GEN_VEC4_ENTRY_DEF(T, P, L, CONST, A, B, C, D)              \</span></div>
-<div class="line"><a name="l00036"></a><span class="lineno">   36</span>&#160;<span class="preprocessor">        template&lt;typename T&gt;                                                                                            \</span></div>
-<div class="line"><a name="l00037"></a><span class="lineno">   37</span>&#160;<span class="preprocessor">        vec&lt;4, T, Q&gt; vec&lt;L, T, Q&gt;::A ## B ## C ## D() CONST                                     \</span></div>
-<div class="line"><a name="l00038"></a><span class="lineno">   38</span>&#160;<span class="preprocessor">        {                                                                                                                                       \</span></div>
-<div class="line"><a name="l00039"></a><span class="lineno">   39</span>&#160;<span class="preprocessor">                return vec&lt;4, T, Q&gt;(this-&gt;A, this-&gt;B, this-&gt;C, this-&gt;D);                \</span></div>
-<div class="line"><a name="l00040"></a><span class="lineno">   40</span>&#160;<span class="preprocessor">        }</span></div>
-<div class="line"><a name="l00041"></a><span class="lineno">   41</span>&#160;</div>
-<div class="line"><a name="l00042"></a><span class="lineno">   42</span>&#160;<span class="preprocessor">#define GLM_MUTABLE</span></div>
-<div class="line"><a name="l00043"></a><span class="lineno">   43</span>&#160;</div>
-<div class="line"><a name="l00044"></a><span class="lineno">   44</span>&#160;<span class="preprocessor">#define GLM_SWIZZLE_GEN_REF2_FROM_VEC2_SWIZZLE(T, P, A, B) \</span></div>
-<div class="line"><a name="l00045"></a><span class="lineno">   45</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC2_ENTRY(T, P, 2, GLM_MUTABLE, A, B) \</span></div>
-<div class="line"><a name="l00046"></a><span class="lineno">   46</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC2_ENTRY(T, P, 2, GLM_MUTABLE, B, A)</span></div>
-<div class="line"><a name="l00047"></a><span class="lineno">   47</span>&#160;</div>
-<div class="line"><a name="l00048"></a><span class="lineno">   48</span>&#160;<span class="preprocessor">#define GLM_SWIZZLE_GEN_REF_FROM_VEC2(T, P) \</span></div>
-<div class="line"><a name="l00049"></a><span class="lineno">   49</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_REF2_FROM_VEC2_SWIZZLE(T, P, x, y) \</span></div>
-<div class="line"><a name="l00050"></a><span class="lineno">   50</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_REF2_FROM_VEC2_SWIZZLE(T, P, r, g) \</span></div>
-<div class="line"><a name="l00051"></a><span class="lineno">   51</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_REF2_FROM_VEC2_SWIZZLE(T, P, s, t)</span></div>
-<div class="line"><a name="l00052"></a><span class="lineno">   52</span>&#160;</div>
-<div class="line"><a name="l00053"></a><span class="lineno">   53</span>&#160;<span class="preprocessor">#define GLM_SWIZZLE_GEN_REF2_FROM_VEC3_SWIZZLE(T, P, A, B, C) \</span></div>
-<div class="line"><a name="l00054"></a><span class="lineno">   54</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC2_ENTRY(T, P, GLM_MUTABLE, A, B) \</span></div>
-<div class="line"><a name="l00055"></a><span class="lineno">   55</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC2_ENTRY(T, P, GLM_MUTABLE, A, C) \</span></div>
-<div class="line"><a name="l00056"></a><span class="lineno">   56</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC2_ENTRY(T, P, GLM_MUTABLE, B, A) \</span></div>
-<div class="line"><a name="l00057"></a><span class="lineno">   57</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC2_ENTRY(T, P, GLM_MUTABLE, B, C) \</span></div>
-<div class="line"><a name="l00058"></a><span class="lineno">   58</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC2_ENTRY(T, P, GLM_MUTABLE, C, A) \</span></div>
-<div class="line"><a name="l00059"></a><span class="lineno">   59</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC2_ENTRY(T, P, GLM_MUTABLE, C, B)</span></div>
-<div class="line"><a name="l00060"></a><span class="lineno">   60</span>&#160;</div>
-<div class="line"><a name="l00061"></a><span class="lineno">   61</span>&#160;<span class="preprocessor">#define GLM_SWIZZLE_GEN_REF3_FROM_VEC3_SWIZZLE(T, P, A, B, C) \</span></div>
-<div class="line"><a name="l00062"></a><span class="lineno">   62</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, GLM_MUTABLE, A, B, C) \</span></div>
-<div class="line"><a name="l00063"></a><span class="lineno">   63</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, GLM_MUTABLE, A, C, B) \</span></div>
-<div class="line"><a name="l00064"></a><span class="lineno">   64</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, GLM_MUTABLE, B, A, C) \</span></div>
-<div class="line"><a name="l00065"></a><span class="lineno">   65</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, GLM_MUTABLE, B, C, A) \</span></div>
-<div class="line"><a name="l00066"></a><span class="lineno">   66</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, GLM_MUTABLE, C, A, B) \</span></div>
-<div class="line"><a name="l00067"></a><span class="lineno">   67</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, GLM_MUTABLE, C, B, A)</span></div>
-<div class="line"><a name="l00068"></a><span class="lineno">   68</span>&#160;</div>
-<div class="line"><a name="l00069"></a><span class="lineno">   69</span>&#160;<span class="preprocessor">#define GLM_SWIZZLE_GEN_REF_FROM_VEC3_COMP(T, P, A, B, C) \</span></div>
-<div class="line"><a name="l00070"></a><span class="lineno">   70</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_REF3_FROM_VEC3_SWIZZLE(T, P, A, B, C) \</span></div>
-<div class="line"><a name="l00071"></a><span class="lineno">   71</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_REF2_FROM_VEC3_SWIZZLE(T, P, A, B, C)</span></div>
-<div class="line"><a name="l00072"></a><span class="lineno">   72</span>&#160;</div>
-<div class="line"><a name="l00073"></a><span class="lineno">   73</span>&#160;<span class="preprocessor">#define GLM_SWIZZLE_GEN_REF_FROM_VEC3(T, P) \</span></div>
-<div class="line"><a name="l00074"></a><span class="lineno">   74</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_REF_FROM_VEC3_COMP(T, P, x, y, z) \</span></div>
-<div class="line"><a name="l00075"></a><span class="lineno">   75</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_REF_FROM_VEC3_COMP(T, P, r, g, b) \</span></div>
-<div class="line"><a name="l00076"></a><span class="lineno">   76</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_REF_FROM_VEC3_COMP(T, P, s, t, p)</span></div>
-<div class="line"><a name="l00077"></a><span class="lineno">   77</span>&#160;</div>
-<div class="line"><a name="l00078"></a><span class="lineno">   78</span>&#160;<span class="preprocessor">#define GLM_SWIZZLE_GEN_REF2_FROM_VEC4_SWIZZLE(T, P, A, B, C, D) \</span></div>
-<div class="line"><a name="l00079"></a><span class="lineno">   79</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC2_ENTRY(T, P, GLM_MUTABLE, A, B) \</span></div>
-<div class="line"><a name="l00080"></a><span class="lineno">   80</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC2_ENTRY(T, P, GLM_MUTABLE, A, C) \</span></div>
-<div class="line"><a name="l00081"></a><span class="lineno">   81</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC2_ENTRY(T, P, GLM_MUTABLE, A, D) \</span></div>
-<div class="line"><a name="l00082"></a><span class="lineno">   82</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC2_ENTRY(T, P, GLM_MUTABLE, B, A) \</span></div>
-<div class="line"><a name="l00083"></a><span class="lineno">   83</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC2_ENTRY(T, P, GLM_MUTABLE, B, C) \</span></div>
-<div class="line"><a name="l00084"></a><span class="lineno">   84</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC2_ENTRY(T, P, GLM_MUTABLE, B, D) \</span></div>
-<div class="line"><a name="l00085"></a><span class="lineno">   85</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC2_ENTRY(T, P, GLM_MUTABLE, C, A) \</span></div>
-<div class="line"><a name="l00086"></a><span class="lineno">   86</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC2_ENTRY(T, P, GLM_MUTABLE, C, B) \</span></div>
-<div class="line"><a name="l00087"></a><span class="lineno">   87</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC2_ENTRY(T, P, GLM_MUTABLE, C, D) \</span></div>
-<div class="line"><a name="l00088"></a><span class="lineno">   88</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC2_ENTRY(T, P, GLM_MUTABLE, D, A) \</span></div>
-<div class="line"><a name="l00089"></a><span class="lineno">   89</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC2_ENTRY(T, P, GLM_MUTABLE, D, B) \</span></div>
-<div class="line"><a name="l00090"></a><span class="lineno">   90</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC2_ENTRY(T, P, GLM_MUTABLE, D, C)</span></div>
-<div class="line"><a name="l00091"></a><span class="lineno">   91</span>&#160;</div>
-<div class="line"><a name="l00092"></a><span class="lineno">   92</span>&#160;<span class="preprocessor">#define GLM_SWIZZLE_GEN_REF3_FROM_VEC4_SWIZZLE(T, P, A, B, C, D) \</span></div>
-<div class="line"><a name="l00093"></a><span class="lineno">   93</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, , A, B, C) \</span></div>
-<div class="line"><a name="l00094"></a><span class="lineno">   94</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, , A, B, D) \</span></div>
-<div class="line"><a name="l00095"></a><span class="lineno">   95</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, , A, C, B) \</span></div>
-<div class="line"><a name="l00096"></a><span class="lineno">   96</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, , A, C, D) \</span></div>
-<div class="line"><a name="l00097"></a><span class="lineno">   97</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, , A, D, B) \</span></div>
-<div class="line"><a name="l00098"></a><span class="lineno">   98</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, , A, D, C) \</span></div>
-<div class="line"><a name="l00099"></a><span class="lineno">   99</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, , B, A, C) \</span></div>
-<div class="line"><a name="l00100"></a><span class="lineno">  100</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, , B, A, D) \</span></div>
-<div class="line"><a name="l00101"></a><span class="lineno">  101</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, , B, C, A) \</span></div>
-<div class="line"><a name="l00102"></a><span class="lineno">  102</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, , B, C, D) \</span></div>
-<div class="line"><a name="l00103"></a><span class="lineno">  103</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, , B, D, A) \</span></div>
-<div class="line"><a name="l00104"></a><span class="lineno">  104</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, , B, D, C) \</span></div>
-<div class="line"><a name="l00105"></a><span class="lineno">  105</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, , C, A, B) \</span></div>
-<div class="line"><a name="l00106"></a><span class="lineno">  106</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, , C, A, D) \</span></div>
-<div class="line"><a name="l00107"></a><span class="lineno">  107</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, , C, B, A) \</span></div>
-<div class="line"><a name="l00108"></a><span class="lineno">  108</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, , C, B, D) \</span></div>
-<div class="line"><a name="l00109"></a><span class="lineno">  109</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, , C, D, A) \</span></div>
-<div class="line"><a name="l00110"></a><span class="lineno">  110</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, , C, D, B) \</span></div>
-<div class="line"><a name="l00111"></a><span class="lineno">  111</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, , D, A, B) \</span></div>
-<div class="line"><a name="l00112"></a><span class="lineno">  112</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, , D, A, C) \</span></div>
-<div class="line"><a name="l00113"></a><span class="lineno">  113</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, , D, B, A) \</span></div>
-<div class="line"><a name="l00114"></a><span class="lineno">  114</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, , D, B, C) \</span></div>
-<div class="line"><a name="l00115"></a><span class="lineno">  115</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, , D, C, A) \</span></div>
-<div class="line"><a name="l00116"></a><span class="lineno">  116</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, , D, C, B)</span></div>
-<div class="line"><a name="l00117"></a><span class="lineno">  117</span>&#160;</div>
-<div class="line"><a name="l00118"></a><span class="lineno">  118</span>&#160;<span class="preprocessor">#define GLM_SWIZZLE_GEN_REF4_FROM_VEC4_SWIZZLE(T, P, A, B, C, D) \</span></div>
-<div class="line"><a name="l00119"></a><span class="lineno">  119</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, , A, C, B, D) \</span></div>
-<div class="line"><a name="l00120"></a><span class="lineno">  120</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, , A, C, D, B) \</span></div>
-<div class="line"><a name="l00121"></a><span class="lineno">  121</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, , A, D, B, C) \</span></div>
-<div class="line"><a name="l00122"></a><span class="lineno">  122</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, , A, D, C, B) \</span></div>
-<div class="line"><a name="l00123"></a><span class="lineno">  123</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, , A, B, D, C) \</span></div>
-<div class="line"><a name="l00124"></a><span class="lineno">  124</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, , A, B, C, D) \</span></div>
-<div class="line"><a name="l00125"></a><span class="lineno">  125</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, , B, C, A, D) \</span></div>
-<div class="line"><a name="l00126"></a><span class="lineno">  126</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, , B, C, D, A) \</span></div>
-<div class="line"><a name="l00127"></a><span class="lineno">  127</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, , B, D, A, C) \</span></div>
-<div class="line"><a name="l00128"></a><span class="lineno">  128</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, , B, D, C, A) \</span></div>
-<div class="line"><a name="l00129"></a><span class="lineno">  129</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, , B, A, D, C) \</span></div>
-<div class="line"><a name="l00130"></a><span class="lineno">  130</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, , B, A, C, D) \</span></div>
-<div class="line"><a name="l00131"></a><span class="lineno">  131</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, , C, B, A, D) \</span></div>
-<div class="line"><a name="l00132"></a><span class="lineno">  132</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, , C, B, D, A) \</span></div>
-<div class="line"><a name="l00133"></a><span class="lineno">  133</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, , C, D, A, B) \</span></div>
-<div class="line"><a name="l00134"></a><span class="lineno">  134</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, , C, D, B, A) \</span></div>
-<div class="line"><a name="l00135"></a><span class="lineno">  135</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, , C, A, D, B) \</span></div>
-<div class="line"><a name="l00136"></a><span class="lineno">  136</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, , C, A, B, D) \</span></div>
-<div class="line"><a name="l00137"></a><span class="lineno">  137</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, , D, C, B, A) \</span></div>
-<div class="line"><a name="l00138"></a><span class="lineno">  138</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, , D, C, A, B) \</span></div>
-<div class="line"><a name="l00139"></a><span class="lineno">  139</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, , D, A, B, C) \</span></div>
-<div class="line"><a name="l00140"></a><span class="lineno">  140</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, , D, A, C, B) \</span></div>
-<div class="line"><a name="l00141"></a><span class="lineno">  141</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, , D, B, A, C) \</span></div>
-<div class="line"><a name="l00142"></a><span class="lineno">  142</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, , D, B, C, A)</span></div>
-<div class="line"><a name="l00143"></a><span class="lineno">  143</span>&#160;</div>
-<div class="line"><a name="l00144"></a><span class="lineno">  144</span>&#160;<span class="preprocessor">#define GLM_SWIZZLE_GEN_REF_FROM_VEC4_COMP(T, P, A, B, C, D) \</span></div>
-<div class="line"><a name="l00145"></a><span class="lineno">  145</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_REF2_FROM_VEC4_SWIZZLE(T, P, A, B, C, D) \</span></div>
-<div class="line"><a name="l00146"></a><span class="lineno">  146</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_REF3_FROM_VEC4_SWIZZLE(T, P, A, B, C, D) \</span></div>
-<div class="line"><a name="l00147"></a><span class="lineno">  147</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_REF4_FROM_VEC4_SWIZZLE(T, P, A, B, C, D)</span></div>
-<div class="line"><a name="l00148"></a><span class="lineno">  148</span>&#160;</div>
-<div class="line"><a name="l00149"></a><span class="lineno">  149</span>&#160;<span class="preprocessor">#define GLM_SWIZZLE_GEN_REF_FROM_VEC4(T, P) \</span></div>
-<div class="line"><a name="l00150"></a><span class="lineno">  150</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_REF_FROM_VEC4_COMP(T, P, x, y, z, w) \</span></div>
-<div class="line"><a name="l00151"></a><span class="lineno">  151</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_REF_FROM_VEC4_COMP(T, P, r, g, b, a) \</span></div>
-<div class="line"><a name="l00152"></a><span class="lineno">  152</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_REF_FROM_VEC4_COMP(T, P, s, t, p, q)</span></div>
-<div class="line"><a name="l00153"></a><span class="lineno">  153</span>&#160;</div>
-<div class="line"><a name="l00154"></a><span class="lineno">  154</span>&#160;<span class="preprocessor">#define GLM_SWIZZLE_GEN_VEC2_FROM_VEC2_SWIZZLE(T, P, A, B) \</span></div>
-<div class="line"><a name="l00155"></a><span class="lineno">  155</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC2_ENTRY(T, P, const, A, A) \</span></div>
-<div class="line"><a name="l00156"></a><span class="lineno">  156</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC2_ENTRY(T, P, const, A, B) \</span></div>
-<div class="line"><a name="l00157"></a><span class="lineno">  157</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC2_ENTRY(T, P, const, B, A) \</span></div>
-<div class="line"><a name="l00158"></a><span class="lineno">  158</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC2_ENTRY(T, P, const, B, B)</span></div>
-<div class="line"><a name="l00159"></a><span class="lineno">  159</span>&#160;</div>
-<div class="line"><a name="l00160"></a><span class="lineno">  160</span>&#160;<span class="preprocessor">#define GLM_SWIZZLE_GEN_VEC3_FROM_VEC2_SWIZZLE(T, P, A, B) \</span></div>
-<div class="line"><a name="l00161"></a><span class="lineno">  161</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, const, A, A, A) \</span></div>
-<div class="line"><a name="l00162"></a><span class="lineno">  162</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, const, A, A, B) \</span></div>
-<div class="line"><a name="l00163"></a><span class="lineno">  163</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, const, A, B, A) \</span></div>
-<div class="line"><a name="l00164"></a><span class="lineno">  164</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, const, A, B, B) \</span></div>
-<div class="line"><a name="l00165"></a><span class="lineno">  165</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, const, B, A, A) \</span></div>
-<div class="line"><a name="l00166"></a><span class="lineno">  166</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, const, B, A, B) \</span></div>
-<div class="line"><a name="l00167"></a><span class="lineno">  167</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, const, B, B, A) \</span></div>
-<div class="line"><a name="l00168"></a><span class="lineno">  168</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, const, B, B, B)</span></div>
-<div class="line"><a name="l00169"></a><span class="lineno">  169</span>&#160;</div>
-<div class="line"><a name="l00170"></a><span class="lineno">  170</span>&#160;<span class="preprocessor">#define GLM_SWIZZLE_GEN_VEC4_FROM_VEC2_SWIZZLE(T, P, A, B) \</span></div>
-<div class="line"><a name="l00171"></a><span class="lineno">  171</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, A, A, A, A) \</span></div>
-<div class="line"><a name="l00172"></a><span class="lineno">  172</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, A, A, A, B) \</span></div>
-<div class="line"><a name="l00173"></a><span class="lineno">  173</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, A, A, B, A) \</span></div>
-<div class="line"><a name="l00174"></a><span class="lineno">  174</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, A, A, B, B) \</span></div>
-<div class="line"><a name="l00175"></a><span class="lineno">  175</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, A, B, A, A) \</span></div>
-<div class="line"><a name="l00176"></a><span class="lineno">  176</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, A, B, A, B) \</span></div>
-<div class="line"><a name="l00177"></a><span class="lineno">  177</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, A, B, B, A) \</span></div>
-<div class="line"><a name="l00178"></a><span class="lineno">  178</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, A, B, B, B) \</span></div>
-<div class="line"><a name="l00179"></a><span class="lineno">  179</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, B, A, A, A) \</span></div>
-<div class="line"><a name="l00180"></a><span class="lineno">  180</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, B, A, A, B) \</span></div>
-<div class="line"><a name="l00181"></a><span class="lineno">  181</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, B, A, B, A) \</span></div>
-<div class="line"><a name="l00182"></a><span class="lineno">  182</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, B, A, B, B) \</span></div>
-<div class="line"><a name="l00183"></a><span class="lineno">  183</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, B, B, A, A) \</span></div>
-<div class="line"><a name="l00184"></a><span class="lineno">  184</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, B, B, A, B) \</span></div>
-<div class="line"><a name="l00185"></a><span class="lineno">  185</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, B, B, B, A) \</span></div>
-<div class="line"><a name="l00186"></a><span class="lineno">  186</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, B, B, B, B)</span></div>
-<div class="line"><a name="l00187"></a><span class="lineno">  187</span>&#160;</div>
-<div class="line"><a name="l00188"></a><span class="lineno">  188</span>&#160;<span class="preprocessor">#define GLM_SWIZZLE_GEN_VEC_FROM_VEC2_COMP(T, P, A, B) \</span></div>
-<div class="line"><a name="l00189"></a><span class="lineno">  189</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC2_FROM_VEC2_SWIZZLE(T, P, A, B) \</span></div>
-<div class="line"><a name="l00190"></a><span class="lineno">  190</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_FROM_VEC2_SWIZZLE(T, P, A, B) \</span></div>
-<div class="line"><a name="l00191"></a><span class="lineno">  191</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_FROM_VEC2_SWIZZLE(T, P, A, B)</span></div>
-<div class="line"><a name="l00192"></a><span class="lineno">  192</span>&#160;</div>
-<div class="line"><a name="l00193"></a><span class="lineno">  193</span>&#160;<span class="preprocessor">#define GLM_SWIZZLE_GEN_VEC_FROM_VEC2(T, P)                     \</span></div>
-<div class="line"><a name="l00194"></a><span class="lineno">  194</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC_FROM_VEC2_COMP(T, P, x, y)  \</span></div>
-<div class="line"><a name="l00195"></a><span class="lineno">  195</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC_FROM_VEC2_COMP(T, P, r, g)  \</span></div>
-<div class="line"><a name="l00196"></a><span class="lineno">  196</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC_FROM_VEC2_COMP(T, P, s, t)</span></div>
-<div class="line"><a name="l00197"></a><span class="lineno">  197</span>&#160;</div>
-<div class="line"><a name="l00198"></a><span class="lineno">  198</span>&#160;<span class="preprocessor">#define GLM_SWIZZLE_GEN_VEC2_FROM_VEC3_SWIZZLE(T, P, A, B, C) \</span></div>
-<div class="line"><a name="l00199"></a><span class="lineno">  199</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC2_ENTRY(T, P, const, A, A) \</span></div>
-<div class="line"><a name="l00200"></a><span class="lineno">  200</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC2_ENTRY(T, P, const, A, B) \</span></div>
-<div class="line"><a name="l00201"></a><span class="lineno">  201</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC2_ENTRY(T, P, const, A, C) \</span></div>
-<div class="line"><a name="l00202"></a><span class="lineno">  202</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC2_ENTRY(T, P, const, B, A) \</span></div>
-<div class="line"><a name="l00203"></a><span class="lineno">  203</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC2_ENTRY(T, P, const, B, B) \</span></div>
-<div class="line"><a name="l00204"></a><span class="lineno">  204</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC2_ENTRY(T, P, const, B, C) \</span></div>
-<div class="line"><a name="l00205"></a><span class="lineno">  205</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC2_ENTRY(T, P, const, C, A) \</span></div>
-<div class="line"><a name="l00206"></a><span class="lineno">  206</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC2_ENTRY(T, P, const, C, B) \</span></div>
-<div class="line"><a name="l00207"></a><span class="lineno">  207</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC2_ENTRY(T, P, const, C, C)</span></div>
-<div class="line"><a name="l00208"></a><span class="lineno">  208</span>&#160;</div>
-<div class="line"><a name="l00209"></a><span class="lineno">  209</span>&#160;<span class="preprocessor">#define GLM_SWIZZLE_GEN_VEC3_FROM_VEC3_SWIZZLE(T, P, A, B, C) \</span></div>
-<div class="line"><a name="l00210"></a><span class="lineno">  210</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, const, A, A, A) \</span></div>
-<div class="line"><a name="l00211"></a><span class="lineno">  211</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, const, A, A, B) \</span></div>
-<div class="line"><a name="l00212"></a><span class="lineno">  212</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, const, A, A, C) \</span></div>
-<div class="line"><a name="l00213"></a><span class="lineno">  213</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, const, A, B, A) \</span></div>
-<div class="line"><a name="l00214"></a><span class="lineno">  214</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, const, A, B, B) \</span></div>
-<div class="line"><a name="l00215"></a><span class="lineno">  215</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, const, A, B, C) \</span></div>
-<div class="line"><a name="l00216"></a><span class="lineno">  216</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, const, A, C, A) \</span></div>
-<div class="line"><a name="l00217"></a><span class="lineno">  217</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, const, A, C, B) \</span></div>
-<div class="line"><a name="l00218"></a><span class="lineno">  218</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, const, A, C, C) \</span></div>
-<div class="line"><a name="l00219"></a><span class="lineno">  219</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, const, B, A, A) \</span></div>
-<div class="line"><a name="l00220"></a><span class="lineno">  220</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, const, B, A, B) \</span></div>
-<div class="line"><a name="l00221"></a><span class="lineno">  221</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, const, B, A, C) \</span></div>
-<div class="line"><a name="l00222"></a><span class="lineno">  222</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, const, B, B, A) \</span></div>
-<div class="line"><a name="l00223"></a><span class="lineno">  223</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, const, B, B, B) \</span></div>
-<div class="line"><a name="l00224"></a><span class="lineno">  224</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, const, B, B, C) \</span></div>
-<div class="line"><a name="l00225"></a><span class="lineno">  225</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, const, B, C, A) \</span></div>
-<div class="line"><a name="l00226"></a><span class="lineno">  226</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, const, B, C, B) \</span></div>
-<div class="line"><a name="l00227"></a><span class="lineno">  227</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, const, B, C, C) \</span></div>
-<div class="line"><a name="l00228"></a><span class="lineno">  228</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, const, C, A, A) \</span></div>
-<div class="line"><a name="l00229"></a><span class="lineno">  229</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, const, C, A, B) \</span></div>
-<div class="line"><a name="l00230"></a><span class="lineno">  230</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, const, C, A, C) \</span></div>
-<div class="line"><a name="l00231"></a><span class="lineno">  231</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, const, C, B, A) \</span></div>
-<div class="line"><a name="l00232"></a><span class="lineno">  232</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, const, C, B, B) \</span></div>
-<div class="line"><a name="l00233"></a><span class="lineno">  233</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, const, C, B, C) \</span></div>
-<div class="line"><a name="l00234"></a><span class="lineno">  234</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, const, C, C, A) \</span></div>
-<div class="line"><a name="l00235"></a><span class="lineno">  235</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, const, C, C, B) \</span></div>
-<div class="line"><a name="l00236"></a><span class="lineno">  236</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, const, C, C, C)</span></div>
-<div class="line"><a name="l00237"></a><span class="lineno">  237</span>&#160;</div>
-<div class="line"><a name="l00238"></a><span class="lineno">  238</span>&#160;<span class="preprocessor">#define GLM_SWIZZLE_GEN_VEC4_FROM_VEC3_SWIZZLE(T, P, A, B, C) \</span></div>
-<div class="line"><a name="l00239"></a><span class="lineno">  239</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, A, A, A, A) \</span></div>
-<div class="line"><a name="l00240"></a><span class="lineno">  240</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, A, A, A, B) \</span></div>
-<div class="line"><a name="l00241"></a><span class="lineno">  241</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, A, A, A, C) \</span></div>
-<div class="line"><a name="l00242"></a><span class="lineno">  242</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, A, A, B, A) \</span></div>
-<div class="line"><a name="l00243"></a><span class="lineno">  243</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, A, A, B, B) \</span></div>
-<div class="line"><a name="l00244"></a><span class="lineno">  244</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, A, A, B, C) \</span></div>
-<div class="line"><a name="l00245"></a><span class="lineno">  245</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, A, A, C, A) \</span></div>
-<div class="line"><a name="l00246"></a><span class="lineno">  246</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, A, A, C, B) \</span></div>
-<div class="line"><a name="l00247"></a><span class="lineno">  247</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, A, A, C, C) \</span></div>
-<div class="line"><a name="l00248"></a><span class="lineno">  248</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, A, B, A, A) \</span></div>
-<div class="line"><a name="l00249"></a><span class="lineno">  249</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, A, B, A, B) \</span></div>
-<div class="line"><a name="l00250"></a><span class="lineno">  250</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, A, B, A, C) \</span></div>
-<div class="line"><a name="l00251"></a><span class="lineno">  251</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, A, B, B, A) \</span></div>
-<div class="line"><a name="l00252"></a><span class="lineno">  252</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, A, B, B, B) \</span></div>
-<div class="line"><a name="l00253"></a><span class="lineno">  253</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, A, B, B, C) \</span></div>
-<div class="line"><a name="l00254"></a><span class="lineno">  254</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, A, B, C, A) \</span></div>
-<div class="line"><a name="l00255"></a><span class="lineno">  255</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, A, B, C, B) \</span></div>
-<div class="line"><a name="l00256"></a><span class="lineno">  256</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, A, B, C, C) \</span></div>
-<div class="line"><a name="l00257"></a><span class="lineno">  257</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, A, C, A, A) \</span></div>
-<div class="line"><a name="l00258"></a><span class="lineno">  258</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, A, C, A, B) \</span></div>
-<div class="line"><a name="l00259"></a><span class="lineno">  259</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, A, C, A, C) \</span></div>
-<div class="line"><a name="l00260"></a><span class="lineno">  260</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, A, C, B, A) \</span></div>
-<div class="line"><a name="l00261"></a><span class="lineno">  261</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, A, C, B, B) \</span></div>
-<div class="line"><a name="l00262"></a><span class="lineno">  262</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, A, C, B, C) \</span></div>
-<div class="line"><a name="l00263"></a><span class="lineno">  263</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, A, C, C, A) \</span></div>
-<div class="line"><a name="l00264"></a><span class="lineno">  264</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, A, C, C, B) \</span></div>
-<div class="line"><a name="l00265"></a><span class="lineno">  265</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, A, C, C, C) \</span></div>
-<div class="line"><a name="l00266"></a><span class="lineno">  266</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, B, A, A, A) \</span></div>
-<div class="line"><a name="l00267"></a><span class="lineno">  267</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, B, A, A, B) \</span></div>
-<div class="line"><a name="l00268"></a><span class="lineno">  268</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, B, A, A, C) \</span></div>
-<div class="line"><a name="l00269"></a><span class="lineno">  269</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, B, A, B, A) \</span></div>
-<div class="line"><a name="l00270"></a><span class="lineno">  270</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, B, A, B, B) \</span></div>
-<div class="line"><a name="l00271"></a><span class="lineno">  271</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, B, A, B, C) \</span></div>
-<div class="line"><a name="l00272"></a><span class="lineno">  272</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, B, A, C, A) \</span></div>
-<div class="line"><a name="l00273"></a><span class="lineno">  273</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, B, A, C, B) \</span></div>
-<div class="line"><a name="l00274"></a><span class="lineno">  274</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, B, A, C, C) \</span></div>
-<div class="line"><a name="l00275"></a><span class="lineno">  275</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, B, B, A, A) \</span></div>
-<div class="line"><a name="l00276"></a><span class="lineno">  276</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, B, B, A, B) \</span></div>
-<div class="line"><a name="l00277"></a><span class="lineno">  277</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, B, B, A, C) \</span></div>
-<div class="line"><a name="l00278"></a><span class="lineno">  278</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, B, B, B, A) \</span></div>
-<div class="line"><a name="l00279"></a><span class="lineno">  279</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, B, B, B, B) \</span></div>
-<div class="line"><a name="l00280"></a><span class="lineno">  280</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, B, B, B, C) \</span></div>
-<div class="line"><a name="l00281"></a><span class="lineno">  281</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, B, B, C, A) \</span></div>
-<div class="line"><a name="l00282"></a><span class="lineno">  282</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, B, B, C, B) \</span></div>
-<div class="line"><a name="l00283"></a><span class="lineno">  283</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, B, B, C, C) \</span></div>
-<div class="line"><a name="l00284"></a><span class="lineno">  284</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, B, C, A, A) \</span></div>
-<div class="line"><a name="l00285"></a><span class="lineno">  285</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, B, C, A, B) \</span></div>
-<div class="line"><a name="l00286"></a><span class="lineno">  286</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, B, C, A, C) \</span></div>
-<div class="line"><a name="l00287"></a><span class="lineno">  287</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, B, C, B, A) \</span></div>
-<div class="line"><a name="l00288"></a><span class="lineno">  288</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, B, C, B, B) \</span></div>
-<div class="line"><a name="l00289"></a><span class="lineno">  289</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, B, C, B, C) \</span></div>
-<div class="line"><a name="l00290"></a><span class="lineno">  290</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, B, C, C, A) \</span></div>
-<div class="line"><a name="l00291"></a><span class="lineno">  291</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, B, C, C, B) \</span></div>
-<div class="line"><a name="l00292"></a><span class="lineno">  292</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, B, C, C, C) \</span></div>
-<div class="line"><a name="l00293"></a><span class="lineno">  293</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, C, A, A, A) \</span></div>
-<div class="line"><a name="l00294"></a><span class="lineno">  294</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, C, A, A, B) \</span></div>
-<div class="line"><a name="l00295"></a><span class="lineno">  295</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, C, A, A, C) \</span></div>
-<div class="line"><a name="l00296"></a><span class="lineno">  296</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, C, A, B, A) \</span></div>
-<div class="line"><a name="l00297"></a><span class="lineno">  297</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, C, A, B, B) \</span></div>
-<div class="line"><a name="l00298"></a><span class="lineno">  298</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, C, A, B, C) \</span></div>
-<div class="line"><a name="l00299"></a><span class="lineno">  299</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, C, A, C, A) \</span></div>
-<div class="line"><a name="l00300"></a><span class="lineno">  300</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, C, A, C, B) \</span></div>
-<div class="line"><a name="l00301"></a><span class="lineno">  301</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, C, A, C, C) \</span></div>
-<div class="line"><a name="l00302"></a><span class="lineno">  302</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, C, B, A, A) \</span></div>
-<div class="line"><a name="l00303"></a><span class="lineno">  303</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, C, B, A, B) \</span></div>
-<div class="line"><a name="l00304"></a><span class="lineno">  304</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, C, B, A, C) \</span></div>
-<div class="line"><a name="l00305"></a><span class="lineno">  305</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, C, B, B, A) \</span></div>
-<div class="line"><a name="l00306"></a><span class="lineno">  306</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, C, B, B, B) \</span></div>
-<div class="line"><a name="l00307"></a><span class="lineno">  307</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, C, B, B, C) \</span></div>
-<div class="line"><a name="l00308"></a><span class="lineno">  308</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, C, B, C, A) \</span></div>
-<div class="line"><a name="l00309"></a><span class="lineno">  309</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, C, B, C, B) \</span></div>
-<div class="line"><a name="l00310"></a><span class="lineno">  310</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, C, B, C, C) \</span></div>
-<div class="line"><a name="l00311"></a><span class="lineno">  311</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, C, C, A, A) \</span></div>
-<div class="line"><a name="l00312"></a><span class="lineno">  312</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, C, C, A, B) \</span></div>
-<div class="line"><a name="l00313"></a><span class="lineno">  313</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, C, C, A, C) \</span></div>
-<div class="line"><a name="l00314"></a><span class="lineno">  314</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, C, C, B, A) \</span></div>
-<div class="line"><a name="l00315"></a><span class="lineno">  315</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, C, C, B, B) \</span></div>
-<div class="line"><a name="l00316"></a><span class="lineno">  316</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, C, C, B, C) \</span></div>
-<div class="line"><a name="l00317"></a><span class="lineno">  317</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, C, C, C, A) \</span></div>
-<div class="line"><a name="l00318"></a><span class="lineno">  318</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, C, C, C, B) \</span></div>
-<div class="line"><a name="l00319"></a><span class="lineno">  319</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, C, C, C, C)</span></div>
-<div class="line"><a name="l00320"></a><span class="lineno">  320</span>&#160;</div>
-<div class="line"><a name="l00321"></a><span class="lineno">  321</span>&#160;<span class="preprocessor">#define GLM_SWIZZLE_GEN_VEC_FROM_VEC3_COMP(T, P, A, B, C) \</span></div>
-<div class="line"><a name="l00322"></a><span class="lineno">  322</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC2_FROM_VEC3_SWIZZLE(T, P, A, B, C) \</span></div>
-<div class="line"><a name="l00323"></a><span class="lineno">  323</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_FROM_VEC3_SWIZZLE(T, P, A, B, C) \</span></div>
-<div class="line"><a name="l00324"></a><span class="lineno">  324</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_FROM_VEC3_SWIZZLE(T, P, A, B, C)</span></div>
-<div class="line"><a name="l00325"></a><span class="lineno">  325</span>&#160;</div>
-<div class="line"><a name="l00326"></a><span class="lineno">  326</span>&#160;<span class="preprocessor">#define GLM_SWIZZLE_GEN_VEC_FROM_VEC3(T, P) \</span></div>
-<div class="line"><a name="l00327"></a><span class="lineno">  327</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC_FROM_VEC3_COMP(T, P, x, y, z) \</span></div>
-<div class="line"><a name="l00328"></a><span class="lineno">  328</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC_FROM_VEC3_COMP(T, P, r, g, b) \</span></div>
-<div class="line"><a name="l00329"></a><span class="lineno">  329</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC_FROM_VEC3_COMP(T, P, s, t, p)</span></div>
-<div class="line"><a name="l00330"></a><span class="lineno">  330</span>&#160;</div>
-<div class="line"><a name="l00331"></a><span class="lineno">  331</span>&#160;<span class="preprocessor">#define GLM_SWIZZLE_GEN_VEC2_FROM_VEC4_SWIZZLE(T, P, A, B, C, D) \</span></div>
-<div class="line"><a name="l00332"></a><span class="lineno">  332</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC2_ENTRY(T, P, const, A, A) \</span></div>
-<div class="line"><a name="l00333"></a><span class="lineno">  333</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC2_ENTRY(T, P, const, A, B) \</span></div>
-<div class="line"><a name="l00334"></a><span class="lineno">  334</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC2_ENTRY(T, P, const, A, C) \</span></div>
-<div class="line"><a name="l00335"></a><span class="lineno">  335</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC2_ENTRY(T, P, const, A, D) \</span></div>
-<div class="line"><a name="l00336"></a><span class="lineno">  336</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC2_ENTRY(T, P, const, B, A) \</span></div>
-<div class="line"><a name="l00337"></a><span class="lineno">  337</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC2_ENTRY(T, P, const, B, B) \</span></div>
-<div class="line"><a name="l00338"></a><span class="lineno">  338</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC2_ENTRY(T, P, const, B, C) \</span></div>
-<div class="line"><a name="l00339"></a><span class="lineno">  339</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC2_ENTRY(T, P, const, B, D) \</span></div>
-<div class="line"><a name="l00340"></a><span class="lineno">  340</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC2_ENTRY(T, P, const, C, A) \</span></div>
-<div class="line"><a name="l00341"></a><span class="lineno">  341</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC2_ENTRY(T, P, const, C, B) \</span></div>
-<div class="line"><a name="l00342"></a><span class="lineno">  342</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC2_ENTRY(T, P, const, C, C) \</span></div>
-<div class="line"><a name="l00343"></a><span class="lineno">  343</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC2_ENTRY(T, P, const, C, D) \</span></div>
-<div class="line"><a name="l00344"></a><span class="lineno">  344</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC2_ENTRY(T, P, const, D, A) \</span></div>
-<div class="line"><a name="l00345"></a><span class="lineno">  345</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC2_ENTRY(T, P, const, D, B) \</span></div>
-<div class="line"><a name="l00346"></a><span class="lineno">  346</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC2_ENTRY(T, P, const, D, C) \</span></div>
-<div class="line"><a name="l00347"></a><span class="lineno">  347</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC2_ENTRY(T, P, const, D, D)</span></div>
-<div class="line"><a name="l00348"></a><span class="lineno">  348</span>&#160;</div>
-<div class="line"><a name="l00349"></a><span class="lineno">  349</span>&#160;<span class="preprocessor">#define GLM_SWIZZLE_GEN_VEC3_FROM_VEC4_SWIZZLE(T, P, A, B, C, D) \</span></div>
-<div class="line"><a name="l00350"></a><span class="lineno">  350</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, const, A, A, A) \</span></div>
-<div class="line"><a name="l00351"></a><span class="lineno">  351</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, const, A, A, B) \</span></div>
-<div class="line"><a name="l00352"></a><span class="lineno">  352</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, const, A, A, C) \</span></div>
-<div class="line"><a name="l00353"></a><span class="lineno">  353</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, const, A, A, D) \</span></div>
-<div class="line"><a name="l00354"></a><span class="lineno">  354</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, const, A, B, A) \</span></div>
-<div class="line"><a name="l00355"></a><span class="lineno">  355</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, const, A, B, B) \</span></div>
-<div class="line"><a name="l00356"></a><span class="lineno">  356</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, const, A, B, C) \</span></div>
-<div class="line"><a name="l00357"></a><span class="lineno">  357</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, const, A, B, D) \</span></div>
-<div class="line"><a name="l00358"></a><span class="lineno">  358</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, const, A, C, A) \</span></div>
-<div class="line"><a name="l00359"></a><span class="lineno">  359</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, const, A, C, B) \</span></div>
-<div class="line"><a name="l00360"></a><span class="lineno">  360</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, const, A, C, C) \</span></div>
-<div class="line"><a name="l00361"></a><span class="lineno">  361</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, const, A, C, D) \</span></div>
-<div class="line"><a name="l00362"></a><span class="lineno">  362</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, const, A, D, A) \</span></div>
-<div class="line"><a name="l00363"></a><span class="lineno">  363</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, const, A, D, B) \</span></div>
-<div class="line"><a name="l00364"></a><span class="lineno">  364</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, const, A, D, C) \</span></div>
-<div class="line"><a name="l00365"></a><span class="lineno">  365</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, const, A, D, D) \</span></div>
-<div class="line"><a name="l00366"></a><span class="lineno">  366</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, const, B, A, A) \</span></div>
-<div class="line"><a name="l00367"></a><span class="lineno">  367</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, const, B, A, B) \</span></div>
-<div class="line"><a name="l00368"></a><span class="lineno">  368</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, const, B, A, C) \</span></div>
-<div class="line"><a name="l00369"></a><span class="lineno">  369</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, const, B, A, D) \</span></div>
-<div class="line"><a name="l00370"></a><span class="lineno">  370</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, const, B, B, A) \</span></div>
-<div class="line"><a name="l00371"></a><span class="lineno">  371</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, const, B, B, B) \</span></div>
-<div class="line"><a name="l00372"></a><span class="lineno">  372</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, const, B, B, C) \</span></div>
-<div class="line"><a name="l00373"></a><span class="lineno">  373</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, const, B, B, D) \</span></div>
-<div class="line"><a name="l00374"></a><span class="lineno">  374</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, const, B, C, A) \</span></div>
-<div class="line"><a name="l00375"></a><span class="lineno">  375</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, const, B, C, B) \</span></div>
-<div class="line"><a name="l00376"></a><span class="lineno">  376</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, const, B, C, C) \</span></div>
-<div class="line"><a name="l00377"></a><span class="lineno">  377</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, const, B, C, D) \</span></div>
-<div class="line"><a name="l00378"></a><span class="lineno">  378</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, const, B, D, A) \</span></div>
-<div class="line"><a name="l00379"></a><span class="lineno">  379</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, const, B, D, B) \</span></div>
-<div class="line"><a name="l00380"></a><span class="lineno">  380</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, const, B, D, C) \</span></div>
-<div class="line"><a name="l00381"></a><span class="lineno">  381</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, const, B, D, D) \</span></div>
-<div class="line"><a name="l00382"></a><span class="lineno">  382</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, const, C, A, A) \</span></div>
-<div class="line"><a name="l00383"></a><span class="lineno">  383</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, const, C, A, B) \</span></div>
-<div class="line"><a name="l00384"></a><span class="lineno">  384</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, const, C, A, C) \</span></div>
-<div class="line"><a name="l00385"></a><span class="lineno">  385</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, const, C, A, D) \</span></div>
-<div class="line"><a name="l00386"></a><span class="lineno">  386</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, const, C, B, A) \</span></div>
-<div class="line"><a name="l00387"></a><span class="lineno">  387</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, const, C, B, B) \</span></div>
-<div class="line"><a name="l00388"></a><span class="lineno">  388</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, const, C, B, C) \</span></div>
-<div class="line"><a name="l00389"></a><span class="lineno">  389</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, const, C, B, D) \</span></div>
-<div class="line"><a name="l00390"></a><span class="lineno">  390</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, const, C, C, A) \</span></div>
-<div class="line"><a name="l00391"></a><span class="lineno">  391</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, const, C, C, B) \</span></div>
-<div class="line"><a name="l00392"></a><span class="lineno">  392</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, const, C, C, C) \</span></div>
-<div class="line"><a name="l00393"></a><span class="lineno">  393</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, const, C, C, D) \</span></div>
-<div class="line"><a name="l00394"></a><span class="lineno">  394</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, const, C, D, A) \</span></div>
-<div class="line"><a name="l00395"></a><span class="lineno">  395</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, const, C, D, B) \</span></div>
-<div class="line"><a name="l00396"></a><span class="lineno">  396</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, const, C, D, C) \</span></div>
-<div class="line"><a name="l00397"></a><span class="lineno">  397</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, const, C, D, D) \</span></div>
-<div class="line"><a name="l00398"></a><span class="lineno">  398</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, const, D, A, A) \</span></div>
-<div class="line"><a name="l00399"></a><span class="lineno">  399</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, const, D, A, B) \</span></div>
-<div class="line"><a name="l00400"></a><span class="lineno">  400</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, const, D, A, C) \</span></div>
-<div class="line"><a name="l00401"></a><span class="lineno">  401</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, const, D, A, D) \</span></div>
-<div class="line"><a name="l00402"></a><span class="lineno">  402</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, const, D, B, A) \</span></div>
-<div class="line"><a name="l00403"></a><span class="lineno">  403</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, const, D, B, B) \</span></div>
-<div class="line"><a name="l00404"></a><span class="lineno">  404</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, const, D, B, C) \</span></div>
-<div class="line"><a name="l00405"></a><span class="lineno">  405</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, const, D, B, D) \</span></div>
-<div class="line"><a name="l00406"></a><span class="lineno">  406</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, const, D, C, A) \</span></div>
-<div class="line"><a name="l00407"></a><span class="lineno">  407</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, const, D, C, B) \</span></div>
-<div class="line"><a name="l00408"></a><span class="lineno">  408</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, const, D, C, C) \</span></div>
-<div class="line"><a name="l00409"></a><span class="lineno">  409</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, const, D, C, D) \</span></div>
-<div class="line"><a name="l00410"></a><span class="lineno">  410</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, const, D, D, A) \</span></div>
-<div class="line"><a name="l00411"></a><span class="lineno">  411</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, const, D, D, B) \</span></div>
-<div class="line"><a name="l00412"></a><span class="lineno">  412</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, const, D, D, C) \</span></div>
-<div class="line"><a name="l00413"></a><span class="lineno">  413</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, const, D, D, D)</span></div>
-<div class="line"><a name="l00414"></a><span class="lineno">  414</span>&#160;</div>
-<div class="line"><a name="l00415"></a><span class="lineno">  415</span>&#160;<span class="preprocessor">#define GLM_SWIZZLE_GEN_VEC4_FROM_VEC4_SWIZZLE(T, P, A, B, C, D) \</span></div>
-<div class="line"><a name="l00416"></a><span class="lineno">  416</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, A, A, A, A) \</span></div>
-<div class="line"><a name="l00417"></a><span class="lineno">  417</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, A, A, A, B) \</span></div>
-<div class="line"><a name="l00418"></a><span class="lineno">  418</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, A, A, A, C) \</span></div>
-<div class="line"><a name="l00419"></a><span class="lineno">  419</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, A, A, A, D) \</span></div>
-<div class="line"><a name="l00420"></a><span class="lineno">  420</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, A, A, B, A) \</span></div>
-<div class="line"><a name="l00421"></a><span class="lineno">  421</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, A, A, B, B) \</span></div>
-<div class="line"><a name="l00422"></a><span class="lineno">  422</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, A, A, B, C) \</span></div>
-<div class="line"><a name="l00423"></a><span class="lineno">  423</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, A, A, B, D) \</span></div>
-<div class="line"><a name="l00424"></a><span class="lineno">  424</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, A, A, C, A) \</span></div>
-<div class="line"><a name="l00425"></a><span class="lineno">  425</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, A, A, C, B) \</span></div>
-<div class="line"><a name="l00426"></a><span class="lineno">  426</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, A, A, C, C) \</span></div>
-<div class="line"><a name="l00427"></a><span class="lineno">  427</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, A, A, C, D) \</span></div>
-<div class="line"><a name="l00428"></a><span class="lineno">  428</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, A, A, D, A) \</span></div>
-<div class="line"><a name="l00429"></a><span class="lineno">  429</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, A, A, D, B) \</span></div>
-<div class="line"><a name="l00430"></a><span class="lineno">  430</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, A, A, D, C) \</span></div>
-<div class="line"><a name="l00431"></a><span class="lineno">  431</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, A, A, D, D) \</span></div>
-<div class="line"><a name="l00432"></a><span class="lineno">  432</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, A, B, A, A) \</span></div>
-<div class="line"><a name="l00433"></a><span class="lineno">  433</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, A, B, A, B) \</span></div>
-<div class="line"><a name="l00434"></a><span class="lineno">  434</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, A, B, A, C) \</span></div>
-<div class="line"><a name="l00435"></a><span class="lineno">  435</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, A, B, A, D) \</span></div>
-<div class="line"><a name="l00436"></a><span class="lineno">  436</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, A, B, B, A) \</span></div>
-<div class="line"><a name="l00437"></a><span class="lineno">  437</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, A, B, B, B) \</span></div>
-<div class="line"><a name="l00438"></a><span class="lineno">  438</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, A, B, B, C) \</span></div>
-<div class="line"><a name="l00439"></a><span class="lineno">  439</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, A, B, B, D) \</span></div>
-<div class="line"><a name="l00440"></a><span class="lineno">  440</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, A, B, C, A) \</span></div>
-<div class="line"><a name="l00441"></a><span class="lineno">  441</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, A, B, C, B) \</span></div>
-<div class="line"><a name="l00442"></a><span class="lineno">  442</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, A, B, C, C) \</span></div>
-<div class="line"><a name="l00443"></a><span class="lineno">  443</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, A, B, C, D) \</span></div>
-<div class="line"><a name="l00444"></a><span class="lineno">  444</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, A, B, D, A) \</span></div>
-<div class="line"><a name="l00445"></a><span class="lineno">  445</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, A, B, D, B) \</span></div>
-<div class="line"><a name="l00446"></a><span class="lineno">  446</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, A, B, D, C) \</span></div>
-<div class="line"><a name="l00447"></a><span class="lineno">  447</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, A, B, D, D) \</span></div>
-<div class="line"><a name="l00448"></a><span class="lineno">  448</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, A, C, A, A) \</span></div>
-<div class="line"><a name="l00449"></a><span class="lineno">  449</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, A, C, A, B) \</span></div>
-<div class="line"><a name="l00450"></a><span class="lineno">  450</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, A, C, A, C) \</span></div>
-<div class="line"><a name="l00451"></a><span class="lineno">  451</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, A, C, A, D) \</span></div>
-<div class="line"><a name="l00452"></a><span class="lineno">  452</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, A, C, B, A) \</span></div>
-<div class="line"><a name="l00453"></a><span class="lineno">  453</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, A, C, B, B) \</span></div>
-<div class="line"><a name="l00454"></a><span class="lineno">  454</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, A, C, B, C) \</span></div>
-<div class="line"><a name="l00455"></a><span class="lineno">  455</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, A, C, B, D) \</span></div>
-<div class="line"><a name="l00456"></a><span class="lineno">  456</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, A, C, C, A) \</span></div>
-<div class="line"><a name="l00457"></a><span class="lineno">  457</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, A, C, C, B) \</span></div>
-<div class="line"><a name="l00458"></a><span class="lineno">  458</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, A, C, C, C) \</span></div>
-<div class="line"><a name="l00459"></a><span class="lineno">  459</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, A, C, C, D) \</span></div>
-<div class="line"><a name="l00460"></a><span class="lineno">  460</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, A, C, D, A) \</span></div>
-<div class="line"><a name="l00461"></a><span class="lineno">  461</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, A, C, D, B) \</span></div>
-<div class="line"><a name="l00462"></a><span class="lineno">  462</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, A, C, D, C) \</span></div>
-<div class="line"><a name="l00463"></a><span class="lineno">  463</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, A, C, D, D) \</span></div>
-<div class="line"><a name="l00464"></a><span class="lineno">  464</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, A, D, A, A) \</span></div>
-<div class="line"><a name="l00465"></a><span class="lineno">  465</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, A, D, A, B) \</span></div>
-<div class="line"><a name="l00466"></a><span class="lineno">  466</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, A, D, A, C) \</span></div>
-<div class="line"><a name="l00467"></a><span class="lineno">  467</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, A, D, A, D) \</span></div>
-<div class="line"><a name="l00468"></a><span class="lineno">  468</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, A, D, B, A) \</span></div>
-<div class="line"><a name="l00469"></a><span class="lineno">  469</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, A, D, B, B) \</span></div>
-<div class="line"><a name="l00470"></a><span class="lineno">  470</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, A, D, B, C) \</span></div>
-<div class="line"><a name="l00471"></a><span class="lineno">  471</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, A, D, B, D) \</span></div>
-<div class="line"><a name="l00472"></a><span class="lineno">  472</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, A, D, C, A) \</span></div>
-<div class="line"><a name="l00473"></a><span class="lineno">  473</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, A, D, C, B) \</span></div>
-<div class="line"><a name="l00474"></a><span class="lineno">  474</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, A, D, C, C) \</span></div>
-<div class="line"><a name="l00475"></a><span class="lineno">  475</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, A, D, C, D) \</span></div>
-<div class="line"><a name="l00476"></a><span class="lineno">  476</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, A, D, D, A) \</span></div>
-<div class="line"><a name="l00477"></a><span class="lineno">  477</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, A, D, D, B) \</span></div>
-<div class="line"><a name="l00478"></a><span class="lineno">  478</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, A, D, D, C) \</span></div>
-<div class="line"><a name="l00479"></a><span class="lineno">  479</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, A, D, D, D) \</span></div>
-<div class="line"><a name="l00480"></a><span class="lineno">  480</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, B, A, A, A) \</span></div>
-<div class="line"><a name="l00481"></a><span class="lineno">  481</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, B, A, A, B) \</span></div>
-<div class="line"><a name="l00482"></a><span class="lineno">  482</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, B, A, A, C) \</span></div>
-<div class="line"><a name="l00483"></a><span class="lineno">  483</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, B, A, A, D) \</span></div>
-<div class="line"><a name="l00484"></a><span class="lineno">  484</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, B, A, B, A) \</span></div>
-<div class="line"><a name="l00485"></a><span class="lineno">  485</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, B, A, B, B) \</span></div>
-<div class="line"><a name="l00486"></a><span class="lineno">  486</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, B, A, B, C) \</span></div>
-<div class="line"><a name="l00487"></a><span class="lineno">  487</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, B, A, B, D) \</span></div>
-<div class="line"><a name="l00488"></a><span class="lineno">  488</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, B, A, C, A) \</span></div>
-<div class="line"><a name="l00489"></a><span class="lineno">  489</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, B, A, C, B) \</span></div>
-<div class="line"><a name="l00490"></a><span class="lineno">  490</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, B, A, C, C) \</span></div>
-<div class="line"><a name="l00491"></a><span class="lineno">  491</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, B, A, C, D) \</span></div>
-<div class="line"><a name="l00492"></a><span class="lineno">  492</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, B, A, D, A) \</span></div>
-<div class="line"><a name="l00493"></a><span class="lineno">  493</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, B, A, D, B) \</span></div>
-<div class="line"><a name="l00494"></a><span class="lineno">  494</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, B, A, D, C) \</span></div>
-<div class="line"><a name="l00495"></a><span class="lineno">  495</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, B, A, D, D) \</span></div>
-<div class="line"><a name="l00496"></a><span class="lineno">  496</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, B, B, A, A) \</span></div>
-<div class="line"><a name="l00497"></a><span class="lineno">  497</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, B, B, A, B) \</span></div>
-<div class="line"><a name="l00498"></a><span class="lineno">  498</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, B, B, A, C) \</span></div>
-<div class="line"><a name="l00499"></a><span class="lineno">  499</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, B, B, A, D) \</span></div>
-<div class="line"><a name="l00500"></a><span class="lineno">  500</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, B, B, B, A) \</span></div>
-<div class="line"><a name="l00501"></a><span class="lineno">  501</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, B, B, B, B) \</span></div>
-<div class="line"><a name="l00502"></a><span class="lineno">  502</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, B, B, B, C) \</span></div>
-<div class="line"><a name="l00503"></a><span class="lineno">  503</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, B, B, B, D) \</span></div>
-<div class="line"><a name="l00504"></a><span class="lineno">  504</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, B, B, C, A) \</span></div>
-<div class="line"><a name="l00505"></a><span class="lineno">  505</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, B, B, C, B) \</span></div>
-<div class="line"><a name="l00506"></a><span class="lineno">  506</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, B, B, C, C) \</span></div>
-<div class="line"><a name="l00507"></a><span class="lineno">  507</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, B, B, C, D) \</span></div>
-<div class="line"><a name="l00508"></a><span class="lineno">  508</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, B, B, D, A) \</span></div>
-<div class="line"><a name="l00509"></a><span class="lineno">  509</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, B, B, D, B) \</span></div>
-<div class="line"><a name="l00510"></a><span class="lineno">  510</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, B, B, D, C) \</span></div>
-<div class="line"><a name="l00511"></a><span class="lineno">  511</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, B, B, D, D) \</span></div>
-<div class="line"><a name="l00512"></a><span class="lineno">  512</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, B, C, A, A) \</span></div>
-<div class="line"><a name="l00513"></a><span class="lineno">  513</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, B, C, A, B) \</span></div>
-<div class="line"><a name="l00514"></a><span class="lineno">  514</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, B, C, A, C) \</span></div>
-<div class="line"><a name="l00515"></a><span class="lineno">  515</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, B, C, A, D) \</span></div>
-<div class="line"><a name="l00516"></a><span class="lineno">  516</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, B, C, B, A) \</span></div>
-<div class="line"><a name="l00517"></a><span class="lineno">  517</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, B, C, B, B) \</span></div>
-<div class="line"><a name="l00518"></a><span class="lineno">  518</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, B, C, B, C) \</span></div>
-<div class="line"><a name="l00519"></a><span class="lineno">  519</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, B, C, B, D) \</span></div>
-<div class="line"><a name="l00520"></a><span class="lineno">  520</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, B, C, C, A) \</span></div>
-<div class="line"><a name="l00521"></a><span class="lineno">  521</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, B, C, C, B) \</span></div>
-<div class="line"><a name="l00522"></a><span class="lineno">  522</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, B, C, C, C) \</span></div>
-<div class="line"><a name="l00523"></a><span class="lineno">  523</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, B, C, C, D) \</span></div>
-<div class="line"><a name="l00524"></a><span class="lineno">  524</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, B, C, D, A) \</span></div>
-<div class="line"><a name="l00525"></a><span class="lineno">  525</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, B, C, D, B) \</span></div>
-<div class="line"><a name="l00526"></a><span class="lineno">  526</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, B, C, D, C) \</span></div>
-<div class="line"><a name="l00527"></a><span class="lineno">  527</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, B, C, D, D) \</span></div>
-<div class="line"><a name="l00528"></a><span class="lineno">  528</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, B, D, A, A) \</span></div>
-<div class="line"><a name="l00529"></a><span class="lineno">  529</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, B, D, A, B) \</span></div>
-<div class="line"><a name="l00530"></a><span class="lineno">  530</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, B, D, A, C) \</span></div>
-<div class="line"><a name="l00531"></a><span class="lineno">  531</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, B, D, A, D) \</span></div>
-<div class="line"><a name="l00532"></a><span class="lineno">  532</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, B, D, B, A) \</span></div>
-<div class="line"><a name="l00533"></a><span class="lineno">  533</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, B, D, B, B) \</span></div>
-<div class="line"><a name="l00534"></a><span class="lineno">  534</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, B, D, B, C) \</span></div>
-<div class="line"><a name="l00535"></a><span class="lineno">  535</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, B, D, B, D) \</span></div>
-<div class="line"><a name="l00536"></a><span class="lineno">  536</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, B, D, C, A) \</span></div>
-<div class="line"><a name="l00537"></a><span class="lineno">  537</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, B, D, C, B) \</span></div>
-<div class="line"><a name="l00538"></a><span class="lineno">  538</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, B, D, C, C) \</span></div>
-<div class="line"><a name="l00539"></a><span class="lineno">  539</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, B, D, C, D) \</span></div>
-<div class="line"><a name="l00540"></a><span class="lineno">  540</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, B, D, D, A) \</span></div>
-<div class="line"><a name="l00541"></a><span class="lineno">  541</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, B, D, D, B) \</span></div>
-<div class="line"><a name="l00542"></a><span class="lineno">  542</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, B, D, D, C) \</span></div>
-<div class="line"><a name="l00543"></a><span class="lineno">  543</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, B, D, D, D) \</span></div>
-<div class="line"><a name="l00544"></a><span class="lineno">  544</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, C, A, A, A) \</span></div>
-<div class="line"><a name="l00545"></a><span class="lineno">  545</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, C, A, A, B) \</span></div>
-<div class="line"><a name="l00546"></a><span class="lineno">  546</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, C, A, A, C) \</span></div>
-<div class="line"><a name="l00547"></a><span class="lineno">  547</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, C, A, A, D) \</span></div>
-<div class="line"><a name="l00548"></a><span class="lineno">  548</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, C, A, B, A) \</span></div>
-<div class="line"><a name="l00549"></a><span class="lineno">  549</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, C, A, B, B) \</span></div>
-<div class="line"><a name="l00550"></a><span class="lineno">  550</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, C, A, B, C) \</span></div>
-<div class="line"><a name="l00551"></a><span class="lineno">  551</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, C, A, B, D) \</span></div>
-<div class="line"><a name="l00552"></a><span class="lineno">  552</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, C, A, C, A) \</span></div>
-<div class="line"><a name="l00553"></a><span class="lineno">  553</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, C, A, C, B) \</span></div>
-<div class="line"><a name="l00554"></a><span class="lineno">  554</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, C, A, C, C) \</span></div>
-<div class="line"><a name="l00555"></a><span class="lineno">  555</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, C, A, C, D) \</span></div>
-<div class="line"><a name="l00556"></a><span class="lineno">  556</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, C, A, D, A) \</span></div>
-<div class="line"><a name="l00557"></a><span class="lineno">  557</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, C, A, D, B) \</span></div>
-<div class="line"><a name="l00558"></a><span class="lineno">  558</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, C, A, D, C) \</span></div>
-<div class="line"><a name="l00559"></a><span class="lineno">  559</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, C, A, D, D) \</span></div>
-<div class="line"><a name="l00560"></a><span class="lineno">  560</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, C, B, A, A) \</span></div>
-<div class="line"><a name="l00561"></a><span class="lineno">  561</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, C, B, A, B) \</span></div>
-<div class="line"><a name="l00562"></a><span class="lineno">  562</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, C, B, A, C) \</span></div>
-<div class="line"><a name="l00563"></a><span class="lineno">  563</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, C, B, A, D) \</span></div>
-<div class="line"><a name="l00564"></a><span class="lineno">  564</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, C, B, B, A) \</span></div>
-<div class="line"><a name="l00565"></a><span class="lineno">  565</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, C, B, B, B) \</span></div>
-<div class="line"><a name="l00566"></a><span class="lineno">  566</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, C, B, B, C) \</span></div>
-<div class="line"><a name="l00567"></a><span class="lineno">  567</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, C, B, B, D) \</span></div>
-<div class="line"><a name="l00568"></a><span class="lineno">  568</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, C, B, C, A) \</span></div>
-<div class="line"><a name="l00569"></a><span class="lineno">  569</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, C, B, C, B) \</span></div>
-<div class="line"><a name="l00570"></a><span class="lineno">  570</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, C, B, C, C) \</span></div>
-<div class="line"><a name="l00571"></a><span class="lineno">  571</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, C, B, C, D) \</span></div>
-<div class="line"><a name="l00572"></a><span class="lineno">  572</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, C, B, D, A) \</span></div>
-<div class="line"><a name="l00573"></a><span class="lineno">  573</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, C, B, D, B) \</span></div>
-<div class="line"><a name="l00574"></a><span class="lineno">  574</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, C, B, D, C) \</span></div>
-<div class="line"><a name="l00575"></a><span class="lineno">  575</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, C, B, D, D) \</span></div>
-<div class="line"><a name="l00576"></a><span class="lineno">  576</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, C, C, A, A) \</span></div>
-<div class="line"><a name="l00577"></a><span class="lineno">  577</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, C, C, A, B) \</span></div>
-<div class="line"><a name="l00578"></a><span class="lineno">  578</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, C, C, A, C) \</span></div>
-<div class="line"><a name="l00579"></a><span class="lineno">  579</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, C, C, A, D) \</span></div>
-<div class="line"><a name="l00580"></a><span class="lineno">  580</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, C, C, B, A) \</span></div>
-<div class="line"><a name="l00581"></a><span class="lineno">  581</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, C, C, B, B) \</span></div>
-<div class="line"><a name="l00582"></a><span class="lineno">  582</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, C, C, B, C) \</span></div>
-<div class="line"><a name="l00583"></a><span class="lineno">  583</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, C, C, B, D) \</span></div>
-<div class="line"><a name="l00584"></a><span class="lineno">  584</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, C, C, C, A) \</span></div>
-<div class="line"><a name="l00585"></a><span class="lineno">  585</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, C, C, C, B) \</span></div>
-<div class="line"><a name="l00586"></a><span class="lineno">  586</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, C, C, C, C) \</span></div>
-<div class="line"><a name="l00587"></a><span class="lineno">  587</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, C, C, C, D) \</span></div>
-<div class="line"><a name="l00588"></a><span class="lineno">  588</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, C, C, D, A) \</span></div>
-<div class="line"><a name="l00589"></a><span class="lineno">  589</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, C, C, D, B) \</span></div>
-<div class="line"><a name="l00590"></a><span class="lineno">  590</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, C, C, D, C) \</span></div>
-<div class="line"><a name="l00591"></a><span class="lineno">  591</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, C, C, D, D) \</span></div>
-<div class="line"><a name="l00592"></a><span class="lineno">  592</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, C, D, A, A) \</span></div>
-<div class="line"><a name="l00593"></a><span class="lineno">  593</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, C, D, A, B) \</span></div>
-<div class="line"><a name="l00594"></a><span class="lineno">  594</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, C, D, A, C) \</span></div>
-<div class="line"><a name="l00595"></a><span class="lineno">  595</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, C, D, A, D) \</span></div>
-<div class="line"><a name="l00596"></a><span class="lineno">  596</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, C, D, B, A) \</span></div>
-<div class="line"><a name="l00597"></a><span class="lineno">  597</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, C, D, B, B) \</span></div>
-<div class="line"><a name="l00598"></a><span class="lineno">  598</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, C, D, B, C) \</span></div>
-<div class="line"><a name="l00599"></a><span class="lineno">  599</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, C, D, B, D) \</span></div>
-<div class="line"><a name="l00600"></a><span class="lineno">  600</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, C, D, C, A) \</span></div>
-<div class="line"><a name="l00601"></a><span class="lineno">  601</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, C, D, C, B) \</span></div>
-<div class="line"><a name="l00602"></a><span class="lineno">  602</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, C, D, C, C) \</span></div>
-<div class="line"><a name="l00603"></a><span class="lineno">  603</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, C, D, C, D) \</span></div>
-<div class="line"><a name="l00604"></a><span class="lineno">  604</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, C, D, D, A) \</span></div>
-<div class="line"><a name="l00605"></a><span class="lineno">  605</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, C, D, D, B) \</span></div>
-<div class="line"><a name="l00606"></a><span class="lineno">  606</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, C, D, D, C) \</span></div>
-<div class="line"><a name="l00607"></a><span class="lineno">  607</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, C, D, D, D) \</span></div>
-<div class="line"><a name="l00608"></a><span class="lineno">  608</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, D, A, A, A) \</span></div>
-<div class="line"><a name="l00609"></a><span class="lineno">  609</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, D, A, A, B) \</span></div>
-<div class="line"><a name="l00610"></a><span class="lineno">  610</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, D, A, A, C) \</span></div>
-<div class="line"><a name="l00611"></a><span class="lineno">  611</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, D, A, A, D) \</span></div>
-<div class="line"><a name="l00612"></a><span class="lineno">  612</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, D, A, B, A) \</span></div>
-<div class="line"><a name="l00613"></a><span class="lineno">  613</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, D, A, B, B) \</span></div>
-<div class="line"><a name="l00614"></a><span class="lineno">  614</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, D, A, B, C) \</span></div>
-<div class="line"><a name="l00615"></a><span class="lineno">  615</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, D, A, B, D) \</span></div>
-<div class="line"><a name="l00616"></a><span class="lineno">  616</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, D, A, C, A) \</span></div>
-<div class="line"><a name="l00617"></a><span class="lineno">  617</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, D, A, C, B) \</span></div>
-<div class="line"><a name="l00618"></a><span class="lineno">  618</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, D, A, C, C) \</span></div>
-<div class="line"><a name="l00619"></a><span class="lineno">  619</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, D, A, C, D) \</span></div>
-<div class="line"><a name="l00620"></a><span class="lineno">  620</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, D, A, D, A) \</span></div>
-<div class="line"><a name="l00621"></a><span class="lineno">  621</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, D, A, D, B) \</span></div>
-<div class="line"><a name="l00622"></a><span class="lineno">  622</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, D, A, D, C) \</span></div>
-<div class="line"><a name="l00623"></a><span class="lineno">  623</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, D, A, D, D) \</span></div>
-<div class="line"><a name="l00624"></a><span class="lineno">  624</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, D, B, A, A) \</span></div>
-<div class="line"><a name="l00625"></a><span class="lineno">  625</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, D, B, A, B) \</span></div>
-<div class="line"><a name="l00626"></a><span class="lineno">  626</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, D, B, A, C) \</span></div>
-<div class="line"><a name="l00627"></a><span class="lineno">  627</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, D, B, A, D) \</span></div>
-<div class="line"><a name="l00628"></a><span class="lineno">  628</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, D, B, B, A) \</span></div>
-<div class="line"><a name="l00629"></a><span class="lineno">  629</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, D, B, B, B) \</span></div>
-<div class="line"><a name="l00630"></a><span class="lineno">  630</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, D, B, B, C) \</span></div>
-<div class="line"><a name="l00631"></a><span class="lineno">  631</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, D, B, B, D) \</span></div>
-<div class="line"><a name="l00632"></a><span class="lineno">  632</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, D, B, C, A) \</span></div>
-<div class="line"><a name="l00633"></a><span class="lineno">  633</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, D, B, C, B) \</span></div>
-<div class="line"><a name="l00634"></a><span class="lineno">  634</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, D, B, C, C) \</span></div>
-<div class="line"><a name="l00635"></a><span class="lineno">  635</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, D, B, C, D) \</span></div>
-<div class="line"><a name="l00636"></a><span class="lineno">  636</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, D, B, D, A) \</span></div>
-<div class="line"><a name="l00637"></a><span class="lineno">  637</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, D, B, D, B) \</span></div>
-<div class="line"><a name="l00638"></a><span class="lineno">  638</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, D, B, D, C) \</span></div>
-<div class="line"><a name="l00639"></a><span class="lineno">  639</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, D, B, D, D) \</span></div>
-<div class="line"><a name="l00640"></a><span class="lineno">  640</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, D, C, A, A) \</span></div>
-<div class="line"><a name="l00641"></a><span class="lineno">  641</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, D, C, A, B) \</span></div>
-<div class="line"><a name="l00642"></a><span class="lineno">  642</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, D, C, A, C) \</span></div>
-<div class="line"><a name="l00643"></a><span class="lineno">  643</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, D, C, A, D) \</span></div>
-<div class="line"><a name="l00644"></a><span class="lineno">  644</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, D, C, B, A) \</span></div>
-<div class="line"><a name="l00645"></a><span class="lineno">  645</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, D, C, B, B) \</span></div>
-<div class="line"><a name="l00646"></a><span class="lineno">  646</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, D, C, B, C) \</span></div>
-<div class="line"><a name="l00647"></a><span class="lineno">  647</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, D, C, B, D) \</span></div>
-<div class="line"><a name="l00648"></a><span class="lineno">  648</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, D, C, C, A) \</span></div>
-<div class="line"><a name="l00649"></a><span class="lineno">  649</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, D, C, C, B) \</span></div>
-<div class="line"><a name="l00650"></a><span class="lineno">  650</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, D, C, C, C) \</span></div>
-<div class="line"><a name="l00651"></a><span class="lineno">  651</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, D, C, C, D) \</span></div>
-<div class="line"><a name="l00652"></a><span class="lineno">  652</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, D, C, D, A) \</span></div>
-<div class="line"><a name="l00653"></a><span class="lineno">  653</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, D, C, D, B) \</span></div>
-<div class="line"><a name="l00654"></a><span class="lineno">  654</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, D, C, D, C) \</span></div>
-<div class="line"><a name="l00655"></a><span class="lineno">  655</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, D, C, D, D) \</span></div>
-<div class="line"><a name="l00656"></a><span class="lineno">  656</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, D, D, A, A) \</span></div>
-<div class="line"><a name="l00657"></a><span class="lineno">  657</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, D, D, A, B) \</span></div>
-<div class="line"><a name="l00658"></a><span class="lineno">  658</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, D, D, A, C) \</span></div>
-<div class="line"><a name="l00659"></a><span class="lineno">  659</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, D, D, A, D) \</span></div>
-<div class="line"><a name="l00660"></a><span class="lineno">  660</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, D, D, B, A) \</span></div>
-<div class="line"><a name="l00661"></a><span class="lineno">  661</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, D, D, B, B) \</span></div>
-<div class="line"><a name="l00662"></a><span class="lineno">  662</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, D, D, B, C) \</span></div>
-<div class="line"><a name="l00663"></a><span class="lineno">  663</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, D, D, B, D) \</span></div>
-<div class="line"><a name="l00664"></a><span class="lineno">  664</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, D, D, C, A) \</span></div>
-<div class="line"><a name="l00665"></a><span class="lineno">  665</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, D, D, C, B) \</span></div>
-<div class="line"><a name="l00666"></a><span class="lineno">  666</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, D, D, C, C) \</span></div>
-<div class="line"><a name="l00667"></a><span class="lineno">  667</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, D, D, C, D) \</span></div>
-<div class="line"><a name="l00668"></a><span class="lineno">  668</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, D, D, D, A) \</span></div>
-<div class="line"><a name="l00669"></a><span class="lineno">  669</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, D, D, D, B) \</span></div>
-<div class="line"><a name="l00670"></a><span class="lineno">  670</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, D, D, D, C) \</span></div>
-<div class="line"><a name="l00671"></a><span class="lineno">  671</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, D, D, D, D)</span></div>
-<div class="line"><a name="l00672"></a><span class="lineno">  672</span>&#160;</div>
-<div class="line"><a name="l00673"></a><span class="lineno">  673</span>&#160;<span class="preprocessor">#define GLM_SWIZZLE_GEN_VEC_FROM_VEC4_COMP(T, P, A, B, C, D) \</span></div>
-<div class="line"><a name="l00674"></a><span class="lineno">  674</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC2_FROM_VEC4_SWIZZLE(T, P, A, B, C, D) \</span></div>
-<div class="line"><a name="l00675"></a><span class="lineno">  675</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_FROM_VEC4_SWIZZLE(T, P, A, B, C, D) \</span></div>
-<div class="line"><a name="l00676"></a><span class="lineno">  676</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_FROM_VEC4_SWIZZLE(T, P, A, B, C, D)</span></div>
-<div class="line"><a name="l00677"></a><span class="lineno">  677</span>&#160;</div>
-<div class="line"><a name="l00678"></a><span class="lineno">  678</span>&#160;<span class="preprocessor">#define GLM_SWIZZLE_GEN_VEC_FROM_VEC4(T, P) \</span></div>
-<div class="line"><a name="l00679"></a><span class="lineno">  679</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC_FROM_VEC4_COMP(T, P, x, y, z, w) \</span></div>
-<div class="line"><a name="l00680"></a><span class="lineno">  680</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC_FROM_VEC4_COMP(T, P, r, g, b, a) \</span></div>
-<div class="line"><a name="l00681"></a><span class="lineno">  681</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC_FROM_VEC4_COMP(T, P, s, t, p, q)</span></div>
-<div class="line"><a name="l00682"></a><span class="lineno">  682</span>&#160;</div>
+<div class="line"><a name="l00002"></a><span class="lineno">    2</span>&#160; </div>
+<div class="line"><a name="l00003"></a><span class="lineno">    3</span>&#160;<span class="comment">// #define GLM_CXX98_EXCEPTIONS</span></div>
+<div class="line"><a name="l00004"></a><span class="lineno">    4</span>&#160;<span class="comment">// #define GLM_CXX98_RTTI</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno">    5</span>&#160; </div>
+<div class="line"><a name="l00006"></a><span class="lineno">    6</span>&#160;<span class="comment">// #define GLM_CXX11_RVALUE_REFERENCES</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno">    7</span>&#160;<span class="comment">// Rvalue references - GCC 4.3</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno">    8</span>&#160;<span class="comment">// http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2006/n2118.html</span></div>
+<div class="line"><a name="l00009"></a><span class="lineno">    9</span>&#160; </div>
+<div class="line"><a name="l00010"></a><span class="lineno">   10</span>&#160;<span class="comment">// GLM_CXX11_TRAILING_RETURN</span></div>
+<div class="line"><a name="l00011"></a><span class="lineno">   11</span>&#160;<span class="comment">// Rvalue references for *this - GCC not supported</span></div>
+<div class="line"><a name="l00012"></a><span class="lineno">   12</span>&#160;<span class="comment">// http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2007/n2439.htm</span></div>
+<div class="line"><a name="l00013"></a><span class="lineno">   13</span>&#160; </div>
+<div class="line"><a name="l00014"></a><span class="lineno">   14</span>&#160;<span class="comment">// GLM_CXX11_NONSTATIC_MEMBER_INIT</span></div>
+<div class="line"><a name="l00015"></a><span class="lineno">   15</span>&#160;<span class="comment">// Initialization of class objects by rvalues - GCC any</span></div>
+<div class="line"><a name="l00016"></a><span class="lineno">   16</span>&#160;<span class="comment">// http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2004/n1610.html</span></div>
+<div class="line"><a name="l00017"></a><span class="lineno">   17</span>&#160; </div>
+<div class="line"><a name="l00018"></a><span class="lineno">   18</span>&#160;<span class="comment">// GLM_CXX11_NONSTATIC_MEMBER_INIT</span></div>
+<div class="line"><a name="l00019"></a><span class="lineno">   19</span>&#160;<span class="comment">// Non-static data member initializers - GCC 4.7</span></div>
+<div class="line"><a name="l00020"></a><span class="lineno">   20</span>&#160;<span class="comment">// http://www.open-std.org/JTC1/SC22/WG21/docs/papers/2008/n2756.htm</span></div>
+<div class="line"><a name="l00021"></a><span class="lineno">   21</span>&#160; </div>
+<div class="line"><a name="l00022"></a><span class="lineno">   22</span>&#160;<span class="comment">// #define GLM_CXX11_VARIADIC_TEMPLATE</span></div>
+<div class="line"><a name="l00023"></a><span class="lineno">   23</span>&#160;<span class="comment">// Variadic templates - GCC 4.3</span></div>
+<div class="line"><a name="l00024"></a><span class="lineno">   24</span>&#160;<span class="comment">// http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2007/n2242.pdf</span></div>
+<div class="line"><a name="l00025"></a><span class="lineno">   25</span>&#160; </div>
+<div class="line"><a name="l00026"></a><span class="lineno">   26</span>&#160;<span class="comment">//</span></div>
+<div class="line"><a name="l00027"></a><span class="lineno">   27</span>&#160;<span class="comment">// Extending variadic template template parameters - GCC 4.4</span></div>
+<div class="line"><a name="l00028"></a><span class="lineno">   28</span>&#160;<span class="comment">// http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2008/n2555.pdf</span></div>
+<div class="line"><a name="l00029"></a><span class="lineno">   29</span>&#160; </div>
+<div class="line"><a name="l00030"></a><span class="lineno">   30</span>&#160;<span class="comment">// #define GLM_CXX11_GENERALIZED_INITIALIZERS</span></div>
+<div class="line"><a name="l00031"></a><span class="lineno">   31</span>&#160;<span class="comment">// Initializer lists - GCC 4.4</span></div>
+<div class="line"><a name="l00032"></a><span class="lineno">   32</span>&#160;<span class="comment">// http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2008/n2672.htm</span></div>
+<div class="line"><a name="l00033"></a><span class="lineno">   33</span>&#160; </div>
+<div class="line"><a name="l00034"></a><span class="lineno">   34</span>&#160;<span class="comment">// #define GLM_CXX11_STATIC_ASSERT</span></div>
+<div class="line"><a name="l00035"></a><span class="lineno">   35</span>&#160;<span class="comment">// Static assertions - GCC 4.3</span></div>
+<div class="line"><a name="l00036"></a><span class="lineno">   36</span>&#160;<span class="comment">// http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2004/n1720.html</span></div>
+<div class="line"><a name="l00037"></a><span class="lineno">   37</span>&#160; </div>
+<div class="line"><a name="l00038"></a><span class="lineno">   38</span>&#160;<span class="comment">// #define GLM_CXX11_AUTO_TYPE</span></div>
+<div class="line"><a name="l00039"></a><span class="lineno">   39</span>&#160;<span class="comment">// auto-typed variables - GCC 4.4</span></div>
+<div class="line"><a name="l00040"></a><span class="lineno">   40</span>&#160;<span class="comment">// http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2006/n1984.pdf</span></div>
+<div class="line"><a name="l00041"></a><span class="lineno">   41</span>&#160; </div>
+<div class="line"><a name="l00042"></a><span class="lineno">   42</span>&#160;<span class="comment">// #define GLM_CXX11_AUTO_TYPE</span></div>
+<div class="line"><a name="l00043"></a><span class="lineno">   43</span>&#160;<span class="comment">// Multi-declarator auto - GCC 4.4</span></div>
+<div class="line"><a name="l00044"></a><span class="lineno">   44</span>&#160;<span class="comment">// http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2004/n1737.pdf</span></div>
+<div class="line"><a name="l00045"></a><span class="lineno">   45</span>&#160; </div>
+<div class="line"><a name="l00046"></a><span class="lineno">   46</span>&#160;<span class="comment">// #define GLM_CXX11_AUTO_TYPE</span></div>
+<div class="line"><a name="l00047"></a><span class="lineno">   47</span>&#160;<span class="comment">// Removal of auto as a storage-class specifier - GCC 4.4</span></div>
+<div class="line"><a name="l00048"></a><span class="lineno">   48</span>&#160;<span class="comment">// http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2008/n2546.htm</span></div>
+<div class="line"><a name="l00049"></a><span class="lineno">   49</span>&#160; </div>
+<div class="line"><a name="l00050"></a><span class="lineno">   50</span>&#160;<span class="comment">// #define GLM_CXX11_AUTO_TYPE</span></div>
+<div class="line"><a name="l00051"></a><span class="lineno">   51</span>&#160;<span class="comment">// New function declarator syntax - GCC 4.4</span></div>
+<div class="line"><a name="l00052"></a><span class="lineno">   52</span>&#160;<span class="comment">// http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2008/n2541.htm</span></div>
+<div class="line"><a name="l00053"></a><span class="lineno">   53</span>&#160; </div>
+<div class="line"><a name="l00054"></a><span class="lineno">   54</span>&#160;<span class="comment">// #define GLM_CXX11_LAMBDAS</span></div>
+<div class="line"><a name="l00055"></a><span class="lineno">   55</span>&#160;<span class="comment">// New wording for C++0x lambdas - GCC 4.5</span></div>
+<div class="line"><a name="l00056"></a><span class="lineno">   56</span>&#160;<span class="comment">// http://www.open-std.org/JTC1/SC22/WG21/docs/papers/2009/n2927.pdf</span></div>
+<div class="line"><a name="l00057"></a><span class="lineno">   57</span>&#160; </div>
+<div class="line"><a name="l00058"></a><span class="lineno">   58</span>&#160;<span class="comment">// #define GLM_CXX11_DECLTYPE</span></div>
+<div class="line"><a name="l00059"></a><span class="lineno">   59</span>&#160;<span class="comment">// Declared type of an expression - GCC 4.3</span></div>
+<div class="line"><a name="l00060"></a><span class="lineno">   60</span>&#160;<span class="comment">// http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2007/n2343.pdf</span></div>
+<div class="line"><a name="l00061"></a><span class="lineno">   61</span>&#160; </div>
+<div class="line"><a name="l00062"></a><span class="lineno">   62</span>&#160;<span class="comment">//</span></div>
+<div class="line"><a name="l00063"></a><span class="lineno">   63</span>&#160;<span class="comment">// Right angle brackets - GCC 4.3</span></div>
+<div class="line"><a name="l00064"></a><span class="lineno">   64</span>&#160;<span class="comment">// http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2005/n1757.html</span></div>
+<div class="line"><a name="l00065"></a><span class="lineno">   65</span>&#160; </div>
+<div class="line"><a name="l00066"></a><span class="lineno">   66</span>&#160;<span class="comment">//</span></div>
+<div class="line"><a name="l00067"></a><span class="lineno">   67</span>&#160;<span class="comment">// Default template arguments for function templates    DR226   GCC 4.3</span></div>
+<div class="line"><a name="l00068"></a><span class="lineno">   68</span>&#160;<span class="comment">// http://www.open-std.org/jtc1/sc22/wg21/docs/cwg_defects.html#226</span></div>
+<div class="line"><a name="l00069"></a><span class="lineno">   69</span>&#160; </div>
+<div class="line"><a name="l00070"></a><span class="lineno">   70</span>&#160;<span class="comment">//</span></div>
+<div class="line"><a name="l00071"></a><span class="lineno">   71</span>&#160;<span class="comment">// Solving the SFINAE problem for expressions   DR339   GCC 4.4</span></div>
+<div class="line"><a name="l00072"></a><span class="lineno">   72</span>&#160;<span class="comment">// http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2008/n2634.html</span></div>
+<div class="line"><a name="l00073"></a><span class="lineno">   73</span>&#160; </div>
+<div class="line"><a name="l00074"></a><span class="lineno">   74</span>&#160;<span class="comment">// #define GLM_CXX11_ALIAS_TEMPLATE</span></div>
+<div class="line"><a name="l00075"></a><span class="lineno">   75</span>&#160;<span class="comment">// Template aliases     N2258   GCC 4.7</span></div>
+<div class="line"><a name="l00076"></a><span class="lineno">   76</span>&#160;<span class="comment">// http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2007/n2258.pdf</span></div>
+<div class="line"><a name="l00077"></a><span class="lineno">   77</span>&#160; </div>
+<div class="line"><a name="l00078"></a><span class="lineno">   78</span>&#160;<span class="comment">//</span></div>
+<div class="line"><a name="l00079"></a><span class="lineno">   79</span>&#160;<span class="comment">// Extern templates     N1987   Yes</span></div>
+<div class="line"><a name="l00080"></a><span class="lineno">   80</span>&#160;<span class="comment">// http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2006/n1987.htm</span></div>
+<div class="line"><a name="l00081"></a><span class="lineno">   81</span>&#160; </div>
+<div class="line"><a name="l00082"></a><span class="lineno">   82</span>&#160;<span class="comment">// #define GLM_CXX11_NULLPTR</span></div>
+<div class="line"><a name="l00083"></a><span class="lineno">   83</span>&#160;<span class="comment">// Null pointer constant        N2431   GCC 4.6</span></div>
+<div class="line"><a name="l00084"></a><span class="lineno">   84</span>&#160;<span class="comment">// http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2007/n2431.pdf</span></div>
+<div class="line"><a name="l00085"></a><span class="lineno">   85</span>&#160; </div>
+<div class="line"><a name="l00086"></a><span class="lineno">   86</span>&#160;<span class="comment">// #define GLM_CXX11_STRONG_ENUMS</span></div>
+<div class="line"><a name="l00087"></a><span class="lineno">   87</span>&#160;<span class="comment">// Strongly-typed enums N2347   GCC 4.4</span></div>
+<div class="line"><a name="l00088"></a><span class="lineno">   88</span>&#160;<span class="comment">// http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2007/n2347.pdf</span></div>
+<div class="line"><a name="l00089"></a><span class="lineno">   89</span>&#160; </div>
+<div class="line"><a name="l00090"></a><span class="lineno">   90</span>&#160;<span class="comment">//</span></div>
+<div class="line"><a name="l00091"></a><span class="lineno">   91</span>&#160;<span class="comment">// Forward declarations for enums       N2764   GCC 4.6</span></div>
+<div class="line"><a name="l00092"></a><span class="lineno">   92</span>&#160;<span class="comment">// http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2008/n2764.pdf</span></div>
+<div class="line"><a name="l00093"></a><span class="lineno">   93</span>&#160; </div>
+<div class="line"><a name="l00094"></a><span class="lineno">   94</span>&#160;<span class="comment">//</span></div>
+<div class="line"><a name="l00095"></a><span class="lineno">   95</span>&#160;<span class="comment">// Generalized attributes       N2761   GCC 4.8</span></div>
+<div class="line"><a name="l00096"></a><span class="lineno">   96</span>&#160;<span class="comment">// http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2008/n2761.pdf</span></div>
+<div class="line"><a name="l00097"></a><span class="lineno">   97</span>&#160; </div>
+<div class="line"><a name="l00098"></a><span class="lineno">   98</span>&#160;<span class="comment">//</span></div>
+<div class="line"><a name="l00099"></a><span class="lineno">   99</span>&#160;<span class="comment">// Generalized constant expressions     N2235   GCC 4.6</span></div>
+<div class="line"><a name="l00100"></a><span class="lineno">  100</span>&#160;<span class="comment">// http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2007/n2235.pdf</span></div>
+<div class="line"><a name="l00101"></a><span class="lineno">  101</span>&#160; </div>
+<div class="line"><a name="l00102"></a><span class="lineno">  102</span>&#160;<span class="comment">//</span></div>
+<div class="line"><a name="l00103"></a><span class="lineno">  103</span>&#160;<span class="comment">// Alignment support    N2341   GCC 4.8</span></div>
+<div class="line"><a name="l00104"></a><span class="lineno">  104</span>&#160;<span class="comment">// http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2007/n2341.pdf</span></div>
+<div class="line"><a name="l00105"></a><span class="lineno">  105</span>&#160; </div>
+<div class="line"><a name="l00106"></a><span class="lineno">  106</span>&#160;<span class="comment">// #define GLM_CXX11_DELEGATING_CONSTRUCTORS</span></div>
+<div class="line"><a name="l00107"></a><span class="lineno">  107</span>&#160;<span class="comment">// Delegating constructors      N1986   GCC 4.7</span></div>
+<div class="line"><a name="l00108"></a><span class="lineno">  108</span>&#160;<span class="comment">// http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2006/n1986.pdf</span></div>
+<div class="line"><a name="l00109"></a><span class="lineno">  109</span>&#160; </div>
+<div class="line"><a name="l00110"></a><span class="lineno">  110</span>&#160;<span class="comment">//</span></div>
+<div class="line"><a name="l00111"></a><span class="lineno">  111</span>&#160;<span class="comment">// Inheriting constructors      N2540   GCC 4.8</span></div>
+<div class="line"><a name="l00112"></a><span class="lineno">  112</span>&#160;<span class="comment">// http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2008/n2540.htm</span></div>
+<div class="line"><a name="l00113"></a><span class="lineno">  113</span>&#160; </div>
+<div class="line"><a name="l00114"></a><span class="lineno">  114</span>&#160;<span class="comment">// #define GLM_CXX11_EXPLICIT_CONVERSIONS</span></div>
+<div class="line"><a name="l00115"></a><span class="lineno">  115</span>&#160;<span class="comment">// Explicit conversion operators        N2437   GCC 4.5</span></div>
+<div class="line"><a name="l00116"></a><span class="lineno">  116</span>&#160;<span class="comment">// http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2007/n2437.pdf</span></div>
+<div class="line"><a name="l00117"></a><span class="lineno">  117</span>&#160; </div>
+<div class="line"><a name="l00118"></a><span class="lineno">  118</span>&#160;<span class="comment">//</span></div>
+<div class="line"><a name="l00119"></a><span class="lineno">  119</span>&#160;<span class="comment">// New character types  N2249   GCC 4.4</span></div>
+<div class="line"><a name="l00120"></a><span class="lineno">  120</span>&#160;<span class="comment">// http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2007/n2249.html</span></div>
+<div class="line"><a name="l00121"></a><span class="lineno">  121</span>&#160; </div>
+<div class="line"><a name="l00122"></a><span class="lineno">  122</span>&#160;<span class="comment">//</span></div>
+<div class="line"><a name="l00123"></a><span class="lineno">  123</span>&#160;<span class="comment">// Unicode string literals      N2442   GCC 4.5</span></div>
+<div class="line"><a name="l00124"></a><span class="lineno">  124</span>&#160;<span class="comment">// http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2007/n2442.htm</span></div>
+<div class="line"><a name="l00125"></a><span class="lineno">  125</span>&#160; </div>
+<div class="line"><a name="l00126"></a><span class="lineno">  126</span>&#160;<span class="comment">//</span></div>
+<div class="line"><a name="l00127"></a><span class="lineno">  127</span>&#160;<span class="comment">// Raw string literals  N2442   GCC 4.5</span></div>
+<div class="line"><a name="l00128"></a><span class="lineno">  128</span>&#160;<span class="comment">// http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2007/n2442.htm</span></div>
+<div class="line"><a name="l00129"></a><span class="lineno">  129</span>&#160; </div>
+<div class="line"><a name="l00130"></a><span class="lineno">  130</span>&#160;<span class="comment">//</span></div>
+<div class="line"><a name="l00131"></a><span class="lineno">  131</span>&#160;<span class="comment">// Universal character name literals    N2170   GCC 4.5</span></div>
+<div class="line"><a name="l00132"></a><span class="lineno">  132</span>&#160;<span class="comment">// http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2007/n2170.html</span></div>
+<div class="line"><a name="l00133"></a><span class="lineno">  133</span>&#160; </div>
+<div class="line"><a name="l00134"></a><span class="lineno">  134</span>&#160;<span class="comment">// #define GLM_CXX11_USER_LITERALS</span></div>
+<div class="line"><a name="l00135"></a><span class="lineno">  135</span>&#160;<span class="comment">// User-defined literals                N2765   GCC 4.7</span></div>
+<div class="line"><a name="l00136"></a><span class="lineno">  136</span>&#160;<span class="comment">// http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2008/n2765.pdf</span></div>
+<div class="line"><a name="l00137"></a><span class="lineno">  137</span>&#160; </div>
+<div class="line"><a name="l00138"></a><span class="lineno">  138</span>&#160;<span class="comment">//</span></div>
+<div class="line"><a name="l00139"></a><span class="lineno">  139</span>&#160;<span class="comment">// Standard Layout Types        N2342   GCC 4.5</span></div>
+<div class="line"><a name="l00140"></a><span class="lineno">  140</span>&#160;<span class="comment">// http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2007/n2342.htm</span></div>
+<div class="line"><a name="l00141"></a><span class="lineno">  141</span>&#160; </div>
+<div class="line"><a name="l00142"></a><span class="lineno">  142</span>&#160;<span class="comment">// #define GLM_CXX11_DEFAULTED_FUNCTIONS</span></div>
+<div class="line"><a name="l00143"></a><span class="lineno">  143</span>&#160;<span class="comment">// #define GLM_CXX11_DELETED_FUNCTIONS</span></div>
+<div class="line"><a name="l00144"></a><span class="lineno">  144</span>&#160;<span class="comment">// Defaulted and deleted functions      N2346   GCC 4.4</span></div>
+<div class="line"><a name="l00145"></a><span class="lineno">  145</span>&#160;<span class="comment">// http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2007/n2346.htm</span></div>
+<div class="line"><a name="l00146"></a><span class="lineno">  146</span>&#160; </div>
+<div class="line"><a name="l00147"></a><span class="lineno">  147</span>&#160;<span class="comment">//</span></div>
+<div class="line"><a name="l00148"></a><span class="lineno">  148</span>&#160;<span class="comment">// Extended friend declarations N1791   GCC 4.7</span></div>
+<div class="line"><a name="l00149"></a><span class="lineno">  149</span>&#160;<span class="comment">// http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2005/n1791.pdf</span></div>
+<div class="line"><a name="l00150"></a><span class="lineno">  150</span>&#160; </div>
+<div class="line"><a name="l00151"></a><span class="lineno">  151</span>&#160;<span class="comment">//</span></div>
+<div class="line"><a name="l00152"></a><span class="lineno">  152</span>&#160;<span class="comment">// Extending sizeof     N2253   GCC 4.4</span></div>
+<div class="line"><a name="l00153"></a><span class="lineno">  153</span>&#160;<span class="comment">// http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2007/n2253.html</span></div>
+<div class="line"><a name="l00154"></a><span class="lineno">  154</span>&#160; </div>
+<div class="line"><a name="l00155"></a><span class="lineno">  155</span>&#160;<span class="comment">// #define GLM_CXX11_INLINE_NAMESPACES</span></div>
+<div class="line"><a name="l00156"></a><span class="lineno">  156</span>&#160;<span class="comment">// Inline namespaces    N2535   GCC 4.4</span></div>
+<div class="line"><a name="l00157"></a><span class="lineno">  157</span>&#160;<span class="comment">// http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2008/n2535.htm</span></div>
+<div class="line"><a name="l00158"></a><span class="lineno">  158</span>&#160; </div>
+<div class="line"><a name="l00159"></a><span class="lineno">  159</span>&#160;<span class="comment">// #define GLM_CXX11_UNRESTRICTED_UNIONS</span></div>
+<div class="line"><a name="l00160"></a><span class="lineno">  160</span>&#160;<span class="comment">// Unrestricted unions  N2544   GCC 4.6</span></div>
+<div class="line"><a name="l00161"></a><span class="lineno">  161</span>&#160;<span class="comment">// http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2008/n2544.pdf</span></div>
+<div class="line"><a name="l00162"></a><span class="lineno">  162</span>&#160; </div>
+<div class="line"><a name="l00163"></a><span class="lineno">  163</span>&#160;<span class="comment">// #define GLM_CXX11_LOCAL_TYPE_TEMPLATE_ARGS</span></div>
+<div class="line"><a name="l00164"></a><span class="lineno">  164</span>&#160;<span class="comment">// Local and unnamed types as template arguments        N2657   GCC 4.5</span></div>
+<div class="line"><a name="l00165"></a><span class="lineno">  165</span>&#160;<span class="comment">// http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2008/n2657.htm</span></div>
+<div class="line"><a name="l00166"></a><span class="lineno">  166</span>&#160; </div>
+<div class="line"><a name="l00167"></a><span class="lineno">  167</span>&#160;<span class="comment">// #define GLM_CXX11_RANGE_FOR</span></div>
+<div class="line"><a name="l00168"></a><span class="lineno">  168</span>&#160;<span class="comment">// Range-based for      N2930   GCC 4.6</span></div>
+<div class="line"><a name="l00169"></a><span class="lineno">  169</span>&#160;<span class="comment">// http://www.open-std.org/JTC1/SC22/WG21/docs/papers/2009/n2930.html</span></div>
+<div class="line"><a name="l00170"></a><span class="lineno">  170</span>&#160; </div>
+<div class="line"><a name="l00171"></a><span class="lineno">  171</span>&#160;<span class="comment">// #define GLM_CXX11_OVERRIDE_CONTROL</span></div>
+<div class="line"><a name="l00172"></a><span class="lineno">  172</span>&#160;<span class="comment">// Explicit virtual overrides   N2928 N3206 N3272       GCC 4.7</span></div>
+<div class="line"><a name="l00173"></a><span class="lineno">  173</span>&#160;<span class="comment">// http://www.open-std.org/JTC1/SC22/WG21/docs/papers/2009/n2928.htm</span></div>
+<div class="line"><a name="l00174"></a><span class="lineno">  174</span>&#160;<span class="comment">// http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2010/n3206.htm</span></div>
+<div class="line"><a name="l00175"></a><span class="lineno">  175</span>&#160;<span class="comment">// http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2011/n3272.htm</span></div>
+<div class="line"><a name="l00176"></a><span class="lineno">  176</span>&#160; </div>
+<div class="line"><a name="l00177"></a><span class="lineno">  177</span>&#160;<span class="comment">//</span></div>
+<div class="line"><a name="l00178"></a><span class="lineno">  178</span>&#160;<span class="comment">// Minimal support for garbage collection and reachability-based leak detection N2670   No</span></div>
+<div class="line"><a name="l00179"></a><span class="lineno">  179</span>&#160;<span class="comment">// http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2008/n2670.htm</span></div>
+<div class="line"><a name="l00180"></a><span class="lineno">  180</span>&#160; </div>
+<div class="line"><a name="l00181"></a><span class="lineno">  181</span>&#160;<span class="comment">// #define GLM_CXX11_NOEXCEPT</span></div>
+<div class="line"><a name="l00182"></a><span class="lineno">  182</span>&#160;<span class="comment">// Allowing move constructors to throw [noexcept]       N3050   GCC 4.6 (core language only)</span></div>
+<div class="line"><a name="l00183"></a><span class="lineno">  183</span>&#160;<span class="comment">// http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2010/n3050.html</span></div>
+<div class="line"><a name="l00184"></a><span class="lineno">  184</span>&#160; </div>
+<div class="line"><a name="l00185"></a><span class="lineno">  185</span>&#160;<span class="comment">//</span></div>
+<div class="line"><a name="l00186"></a><span class="lineno">  186</span>&#160;<span class="comment">// Defining move special member functions       N3053   GCC 4.6</span></div>
+<div class="line"><a name="l00187"></a><span class="lineno">  187</span>&#160;<span class="comment">// http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2010/n3053.html</span></div>
+<div class="line"><a name="l00188"></a><span class="lineno">  188</span>&#160; </div>
+<div class="line"><a name="l00189"></a><span class="lineno">  189</span>&#160;<span class="comment">//</span></div>
+<div class="line"><a name="l00190"></a><span class="lineno">  190</span>&#160;<span class="comment">// Sequence points      N2239   Yes</span></div>
+<div class="line"><a name="l00191"></a><span class="lineno">  191</span>&#160;<span class="comment">// http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2007/n2239.html</span></div>
+<div class="line"><a name="l00192"></a><span class="lineno">  192</span>&#160; </div>
+<div class="line"><a name="l00193"></a><span class="lineno">  193</span>&#160;<span class="comment">//</span></div>
+<div class="line"><a name="l00194"></a><span class="lineno">  194</span>&#160;<span class="comment">// Atomic operations    N2427   GCC 4.4</span></div>
+<div class="line"><a name="l00195"></a><span class="lineno">  195</span>&#160;<span class="comment">// http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2007/n2239.html</span></div>
+<div class="line"><a name="l00196"></a><span class="lineno">  196</span>&#160; </div>
+<div class="line"><a name="l00197"></a><span class="lineno">  197</span>&#160;<span class="comment">//</span></div>
+<div class="line"><a name="l00198"></a><span class="lineno">  198</span>&#160;<span class="comment">// Strong Compare and Exchange  N2748   GCC 4.5</span></div>
+<div class="line"><a name="l00199"></a><span class="lineno">  199</span>&#160;<span class="comment">// http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2007/n2427.html</span></div>
+<div class="line"><a name="l00200"></a><span class="lineno">  200</span>&#160; </div>
+<div class="line"><a name="l00201"></a><span class="lineno">  201</span>&#160;<span class="comment">//</span></div>
+<div class="line"><a name="l00202"></a><span class="lineno">  202</span>&#160;<span class="comment">// Bidirectional Fences N2752   GCC 4.8</span></div>
+<div class="line"><a name="l00203"></a><span class="lineno">  203</span>&#160;<span class="comment">// http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2008/n2752.htm</span></div>
+<div class="line"><a name="l00204"></a><span class="lineno">  204</span>&#160; </div>
+<div class="line"><a name="l00205"></a><span class="lineno">  205</span>&#160;<span class="comment">//</span></div>
+<div class="line"><a name="l00206"></a><span class="lineno">  206</span>&#160;<span class="comment">// Memory model N2429   GCC 4.8</span></div>
+<div class="line"><a name="l00207"></a><span class="lineno">  207</span>&#160;<span class="comment">// http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2007/n2429.htm</span></div>
+<div class="line"><a name="l00208"></a><span class="lineno">  208</span>&#160; </div>
+<div class="line"><a name="l00209"></a><span class="lineno">  209</span>&#160;<span class="comment">//</span></div>
+<div class="line"><a name="l00210"></a><span class="lineno">  210</span>&#160;<span class="comment">// Data-dependency ordering: atomics and memory model   N2664   GCC 4.4</span></div>
+<div class="line"><a name="l00211"></a><span class="lineno">  211</span>&#160;<span class="comment">// http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2008/n2664.htm</span></div>
+<div class="line"><a name="l00212"></a><span class="lineno">  212</span>&#160; </div>
+<div class="line"><a name="l00213"></a><span class="lineno">  213</span>&#160;<span class="comment">//</span></div>
+<div class="line"><a name="l00214"></a><span class="lineno">  214</span>&#160;<span class="comment">// Propagating exceptions       N2179   GCC 4.4</span></div>
+<div class="line"><a name="l00215"></a><span class="lineno">  215</span>&#160;<span class="comment">// http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2007/n2179.html</span></div>
+<div class="line"><a name="l00216"></a><span class="lineno">  216</span>&#160; </div>
+<div class="line"><a name="l00217"></a><span class="lineno">  217</span>&#160;<span class="comment">//</span></div>
+<div class="line"><a name="l00218"></a><span class="lineno">  218</span>&#160;<span class="comment">// Abandoning a process and at_quick_exit       N2440   GCC 4.8</span></div>
+<div class="line"><a name="l00219"></a><span class="lineno">  219</span>&#160;<span class="comment">// http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2007/n2440.htm</span></div>
+<div class="line"><a name="l00220"></a><span class="lineno">  220</span>&#160; </div>
+<div class="line"><a name="l00221"></a><span class="lineno">  221</span>&#160;<span class="comment">//</span></div>
+<div class="line"><a name="l00222"></a><span class="lineno">  222</span>&#160;<span class="comment">// Allow atomics use in signal handlers N2547   Yes</span></div>
+<div class="line"><a name="l00223"></a><span class="lineno">  223</span>&#160;<span class="comment">// http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2008/n2547.htm</span></div>
+<div class="line"><a name="l00224"></a><span class="lineno">  224</span>&#160; </div>
+<div class="line"><a name="l00225"></a><span class="lineno">  225</span>&#160;<span class="comment">//</span></div>
+<div class="line"><a name="l00226"></a><span class="lineno">  226</span>&#160;<span class="comment">// Thread-local storage N2659   GCC 4.8</span></div>
+<div class="line"><a name="l00227"></a><span class="lineno">  227</span>&#160;<span class="comment">// http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2008/n2659.htm</span></div>
+<div class="line"><a name="l00228"></a><span class="lineno">  228</span>&#160; </div>
+<div class="line"><a name="l00229"></a><span class="lineno">  229</span>&#160;<span class="comment">//</span></div>
+<div class="line"><a name="l00230"></a><span class="lineno">  230</span>&#160;<span class="comment">// Dynamic initialization and destruction with concurrency      N2660   GCC 4.3</span></div>
+<div class="line"><a name="l00231"></a><span class="lineno">  231</span>&#160;<span class="comment">// http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2008/n2660.htm</span></div>
+<div class="line"><a name="l00232"></a><span class="lineno">  232</span>&#160; </div>
+<div class="line"><a name="l00233"></a><span class="lineno">  233</span>&#160;<span class="comment">//</span></div>
+<div class="line"><a name="l00234"></a><span class="lineno">  234</span>&#160;<span class="comment">// __func__ predefined identifier       N2340   GCC 4.3</span></div>
+<div class="line"><a name="l00235"></a><span class="lineno">  235</span>&#160;<span class="comment">// http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2007/n2340.htm</span></div>
+<div class="line"><a name="l00236"></a><span class="lineno">  236</span>&#160; </div>
+<div class="line"><a name="l00237"></a><span class="lineno">  237</span>&#160;<span class="comment">//</span></div>
+<div class="line"><a name="l00238"></a><span class="lineno">  238</span>&#160;<span class="comment">// C99 preprocessor     N1653   GCC 4.3</span></div>
+<div class="line"><a name="l00239"></a><span class="lineno">  239</span>&#160;<span class="comment">// http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2004/n1653.htm</span></div>
+<div class="line"><a name="l00240"></a><span class="lineno">  240</span>&#160; </div>
+<div class="line"><a name="l00241"></a><span class="lineno">  241</span>&#160;<span class="comment">//</span></div>
+<div class="line"><a name="l00242"></a><span class="lineno">  242</span>&#160;<span class="comment">// long long    N1811   GCC 4.3</span></div>
+<div class="line"><a name="l00243"></a><span class="lineno">  243</span>&#160;<span class="comment">// http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2005/n1811.pdf</span></div>
+<div class="line"><a name="l00244"></a><span class="lineno">  244</span>&#160; </div>
+<div class="line"><a name="l00245"></a><span class="lineno">  245</span>&#160;<span class="comment">//</span></div>
+<div class="line"><a name="l00246"></a><span class="lineno">  246</span>&#160;<span class="comment">// Extended integral types      N1988   Yes</span></div>
+<div class="line"><a name="l00247"></a><span class="lineno">  247</span>&#160;<span class="comment">// http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2006/n1988.pdf</span></div>
+<div class="line"><a name="l00248"></a><span class="lineno">  248</span>&#160; </div>
+<div class="line"><a name="l00249"></a><span class="lineno">  249</span>&#160;<span class="preprocessor">#if(GLM_COMPILER &amp; GLM_COMPILER_GCC)</span></div>
+<div class="line"><a name="l00250"></a><span class="lineno">  250</span>&#160; </div>
+<div class="line"><a name="l00251"></a><span class="lineno">  251</span>&#160;<span class="preprocessor">#       define GLM_CXX11_STATIC_ASSERT</span></div>
+<div class="line"><a name="l00252"></a><span class="lineno">  252</span>&#160; </div>
+<div class="line"><a name="l00253"></a><span class="lineno">  253</span>&#160;<span class="preprocessor">#elif(GLM_COMPILER &amp; GLM_COMPILER_CLANG)</span></div>
+<div class="line"><a name="l00254"></a><span class="lineno">  254</span>&#160;<span class="preprocessor">#       if(__has_feature(cxx_exceptions))</span></div>
+<div class="line"><a name="l00255"></a><span class="lineno">  255</span>&#160;<span class="preprocessor">#               define GLM_CXX98_EXCEPTIONS</span></div>
+<div class="line"><a name="l00256"></a><span class="lineno">  256</span>&#160;<span class="preprocessor">#       endif</span></div>
+<div class="line"><a name="l00257"></a><span class="lineno">  257</span>&#160; </div>
+<div class="line"><a name="l00258"></a><span class="lineno">  258</span>&#160;<span class="preprocessor">#       if(__has_feature(cxx_rtti))</span></div>
+<div class="line"><a name="l00259"></a><span class="lineno">  259</span>&#160;<span class="preprocessor">#               define GLM_CXX98_RTTI</span></div>
+<div class="line"><a name="l00260"></a><span class="lineno">  260</span>&#160;<span class="preprocessor">#       endif</span></div>
+<div class="line"><a name="l00261"></a><span class="lineno">  261</span>&#160; </div>
+<div class="line"><a name="l00262"></a><span class="lineno">  262</span>&#160;<span class="preprocessor">#       if(__has_feature(cxx_access_control_sfinae))</span></div>
+<div class="line"><a name="l00263"></a><span class="lineno">  263</span>&#160;<span class="preprocessor">#               define GLM_CXX11_ACCESS_CONTROL_SFINAE</span></div>
+<div class="line"><a name="l00264"></a><span class="lineno">  264</span>&#160;<span class="preprocessor">#       endif</span></div>
+<div class="line"><a name="l00265"></a><span class="lineno">  265</span>&#160; </div>
+<div class="line"><a name="l00266"></a><span class="lineno">  266</span>&#160;<span class="preprocessor">#       if(__has_feature(cxx_alias_templates))</span></div>
+<div class="line"><a name="l00267"></a><span class="lineno">  267</span>&#160;<span class="preprocessor">#               define GLM_CXX11_ALIAS_TEMPLATE</span></div>
+<div class="line"><a name="l00268"></a><span class="lineno">  268</span>&#160;<span class="preprocessor">#       endif</span></div>
+<div class="line"><a name="l00269"></a><span class="lineno">  269</span>&#160; </div>
+<div class="line"><a name="l00270"></a><span class="lineno">  270</span>&#160;<span class="preprocessor">#       if(__has_feature(cxx_alignas))</span></div>
+<div class="line"><a name="l00271"></a><span class="lineno">  271</span>&#160;<span class="preprocessor">#               define GLM_CXX11_ALIGNAS</span></div>
+<div class="line"><a name="l00272"></a><span class="lineno">  272</span>&#160;<span class="preprocessor">#       endif</span></div>
+<div class="line"><a name="l00273"></a><span class="lineno">  273</span>&#160; </div>
+<div class="line"><a name="l00274"></a><span class="lineno">  274</span>&#160;<span class="preprocessor">#       if(__has_feature(cxx_attributes))</span></div>
+<div class="line"><a name="l00275"></a><span class="lineno">  275</span>&#160;<span class="preprocessor">#               define GLM_CXX11_ATTRIBUTES</span></div>
+<div class="line"><a name="l00276"></a><span class="lineno">  276</span>&#160;<span class="preprocessor">#       endif</span></div>
+<div class="line"><a name="l00277"></a><span class="lineno">  277</span>&#160; </div>
+<div class="line"><a name="l00278"></a><span class="lineno">  278</span>&#160;<span class="preprocessor">#       if(__has_feature(cxx_constexpr))</span></div>
+<div class="line"><a name="l00279"></a><span class="lineno">  279</span>&#160;<span class="preprocessor">#               define GLM_CXX11_CONSTEXPR</span></div>
+<div class="line"><a name="l00280"></a><span class="lineno">  280</span>&#160;<span class="preprocessor">#       endif</span></div>
+<div class="line"><a name="l00281"></a><span class="lineno">  281</span>&#160; </div>
+<div class="line"><a name="l00282"></a><span class="lineno">  282</span>&#160;<span class="preprocessor">#       if(__has_feature(cxx_decltype))</span></div>
+<div class="line"><a name="l00283"></a><span class="lineno">  283</span>&#160;<span class="preprocessor">#               define GLM_CXX11_DECLTYPE</span></div>
+<div class="line"><a name="l00284"></a><span class="lineno">  284</span>&#160;<span class="preprocessor">#       endif</span></div>
+<div class="line"><a name="l00285"></a><span class="lineno">  285</span>&#160; </div>
+<div class="line"><a name="l00286"></a><span class="lineno">  286</span>&#160;<span class="preprocessor">#       if(__has_feature(cxx_default_function_template_args))</span></div>
+<div class="line"><a name="l00287"></a><span class="lineno">  287</span>&#160;<span class="preprocessor">#               define GLM_CXX11_DEFAULT_FUNCTION_TEMPLATE_ARGS</span></div>
+<div class="line"><a name="l00288"></a><span class="lineno">  288</span>&#160;<span class="preprocessor">#       endif</span></div>
+<div class="line"><a name="l00289"></a><span class="lineno">  289</span>&#160; </div>
+<div class="line"><a name="l00290"></a><span class="lineno">  290</span>&#160;<span class="preprocessor">#       if(__has_feature(cxx_defaulted_functions))</span></div>
+<div class="line"><a name="l00291"></a><span class="lineno">  291</span>&#160;<span class="preprocessor">#               define GLM_CXX11_DEFAULTED_FUNCTIONS</span></div>
+<div class="line"><a name="l00292"></a><span class="lineno">  292</span>&#160;<span class="preprocessor">#       endif</span></div>
+<div class="line"><a name="l00293"></a><span class="lineno">  293</span>&#160; </div>
+<div class="line"><a name="l00294"></a><span class="lineno">  294</span>&#160;<span class="preprocessor">#       if(__has_feature(cxx_delegating_constructors))</span></div>
+<div class="line"><a name="l00295"></a><span class="lineno">  295</span>&#160;<span class="preprocessor">#               define GLM_CXX11_DELEGATING_CONSTRUCTORS</span></div>
+<div class="line"><a name="l00296"></a><span class="lineno">  296</span>&#160;<span class="preprocessor">#       endif</span></div>
+<div class="line"><a name="l00297"></a><span class="lineno">  297</span>&#160; </div>
+<div class="line"><a name="l00298"></a><span class="lineno">  298</span>&#160;<span class="preprocessor">#       if(__has_feature(cxx_deleted_functions))</span></div>
+<div class="line"><a name="l00299"></a><span class="lineno">  299</span>&#160;<span class="preprocessor">#               define GLM_CXX11_DELETED_FUNCTIONS</span></div>
+<div class="line"><a name="l00300"></a><span class="lineno">  300</span>&#160;<span class="preprocessor">#       endif</span></div>
+<div class="line"><a name="l00301"></a><span class="lineno">  301</span>&#160; </div>
+<div class="line"><a name="l00302"></a><span class="lineno">  302</span>&#160;<span class="preprocessor">#       if(__has_feature(cxx_explicit_conversions))</span></div>
+<div class="line"><a name="l00303"></a><span class="lineno">  303</span>&#160;<span class="preprocessor">#               define GLM_CXX11_EXPLICIT_CONVERSIONS</span></div>
+<div class="line"><a name="l00304"></a><span class="lineno">  304</span>&#160;<span class="preprocessor">#       endif</span></div>
+<div class="line"><a name="l00305"></a><span class="lineno">  305</span>&#160; </div>
+<div class="line"><a name="l00306"></a><span class="lineno">  306</span>&#160;<span class="preprocessor">#       if(__has_feature(cxx_generalized_initializers))</span></div>
+<div class="line"><a name="l00307"></a><span class="lineno">  307</span>&#160;<span class="preprocessor">#               define GLM_CXX11_GENERALIZED_INITIALIZERS</span></div>
+<div class="line"><a name="l00308"></a><span class="lineno">  308</span>&#160;<span class="preprocessor">#       endif</span></div>
+<div class="line"><a name="l00309"></a><span class="lineno">  309</span>&#160; </div>
+<div class="line"><a name="l00310"></a><span class="lineno">  310</span>&#160;<span class="preprocessor">#       if(__has_feature(cxx_implicit_moves))</span></div>
+<div class="line"><a name="l00311"></a><span class="lineno">  311</span>&#160;<span class="preprocessor">#               define GLM_CXX11_IMPLICIT_MOVES</span></div>
+<div class="line"><a name="l00312"></a><span class="lineno">  312</span>&#160;<span class="preprocessor">#       endif</span></div>
+<div class="line"><a name="l00313"></a><span class="lineno">  313</span>&#160; </div>
+<div class="line"><a name="l00314"></a><span class="lineno">  314</span>&#160;<span class="preprocessor">#       if(__has_feature(cxx_inheriting_constructors))</span></div>
+<div class="line"><a name="l00315"></a><span class="lineno">  315</span>&#160;<span class="preprocessor">#               define GLM_CXX11_INHERITING_CONSTRUCTORS</span></div>
+<div class="line"><a name="l00316"></a><span class="lineno">  316</span>&#160;<span class="preprocessor">#       endif</span></div>
+<div class="line"><a name="l00317"></a><span class="lineno">  317</span>&#160; </div>
+<div class="line"><a name="l00318"></a><span class="lineno">  318</span>&#160;<span class="preprocessor">#       if(__has_feature(cxx_inline_namespaces))</span></div>
+<div class="line"><a name="l00319"></a><span class="lineno">  319</span>&#160;<span class="preprocessor">#               define GLM_CXX11_INLINE_NAMESPACES</span></div>
+<div class="line"><a name="l00320"></a><span class="lineno">  320</span>&#160;<span class="preprocessor">#       endif</span></div>
+<div class="line"><a name="l00321"></a><span class="lineno">  321</span>&#160; </div>
+<div class="line"><a name="l00322"></a><span class="lineno">  322</span>&#160;<span class="preprocessor">#       if(__has_feature(cxx_lambdas))</span></div>
+<div class="line"><a name="l00323"></a><span class="lineno">  323</span>&#160;<span class="preprocessor">#               define GLM_CXX11_LAMBDAS</span></div>
+<div class="line"><a name="l00324"></a><span class="lineno">  324</span>&#160;<span class="preprocessor">#       endif</span></div>
+<div class="line"><a name="l00325"></a><span class="lineno">  325</span>&#160; </div>
+<div class="line"><a name="l00326"></a><span class="lineno">  326</span>&#160;<span class="preprocessor">#       if(__has_feature(cxx_local_type_template_args))</span></div>
+<div class="line"><a name="l00327"></a><span class="lineno">  327</span>&#160;<span class="preprocessor">#               define GLM_CXX11_LOCAL_TYPE_TEMPLATE_ARGS</span></div>
+<div class="line"><a name="l00328"></a><span class="lineno">  328</span>&#160;<span class="preprocessor">#       endif</span></div>
+<div class="line"><a name="l00329"></a><span class="lineno">  329</span>&#160; </div>
+<div class="line"><a name="l00330"></a><span class="lineno">  330</span>&#160;<span class="preprocessor">#       if(__has_feature(cxx_noexcept))</span></div>
+<div class="line"><a name="l00331"></a><span class="lineno">  331</span>&#160;<span class="preprocessor">#               define GLM_CXX11_NOEXCEPT</span></div>
+<div class="line"><a name="l00332"></a><span class="lineno">  332</span>&#160;<span class="preprocessor">#       endif</span></div>
+<div class="line"><a name="l00333"></a><span class="lineno">  333</span>&#160; </div>
+<div class="line"><a name="l00334"></a><span class="lineno">  334</span>&#160;<span class="preprocessor">#       if(__has_feature(cxx_nonstatic_member_init))</span></div>
+<div class="line"><a name="l00335"></a><span class="lineno">  335</span>&#160;<span class="preprocessor">#               define GLM_CXX11_NONSTATIC_MEMBER_INIT</span></div>
+<div class="line"><a name="l00336"></a><span class="lineno">  336</span>&#160;<span class="preprocessor">#       endif</span></div>
+<div class="line"><a name="l00337"></a><span class="lineno">  337</span>&#160; </div>
+<div class="line"><a name="l00338"></a><span class="lineno">  338</span>&#160;<span class="preprocessor">#       if(__has_feature(cxx_nullptr))</span></div>
+<div class="line"><a name="l00339"></a><span class="lineno">  339</span>&#160;<span class="preprocessor">#               define GLM_CXX11_NULLPTR</span></div>
+<div class="line"><a name="l00340"></a><span class="lineno">  340</span>&#160;<span class="preprocessor">#       endif</span></div>
+<div class="line"><a name="l00341"></a><span class="lineno">  341</span>&#160; </div>
+<div class="line"><a name="l00342"></a><span class="lineno">  342</span>&#160;<span class="preprocessor">#       if(__has_feature(cxx_override_control))</span></div>
+<div class="line"><a name="l00343"></a><span class="lineno">  343</span>&#160;<span class="preprocessor">#               define GLM_CXX11_OVERRIDE_CONTROL</span></div>
+<div class="line"><a name="l00344"></a><span class="lineno">  344</span>&#160;<span class="preprocessor">#       endif</span></div>
+<div class="line"><a name="l00345"></a><span class="lineno">  345</span>&#160; </div>
+<div class="line"><a name="l00346"></a><span class="lineno">  346</span>&#160;<span class="preprocessor">#       if(__has_feature(cxx_reference_qualified_functions))</span></div>
+<div class="line"><a name="l00347"></a><span class="lineno">  347</span>&#160;<span class="preprocessor">#               define GLM_CXX11_REFERENCE_QUALIFIED_FUNCTIONS</span></div>
+<div class="line"><a name="l00348"></a><span class="lineno">  348</span>&#160;<span class="preprocessor">#       endif</span></div>
+<div class="line"><a name="l00349"></a><span class="lineno">  349</span>&#160; </div>
+<div class="line"><a name="l00350"></a><span class="lineno">  350</span>&#160;<span class="preprocessor">#       if(__has_feature(cxx_range_for))</span></div>
+<div class="line"><a name="l00351"></a><span class="lineno">  351</span>&#160;<span class="preprocessor">#               define GLM_CXX11_RANGE_FOR</span></div>
+<div class="line"><a name="l00352"></a><span class="lineno">  352</span>&#160;<span class="preprocessor">#       endif</span></div>
+<div class="line"><a name="l00353"></a><span class="lineno">  353</span>&#160; </div>
+<div class="line"><a name="l00354"></a><span class="lineno">  354</span>&#160;<span class="preprocessor">#       if(__has_feature(cxx_raw_string_literals))</span></div>
+<div class="line"><a name="l00355"></a><span class="lineno">  355</span>&#160;<span class="preprocessor">#               define GLM_CXX11_RAW_STRING_LITERALS</span></div>
+<div class="line"><a name="l00356"></a><span class="lineno">  356</span>&#160;<span class="preprocessor">#       endif</span></div>
+<div class="line"><a name="l00357"></a><span class="lineno">  357</span>&#160; </div>
+<div class="line"><a name="l00358"></a><span class="lineno">  358</span>&#160;<span class="preprocessor">#       if(__has_feature(cxx_rvalue_references))</span></div>
+<div class="line"><a name="l00359"></a><span class="lineno">  359</span>&#160;<span class="preprocessor">#               define GLM_CXX11_RVALUE_REFERENCES</span></div>
+<div class="line"><a name="l00360"></a><span class="lineno">  360</span>&#160;<span class="preprocessor">#       endif</span></div>
+<div class="line"><a name="l00361"></a><span class="lineno">  361</span>&#160; </div>
+<div class="line"><a name="l00362"></a><span class="lineno">  362</span>&#160;<span class="preprocessor">#       if(__has_feature(cxx_static_assert))</span></div>
+<div class="line"><a name="l00363"></a><span class="lineno">  363</span>&#160;<span class="preprocessor">#               define GLM_CXX11_STATIC_ASSERT</span></div>
+<div class="line"><a name="l00364"></a><span class="lineno">  364</span>&#160;<span class="preprocessor">#       endif</span></div>
+<div class="line"><a name="l00365"></a><span class="lineno">  365</span>&#160; </div>
+<div class="line"><a name="l00366"></a><span class="lineno">  366</span>&#160;<span class="preprocessor">#       if(__has_feature(cxx_auto_type))</span></div>
+<div class="line"><a name="l00367"></a><span class="lineno">  367</span>&#160;<span class="preprocessor">#               define GLM_CXX11_AUTO_TYPE</span></div>
+<div class="line"><a name="l00368"></a><span class="lineno">  368</span>&#160;<span class="preprocessor">#       endif</span></div>
+<div class="line"><a name="l00369"></a><span class="lineno">  369</span>&#160; </div>
+<div class="line"><a name="l00370"></a><span class="lineno">  370</span>&#160;<span class="preprocessor">#       if(__has_feature(cxx_strong_enums))</span></div>
+<div class="line"><a name="l00371"></a><span class="lineno">  371</span>&#160;<span class="preprocessor">#               define GLM_CXX11_STRONG_ENUMS</span></div>
+<div class="line"><a name="l00372"></a><span class="lineno">  372</span>&#160;<span class="preprocessor">#       endif</span></div>
+<div class="line"><a name="l00373"></a><span class="lineno">  373</span>&#160; </div>
+<div class="line"><a name="l00374"></a><span class="lineno">  374</span>&#160;<span class="preprocessor">#       if(__has_feature(cxx_trailing_return))</span></div>
+<div class="line"><a name="l00375"></a><span class="lineno">  375</span>&#160;<span class="preprocessor">#               define GLM_CXX11_TRAILING_RETURN</span></div>
+<div class="line"><a name="l00376"></a><span class="lineno">  376</span>&#160;<span class="preprocessor">#       endif</span></div>
+<div class="line"><a name="l00377"></a><span class="lineno">  377</span>&#160; </div>
+<div class="line"><a name="l00378"></a><span class="lineno">  378</span>&#160;<span class="preprocessor">#       if(__has_feature(cxx_unicode_literals))</span></div>
+<div class="line"><a name="l00379"></a><span class="lineno">  379</span>&#160;<span class="preprocessor">#               define GLM_CXX11_UNICODE_LITERALS</span></div>
+<div class="line"><a name="l00380"></a><span class="lineno">  380</span>&#160;<span class="preprocessor">#       endif</span></div>
+<div class="line"><a name="l00381"></a><span class="lineno">  381</span>&#160; </div>
+<div class="line"><a name="l00382"></a><span class="lineno">  382</span>&#160;<span class="preprocessor">#       if(__has_feature(cxx_unrestricted_unions))</span></div>
+<div class="line"><a name="l00383"></a><span class="lineno">  383</span>&#160;<span class="preprocessor">#               define GLM_CXX11_UNRESTRICTED_UNIONS</span></div>
+<div class="line"><a name="l00384"></a><span class="lineno">  384</span>&#160;<span class="preprocessor">#       endif</span></div>
+<div class="line"><a name="l00385"></a><span class="lineno">  385</span>&#160; </div>
+<div class="line"><a name="l00386"></a><span class="lineno">  386</span>&#160;<span class="preprocessor">#       if(__has_feature(cxx_user_literals))</span></div>
+<div class="line"><a name="l00387"></a><span class="lineno">  387</span>&#160;<span class="preprocessor">#               define GLM_CXX11_USER_LITERALS</span></div>
+<div class="line"><a name="l00388"></a><span class="lineno">  388</span>&#160;<span class="preprocessor">#       endif</span></div>
+<div class="line"><a name="l00389"></a><span class="lineno">  389</span>&#160; </div>
+<div class="line"><a name="l00390"></a><span class="lineno">  390</span>&#160;<span class="preprocessor">#       if(__has_feature(cxx_variadic_templates))</span></div>
+<div class="line"><a name="l00391"></a><span class="lineno">  391</span>&#160;<span class="preprocessor">#               define GLM_CXX11_VARIADIC_TEMPLATES</span></div>
+<div class="line"><a name="l00392"></a><span class="lineno">  392</span>&#160;<span class="preprocessor">#       endif</span></div>
+<div class="line"><a name="l00393"></a><span class="lineno">  393</span>&#160; </div>
+<div class="line"><a name="l00394"></a><span class="lineno">  394</span>&#160;<span class="preprocessor">#endif//(GLM_COMPILER &amp; GLM_COMPILER_CLANG)</span></div>
 </div><!-- fragment --></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.10
+</a> 1.8.18
 </small></address>
 </body>
 </html>

+ 0 - 262
doc/api/a00006_source.html

@@ -1,262 +0,0 @@
-<!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.10"/>
-<title>0.9.9 API documentation: _vectorize.hpp Source File</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="search/search.css" rel="stylesheet" type="text/css"/>
-<script type="text/javascript" src="search/searchdata.js"></script>
-<script type="text/javascript" src="search/search.js"></script>
-<script type="text/javascript">
-  $(document).ready(function() { init_search(); });
-</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 id="projectlogo"><img alt="Logo" src="logo-mini.png"/></td>
-  <td id="projectalign" style="padding-left: 0.5em;">
-   <div id="projectname">0.9.9 API documentation
-   </div>
-  </td>
- </tr>
- </tbody>
-</table>
-</div>
-<!-- end header part -->
-<!-- Generated by Doxygen 1.8.10 -->
-<script type="text/javascript">
-var searchBox = new SearchBox("searchBox", "search",false,'Search');
-</script>
-  <div id="navrow1" class="tabs">
-    <ul class="tablist">
-      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
-      <li><a href="modules.html"><span>Modules</span></a></li>
-      <li class="current"><a href="files.html"><span>Files</span></a></li>
-      <li>
-        <div id="MSearchBox" class="MSearchBoxInactive">
-        <span class="left">
-          <img id="MSearchSelect" src="search/mag_sel.png"
-               onmouseover="return searchBox.OnSearchSelectShow()"
-               onmouseout="return searchBox.OnSearchSelectHide()"
-               alt=""/>
-          <input type="text" id="MSearchField" value="Search" accesskey="S"
-               onfocus="searchBox.OnSearchFieldFocus(true)" 
-               onblur="searchBox.OnSearchFieldFocus(false)" 
-               onkeyup="searchBox.OnSearchFieldChange(event)"/>
-          </span><span class="right">
-            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
-          </span>
-        </div>
-      </li>
-    </ul>
-  </div>
-  <div id="navrow2" class="tabs2">
-    <ul class="tablist">
-      <li><a href="files.html"><span>File&#160;List</span></a></li>
-    </ul>
-  </div>
-<!-- window showing the filter options -->
-<div id="MSearchSelectWindow"
-     onmouseover="return searchBox.OnSearchSelectShow()"
-     onmouseout="return searchBox.OnSearchSelectHide()"
-     onkeydown="return searchBox.OnSearchSelectKey(event)">
-</div>
-
-<!-- iframe showing the search results (closed by default) -->
-<div id="MSearchResultsWindow">
-<iframe src="javascript:void(0)" frameborder="0" 
-        name="MSearchResults" id="MSearchResults">
-</iframe>
-</div>
-
-<div id="nav-path" class="navpath">
-  <ul>
-<li class="navelem"><a class="el" href="dir_3a581ba30d25676e4b797b1f96d53b45.html">F:</a></li><li class="navelem"><a class="el" href="dir_9e5fe034a00e89334fd5186c3e7db156.html">G-Truc</a></li><li class="navelem"><a class="el" href="dir_d9496f0844b48bc7e53b5af8c99b9ab2.html">Source</a></li><li class="navelem"><a class="el" href="dir_a8bee7be44182a33f3820393ae0b105d.html">G-Truc</a></li><li class="navelem"><a class="el" href="dir_44e5e654415abd9ca6fdeaddaff8565e.html">glm</a></li><li class="navelem"><a class="el" href="dir_cef2d71d502cb69a9252bca2297d9549.html">glm</a></li><li class="navelem"><a class="el" href="dir_033f5edb0915b828d2c46ed4804e5503.html">detail</a></li>  </ul>
-</div>
-</div><!-- top -->
-<div class="header">
-  <div class="headertitle">
-<div class="title">_vectorize.hpp</div>  </div>
-</div><!--header-->
-<div class="contents">
-<div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span>&#160;<span class="preprocessor">#pragma once</span></div>
-<div class="line"><a name="l00002"></a><span class="lineno">    2</span>&#160;</div>
-<div class="line"><a name="l00003"></a><span class="lineno">    3</span>&#160;<span class="keyword">namespace </span><a class="code" href="a00236.html">glm</a>{</div>
-<div class="line"><a name="l00004"></a><span class="lineno">    4</span>&#160;<span class="keyword">namespace </span>detail</div>
-<div class="line"><a name="l00005"></a><span class="lineno">    5</span>&#160;{</div>
-<div class="line"><a name="l00006"></a><span class="lineno">    6</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">template</span>&lt;length_t L, <span class="keyword">typename</span> T, qualifier Q&gt; <span class="keyword">class </span>vec, length_t L, <span class="keyword">typename</span> R, <span class="keyword">typename</span> T, qualifier Q&gt;</div>
-<div class="line"><a name="l00007"></a><span class="lineno">    7</span>&#160;        <span class="keyword">struct </span>functor1{};</div>
-<div class="line"><a name="l00008"></a><span class="lineno">    8</span>&#160;</div>
-<div class="line"><a name="l00009"></a><span class="lineno">    9</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">template</span>&lt;length_t L, <span class="keyword">typename</span> T, qualifier Q&gt; <span class="keyword">class </span>vec, <span class="keyword">typename</span> R, <span class="keyword">typename</span> T, qualifier Q&gt;</div>
-<div class="line"><a name="l00010"></a><span class="lineno">   10</span>&#160;        <span class="keyword">struct </span>functor1&lt;vec, 1, R, T, Q&gt;</div>
-<div class="line"><a name="l00011"></a><span class="lineno">   11</span>&#160;        {</div>
-<div class="line"><a name="l00012"></a><span class="lineno">   12</span>&#160;                GLM_FUNC_QUALIFIER GLM_CONSTEXPR <span class="keyword">static</span> vec&lt;1, R, Q&gt; call(R (*Func) (T x), vec&lt;1, T, Q&gt; <span class="keyword">const</span>&amp; v)</div>
-<div class="line"><a name="l00013"></a><span class="lineno">   13</span>&#160;                {</div>
-<div class="line"><a name="l00014"></a><span class="lineno">   14</span>&#160;                        <span class="keywordflow">return</span> vec&lt;1, R, Q&gt;(Func(v.x));</div>
-<div class="line"><a name="l00015"></a><span class="lineno">   15</span>&#160;                }</div>
-<div class="line"><a name="l00016"></a><span class="lineno">   16</span>&#160;        };</div>
-<div class="line"><a name="l00017"></a><span class="lineno">   17</span>&#160;</div>
-<div class="line"><a name="l00018"></a><span class="lineno">   18</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">template</span>&lt;length_t L, <span class="keyword">typename</span> T, qualifier Q&gt; <span class="keyword">class </span>vec, <span class="keyword">typename</span> R, <span class="keyword">typename</span> T, qualifier Q&gt;</div>
-<div class="line"><a name="l00019"></a><span class="lineno">   19</span>&#160;        <span class="keyword">struct </span>functor1&lt;vec, 2, R, T, Q&gt;</div>
-<div class="line"><a name="l00020"></a><span class="lineno">   20</span>&#160;        {</div>
-<div class="line"><a name="l00021"></a><span class="lineno">   21</span>&#160;                GLM_FUNC_QUALIFIER GLM_CONSTEXPR <span class="keyword">static</span> vec&lt;2, R, Q&gt; call(R (*Func) (T x), vec&lt;2, T, Q&gt; <span class="keyword">const</span>&amp; v)</div>
-<div class="line"><a name="l00022"></a><span class="lineno">   22</span>&#160;                {</div>
-<div class="line"><a name="l00023"></a><span class="lineno">   23</span>&#160;                        <span class="keywordflow">return</span> vec&lt;2, R, Q&gt;(Func(v.x), Func(v.y));</div>
-<div class="line"><a name="l00024"></a><span class="lineno">   24</span>&#160;                }</div>
-<div class="line"><a name="l00025"></a><span class="lineno">   25</span>&#160;        };</div>
-<div class="line"><a name="l00026"></a><span class="lineno">   26</span>&#160;</div>
-<div class="line"><a name="l00027"></a><span class="lineno">   27</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">template</span>&lt;length_t L, <span class="keyword">typename</span> T, qualifier Q&gt; <span class="keyword">class </span>vec, <span class="keyword">typename</span> R, <span class="keyword">typename</span> T, qualifier Q&gt;</div>
-<div class="line"><a name="l00028"></a><span class="lineno">   28</span>&#160;        <span class="keyword">struct </span>functor1&lt;vec, 3, R, T, Q&gt;</div>
-<div class="line"><a name="l00029"></a><span class="lineno">   29</span>&#160;        {</div>
-<div class="line"><a name="l00030"></a><span class="lineno">   30</span>&#160;                GLM_FUNC_QUALIFIER GLM_CONSTEXPR <span class="keyword">static</span> vec&lt;3, R, Q&gt; call(R (*Func) (T x), vec&lt;3, T, Q&gt; <span class="keyword">const</span>&amp; v)</div>
-<div class="line"><a name="l00031"></a><span class="lineno">   31</span>&#160;                {</div>
-<div class="line"><a name="l00032"></a><span class="lineno">   32</span>&#160;                        <span class="keywordflow">return</span> vec&lt;3, R, Q&gt;(Func(v.x), Func(v.y), Func(v.z));</div>
-<div class="line"><a name="l00033"></a><span class="lineno">   33</span>&#160;                }</div>
-<div class="line"><a name="l00034"></a><span class="lineno">   34</span>&#160;        };</div>
-<div class="line"><a name="l00035"></a><span class="lineno">   35</span>&#160;</div>
-<div class="line"><a name="l00036"></a><span class="lineno">   36</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">template</span>&lt;length_t L, <span class="keyword">typename</span> T, qualifier Q&gt; <span class="keyword">class </span>vec, <span class="keyword">typename</span> R, <span class="keyword">typename</span> T, qualifier Q&gt;</div>
-<div class="line"><a name="l00037"></a><span class="lineno">   37</span>&#160;        <span class="keyword">struct </span>functor1&lt;vec, 4, R, T, Q&gt;</div>
-<div class="line"><a name="l00038"></a><span class="lineno">   38</span>&#160;        {</div>
-<div class="line"><a name="l00039"></a><span class="lineno">   39</span>&#160;                GLM_FUNC_QUALIFIER GLM_CONSTEXPR <span class="keyword">static</span> vec&lt;4, R, Q&gt; call(R (*Func) (T x), vec&lt;4, T, Q&gt; <span class="keyword">const</span>&amp; v)</div>
-<div class="line"><a name="l00040"></a><span class="lineno">   40</span>&#160;                {</div>
-<div class="line"><a name="l00041"></a><span class="lineno">   41</span>&#160;                        <span class="keywordflow">return</span> vec&lt;4, R, Q&gt;(Func(v.x), Func(v.y), Func(v.z), Func(v.w));</div>
-<div class="line"><a name="l00042"></a><span class="lineno">   42</span>&#160;                }</div>
-<div class="line"><a name="l00043"></a><span class="lineno">   43</span>&#160;        };</div>
-<div class="line"><a name="l00044"></a><span class="lineno">   44</span>&#160;</div>
-<div class="line"><a name="l00045"></a><span class="lineno">   45</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">template</span>&lt;length_t L, <span class="keyword">typename</span> T, qualifier Q&gt; <span class="keyword">class </span>vec, length_t L, <span class="keyword">typename</span> T, qualifier Q&gt;</div>
-<div class="line"><a name="l00046"></a><span class="lineno">   46</span>&#160;        <span class="keyword">struct </span>functor2{};</div>
-<div class="line"><a name="l00047"></a><span class="lineno">   47</span>&#160;</div>
-<div class="line"><a name="l00048"></a><span class="lineno">   48</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">template</span>&lt;length_t L, <span class="keyword">typename</span> T, qualifier Q&gt; <span class="keyword">class </span>vec, <span class="keyword">typename</span> T, qualifier Q&gt;</div>
-<div class="line"><a name="l00049"></a><span class="lineno">   49</span>&#160;        <span class="keyword">struct </span>functor2&lt;vec, 1, T, Q&gt;</div>
-<div class="line"><a name="l00050"></a><span class="lineno">   50</span>&#160;        {</div>
-<div class="line"><a name="l00051"></a><span class="lineno">   51</span>&#160;                GLM_FUNC_QUALIFIER <span class="keyword">static</span> vec&lt;1, T, Q&gt; call(T (*Func) (T x, T y), vec&lt;1, T, Q&gt; <span class="keyword">const</span>&amp; a, vec&lt;1, T, Q&gt; <span class="keyword">const</span>&amp; b)</div>
-<div class="line"><a name="l00052"></a><span class="lineno">   52</span>&#160;                {</div>
-<div class="line"><a name="l00053"></a><span class="lineno">   53</span>&#160;                        <span class="keywordflow">return</span> vec&lt;1, T, Q&gt;(Func(a.x, b.x));</div>
-<div class="line"><a name="l00054"></a><span class="lineno">   54</span>&#160;                }</div>
-<div class="line"><a name="l00055"></a><span class="lineno">   55</span>&#160;        };</div>
-<div class="line"><a name="l00056"></a><span class="lineno">   56</span>&#160;</div>
-<div class="line"><a name="l00057"></a><span class="lineno">   57</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">template</span>&lt;length_t L, <span class="keyword">typename</span> T, qualifier Q&gt; <span class="keyword">class </span>vec, <span class="keyword">typename</span> T, qualifier Q&gt;</div>
-<div class="line"><a name="l00058"></a><span class="lineno">   58</span>&#160;        <span class="keyword">struct </span>functor2&lt;vec, 2, T, Q&gt;</div>
-<div class="line"><a name="l00059"></a><span class="lineno">   59</span>&#160;        {</div>
-<div class="line"><a name="l00060"></a><span class="lineno">   60</span>&#160;                GLM_FUNC_QUALIFIER <span class="keyword">static</span> vec&lt;2, T, Q&gt; call(T (*Func) (T x, T y), vec&lt;2, T, Q&gt; <span class="keyword">const</span>&amp; a, vec&lt;2, T, Q&gt; <span class="keyword">const</span>&amp; b)</div>
-<div class="line"><a name="l00061"></a><span class="lineno">   61</span>&#160;                {</div>
-<div class="line"><a name="l00062"></a><span class="lineno">   62</span>&#160;                        <span class="keywordflow">return</span> vec&lt;2, T, Q&gt;(Func(a.x, b.x), Func(a.y, b.y));</div>
-<div class="line"><a name="l00063"></a><span class="lineno">   63</span>&#160;                }</div>
-<div class="line"><a name="l00064"></a><span class="lineno">   64</span>&#160;        };</div>
-<div class="line"><a name="l00065"></a><span class="lineno">   65</span>&#160;</div>
-<div class="line"><a name="l00066"></a><span class="lineno">   66</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">template</span>&lt;length_t L, <span class="keyword">typename</span> T, qualifier Q&gt; <span class="keyword">class </span>vec, <span class="keyword">typename</span> T, qualifier Q&gt;</div>
-<div class="line"><a name="l00067"></a><span class="lineno">   67</span>&#160;        <span class="keyword">struct </span>functor2&lt;vec, 3, T, Q&gt;</div>
-<div class="line"><a name="l00068"></a><span class="lineno">   68</span>&#160;        {</div>
-<div class="line"><a name="l00069"></a><span class="lineno">   69</span>&#160;                GLM_FUNC_QUALIFIER <span class="keyword">static</span> vec&lt;3, T, Q&gt; call(T (*Func) (T x, T y), vec&lt;3, T, Q&gt; <span class="keyword">const</span>&amp; a, vec&lt;3, T, Q&gt; <span class="keyword">const</span>&amp; b)</div>
-<div class="line"><a name="l00070"></a><span class="lineno">   70</span>&#160;                {</div>
-<div class="line"><a name="l00071"></a><span class="lineno">   71</span>&#160;                        <span class="keywordflow">return</span> vec&lt;3, T, Q&gt;(Func(a.x, b.x), Func(a.y, b.y), Func(a.z, b.z));</div>
-<div class="line"><a name="l00072"></a><span class="lineno">   72</span>&#160;                }</div>
-<div class="line"><a name="l00073"></a><span class="lineno">   73</span>&#160;        };</div>
-<div class="line"><a name="l00074"></a><span class="lineno">   74</span>&#160;</div>
-<div class="line"><a name="l00075"></a><span class="lineno">   75</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">template</span>&lt;length_t L, <span class="keyword">typename</span> T, qualifier Q&gt; <span class="keyword">class </span>vec, <span class="keyword">typename</span> T, qualifier Q&gt;</div>
-<div class="line"><a name="l00076"></a><span class="lineno">   76</span>&#160;        <span class="keyword">struct </span>functor2&lt;vec, 4, T, Q&gt;</div>
-<div class="line"><a name="l00077"></a><span class="lineno">   77</span>&#160;        {</div>
-<div class="line"><a name="l00078"></a><span class="lineno">   78</span>&#160;                GLM_FUNC_QUALIFIER <span class="keyword">static</span> vec&lt;4, T, Q&gt; call(T (*Func) (T x, T y), vec&lt;4, T, Q&gt; <span class="keyword">const</span>&amp; a, vec&lt;4, T, Q&gt; <span class="keyword">const</span>&amp; b)</div>
-<div class="line"><a name="l00079"></a><span class="lineno">   79</span>&#160;                {</div>
-<div class="line"><a name="l00080"></a><span class="lineno">   80</span>&#160;                        <span class="keywordflow">return</span> vec&lt;4, T, Q&gt;(Func(a.x, b.x), Func(a.y, b.y), Func(a.z, b.z), Func(a.w, b.w));</div>
-<div class="line"><a name="l00081"></a><span class="lineno">   81</span>&#160;                }</div>
-<div class="line"><a name="l00082"></a><span class="lineno">   82</span>&#160;        };</div>
-<div class="line"><a name="l00083"></a><span class="lineno">   83</span>&#160;</div>
-<div class="line"><a name="l00084"></a><span class="lineno">   84</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">template</span>&lt;length_t L, <span class="keyword">typename</span> T, qualifier Q&gt; <span class="keyword">class </span>vec, length_t L, <span class="keyword">typename</span> T, qualifier Q&gt;</div>
-<div class="line"><a name="l00085"></a><span class="lineno">   85</span>&#160;        <span class="keyword">struct </span>functor2_vec_sca{};</div>
-<div class="line"><a name="l00086"></a><span class="lineno">   86</span>&#160;</div>
-<div class="line"><a name="l00087"></a><span class="lineno">   87</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">template</span>&lt;length_t L, <span class="keyword">typename</span> T, qualifier Q&gt; <span class="keyword">class </span>vec, <span class="keyword">typename</span> T, qualifier Q&gt;</div>
-<div class="line"><a name="l00088"></a><span class="lineno">   88</span>&#160;        <span class="keyword">struct </span>functor2_vec_sca&lt;vec, 1, T, Q&gt;</div>
-<div class="line"><a name="l00089"></a><span class="lineno">   89</span>&#160;        {</div>
-<div class="line"><a name="l00090"></a><span class="lineno">   90</span>&#160;                GLM_FUNC_QUALIFIER <span class="keyword">static</span> vec&lt;1, T, Q&gt; call(T (*Func) (T x, T y), vec&lt;1, T, Q&gt; <span class="keyword">const</span>&amp; a, T b)</div>
-<div class="line"><a name="l00091"></a><span class="lineno">   91</span>&#160;                {</div>
-<div class="line"><a name="l00092"></a><span class="lineno">   92</span>&#160;                        <span class="keywordflow">return</span> vec&lt;1, T, Q&gt;(Func(a.x, b));</div>
-<div class="line"><a name="l00093"></a><span class="lineno">   93</span>&#160;                }</div>
-<div class="line"><a name="l00094"></a><span class="lineno">   94</span>&#160;        };</div>
-<div class="line"><a name="l00095"></a><span class="lineno">   95</span>&#160;</div>
-<div class="line"><a name="l00096"></a><span class="lineno">   96</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">template</span>&lt;length_t L, <span class="keyword">typename</span> T, qualifier Q&gt; <span class="keyword">class </span>vec, <span class="keyword">typename</span> T, qualifier Q&gt;</div>
-<div class="line"><a name="l00097"></a><span class="lineno">   97</span>&#160;        <span class="keyword">struct </span>functor2_vec_sca&lt;vec, 2, T, Q&gt;</div>
-<div class="line"><a name="l00098"></a><span class="lineno">   98</span>&#160;        {</div>
-<div class="line"><a name="l00099"></a><span class="lineno">   99</span>&#160;                GLM_FUNC_QUALIFIER <span class="keyword">static</span> vec&lt;2, T, Q&gt; call(T (*Func) (T x, T y), vec&lt;2, T, Q&gt; <span class="keyword">const</span>&amp; a, T b)</div>
-<div class="line"><a name="l00100"></a><span class="lineno">  100</span>&#160;                {</div>
-<div class="line"><a name="l00101"></a><span class="lineno">  101</span>&#160;                        <span class="keywordflow">return</span> vec&lt;2, T, Q&gt;(Func(a.x, b), Func(a.y, b));</div>
-<div class="line"><a name="l00102"></a><span class="lineno">  102</span>&#160;                }</div>
-<div class="line"><a name="l00103"></a><span class="lineno">  103</span>&#160;        };</div>
-<div class="line"><a name="l00104"></a><span class="lineno">  104</span>&#160;</div>
-<div class="line"><a name="l00105"></a><span class="lineno">  105</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">template</span>&lt;length_t L, <span class="keyword">typename</span> T, qualifier Q&gt; <span class="keyword">class </span>vec, <span class="keyword">typename</span> T, qualifier Q&gt;</div>
-<div class="line"><a name="l00106"></a><span class="lineno">  106</span>&#160;        <span class="keyword">struct </span>functor2_vec_sca&lt;vec, 3, T, Q&gt;</div>
-<div class="line"><a name="l00107"></a><span class="lineno">  107</span>&#160;        {</div>
-<div class="line"><a name="l00108"></a><span class="lineno">  108</span>&#160;                GLM_FUNC_QUALIFIER <span class="keyword">static</span> vec&lt;3, T, Q&gt; call(T (*Func) (T x, T y), vec&lt;3, T, Q&gt; <span class="keyword">const</span>&amp; a, T b)</div>
-<div class="line"><a name="l00109"></a><span class="lineno">  109</span>&#160;                {</div>
-<div class="line"><a name="l00110"></a><span class="lineno">  110</span>&#160;                        <span class="keywordflow">return</span> vec&lt;3, T, Q&gt;(Func(a.x, b), Func(a.y, b), Func(a.z, b));</div>
-<div class="line"><a name="l00111"></a><span class="lineno">  111</span>&#160;                }</div>
-<div class="line"><a name="l00112"></a><span class="lineno">  112</span>&#160;        };</div>
-<div class="line"><a name="l00113"></a><span class="lineno">  113</span>&#160;</div>
-<div class="line"><a name="l00114"></a><span class="lineno">  114</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">template</span>&lt;length_t L, <span class="keyword">typename</span> T, qualifier Q&gt; <span class="keyword">class </span>vec, <span class="keyword">typename</span> T, qualifier Q&gt;</div>
-<div class="line"><a name="l00115"></a><span class="lineno">  115</span>&#160;        <span class="keyword">struct </span>functor2_vec_sca&lt;vec, 4, T, Q&gt;</div>
-<div class="line"><a name="l00116"></a><span class="lineno">  116</span>&#160;        {</div>
-<div class="line"><a name="l00117"></a><span class="lineno">  117</span>&#160;                GLM_FUNC_QUALIFIER <span class="keyword">static</span> vec&lt;4, T, Q&gt; call(T (*Func) (T x, T y), vec&lt;4, T, Q&gt; <span class="keyword">const</span>&amp; a, T b)</div>
-<div class="line"><a name="l00118"></a><span class="lineno">  118</span>&#160;                {</div>
-<div class="line"><a name="l00119"></a><span class="lineno">  119</span>&#160;                        <span class="keywordflow">return</span> vec&lt;4, T, Q&gt;(Func(a.x, b), Func(a.y, b), Func(a.z, b), Func(a.w, b));</div>
-<div class="line"><a name="l00120"></a><span class="lineno">  120</span>&#160;                }</div>
-<div class="line"><a name="l00121"></a><span class="lineno">  121</span>&#160;        };</div>
-<div class="line"><a name="l00122"></a><span class="lineno">  122</span>&#160;</div>
-<div class="line"><a name="l00123"></a><span class="lineno">  123</span>&#160;        <span class="keyword">template</span>&lt;length_t L, <span class="keyword">typename</span> T, qualifier Q&gt;</div>
-<div class="line"><a name="l00124"></a><span class="lineno">  124</span>&#160;        <span class="keyword">struct </span>functor2_vec_int {};</div>
-<div class="line"><a name="l00125"></a><span class="lineno">  125</span>&#160;</div>
-<div class="line"><a name="l00126"></a><span class="lineno">  126</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T, qualifier Q&gt;</div>
-<div class="line"><a name="l00127"></a><span class="lineno">  127</span>&#160;        <span class="keyword">struct </span>functor2_vec_int&lt;1, T, Q&gt;</div>
-<div class="line"><a name="l00128"></a><span class="lineno">  128</span>&#160;        {</div>
-<div class="line"><a name="l00129"></a><span class="lineno">  129</span>&#160;                GLM_FUNC_QUALIFIER <span class="keyword">static</span> vec&lt;1, int, Q&gt; call(<span class="keywordtype">int</span> (*Func) (T x, <span class="keywordtype">int</span> y), vec&lt;1, T, Q&gt; <span class="keyword">const</span>&amp; a, vec&lt;1, int, Q&gt; <span class="keyword">const</span>&amp; b)</div>
-<div class="line"><a name="l00130"></a><span class="lineno">  130</span>&#160;                {</div>
-<div class="line"><a name="l00131"></a><span class="lineno">  131</span>&#160;                        <span class="keywordflow">return</span> vec&lt;1, int, Q&gt;(Func(a.x, b.x));</div>
-<div class="line"><a name="l00132"></a><span class="lineno">  132</span>&#160;                }</div>
-<div class="line"><a name="l00133"></a><span class="lineno">  133</span>&#160;        };</div>
-<div class="line"><a name="l00134"></a><span class="lineno">  134</span>&#160;</div>
-<div class="line"><a name="l00135"></a><span class="lineno">  135</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T, qualifier Q&gt;</div>
-<div class="line"><a name="l00136"></a><span class="lineno">  136</span>&#160;        <span class="keyword">struct </span>functor2_vec_int&lt;2, T, Q&gt;</div>
-<div class="line"><a name="l00137"></a><span class="lineno">  137</span>&#160;        {</div>
-<div class="line"><a name="l00138"></a><span class="lineno">  138</span>&#160;                GLM_FUNC_QUALIFIER <span class="keyword">static</span> vec&lt;2, int, Q&gt; call(<span class="keywordtype">int</span> (*Func) (T x, <span class="keywordtype">int</span> y), vec&lt;2, T, Q&gt; <span class="keyword">const</span>&amp; a, vec&lt;2, int, Q&gt; <span class="keyword">const</span>&amp; b)</div>
-<div class="line"><a name="l00139"></a><span class="lineno">  139</span>&#160;                {</div>
-<div class="line"><a name="l00140"></a><span class="lineno">  140</span>&#160;                        <span class="keywordflow">return</span> vec&lt;2, int, Q&gt;(Func(a.x, b.x), Func(a.y, b.y));</div>
-<div class="line"><a name="l00141"></a><span class="lineno">  141</span>&#160;                }</div>
-<div class="line"><a name="l00142"></a><span class="lineno">  142</span>&#160;        };</div>
-<div class="line"><a name="l00143"></a><span class="lineno">  143</span>&#160;</div>
-<div class="line"><a name="l00144"></a><span class="lineno">  144</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T, qualifier Q&gt;</div>
-<div class="line"><a name="l00145"></a><span class="lineno">  145</span>&#160;        <span class="keyword">struct </span>functor2_vec_int&lt;3, T, Q&gt;</div>
-<div class="line"><a name="l00146"></a><span class="lineno">  146</span>&#160;        {</div>
-<div class="line"><a name="l00147"></a><span class="lineno">  147</span>&#160;                GLM_FUNC_QUALIFIER <span class="keyword">static</span> vec&lt;3, int, Q&gt; call(<span class="keywordtype">int</span> (*Func) (T x, <span class="keywordtype">int</span> y), vec&lt;3, T, Q&gt; <span class="keyword">const</span>&amp; a, vec&lt;3, int, Q&gt; <span class="keyword">const</span>&amp; b)</div>
-<div class="line"><a name="l00148"></a><span class="lineno">  148</span>&#160;                {</div>
-<div class="line"><a name="l00149"></a><span class="lineno">  149</span>&#160;                        <span class="keywordflow">return</span> vec&lt;3, int, Q&gt;(Func(a.x, b.x), Func(a.y, b.y), Func(a.z, b.z));</div>
-<div class="line"><a name="l00150"></a><span class="lineno">  150</span>&#160;                }</div>
-<div class="line"><a name="l00151"></a><span class="lineno">  151</span>&#160;        };</div>
-<div class="line"><a name="l00152"></a><span class="lineno">  152</span>&#160;</div>
-<div class="line"><a name="l00153"></a><span class="lineno">  153</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T, qualifier Q&gt;</div>
-<div class="line"><a name="l00154"></a><span class="lineno">  154</span>&#160;        <span class="keyword">struct </span>functor2_vec_int&lt;4, T, Q&gt;</div>
-<div class="line"><a name="l00155"></a><span class="lineno">  155</span>&#160;        {</div>
-<div class="line"><a name="l00156"></a><span class="lineno">  156</span>&#160;                GLM_FUNC_QUALIFIER <span class="keyword">static</span> vec&lt;4, int, Q&gt; call(<span class="keywordtype">int</span> (*Func) (T x, <span class="keywordtype">int</span> y), vec&lt;4, T, Q&gt; <span class="keyword">const</span>&amp; a, vec&lt;4, int, Q&gt; <span class="keyword">const</span>&amp; b)</div>
-<div class="line"><a name="l00157"></a><span class="lineno">  157</span>&#160;                {</div>
-<div class="line"><a name="l00158"></a><span class="lineno">  158</span>&#160;                        <span class="keywordflow">return</span> vec&lt;4, int, Q&gt;(Func(a.x, b.x), Func(a.y, b.y), Func(a.z, b.z), Func(a.w, b.w));</div>
-<div class="line"><a name="l00159"></a><span class="lineno">  159</span>&#160;                }</div>
-<div class="line"><a name="l00160"></a><span class="lineno">  160</span>&#160;        };</div>
-<div class="line"><a name="l00161"></a><span class="lineno">  161</span>&#160;}<span class="comment">//namespace detail</span></div>
-<div class="line"><a name="l00162"></a><span class="lineno">  162</span>&#160;}<span class="comment">//namespace glm</span></div>
-<div class="ttc" id="a00236_html"><div class="ttname"><a href="a00236.html">glm</a></div><div class="ttdef"><b>Definition:</b> <a href="a00015_source.html#l00020">common.hpp:20</a></div></div>
-</div><!-- fragment --></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.10
-</small></address>
-</body>
-</html>

+ 43 - 94
doc/api/a00008_source.html

@@ -1,19 +1,17 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://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.10"/>
-<title>0.9.9 API documentation: bit.hpp Source File</title>
+<meta name="generator" content="Doxygen 1.8.18"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>1.0.0 API documentation: _fixes.hpp Source File</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="search/search.css" rel="stylesheet" type="text/css"/>
 <script type="text/javascript" src="search/searchdata.js"></script>
 <script type="text/javascript" src="search/search.js"></script>
-<script type="text/javascript">
-  $(document).ready(function() { init_search(); });
-</script>
 <link href="doxygen.css" rel="stylesheet" type="text/css" />
 </head>
 <body>
@@ -24,7 +22,7 @@
  <tr style="height: 56px;">
   <td id="projectlogo"><img alt="Logo" src="logo-mini.png"/></td>
   <td id="projectalign" style="padding-left: 0.5em;">
-   <div id="projectname">0.9.9 API documentation
+   <div id="projectname">1.0.0 API documentation
    </div>
   </td>
  </tr>
@@ -32,38 +30,22 @@
 </table>
 </div>
 <!-- end header part -->
-<!-- Generated by Doxygen 1.8.10 -->
+<!-- Generated by Doxygen 1.8.18 -->
 <script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
 var searchBox = new SearchBox("searchBox", "search",false,'Search');
+/* @license-end */
 </script>
-  <div id="navrow1" class="tabs">
-    <ul class="tablist">
-      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
-      <li><a href="modules.html"><span>Modules</span></a></li>
-      <li class="current"><a href="files.html"><span>Files</span></a></li>
-      <li>
-        <div id="MSearchBox" class="MSearchBoxInactive">
-        <span class="left">
-          <img id="MSearchSelect" src="search/mag_sel.png"
-               onmouseover="return searchBox.OnSearchSelectShow()"
-               onmouseout="return searchBox.OnSearchSelectHide()"
-               alt=""/>
-          <input type="text" id="MSearchField" value="Search" accesskey="S"
-               onfocus="searchBox.OnSearchFieldFocus(true)" 
-               onblur="searchBox.OnSearchFieldFocus(false)" 
-               onkeyup="searchBox.OnSearchFieldChange(event)"/>
-          </span><span class="right">
-            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
-          </span>
-        </div>
-      </li>
-    </ul>
-  </div>
-  <div id="navrow2" class="tabs2">
-    <ul class="tablist">
-      <li><a href="files.html"><span>File&#160;List</span></a></li>
-    </ul>
-  </div>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
 <!-- window showing the filter options -->
 <div id="MSearchSelectWindow"
      onmouseover="return searchBox.OnSearchSelectShow()"
@@ -80,75 +62,42 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 
 <div id="nav-path" class="navpath">
   <ul>
-<li class="navelem"><a class="el" href="dir_3a581ba30d25676e4b797b1f96d53b45.html">F:</a></li><li class="navelem"><a class="el" href="dir_9e5fe034a00e89334fd5186c3e7db156.html">G-Truc</a></li><li class="navelem"><a class="el" href="dir_d9496f0844b48bc7e53b5af8c99b9ab2.html">Source</a></li><li class="navelem"><a class="el" href="dir_a8bee7be44182a33f3820393ae0b105d.html">G-Truc</a></li><li class="navelem"><a class="el" href="dir_44e5e654415abd9ca6fdeaddaff8565e.html">glm</a></li><li class="navelem"><a class="el" href="dir_cef2d71d502cb69a9252bca2297d9549.html">glm</a></li><li class="navelem"><a class="el" href="dir_f35778ec600a1b9bbc4524e62e226aa2.html">gtx</a></li>  </ul>
+<li class="navelem"><a class="el" href="dir_885cc87fac2d91e269af0a5a959fa5f6.html">E:</a></li><li class="navelem"><a class="el" href="dir_63ed049134a778d525e06b63afc2c979.html">Github</a></li><li class="navelem"><a class="el" href="dir_c98a9ac98258ab9f831b188d66361a70.html">g-truc</a></li><li class="navelem"><a class="el" href="dir_50f12b6ceb23d7f6adfb377a1ae8b006.html">glm</a></li><li class="navelem"><a class="el" href="dir_fca33f1b5115d46f42c670590789c0d2.html">glm</a></li><li class="navelem"><a class="el" href="dir_382f4fd018b81be8753cb53c0a41a09a.html">detail</a></li>  </ul>
 </div>
 </div><!-- top -->
 <div class="header">
   <div class="headertitle">
-<div class="title">bit.hpp</div>  </div>
+<div class="title">_fixes.hpp</div>  </div>
 </div><!--header-->
 <div class="contents">
-<a href="a00008.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span>&#160;</div>
-<div class="line"><a name="l00013"></a><span class="lineno">   13</span>&#160;<span class="preprocessor">#pragma once</span></div>
-<div class="line"><a name="l00014"></a><span class="lineno">   14</span>&#160;</div>
-<div class="line"><a name="l00015"></a><span class="lineno">   15</span>&#160;<span class="comment">// Dependencies</span></div>
-<div class="line"><a name="l00016"></a><span class="lineno">   16</span>&#160;<span class="preprocessor">#include &quot;../gtc/bitfield.hpp&quot;</span></div>
-<div class="line"><a name="l00017"></a><span class="lineno">   17</span>&#160;</div>
-<div class="line"><a name="l00018"></a><span class="lineno">   18</span>&#160;<span class="preprocessor">#if GLM_MESSAGES == GLM_ENABLE &amp;&amp; !defined(GLM_EXT_INCLUDED)</span></div>
-<div class="line"><a name="l00019"></a><span class="lineno">   19</span>&#160;<span class="preprocessor">#       ifndef GLM_ENABLE_EXPERIMENTAL</span></div>
-<div class="line"><a name="l00020"></a><span class="lineno">   20</span>&#160;<span class="preprocessor">#               pragma message(&quot;GLM: GLM_GTX_bit is an experimental extension and may change in the future. Use #define GLM_ENABLE_EXPERIMENTAL before including it, if you really want to use it.&quot;)</span></div>
-<div class="line"><a name="l00021"></a><span class="lineno">   21</span>&#160;<span class="preprocessor">#       else</span></div>
-<div class="line"><a name="l00022"></a><span class="lineno">   22</span>&#160;<span class="preprocessor">#               pragma message(&quot;GLM: GLM_GTX_bit extension included&quot;)</span></div>
-<div class="line"><a name="l00023"></a><span class="lineno">   23</span>&#160;<span class="preprocessor">#       endif</span></div>
-<div class="line"><a name="l00024"></a><span class="lineno">   24</span>&#160;<span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00025"></a><span class="lineno">   25</span>&#160;</div>
-<div class="line"><a name="l00026"></a><span class="lineno">   26</span>&#160;<span class="keyword">namespace </span><a class="code" href="a00236.html">glm</a></div>
-<div class="line"><a name="l00027"></a><span class="lineno">   27</span>&#160;{</div>
-<div class="line"><a name="l00030"></a><span class="lineno">   30</span>&#160;</div>
-<div class="line"><a name="l00032"></a><span class="lineno">   32</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> genIUType&gt;</div>
-<div class="line"><a name="l00033"></a><span class="lineno">   33</span>&#160;        GLM_FUNC_DECL genIUType <a class="code" href="a00309.html#ga898ef075ccf809a1e480faab48fe96bf">highestBitValue</a>(genIUType Value);</div>
-<div class="line"><a name="l00034"></a><span class="lineno">   34</span>&#160;</div>
-<div class="line"><a name="l00036"></a><span class="lineno">   36</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> genIUType&gt;</div>
-<div class="line"><a name="l00037"></a><span class="lineno">   37</span>&#160;        GLM_FUNC_DECL genIUType <a class="code" href="a00309.html#ga2ff6568089f3a9b67f5c30918855fc6f">lowestBitValue</a>(genIUType Value);</div>
-<div class="line"><a name="l00038"></a><span class="lineno">   38</span>&#160;</div>
-<div class="line"><a name="l00042"></a><span class="lineno">   42</span>&#160;        <span class="keyword">template</span>&lt;length_t L, <span class="keyword">typename</span> T, qualifier Q&gt;</div>
-<div class="line"><a name="l00043"></a><span class="lineno">   43</span>&#160;        GLM_FUNC_DECL vec&lt;L, T, Q&gt; <a class="code" href="a00309.html#ga898ef075ccf809a1e480faab48fe96bf">highestBitValue</a>(vec&lt;L, T, Q&gt; <span class="keyword">const</span>&amp; value);</div>
-<div class="line"><a name="l00044"></a><span class="lineno">   44</span>&#160;</div>
-<div class="line"><a name="l00050"></a><span class="lineno">   50</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> genIUType&gt;</div>
-<div class="line"><a name="l00051"></a><span class="lineno">   51</span>&#160;        GLM_DEPRECATED GLM_FUNC_DECL genIUType <a class="code" href="a00309.html#ga2bbded187c5febfefc1e524ba31b3fab">powerOfTwoAbove</a>(genIUType Value);</div>
-<div class="line"><a name="l00052"></a><span class="lineno">   52</span>&#160;</div>
-<div class="line"><a name="l00058"></a><span class="lineno">   58</span>&#160;        <span class="keyword">template</span>&lt;length_t L, <span class="keyword">typename</span> T, qualifier Q&gt;</div>
-<div class="line"><a name="l00059"></a><span class="lineno">   59</span>&#160;        GLM_DEPRECATED GLM_FUNC_DECL vec&lt;L, T, Q&gt; <a class="code" href="a00309.html#ga2bbded187c5febfefc1e524ba31b3fab">powerOfTwoAbove</a>(vec&lt;L, T, Q&gt; <span class="keyword">const</span>&amp; value);</div>
-<div class="line"><a name="l00060"></a><span class="lineno">   60</span>&#160;</div>
-<div class="line"><a name="l00066"></a><span class="lineno">   66</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> genIUType&gt;</div>
-<div class="line"><a name="l00067"></a><span class="lineno">   67</span>&#160;        GLM_DEPRECATED GLM_FUNC_DECL genIUType <a class="code" href="a00309.html#gaf78ddcc4152c051b2a21e68fecb10980">powerOfTwoBelow</a>(genIUType Value);</div>
-<div class="line"><a name="l00068"></a><span class="lineno">   68</span>&#160;</div>
-<div class="line"><a name="l00074"></a><span class="lineno">   74</span>&#160;        <span class="keyword">template</span>&lt;length_t L, <span class="keyword">typename</span> T, qualifier Q&gt;</div>
-<div class="line"><a name="l00075"></a><span class="lineno">   75</span>&#160;        GLM_DEPRECATED GLM_FUNC_DECL vec&lt;L, T, Q&gt; <a class="code" href="a00309.html#gaf78ddcc4152c051b2a21e68fecb10980">powerOfTwoBelow</a>(vec&lt;L, T, Q&gt; <span class="keyword">const</span>&amp; value);</div>
-<div class="line"><a name="l00076"></a><span class="lineno">   76</span>&#160;</div>
-<div class="line"><a name="l00082"></a><span class="lineno">   82</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> genIUType&gt;</div>
-<div class="line"><a name="l00083"></a><span class="lineno">   83</span>&#160;        GLM_DEPRECATED GLM_FUNC_DECL genIUType <a class="code" href="a00309.html#gac87e65d11e16c3d6b91c3bcfaef7da0b">powerOfTwoNearest</a>(genIUType Value);</div>
-<div class="line"><a name="l00084"></a><span class="lineno">   84</span>&#160;</div>
-<div class="line"><a name="l00090"></a><span class="lineno">   90</span>&#160;        <span class="keyword">template</span>&lt;length_t L, <span class="keyword">typename</span> T, qualifier Q&gt;</div>
-<div class="line"><a name="l00091"></a><span class="lineno">   91</span>&#160;        GLM_DEPRECATED GLM_FUNC_DECL vec&lt;L, T, Q&gt; <a class="code" href="a00309.html#gac87e65d11e16c3d6b91c3bcfaef7da0b">powerOfTwoNearest</a>(vec&lt;L, T, Q&gt; <span class="keyword">const</span>&amp; value);</div>
-<div class="line"><a name="l00092"></a><span class="lineno">   92</span>&#160;</div>
-<div class="line"><a name="l00094"></a><span class="lineno">   94</span>&#160;} <span class="comment">//namespace glm</span></div>
-<div class="line"><a name="l00095"></a><span class="lineno">   95</span>&#160;</div>
-<div class="line"><a name="l00096"></a><span class="lineno">   96</span>&#160;</div>
-<div class="line"><a name="l00097"></a><span class="lineno">   97</span>&#160;<span class="preprocessor">#include &quot;bit.inl&quot;</span></div>
-<div class="line"><a name="l00098"></a><span class="lineno">   98</span>&#160;</div>
-<div class="ttc" id="a00309_html_ga898ef075ccf809a1e480faab48fe96bf"><div class="ttname"><a href="a00309.html#ga898ef075ccf809a1e480faab48fe96bf">glm::highestBitValue</a></div><div class="ttdeci">GLM_FUNC_DECL vec&lt; L, T, Q &gt; highestBitValue(vec&lt; L, T, Q &gt; const &amp;value)</div><div class="ttdoc">Find the highest bit set to 1 in a integer variable and return its value. </div></div>
-<div class="ttc" id="a00309_html_gaf78ddcc4152c051b2a21e68fecb10980"><div class="ttname"><a href="a00309.html#gaf78ddcc4152c051b2a21e68fecb10980">glm::powerOfTwoBelow</a></div><div class="ttdeci">GLM_DEPRECATED GLM_FUNC_DECL vec&lt; L, T, Q &gt; powerOfTwoBelow(vec&lt; L, T, Q &gt; const &amp;value)</div><div class="ttdoc">Return the power of two number which value is just lower the input value. </div></div>
-<div class="ttc" id="a00309_html_ga2bbded187c5febfefc1e524ba31b3fab"><div class="ttname"><a href="a00309.html#ga2bbded187c5febfefc1e524ba31b3fab">glm::powerOfTwoAbove</a></div><div class="ttdeci">GLM_DEPRECATED GLM_FUNC_DECL vec&lt; L, T, Q &gt; powerOfTwoAbove(vec&lt; L, T, Q &gt; const &amp;value)</div><div class="ttdoc">Return the power of two number which value is just higher the input value. </div></div>
-<div class="ttc" id="a00309_html_gac87e65d11e16c3d6b91c3bcfaef7da0b"><div class="ttname"><a href="a00309.html#gac87e65d11e16c3d6b91c3bcfaef7da0b">glm::powerOfTwoNearest</a></div><div class="ttdeci">GLM_DEPRECATED GLM_FUNC_DECL vec&lt; L, T, Q &gt; powerOfTwoNearest(vec&lt; L, T, Q &gt; const &amp;value)</div><div class="ttdoc">Return the power of two number which value is the closet to the input value. </div></div>
-<div class="ttc" id="a00309_html_ga2ff6568089f3a9b67f5c30918855fc6f"><div class="ttname"><a href="a00309.html#ga2ff6568089f3a9b67f5c30918855fc6f">glm::lowestBitValue</a></div><div class="ttdeci">GLM_FUNC_DECL genIUType lowestBitValue(genIUType Value)</div></div>
-<div class="ttc" id="a00236_html"><div class="ttname"><a href="a00236.html">glm</a></div><div class="ttdef"><b>Definition:</b> <a href="a00015_source.html#l00020">common.hpp:20</a></div></div>
+<div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span>&#160;<span class="preprocessor">#include &lt;cmath&gt;</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno">    2</span>&#160; </div>
+<div class="line"><a name="l00004"></a><span class="lineno">    4</span>&#160;<span class="preprocessor">#ifdef max</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno">    5</span>&#160;<span class="preprocessor">#undef max</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno">    6</span>&#160;<span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno">    7</span>&#160; </div>
+<div class="line"><a name="l00009"></a><span class="lineno">    9</span>&#160;<span class="preprocessor">#ifdef min</span></div>
+<div class="line"><a name="l00010"></a><span class="lineno">   10</span>&#160;<span class="preprocessor">#undef min</span></div>
+<div class="line"><a name="l00011"></a><span class="lineno">   11</span>&#160;<span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l00012"></a><span class="lineno">   12</span>&#160; </div>
+<div class="line"><a name="l00014"></a><span class="lineno">   14</span>&#160;<span class="preprocessor">#ifdef isnan</span></div>
+<div class="line"><a name="l00015"></a><span class="lineno">   15</span>&#160;<span class="preprocessor">#undef isnan</span></div>
+<div class="line"><a name="l00016"></a><span class="lineno">   16</span>&#160;<span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l00017"></a><span class="lineno">   17</span>&#160; </div>
+<div class="line"><a name="l00019"></a><span class="lineno">   19</span>&#160;<span class="preprocessor">#ifdef isinf</span></div>
+<div class="line"><a name="l00020"></a><span class="lineno">   20</span>&#160;<span class="preprocessor">#undef isinf</span></div>
+<div class="line"><a name="l00021"></a><span class="lineno">   21</span>&#160;<span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l00022"></a><span class="lineno">   22</span>&#160; </div>
+<div class="line"><a name="l00024"></a><span class="lineno">   24</span>&#160;<span class="preprocessor">#ifdef log2</span></div>
+<div class="line"><a name="l00025"></a><span class="lineno">   25</span>&#160;<span class="preprocessor">#undef log2</span></div>
+<div class="line"><a name="l00026"></a><span class="lineno">   26</span>&#160;<span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l00027"></a><span class="lineno">   27</span>&#160; </div>
 </div><!-- fragment --></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.10
+</a> 1.8.18
 </small></address>
 </body>
 </html>

+ 0 - 212
doc/api/a00009_source.html

@@ -1,212 +0,0 @@
-<!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.10"/>
-<title>0.9.9 API documentation: bitfield.hpp Source File</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="search/search.css" rel="stylesheet" type="text/css"/>
-<script type="text/javascript" src="search/searchdata.js"></script>
-<script type="text/javascript" src="search/search.js"></script>
-<script type="text/javascript">
-  $(document).ready(function() { init_search(); });
-</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 id="projectlogo"><img alt="Logo" src="logo-mini.png"/></td>
-  <td id="projectalign" style="padding-left: 0.5em;">
-   <div id="projectname">0.9.9 API documentation
-   </div>
-  </td>
- </tr>
- </tbody>
-</table>
-</div>
-<!-- end header part -->
-<!-- Generated by Doxygen 1.8.10 -->
-<script type="text/javascript">
-var searchBox = new SearchBox("searchBox", "search",false,'Search');
-</script>
-  <div id="navrow1" class="tabs">
-    <ul class="tablist">
-      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
-      <li><a href="modules.html"><span>Modules</span></a></li>
-      <li class="current"><a href="files.html"><span>Files</span></a></li>
-      <li>
-        <div id="MSearchBox" class="MSearchBoxInactive">
-        <span class="left">
-          <img id="MSearchSelect" src="search/mag_sel.png"
-               onmouseover="return searchBox.OnSearchSelectShow()"
-               onmouseout="return searchBox.OnSearchSelectHide()"
-               alt=""/>
-          <input type="text" id="MSearchField" value="Search" accesskey="S"
-               onfocus="searchBox.OnSearchFieldFocus(true)" 
-               onblur="searchBox.OnSearchFieldFocus(false)" 
-               onkeyup="searchBox.OnSearchFieldChange(event)"/>
-          </span><span class="right">
-            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
-          </span>
-        </div>
-      </li>
-    </ul>
-  </div>
-  <div id="navrow2" class="tabs2">
-    <ul class="tablist">
-      <li><a href="files.html"><span>File&#160;List</span></a></li>
-    </ul>
-  </div>
-<!-- window showing the filter options -->
-<div id="MSearchSelectWindow"
-     onmouseover="return searchBox.OnSearchSelectShow()"
-     onmouseout="return searchBox.OnSearchSelectHide()"
-     onkeydown="return searchBox.OnSearchSelectKey(event)">
-</div>
-
-<!-- iframe showing the search results (closed by default) -->
-<div id="MSearchResultsWindow">
-<iframe src="javascript:void(0)" frameborder="0" 
-        name="MSearchResults" id="MSearchResults">
-</iframe>
-</div>
-
-<div id="nav-path" class="navpath">
-  <ul>
-<li class="navelem"><a class="el" href="dir_3a581ba30d25676e4b797b1f96d53b45.html">F:</a></li><li class="navelem"><a class="el" href="dir_9e5fe034a00e89334fd5186c3e7db156.html">G-Truc</a></li><li class="navelem"><a class="el" href="dir_d9496f0844b48bc7e53b5af8c99b9ab2.html">Source</a></li><li class="navelem"><a class="el" href="dir_a8bee7be44182a33f3820393ae0b105d.html">G-Truc</a></li><li class="navelem"><a class="el" href="dir_44e5e654415abd9ca6fdeaddaff8565e.html">glm</a></li><li class="navelem"><a class="el" href="dir_cef2d71d502cb69a9252bca2297d9549.html">glm</a></li><li class="navelem"><a class="el" href="dir_4c6bd29c73fa4e5a2509e1c15f846751.html">gtc</a></li>  </ul>
-</div>
-</div><!-- top -->
-<div class="header">
-  <div class="headertitle">
-<div class="title">bitfield.hpp</div>  </div>
-</div><!--header-->
-<div class="contents">
-<a href="a00009.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span>&#160;</div>
-<div class="line"><a name="l00014"></a><span class="lineno">   14</span>&#160;<span class="preprocessor">#include &quot;../detail/setup.hpp&quot;</span></div>
-<div class="line"><a name="l00015"></a><span class="lineno">   15</span>&#160;</div>
-<div class="line"><a name="l00016"></a><span class="lineno">   16</span>&#160;<span class="preprocessor">#pragma once</span></div>
-<div class="line"><a name="l00017"></a><span class="lineno">   17</span>&#160;</div>
-<div class="line"><a name="l00018"></a><span class="lineno">   18</span>&#160;<span class="comment">// Dependencies</span></div>
-<div class="line"><a name="l00019"></a><span class="lineno">   19</span>&#160;<span class="preprocessor">#include &quot;../ext/scalar_int_sized.hpp&quot;</span></div>
-<div class="line"><a name="l00020"></a><span class="lineno">   20</span>&#160;<span class="preprocessor">#include &quot;../ext/scalar_uint_sized.hpp&quot;</span></div>
-<div class="line"><a name="l00021"></a><span class="lineno">   21</span>&#160;<span class="preprocessor">#include &quot;../detail/qualifier.hpp&quot;</span></div>
-<div class="line"><a name="l00022"></a><span class="lineno">   22</span>&#160;<span class="preprocessor">#include &quot;../detail/_vectorize.hpp&quot;</span></div>
-<div class="line"><a name="l00023"></a><span class="lineno">   23</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="a00174.html">type_precision.hpp</a>&quot;</span></div>
-<div class="line"><a name="l00024"></a><span class="lineno">   24</span>&#160;<span class="preprocessor">#include &lt;limits&gt;</span></div>
-<div class="line"><a name="l00025"></a><span class="lineno">   25</span>&#160;</div>
-<div class="line"><a name="l00026"></a><span class="lineno">   26</span>&#160;<span class="preprocessor">#if GLM_MESSAGES == GLM_ENABLE &amp;&amp; !defined(GLM_EXT_INCLUDED)</span></div>
-<div class="line"><a name="l00027"></a><span class="lineno">   27</span>&#160;<span class="preprocessor">#       pragma message(&quot;GLM: GLM_GTC_bitfield extension included&quot;)</span></div>
-<div class="line"><a name="l00028"></a><span class="lineno">   28</span>&#160;<span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00029"></a><span class="lineno">   29</span>&#160;</div>
-<div class="line"><a name="l00030"></a><span class="lineno">   30</span>&#160;<span class="keyword">namespace </span><a class="code" href="a00236.html">glm</a></div>
-<div class="line"><a name="l00031"></a><span class="lineno">   31</span>&#160;{</div>
-<div class="line"><a name="l00034"></a><span class="lineno">   34</span>&#160;</div>
-<div class="line"><a name="l00038"></a><span class="lineno">   38</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> genIUType&gt;</div>
-<div class="line"><a name="l00039"></a><span class="lineno">   39</span>&#160;        GLM_FUNC_DECL genIUType <a class="code" href="a00288.html#ga2e64e3b922a296033b825311e7f5fff1">mask</a>(genIUType Bits);</div>
-<div class="line"><a name="l00040"></a><span class="lineno">   40</span>&#160;</div>
-<div class="line"><a name="l00048"></a><span class="lineno">   48</span>&#160;        <span class="keyword">template</span>&lt;length_t L, <span class="keyword">typename</span> T, qualifier Q&gt;</div>
-<div class="line"><a name="l00049"></a><span class="lineno">   49</span>&#160;        GLM_FUNC_DECL vec&lt;L, T, Q&gt; <a class="code" href="a00288.html#ga2e64e3b922a296033b825311e7f5fff1">mask</a>(vec&lt;L, T, Q&gt; <span class="keyword">const</span>&amp; v);</div>
-<div class="line"><a name="l00050"></a><span class="lineno">   50</span>&#160;</div>
-<div class="line"><a name="l00054"></a><span class="lineno">   54</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> genIUType&gt;</div>
-<div class="line"><a name="l00055"></a><span class="lineno">   55</span>&#160;        GLM_FUNC_DECL genIUType <a class="code" href="a00288.html#ga590488e1fc00a6cfe5d3bcaf93fbfe88">bitfieldRotateRight</a>(genIUType In, <span class="keywordtype">int</span> Shift);</div>
-<div class="line"><a name="l00056"></a><span class="lineno">   56</span>&#160;</div>
-<div class="line"><a name="l00064"></a><span class="lineno">   64</span>&#160;        <span class="keyword">template</span>&lt;length_t L, <span class="keyword">typename</span> T, qualifier Q&gt;</div>
-<div class="line"><a name="l00065"></a><span class="lineno">   65</span>&#160;        GLM_FUNC_DECL vec&lt;L, T, Q&gt; <a class="code" href="a00288.html#ga590488e1fc00a6cfe5d3bcaf93fbfe88">bitfieldRotateRight</a>(vec&lt;L, T, Q&gt; <span class="keyword">const</span>&amp; In, <span class="keywordtype">int</span> Shift);</div>
-<div class="line"><a name="l00066"></a><span class="lineno">   66</span>&#160;</div>
-<div class="line"><a name="l00070"></a><span class="lineno">   70</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> genIUType&gt;</div>
-<div class="line"><a name="l00071"></a><span class="lineno">   71</span>&#160;        GLM_FUNC_DECL genIUType <a class="code" href="a00288.html#gae186317091b1a39214ebf79008d44a1e">bitfieldRotateLeft</a>(genIUType In, <span class="keywordtype">int</span> Shift);</div>
-<div class="line"><a name="l00072"></a><span class="lineno">   72</span>&#160;</div>
-<div class="line"><a name="l00080"></a><span class="lineno">   80</span>&#160;        <span class="keyword">template</span>&lt;length_t L, <span class="keyword">typename</span> T, qualifier Q&gt;</div>
-<div class="line"><a name="l00081"></a><span class="lineno">   81</span>&#160;        GLM_FUNC_DECL vec&lt;L, T, Q&gt; <a class="code" href="a00288.html#gae186317091b1a39214ebf79008d44a1e">bitfieldRotateLeft</a>(vec&lt;L, T, Q&gt; <span class="keyword">const</span>&amp; In, <span class="keywordtype">int</span> Shift);</div>
-<div class="line"><a name="l00082"></a><span class="lineno">   82</span>&#160;</div>
-<div class="line"><a name="l00086"></a><span class="lineno">   86</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> genIUType&gt;</div>
-<div class="line"><a name="l00087"></a><span class="lineno">   87</span>&#160;        GLM_FUNC_DECL genIUType <a class="code" href="a00288.html#ga3e96dd1f0a4bc892f063251ed118c0c1">bitfieldFillOne</a>(genIUType Value, <span class="keywordtype">int</span> FirstBit, <span class="keywordtype">int</span> BitCount);</div>
-<div class="line"><a name="l00088"></a><span class="lineno">   88</span>&#160;</div>
-<div class="line"><a name="l00096"></a><span class="lineno">   96</span>&#160;        <span class="keyword">template</span>&lt;length_t L, <span class="keyword">typename</span> T, qualifier Q&gt;</div>
-<div class="line"><a name="l00097"></a><span class="lineno">   97</span>&#160;        GLM_FUNC_DECL vec&lt;L, T, Q&gt; <a class="code" href="a00288.html#ga3e96dd1f0a4bc892f063251ed118c0c1">bitfieldFillOne</a>(vec&lt;L, T, Q&gt; <span class="keyword">const</span>&amp; Value, <span class="keywordtype">int</span> FirstBit, <span class="keywordtype">int</span> BitCount);</div>
-<div class="line"><a name="l00098"></a><span class="lineno">   98</span>&#160;</div>
-<div class="line"><a name="l00102"></a><span class="lineno">  102</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> genIUType&gt;</div>
-<div class="line"><a name="l00103"></a><span class="lineno">  103</span>&#160;        GLM_FUNC_DECL genIUType <a class="code" href="a00288.html#ga0d16c9acef4be79ea9b47c082a0cf7c2">bitfieldFillZero</a>(genIUType Value, <span class="keywordtype">int</span> FirstBit, <span class="keywordtype">int</span> BitCount);</div>
-<div class="line"><a name="l00104"></a><span class="lineno">  104</span>&#160;</div>
-<div class="line"><a name="l00112"></a><span class="lineno">  112</span>&#160;        <span class="keyword">template</span>&lt;length_t L, <span class="keyword">typename</span> T, qualifier Q&gt;</div>
-<div class="line"><a name="l00113"></a><span class="lineno">  113</span>&#160;        GLM_FUNC_DECL vec&lt;L, T, Q&gt; <a class="code" href="a00288.html#ga0d16c9acef4be79ea9b47c082a0cf7c2">bitfieldFillZero</a>(vec&lt;L, T, Q&gt; <span class="keyword">const</span>&amp; Value, <span class="keywordtype">int</span> FirstBit, <span class="keywordtype">int</span> BitCount);</div>
-<div class="line"><a name="l00114"></a><span class="lineno">  114</span>&#160;</div>
-<div class="line"><a name="l00120"></a><span class="lineno">  120</span>&#160;        GLM_FUNC_DECL int16 <a class="code" href="a00288.html#gafca8768671a14c8016facccb66a89f26">bitfieldInterleave</a>(int8 x, int8 y);</div>
-<div class="line"><a name="l00121"></a><span class="lineno">  121</span>&#160;</div>
-<div class="line"><a name="l00127"></a><span class="lineno">  127</span>&#160;        GLM_FUNC_DECL uint16 <a class="code" href="a00288.html#gafca8768671a14c8016facccb66a89f26">bitfieldInterleave</a>(uint8 x, uint8 y);</div>
-<div class="line"><a name="l00128"></a><span class="lineno">  128</span>&#160;</div>
-<div class="line"><a name="l00134"></a><span class="lineno">  134</span>&#160;        GLM_FUNC_DECL uint16 <a class="code" href="a00288.html#gafca8768671a14c8016facccb66a89f26">bitfieldInterleave</a>(<a class="code" href="a00304.html#ga518b8d948a6b4ddb72f84d5c3b7b6611">u8vec2</a> <span class="keyword">const</span>&amp; v);</div>
-<div class="line"><a name="l00135"></a><span class="lineno">  135</span>&#160;</div>
-<div class="line"><a name="l00139"></a><span class="lineno">  139</span>&#160;        GLM_FUNC_DECL <a class="code" href="a00304.html#ga518b8d948a6b4ddb72f84d5c3b7b6611">glm::u8vec2</a> <a class="code" href="a00288.html#ga8dbb8c87092f33bd815dd8a840be5d60">bitfieldDeinterleave</a>(<a class="code" href="a00263.html#ga05f6b0ae8f6a6e135b0e290c25fe0e4e">glm::uint16</a> x);</div>
-<div class="line"><a name="l00140"></a><span class="lineno">  140</span>&#160;</div>
-<div class="line"><a name="l00146"></a><span class="lineno">  146</span>&#160;        GLM_FUNC_DECL int32 <a class="code" href="a00288.html#gafca8768671a14c8016facccb66a89f26">bitfieldInterleave</a>(int16 x, int16 y);</div>
-<div class="line"><a name="l00147"></a><span class="lineno">  147</span>&#160;</div>
-<div class="line"><a name="l00153"></a><span class="lineno">  153</span>&#160;        GLM_FUNC_DECL uint32 <a class="code" href="a00288.html#gafca8768671a14c8016facccb66a89f26">bitfieldInterleave</a>(uint16 x, uint16 y);</div>
-<div class="line"><a name="l00154"></a><span class="lineno">  154</span>&#160;</div>
-<div class="line"><a name="l00160"></a><span class="lineno">  160</span>&#160;        GLM_FUNC_DECL uint32 <a class="code" href="a00288.html#gafca8768671a14c8016facccb66a89f26">bitfieldInterleave</a>(<a class="code" href="a00304.html#ga2a78447eb9d66a114b193f4a25899c16">u16vec2</a> <span class="keyword">const</span>&amp; v);</div>
-<div class="line"><a name="l00161"></a><span class="lineno">  161</span>&#160;</div>
-<div class="line"><a name="l00165"></a><span class="lineno">  165</span>&#160;        GLM_FUNC_DECL <a class="code" href="a00304.html#ga2a78447eb9d66a114b193f4a25899c16">glm::u16vec2</a> <a class="code" href="a00288.html#ga8dbb8c87092f33bd815dd8a840be5d60">bitfieldDeinterleave</a>(<a class="code" href="a00263.html#ga1134b580f8da4de94ca6b1de4d37975e">glm::uint32</a> x);</div>
-<div class="line"><a name="l00166"></a><span class="lineno">  166</span>&#160;</div>
-<div class="line"><a name="l00172"></a><span class="lineno">  172</span>&#160;        GLM_FUNC_DECL <a class="code" href="a00260.html#gaff5189f97f9e842d9636a0f240001b2e">int64</a> <a class="code" href="a00288.html#gafca8768671a14c8016facccb66a89f26">bitfieldInterleave</a>(int32 x, int32 y);</div>
-<div class="line"><a name="l00173"></a><span class="lineno">  173</span>&#160;</div>
-<div class="line"><a name="l00179"></a><span class="lineno">  179</span>&#160;        GLM_FUNC_DECL <a class="code" href="a00263.html#gab630f76c26b50298187f7889104d4b9c">uint64</a> <a class="code" href="a00288.html#gafca8768671a14c8016facccb66a89f26">bitfieldInterleave</a>(uint32 x, uint32 y);</div>
-<div class="line"><a name="l00180"></a><span class="lineno">  180</span>&#160;</div>
-<div class="line"><a name="l00186"></a><span class="lineno">  186</span>&#160;        GLM_FUNC_DECL <a class="code" href="a00263.html#gab630f76c26b50298187f7889104d4b9c">uint64</a> <a class="code" href="a00288.html#gafca8768671a14c8016facccb66a89f26">bitfieldInterleave</a>(<a class="code" href="a00304.html#ga2a266e46ee218d0c680f12b35c500cc0">u32vec2</a> <span class="keyword">const</span>&amp; v);</div>
-<div class="line"><a name="l00187"></a><span class="lineno">  187</span>&#160;</div>
-<div class="line"><a name="l00191"></a><span class="lineno">  191</span>&#160;        GLM_FUNC_DECL <a class="code" href="a00304.html#ga2a266e46ee218d0c680f12b35c500cc0">glm::u32vec2</a> <a class="code" href="a00288.html#ga8dbb8c87092f33bd815dd8a840be5d60">bitfieldDeinterleave</a>(<a class="code" href="a00263.html#gab630f76c26b50298187f7889104d4b9c">glm::uint64</a> x);</div>
-<div class="line"><a name="l00192"></a><span class="lineno">  192</span>&#160;</div>
-<div class="line"><a name="l00198"></a><span class="lineno">  198</span>&#160;        GLM_FUNC_DECL int32 <a class="code" href="a00288.html#gafca8768671a14c8016facccb66a89f26">bitfieldInterleave</a>(int8 x, int8 y, int8 z);</div>
-<div class="line"><a name="l00199"></a><span class="lineno">  199</span>&#160;</div>
-<div class="line"><a name="l00205"></a><span class="lineno">  205</span>&#160;        GLM_FUNC_DECL uint32 <a class="code" href="a00288.html#gafca8768671a14c8016facccb66a89f26">bitfieldInterleave</a>(uint8 x, uint8 y, uint8 z);</div>
-<div class="line"><a name="l00206"></a><span class="lineno">  206</span>&#160;</div>
-<div class="line"><a name="l00212"></a><span class="lineno">  212</span>&#160;        GLM_FUNC_DECL <a class="code" href="a00260.html#gaff5189f97f9e842d9636a0f240001b2e">int64</a> <a class="code" href="a00288.html#gafca8768671a14c8016facccb66a89f26">bitfieldInterleave</a>(int16 x, int16 y, int16 z);</div>
-<div class="line"><a name="l00213"></a><span class="lineno">  213</span>&#160;</div>
-<div class="line"><a name="l00219"></a><span class="lineno">  219</span>&#160;        GLM_FUNC_DECL <a class="code" href="a00263.html#gab630f76c26b50298187f7889104d4b9c">uint64</a> <a class="code" href="a00288.html#gafca8768671a14c8016facccb66a89f26">bitfieldInterleave</a>(uint16 x, uint16 y, uint16 z);</div>
-<div class="line"><a name="l00220"></a><span class="lineno">  220</span>&#160;</div>
-<div class="line"><a name="l00226"></a><span class="lineno">  226</span>&#160;        GLM_FUNC_DECL <a class="code" href="a00260.html#gaff5189f97f9e842d9636a0f240001b2e">int64</a> <a class="code" href="a00288.html#gafca8768671a14c8016facccb66a89f26">bitfieldInterleave</a>(int32 x, int32 y, int32 z);</div>
-<div class="line"><a name="l00227"></a><span class="lineno">  227</span>&#160;</div>
-<div class="line"><a name="l00233"></a><span class="lineno">  233</span>&#160;        GLM_FUNC_DECL <a class="code" href="a00263.html#gab630f76c26b50298187f7889104d4b9c">uint64</a> <a class="code" href="a00288.html#gafca8768671a14c8016facccb66a89f26">bitfieldInterleave</a>(uint32 x, uint32 y, uint32 z);</div>
-<div class="line"><a name="l00234"></a><span class="lineno">  234</span>&#160;</div>
-<div class="line"><a name="l00240"></a><span class="lineno">  240</span>&#160;        GLM_FUNC_DECL int32 <a class="code" href="a00288.html#gafca8768671a14c8016facccb66a89f26">bitfieldInterleave</a>(int8 x, int8 y, int8 z, int8 w);</div>
-<div class="line"><a name="l00241"></a><span class="lineno">  241</span>&#160;</div>
-<div class="line"><a name="l00247"></a><span class="lineno">  247</span>&#160;        GLM_FUNC_DECL uint32 <a class="code" href="a00288.html#gafca8768671a14c8016facccb66a89f26">bitfieldInterleave</a>(uint8 x, uint8 y, uint8 z, uint8 w);</div>
-<div class="line"><a name="l00248"></a><span class="lineno">  248</span>&#160;</div>
-<div class="line"><a name="l00254"></a><span class="lineno">  254</span>&#160;        GLM_FUNC_DECL <a class="code" href="a00260.html#gaff5189f97f9e842d9636a0f240001b2e">int64</a> <a class="code" href="a00288.html#gafca8768671a14c8016facccb66a89f26">bitfieldInterleave</a>(int16 x, int16 y, int16 z, int16 w);</div>
-<div class="line"><a name="l00255"></a><span class="lineno">  255</span>&#160;</div>
-<div class="line"><a name="l00261"></a><span class="lineno">  261</span>&#160;        GLM_FUNC_DECL <a class="code" href="a00263.html#gab630f76c26b50298187f7889104d4b9c">uint64</a> <a class="code" href="a00288.html#gafca8768671a14c8016facccb66a89f26">bitfieldInterleave</a>(uint16 x, uint16 y, uint16 z, uint16 w);</div>
-<div class="line"><a name="l00262"></a><span class="lineno">  262</span>&#160;</div>
-<div class="line"><a name="l00264"></a><span class="lineno">  264</span>&#160;} <span class="comment">//namespace glm</span></div>
-<div class="line"><a name="l00265"></a><span class="lineno">  265</span>&#160;</div>
-<div class="line"><a name="l00266"></a><span class="lineno">  266</span>&#160;<span class="preprocessor">#include &quot;bitfield.inl&quot;</span></div>
-<div class="ttc" id="a00263_html_ga1134b580f8da4de94ca6b1de4d37975e"><div class="ttname"><a href="a00263.html#ga1134b580f8da4de94ca6b1de4d37975e">glm::uint32</a></div><div class="ttdeci">detail::uint32 uint32</div><div class="ttdoc">32 bit unsigned integer type. </div><div class="ttdef"><b>Definition:</b> <a href="a00151_source.html#l00064">scalar_uint_sized.hpp:64</a></div></div>
-<div class="ttc" id="a00288_html_gafca8768671a14c8016facccb66a89f26"><div class="ttname"><a href="a00288.html#gafca8768671a14c8016facccb66a89f26">glm::bitfieldInterleave</a></div><div class="ttdeci">GLM_FUNC_DECL uint64 bitfieldInterleave(uint16 x, uint16 y, uint16 z, uint16 w)</div><div class="ttdoc">Interleaves the bits of x, y, z and w. </div></div>
-<div class="ttc" id="a00288_html_ga8dbb8c87092f33bd815dd8a840be5d60"><div class="ttname"><a href="a00288.html#ga8dbb8c87092f33bd815dd8a840be5d60">glm::bitfieldDeinterleave</a></div><div class="ttdeci">GLM_FUNC_DECL glm::u32vec2 bitfieldDeinterleave(glm::uint64 x)</div><div class="ttdoc">Deinterleaves the bits of x. </div></div>
-<div class="ttc" id="a00288_html_ga0d16c9acef4be79ea9b47c082a0cf7c2"><div class="ttname"><a href="a00288.html#ga0d16c9acef4be79ea9b47c082a0cf7c2">glm::bitfieldFillZero</a></div><div class="ttdeci">GLM_FUNC_DECL vec&lt; L, T, Q &gt; bitfieldFillZero(vec&lt; L, T, Q &gt; const &amp;Value, int FirstBit, int BitCount)</div><div class="ttdoc">Set to 0 a range of bits. </div></div>
-<div class="ttc" id="a00263_html_ga05f6b0ae8f6a6e135b0e290c25fe0e4e"><div class="ttname"><a href="a00263.html#ga05f6b0ae8f6a6e135b0e290c25fe0e4e">glm::uint16</a></div><div class="ttdeci">detail::uint16 uint16</div><div class="ttdoc">16 bit unsigned integer type. </div><div class="ttdef"><b>Definition:</b> <a href="a00151_source.html#l00061">scalar_uint_sized.hpp:61</a></div></div>
-<div class="ttc" id="a00304_html_ga518b8d948a6b4ddb72f84d5c3b7b6611"><div class="ttname"><a href="a00304.html#ga518b8d948a6b4ddb72f84d5c3b7b6611">glm::u8vec2</a></div><div class="ttdeci">vec&lt; 2, u8, defaultp &gt; u8vec2</div><div class="ttdoc">Default qualifier 8 bit unsigned integer vector of 2 components type. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00340">fwd.hpp:340</a></div></div>
-<div class="ttc" id="a00288_html_gae186317091b1a39214ebf79008d44a1e"><div class="ttname"><a href="a00288.html#gae186317091b1a39214ebf79008d44a1e">glm::bitfieldRotateLeft</a></div><div class="ttdeci">GLM_FUNC_DECL vec&lt; L, T, Q &gt; bitfieldRotateLeft(vec&lt; L, T, Q &gt; const &amp;In, int Shift)</div><div class="ttdoc">Rotate all bits to the left. </div></div>
-<div class="ttc" id="a00288_html_ga2e64e3b922a296033b825311e7f5fff1"><div class="ttname"><a href="a00288.html#ga2e64e3b922a296033b825311e7f5fff1">glm::mask</a></div><div class="ttdeci">GLM_FUNC_DECL vec&lt; L, T, Q &gt; mask(vec&lt; L, T, Q &gt; const &amp;v)</div><div class="ttdoc">Build a mask of &#39;count&#39; bits. </div></div>
-<div class="ttc" id="a00263_html_gab630f76c26b50298187f7889104d4b9c"><div class="ttname"><a href="a00263.html#gab630f76c26b50298187f7889104d4b9c">glm::uint64</a></div><div class="ttdeci">detail::uint64 uint64</div><div class="ttdoc">64 bit unsigned integer type. </div><div class="ttdef"><b>Definition:</b> <a href="a00151_source.html#l00067">scalar_uint_sized.hpp:67</a></div></div>
-<div class="ttc" id="a00288_html_ga3e96dd1f0a4bc892f063251ed118c0c1"><div class="ttname"><a href="a00288.html#ga3e96dd1f0a4bc892f063251ed118c0c1">glm::bitfieldFillOne</a></div><div class="ttdeci">GLM_FUNC_DECL vec&lt; L, T, Q &gt; bitfieldFillOne(vec&lt; L, T, Q &gt; const &amp;Value, int FirstBit, int BitCount)</div><div class="ttdoc">Set to 1 a range of bits. </div></div>
-<div class="ttc" id="a00174_html"><div class="ttname"><a href="a00174.html">type_precision.hpp</a></div><div class="ttdoc">GLM_GTC_type_precision </div></div>
-<div class="ttc" id="a00260_html_gaff5189f97f9e842d9636a0f240001b2e"><div class="ttname"><a href="a00260.html#gaff5189f97f9e842d9636a0f240001b2e">glm::int64</a></div><div class="ttdeci">detail::int64 int64</div><div class="ttdoc">64 bit signed integer type. </div><div class="ttdef"><b>Definition:</b> <a href="a00146_source.html#l00067">scalar_int_sized.hpp:67</a></div></div>
-<div class="ttc" id="a00304_html_ga2a266e46ee218d0c680f12b35c500cc0"><div class="ttname"><a href="a00304.html#ga2a266e46ee218d0c680f12b35c500cc0">glm::u32vec2</a></div><div class="ttdeci">vec&lt; 2, u32, defaultp &gt; u32vec2</div><div class="ttdoc">Default qualifier 32 bit unsigned integer vector of 2 components type. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00380">fwd.hpp:380</a></div></div>
-<div class="ttc" id="a00288_html_ga590488e1fc00a6cfe5d3bcaf93fbfe88"><div class="ttname"><a href="a00288.html#ga590488e1fc00a6cfe5d3bcaf93fbfe88">glm::bitfieldRotateRight</a></div><div class="ttdeci">GLM_FUNC_DECL vec&lt; L, T, Q &gt; bitfieldRotateRight(vec&lt; L, T, Q &gt; const &amp;In, int Shift)</div><div class="ttdoc">Rotate all bits to the right. </div></div>
-<div class="ttc" id="a00304_html_ga2a78447eb9d66a114b193f4a25899c16"><div class="ttname"><a href="a00304.html#ga2a78447eb9d66a114b193f4a25899c16">glm::u16vec2</a></div><div class="ttdeci">vec&lt; 2, u16, defaultp &gt; u16vec2</div><div class="ttdoc">Default qualifier 16 bit unsigned integer vector of 2 components type. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00360">fwd.hpp:360</a></div></div>
-<div class="ttc" id="a00236_html"><div class="ttname"><a href="a00236.html">glm</a></div><div class="ttdef"><b>Definition:</b> <a href="a00015_source.html#l00020">common.hpp:20</a></div></div>
-</div><!-- fragment --></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.10
-</small></address>
-</body>
-</html>

+ 0 - 133
doc/api/a00010_source.html

@@ -1,133 +0,0 @@
-<!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.10"/>
-<title>0.9.9 API documentation: closest_point.hpp Source File</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="search/search.css" rel="stylesheet" type="text/css"/>
-<script type="text/javascript" src="search/searchdata.js"></script>
-<script type="text/javascript" src="search/search.js"></script>
-<script type="text/javascript">
-  $(document).ready(function() { init_search(); });
-</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 id="projectlogo"><img alt="Logo" src="logo-mini.png"/></td>
-  <td id="projectalign" style="padding-left: 0.5em;">
-   <div id="projectname">0.9.9 API documentation
-   </div>
-  </td>
- </tr>
- </tbody>
-</table>
-</div>
-<!-- end header part -->
-<!-- Generated by Doxygen 1.8.10 -->
-<script type="text/javascript">
-var searchBox = new SearchBox("searchBox", "search",false,'Search');
-</script>
-  <div id="navrow1" class="tabs">
-    <ul class="tablist">
-      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
-      <li><a href="modules.html"><span>Modules</span></a></li>
-      <li class="current"><a href="files.html"><span>Files</span></a></li>
-      <li>
-        <div id="MSearchBox" class="MSearchBoxInactive">
-        <span class="left">
-          <img id="MSearchSelect" src="search/mag_sel.png"
-               onmouseover="return searchBox.OnSearchSelectShow()"
-               onmouseout="return searchBox.OnSearchSelectHide()"
-               alt=""/>
-          <input type="text" id="MSearchField" value="Search" accesskey="S"
-               onfocus="searchBox.OnSearchFieldFocus(true)" 
-               onblur="searchBox.OnSearchFieldFocus(false)" 
-               onkeyup="searchBox.OnSearchFieldChange(event)"/>
-          </span><span class="right">
-            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
-          </span>
-        </div>
-      </li>
-    </ul>
-  </div>
-  <div id="navrow2" class="tabs2">
-    <ul class="tablist">
-      <li><a href="files.html"><span>File&#160;List</span></a></li>
-    </ul>
-  </div>
-<!-- window showing the filter options -->
-<div id="MSearchSelectWindow"
-     onmouseover="return searchBox.OnSearchSelectShow()"
-     onmouseout="return searchBox.OnSearchSelectHide()"
-     onkeydown="return searchBox.OnSearchSelectKey(event)">
-</div>
-
-<!-- iframe showing the search results (closed by default) -->
-<div id="MSearchResultsWindow">
-<iframe src="javascript:void(0)" frameborder="0" 
-        name="MSearchResults" id="MSearchResults">
-</iframe>
-</div>
-
-<div id="nav-path" class="navpath">
-  <ul>
-<li class="navelem"><a class="el" href="dir_3a581ba30d25676e4b797b1f96d53b45.html">F:</a></li><li class="navelem"><a class="el" href="dir_9e5fe034a00e89334fd5186c3e7db156.html">G-Truc</a></li><li class="navelem"><a class="el" href="dir_d9496f0844b48bc7e53b5af8c99b9ab2.html">Source</a></li><li class="navelem"><a class="el" href="dir_a8bee7be44182a33f3820393ae0b105d.html">G-Truc</a></li><li class="navelem"><a class="el" href="dir_44e5e654415abd9ca6fdeaddaff8565e.html">glm</a></li><li class="navelem"><a class="el" href="dir_cef2d71d502cb69a9252bca2297d9549.html">glm</a></li><li class="navelem"><a class="el" href="dir_f35778ec600a1b9bbc4524e62e226aa2.html">gtx</a></li>  </ul>
-</div>
-</div><!-- top -->
-<div class="header">
-  <div class="headertitle">
-<div class="title">closest_point.hpp</div>  </div>
-</div><!--header-->
-<div class="contents">
-<a href="a00010.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span>&#160;</div>
-<div class="line"><a name="l00013"></a><span class="lineno">   13</span>&#160;<span class="preprocessor">#pragma once</span></div>
-<div class="line"><a name="l00014"></a><span class="lineno">   14</span>&#160;</div>
-<div class="line"><a name="l00015"></a><span class="lineno">   15</span>&#160;<span class="comment">// Dependency:</span></div>
-<div class="line"><a name="l00016"></a><span class="lineno">   16</span>&#160;<span class="preprocessor">#include &quot;../glm.hpp&quot;</span></div>
-<div class="line"><a name="l00017"></a><span class="lineno">   17</span>&#160;</div>
-<div class="line"><a name="l00018"></a><span class="lineno">   18</span>&#160;<span class="preprocessor">#if GLM_MESSAGES == GLM_ENABLE &amp;&amp; !defined(GLM_EXT_INCLUDED)</span></div>
-<div class="line"><a name="l00019"></a><span class="lineno">   19</span>&#160;<span class="preprocessor">#       ifndef GLM_ENABLE_EXPERIMENTAL</span></div>
-<div class="line"><a name="l00020"></a><span class="lineno">   20</span>&#160;<span class="preprocessor">#               pragma message(&quot;GLM: GLM_GTX_closest_point is an experimental extension and may change in the future. Use #define GLM_ENABLE_EXPERIMENTAL before including it, if you really want to use it.&quot;)</span></div>
-<div class="line"><a name="l00021"></a><span class="lineno">   21</span>&#160;<span class="preprocessor">#       else</span></div>
-<div class="line"><a name="l00022"></a><span class="lineno">   22</span>&#160;<span class="preprocessor">#               pragma message(&quot;GLM: GLM_GTX_closest_point extension included&quot;)</span></div>
-<div class="line"><a name="l00023"></a><span class="lineno">   23</span>&#160;<span class="preprocessor">#       endif</span></div>
-<div class="line"><a name="l00024"></a><span class="lineno">   24</span>&#160;<span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00025"></a><span class="lineno">   25</span>&#160;</div>
-<div class="line"><a name="l00026"></a><span class="lineno">   26</span>&#160;<span class="keyword">namespace </span><a class="code" href="a00236.html">glm</a></div>
-<div class="line"><a name="l00027"></a><span class="lineno">   27</span>&#160;{</div>
-<div class="line"><a name="l00030"></a><span class="lineno">   30</span>&#160;</div>
-<div class="line"><a name="l00033"></a><span class="lineno">   33</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T, qualifier Q&gt;</div>
-<div class="line"><a name="l00034"></a><span class="lineno">   34</span>&#160;        GLM_FUNC_DECL vec&lt;3, T, Q&gt; <a class="code" href="a00310.html#ga55bcbcc5fc06cb7ff7bc7a6e0e155eb0">closestPointOnLine</a>(</div>
-<div class="line"><a name="l00035"></a><span class="lineno">   35</span>&#160;                vec&lt;3, T, Q&gt; <span class="keyword">const</span>&amp; point,</div>
-<div class="line"><a name="l00036"></a><span class="lineno">   36</span>&#160;                vec&lt;3, T, Q&gt; <span class="keyword">const</span>&amp; a,</div>
-<div class="line"><a name="l00037"></a><span class="lineno">   37</span>&#160;                vec&lt;3, T, Q&gt; <span class="keyword">const</span>&amp; b);</div>
-<div class="line"><a name="l00038"></a><span class="lineno">   38</span>&#160;</div>
-<div class="line"><a name="l00040"></a><span class="lineno">   40</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T, qualifier Q&gt;</div>
-<div class="line"><a name="l00041"></a><span class="lineno">   41</span>&#160;        GLM_FUNC_DECL vec&lt;2, T, Q&gt; <a class="code" href="a00310.html#ga55bcbcc5fc06cb7ff7bc7a6e0e155eb0">closestPointOnLine</a>(</div>
-<div class="line"><a name="l00042"></a><span class="lineno">   42</span>&#160;                vec&lt;2, T, Q&gt; <span class="keyword">const</span>&amp; point,</div>
-<div class="line"><a name="l00043"></a><span class="lineno">   43</span>&#160;                vec&lt;2, T, Q&gt; <span class="keyword">const</span>&amp; a,</div>
-<div class="line"><a name="l00044"></a><span class="lineno">   44</span>&#160;                vec&lt;2, T, Q&gt; <span class="keyword">const</span>&amp; b);</div>
-<div class="line"><a name="l00045"></a><span class="lineno">   45</span>&#160;</div>
-<div class="line"><a name="l00047"></a><span class="lineno">   47</span>&#160;}<span class="comment">// namespace glm</span></div>
-<div class="line"><a name="l00048"></a><span class="lineno">   48</span>&#160;</div>
-<div class="line"><a name="l00049"></a><span class="lineno">   49</span>&#160;<span class="preprocessor">#include &quot;closest_point.inl&quot;</span></div>
-<div class="ttc" id="a00310_html_ga55bcbcc5fc06cb7ff7bc7a6e0e155eb0"><div class="ttname"><a href="a00310.html#ga55bcbcc5fc06cb7ff7bc7a6e0e155eb0">glm::closestPointOnLine</a></div><div class="ttdeci">GLM_FUNC_DECL vec&lt; 2, T, Q &gt; closestPointOnLine(vec&lt; 2, T, Q &gt; const &amp;point, vec&lt; 2, T, Q &gt; const &amp;a, vec&lt; 2, T, Q &gt; const &amp;b)</div><div class="ttdoc">2d lines work as well </div></div>
-<div class="ttc" id="a00236_html"><div class="ttname"><a href="a00236.html">glm</a></div><div class="ttdef"><b>Definition:</b> <a href="a00015_source.html#l00020">common.hpp:20</a></div></div>
-</div><!-- fragment --></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.10
-</small></address>
-</body>
-</html>

+ 102 - 78
doc/api/a00011_source.html

@@ -1,19 +1,17 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://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.10"/>
-<title>0.9.9 API documentation: color_encoding.hpp Source File</title>
+<meta name="generator" content="Doxygen 1.8.18"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>1.0.0 API documentation: _noise.hpp Source File</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="search/search.css" rel="stylesheet" type="text/css"/>
 <script type="text/javascript" src="search/searchdata.js"></script>
 <script type="text/javascript" src="search/search.js"></script>
-<script type="text/javascript">
-  $(document).ready(function() { init_search(); });
-</script>
 <link href="doxygen.css" rel="stylesheet" type="text/css" />
 </head>
 <body>
@@ -24,7 +22,7 @@
  <tr style="height: 56px;">
   <td id="projectlogo"><img alt="Logo" src="logo-mini.png"/></td>
   <td id="projectalign" style="padding-left: 0.5em;">
-   <div id="projectname">0.9.9 API documentation
+   <div id="projectname">1.0.0 API documentation
    </div>
   </td>
  </tr>
@@ -32,38 +30,22 @@
 </table>
 </div>
 <!-- end header part -->
-<!-- Generated by Doxygen 1.8.10 -->
+<!-- Generated by Doxygen 1.8.18 -->
 <script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
 var searchBox = new SearchBox("searchBox", "search",false,'Search');
+/* @license-end */
 </script>
-  <div id="navrow1" class="tabs">
-    <ul class="tablist">
-      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
-      <li><a href="modules.html"><span>Modules</span></a></li>
-      <li class="current"><a href="files.html"><span>Files</span></a></li>
-      <li>
-        <div id="MSearchBox" class="MSearchBoxInactive">
-        <span class="left">
-          <img id="MSearchSelect" src="search/mag_sel.png"
-               onmouseover="return searchBox.OnSearchSelectShow()"
-               onmouseout="return searchBox.OnSearchSelectHide()"
-               alt=""/>
-          <input type="text" id="MSearchField" value="Search" accesskey="S"
-               onfocus="searchBox.OnSearchFieldFocus(true)" 
-               onblur="searchBox.OnSearchFieldFocus(false)" 
-               onkeyup="searchBox.OnSearchFieldChange(event)"/>
-          </span><span class="right">
-            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
-          </span>
-        </div>
-      </li>
-    </ul>
-  </div>
-  <div id="navrow2" class="tabs2">
-    <ul class="tablist">
-      <li><a href="files.html"><span>File&#160;List</span></a></li>
-    </ul>
-  </div>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
 <!-- window showing the filter options -->
 <div id="MSearchSelectWindow"
      onmouseover="return searchBox.OnSearchSelectShow()"
@@ -80,60 +62,102 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 
 <div id="nav-path" class="navpath">
   <ul>
-<li class="navelem"><a class="el" href="dir_3a581ba30d25676e4b797b1f96d53b45.html">F:</a></li><li class="navelem"><a class="el" href="dir_9e5fe034a00e89334fd5186c3e7db156.html">G-Truc</a></li><li class="navelem"><a class="el" href="dir_d9496f0844b48bc7e53b5af8c99b9ab2.html">Source</a></li><li class="navelem"><a class="el" href="dir_a8bee7be44182a33f3820393ae0b105d.html">G-Truc</a></li><li class="navelem"><a class="el" href="dir_44e5e654415abd9ca6fdeaddaff8565e.html">glm</a></li><li class="navelem"><a class="el" href="dir_cef2d71d502cb69a9252bca2297d9549.html">glm</a></li><li class="navelem"><a class="el" href="dir_f35778ec600a1b9bbc4524e62e226aa2.html">gtx</a></li>  </ul>
+<li class="navelem"><a class="el" href="dir_885cc87fac2d91e269af0a5a959fa5f6.html">E:</a></li><li class="navelem"><a class="el" href="dir_63ed049134a778d525e06b63afc2c979.html">Github</a></li><li class="navelem"><a class="el" href="dir_c98a9ac98258ab9f831b188d66361a70.html">g-truc</a></li><li class="navelem"><a class="el" href="dir_50f12b6ceb23d7f6adfb377a1ae8b006.html">glm</a></li><li class="navelem"><a class="el" href="dir_fca33f1b5115d46f42c670590789c0d2.html">glm</a></li><li class="navelem"><a class="el" href="dir_382f4fd018b81be8753cb53c0a41a09a.html">detail</a></li>  </ul>
 </div>
 </div><!-- top -->
 <div class="header">
   <div class="headertitle">
-<div class="title">color_encoding.hpp</div>  </div>
+<div class="title">_noise.hpp</div>  </div>
 </div><!--header-->
 <div class="contents">
-<a href="a00011.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span>&#160;</div>
-<div class="line"><a name="l00014"></a><span class="lineno">   14</span>&#160;<span class="preprocessor">#pragma once</span></div>
-<div class="line"><a name="l00015"></a><span class="lineno">   15</span>&#160;</div>
-<div class="line"><a name="l00016"></a><span class="lineno">   16</span>&#160;<span class="comment">// Dependencies</span></div>
-<div class="line"><a name="l00017"></a><span class="lineno">   17</span>&#160;<span class="preprocessor">#include &quot;../detail/setup.hpp&quot;</span></div>
-<div class="line"><a name="l00018"></a><span class="lineno">   18</span>&#160;<span class="preprocessor">#include &quot;../detail/qualifier.hpp&quot;</span></div>
-<div class="line"><a name="l00019"></a><span class="lineno">   19</span>&#160;<span class="preprocessor">#include &quot;../vec3.hpp&quot;</span></div>
-<div class="line"><a name="l00020"></a><span class="lineno">   20</span>&#160;<span class="preprocessor">#include &lt;limits&gt;</span></div>
-<div class="line"><a name="l00021"></a><span class="lineno">   21</span>&#160;</div>
-<div class="line"><a name="l00022"></a><span class="lineno">   22</span>&#160;<span class="preprocessor">#if GLM_MESSAGES == GLM_ENABLE &amp;&amp; !defined(GLM_EXT_INCLUDED)</span></div>
-<div class="line"><a name="l00023"></a><span class="lineno">   23</span>&#160;<span class="preprocessor">#       ifndef GLM_ENABLE_EXPERIMENTAL</span></div>
-<div class="line"><a name="l00024"></a><span class="lineno">   24</span>&#160;<span class="preprocessor">#               pragma message(&quot;GLM: GLM_GTC_color_encoding is an experimental extension and may change in the future. Use #define GLM_ENABLE_EXPERIMENTAL before including it, if you really want to use it.&quot;)</span></div>
-<div class="line"><a name="l00025"></a><span class="lineno">   25</span>&#160;<span class="preprocessor">#       else</span></div>
-<div class="line"><a name="l00026"></a><span class="lineno">   26</span>&#160;<span class="preprocessor">#               pragma message(&quot;GLM: GLM_GTC_color_encoding extension included&quot;)</span></div>
-<div class="line"><a name="l00027"></a><span class="lineno">   27</span>&#160;<span class="preprocessor">#       endif</span></div>
-<div class="line"><a name="l00028"></a><span class="lineno">   28</span>&#160;<span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00029"></a><span class="lineno">   29</span>&#160;</div>
-<div class="line"><a name="l00030"></a><span class="lineno">   30</span>&#160;<span class="keyword">namespace </span><a class="code" href="a00236.html">glm</a></div>
-<div class="line"><a name="l00031"></a><span class="lineno">   31</span>&#160;{</div>
-<div class="line"><a name="l00034"></a><span class="lineno">   34</span>&#160;</div>
-<div class="line"><a name="l00036"></a><span class="lineno">   36</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T, qualifier Q&gt;</div>
-<div class="line"><a name="l00037"></a><span class="lineno">   37</span>&#160;        GLM_FUNC_DECL vec&lt;3, T, Q&gt; <a class="code" href="a00311.html#gaf9e130d9d4ccf51cc99317de7449f369">convertLinearSRGBToD65XYZ</a>(vec&lt;3, T, Q&gt; <span class="keyword">const</span>&amp; ColorLinearSRGB);</div>
-<div class="line"><a name="l00038"></a><span class="lineno">   38</span>&#160;</div>
-<div class="line"><a name="l00040"></a><span class="lineno">   40</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T, qualifier Q&gt;</div>
-<div class="line"><a name="l00041"></a><span class="lineno">   41</span>&#160;        GLM_FUNC_DECL vec&lt;3, T, Q&gt; <a class="code" href="a00311.html#ga1522ba180e3d83d554a734056da031f9">convertLinearSRGBToD50XYZ</a>(vec&lt;3, T, Q&gt; <span class="keyword">const</span>&amp; ColorLinearSRGB);</div>
-<div class="line"><a name="l00042"></a><span class="lineno">   42</span>&#160;</div>
+<div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span>&#160;<span class="preprocessor">#pragma once</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno">    2</span>&#160; </div>
+<div class="line"><a name="l00003"></a><span class="lineno">    3</span>&#160;<span class="preprocessor">#include &quot;../common.hpp&quot;</span></div>
+<div class="line"><a name="l00004"></a><span class="lineno">    4</span>&#160; </div>
+<div class="line"><a name="l00005"></a><span class="lineno">    5</span>&#160;<span class="keyword">namespace </span>glm{</div>
+<div class="line"><a name="l00006"></a><span class="lineno">    6</span>&#160;<span class="keyword">namespace </span>detail</div>
+<div class="line"><a name="l00007"></a><span class="lineno">    7</span>&#160;{</div>
+<div class="line"><a name="l00008"></a><span class="lineno">    8</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T&gt;</div>
+<div class="line"><a name="l00009"></a><span class="lineno">    9</span>&#160;        GLM_FUNC_QUALIFIER T mod289(T <span class="keyword">const</span>&amp; x)</div>
+<div class="line"><a name="l00010"></a><span class="lineno">   10</span>&#160;        {</div>
+<div class="line"><a name="l00011"></a><span class="lineno">   11</span>&#160;                <span class="keywordflow">return</span> x - <a class="code" href="a00803.html#gaa9d0742639e85b29c7c5de11cfd6840d">floor</a>(x * (<span class="keyword">static_cast&lt;</span>T<span class="keyword">&gt;</span>(1.0) / <span class="keyword">static_cast&lt;</span>T<span class="keyword">&gt;</span>(289.0))) * <span class="keyword">static_cast&lt;</span>T<span class="keyword">&gt;</span>(289.0);</div>
+<div class="line"><a name="l00012"></a><span class="lineno">   12</span>&#160;        }</div>
+<div class="line"><a name="l00013"></a><span class="lineno">   13</span>&#160; </div>
+<div class="line"><a name="l00014"></a><span class="lineno">   14</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T&gt;</div>
+<div class="line"><a name="l00015"></a><span class="lineno">   15</span>&#160;        GLM_FUNC_QUALIFIER T permute(T <span class="keyword">const</span>&amp; x)</div>
+<div class="line"><a name="l00016"></a><span class="lineno">   16</span>&#160;        {</div>
+<div class="line"><a name="l00017"></a><span class="lineno">   17</span>&#160;                <span class="keywordflow">return</span> mod289(((x * <span class="keyword">static_cast&lt;</span>T<span class="keyword">&gt;</span>(34)) + <span class="keyword">static_cast&lt;</span>T<span class="keyword">&gt;</span>(1)) * x);</div>
+<div class="line"><a name="l00018"></a><span class="lineno">   18</span>&#160;        }</div>
+<div class="line"><a name="l00019"></a><span class="lineno">   19</span>&#160; </div>
+<div class="line"><a name="l00020"></a><span class="lineno">   20</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T, qualifier Q&gt;</div>
+<div class="line"><a name="l00021"></a><span class="lineno">   21</span>&#160;        GLM_FUNC_QUALIFIER vec&lt;2, T, Q&gt; permute(vec&lt;2, T, Q&gt; <span class="keyword">const</span>&amp; x)</div>
+<div class="line"><a name="l00022"></a><span class="lineno">   22</span>&#160;        {</div>
+<div class="line"><a name="l00023"></a><span class="lineno">   23</span>&#160;                <span class="keywordflow">return</span> mod289(((x * <span class="keyword">static_cast&lt;</span>T<span class="keyword">&gt;</span>(34)) + <span class="keyword">static_cast&lt;</span>T<span class="keyword">&gt;</span>(1)) * x);</div>
+<div class="line"><a name="l00024"></a><span class="lineno">   24</span>&#160;        }</div>
+<div class="line"><a name="l00025"></a><span class="lineno">   25</span>&#160; </div>
+<div class="line"><a name="l00026"></a><span class="lineno">   26</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T, qualifier Q&gt;</div>
+<div class="line"><a name="l00027"></a><span class="lineno">   27</span>&#160;        GLM_FUNC_QUALIFIER vec&lt;3, T, Q&gt; permute(vec&lt;3, T, Q&gt; <span class="keyword">const</span>&amp; x)</div>
+<div class="line"><a name="l00028"></a><span class="lineno">   28</span>&#160;        {</div>
+<div class="line"><a name="l00029"></a><span class="lineno">   29</span>&#160;                <span class="keywordflow">return</span> mod289(((x * <span class="keyword">static_cast&lt;</span>T<span class="keyword">&gt;</span>(34)) + <span class="keyword">static_cast&lt;</span>T<span class="keyword">&gt;</span>(1)) * x);</div>
+<div class="line"><a name="l00030"></a><span class="lineno">   30</span>&#160;        }</div>
+<div class="line"><a name="l00031"></a><span class="lineno">   31</span>&#160; </div>
+<div class="line"><a name="l00032"></a><span class="lineno">   32</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T, qualifier Q&gt;</div>
+<div class="line"><a name="l00033"></a><span class="lineno">   33</span>&#160;        GLM_FUNC_QUALIFIER vec&lt;4, T, Q&gt; permute(vec&lt;4, T, Q&gt; <span class="keyword">const</span>&amp; x)</div>
+<div class="line"><a name="l00034"></a><span class="lineno">   34</span>&#160;        {</div>
+<div class="line"><a name="l00035"></a><span class="lineno">   35</span>&#160;                <span class="keywordflow">return</span> mod289(((x * <span class="keyword">static_cast&lt;</span>T<span class="keyword">&gt;</span>(34)) + <span class="keyword">static_cast&lt;</span>T<span class="keyword">&gt;</span>(1)) * x);</div>
+<div class="line"><a name="l00036"></a><span class="lineno">   36</span>&#160;        }</div>
+<div class="line"><a name="l00037"></a><span class="lineno">   37</span>&#160; </div>
+<div class="line"><a name="l00038"></a><span class="lineno">   38</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T&gt;</div>
+<div class="line"><a name="l00039"></a><span class="lineno">   39</span>&#160;        GLM_FUNC_QUALIFIER T taylorInvSqrt(T <span class="keyword">const</span>&amp; r)</div>
+<div class="line"><a name="l00040"></a><span class="lineno">   40</span>&#160;        {</div>
+<div class="line"><a name="l00041"></a><span class="lineno">   41</span>&#160;                <span class="keywordflow">return</span> <span class="keyword">static_cast&lt;</span>T<span class="keyword">&gt;</span>(1.79284291400159) - <span class="keyword">static_cast&lt;</span>T<span class="keyword">&gt;</span>(0.85373472095314) * r;</div>
+<div class="line"><a name="l00042"></a><span class="lineno">   42</span>&#160;        }</div>
+<div class="line"><a name="l00043"></a><span class="lineno">   43</span>&#160; </div>
 <div class="line"><a name="l00044"></a><span class="lineno">   44</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T, qualifier Q&gt;</div>
-<div class="line"><a name="l00045"></a><span class="lineno">   45</span>&#160;        GLM_FUNC_DECL vec&lt;3, T, Q&gt; <a class="code" href="a00311.html#ga5265386fc3ac29e4c580d37ed470859c">convertD65XYZToLinearSRGB</a>(vec&lt;3, T, Q&gt; <span class="keyword">const</span>&amp; ColorD65XYZ);</div>
-<div class="line"><a name="l00046"></a><span class="lineno">   46</span>&#160;</div>
-<div class="line"><a name="l00048"></a><span class="lineno">   48</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T, qualifier Q&gt;</div>
-<div class="line"><a name="l00049"></a><span class="lineno">   49</span>&#160;        GLM_FUNC_DECL vec&lt;3, T, Q&gt; <a class="code" href="a00311.html#gad12f4f65022b2c80e33fcba2ced0dc48">convertD65XYZToD50XYZ</a>(vec&lt;3, T, Q&gt; <span class="keyword">const</span>&amp; ColorD65XYZ);</div>
-<div class="line"><a name="l00050"></a><span class="lineno">   50</span>&#160;</div>
-<div class="line"><a name="l00052"></a><span class="lineno">   52</span>&#160;} <span class="comment">//namespace glm</span></div>
-<div class="line"><a name="l00053"></a><span class="lineno">   53</span>&#160;</div>
-<div class="line"><a name="l00054"></a><span class="lineno">   54</span>&#160;<span class="preprocessor">#include &quot;color_encoding.inl&quot;</span></div>
-<div class="ttc" id="a00311_html_ga5265386fc3ac29e4c580d37ed470859c"><div class="ttname"><a href="a00311.html#ga5265386fc3ac29e4c580d37ed470859c">glm::convertD65XYZToLinearSRGB</a></div><div class="ttdeci">GLM_FUNC_DECL vec&lt; 3, T, Q &gt; convertD65XYZToLinearSRGB(vec&lt; 3, T, Q &gt; const &amp;ColorD65XYZ)</div><div class="ttdoc">Convert a D65 YUV color to linear sRGB. </div></div>
-<div class="ttc" id="a00311_html_ga1522ba180e3d83d554a734056da031f9"><div class="ttname"><a href="a00311.html#ga1522ba180e3d83d554a734056da031f9">glm::convertLinearSRGBToD50XYZ</a></div><div class="ttdeci">GLM_FUNC_DECL vec&lt; 3, T, Q &gt; convertLinearSRGBToD50XYZ(vec&lt; 3, T, Q &gt; const &amp;ColorLinearSRGB)</div><div class="ttdoc">Convert a linear sRGB color to D50 YUV. </div></div>
-<div class="ttc" id="a00311_html_gaf9e130d9d4ccf51cc99317de7449f369"><div class="ttname"><a href="a00311.html#gaf9e130d9d4ccf51cc99317de7449f369">glm::convertLinearSRGBToD65XYZ</a></div><div class="ttdeci">GLM_FUNC_DECL vec&lt; 3, T, Q &gt; convertLinearSRGBToD65XYZ(vec&lt; 3, T, Q &gt; const &amp;ColorLinearSRGB)</div><div class="ttdoc">Convert a linear sRGB color to D65 YUV. </div></div>
-<div class="ttc" id="a00311_html_gad12f4f65022b2c80e33fcba2ced0dc48"><div class="ttname"><a href="a00311.html#gad12f4f65022b2c80e33fcba2ced0dc48">glm::convertD65XYZToD50XYZ</a></div><div class="ttdeci">GLM_FUNC_DECL vec&lt; 3, T, Q &gt; convertD65XYZToD50XYZ(vec&lt; 3, T, Q &gt; const &amp;ColorD65XYZ)</div><div class="ttdoc">Convert a D65 YUV color to D50 YUV. </div></div>
-<div class="ttc" id="a00236_html"><div class="ttname"><a href="a00236.html">glm</a></div><div class="ttdef"><b>Definition:</b> <a href="a00015_source.html#l00020">common.hpp:20</a></div></div>
+<div class="line"><a name="l00045"></a><span class="lineno">   45</span>&#160;        GLM_FUNC_QUALIFIER vec&lt;2, T, Q&gt; taylorInvSqrt(vec&lt;2, T, Q&gt; <span class="keyword">const</span>&amp; r)</div>
+<div class="line"><a name="l00046"></a><span class="lineno">   46</span>&#160;        {</div>
+<div class="line"><a name="l00047"></a><span class="lineno">   47</span>&#160;                <span class="keywordflow">return</span> <span class="keyword">static_cast&lt;</span>T<span class="keyword">&gt;</span>(1.79284291400159) - <span class="keyword">static_cast&lt;</span>T<span class="keyword">&gt;</span>(0.85373472095314) * r;</div>
+<div class="line"><a name="l00048"></a><span class="lineno">   48</span>&#160;        }</div>
+<div class="line"><a name="l00049"></a><span class="lineno">   49</span>&#160; </div>
+<div class="line"><a name="l00050"></a><span class="lineno">   50</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T, qualifier Q&gt;</div>
+<div class="line"><a name="l00051"></a><span class="lineno">   51</span>&#160;        GLM_FUNC_QUALIFIER vec&lt;3, T, Q&gt; taylorInvSqrt(vec&lt;3, T, Q&gt; <span class="keyword">const</span>&amp; r)</div>
+<div class="line"><a name="l00052"></a><span class="lineno">   52</span>&#160;        {</div>
+<div class="line"><a name="l00053"></a><span class="lineno">   53</span>&#160;                <span class="keywordflow">return</span> <span class="keyword">static_cast&lt;</span>T<span class="keyword">&gt;</span>(1.79284291400159) - <span class="keyword">static_cast&lt;</span>T<span class="keyword">&gt;</span>(0.85373472095314) * r;</div>
+<div class="line"><a name="l00054"></a><span class="lineno">   54</span>&#160;        }</div>
+<div class="line"><a name="l00055"></a><span class="lineno">   55</span>&#160; </div>
+<div class="line"><a name="l00056"></a><span class="lineno">   56</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T, qualifier Q&gt;</div>
+<div class="line"><a name="l00057"></a><span class="lineno">   57</span>&#160;        GLM_FUNC_QUALIFIER vec&lt;4, T, Q&gt; taylorInvSqrt(vec&lt;4, T, Q&gt; <span class="keyword">const</span>&amp; r)</div>
+<div class="line"><a name="l00058"></a><span class="lineno">   58</span>&#160;        {</div>
+<div class="line"><a name="l00059"></a><span class="lineno">   59</span>&#160;                <span class="keywordflow">return</span> <span class="keyword">static_cast&lt;</span>T<span class="keyword">&gt;</span>(1.79284291400159) - <span class="keyword">static_cast&lt;</span>T<span class="keyword">&gt;</span>(0.85373472095314) * r;</div>
+<div class="line"><a name="l00060"></a><span class="lineno">   60</span>&#160;        }</div>
+<div class="line"><a name="l00061"></a><span class="lineno">   61</span>&#160; </div>
+<div class="line"><a name="l00062"></a><span class="lineno">   62</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T, qualifier Q&gt;</div>
+<div class="line"><a name="l00063"></a><span class="lineno">   63</span>&#160;        GLM_FUNC_QUALIFIER vec&lt;2, T, Q&gt; fade(vec&lt;2, T, Q&gt; <span class="keyword">const</span>&amp; t)</div>
+<div class="line"><a name="l00064"></a><span class="lineno">   64</span>&#160;        {</div>
+<div class="line"><a name="l00065"></a><span class="lineno">   65</span>&#160;                <span class="keywordflow">return</span> (t * t * t) * (t * (t * <span class="keyword">static_cast&lt;</span>T<span class="keyword">&gt;</span>(6) - <span class="keyword">static_cast&lt;</span>T<span class="keyword">&gt;</span>(15)) + <span class="keyword">static_cast&lt;</span>T<span class="keyword">&gt;</span>(10));</div>
+<div class="line"><a name="l00066"></a><span class="lineno">   66</span>&#160;        }</div>
+<div class="line"><a name="l00067"></a><span class="lineno">   67</span>&#160; </div>
+<div class="line"><a name="l00068"></a><span class="lineno">   68</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T, qualifier Q&gt;</div>
+<div class="line"><a name="l00069"></a><span class="lineno">   69</span>&#160;        GLM_FUNC_QUALIFIER vec&lt;3, T, Q&gt; fade(vec&lt;3, T, Q&gt; <span class="keyword">const</span>&amp; t)</div>
+<div class="line"><a name="l00070"></a><span class="lineno">   70</span>&#160;        {</div>
+<div class="line"><a name="l00071"></a><span class="lineno">   71</span>&#160;                <span class="keywordflow">return</span> (t * t * t) * (t * (t * <span class="keyword">static_cast&lt;</span>T<span class="keyword">&gt;</span>(6) - <span class="keyword">static_cast&lt;</span>T<span class="keyword">&gt;</span>(15)) + <span class="keyword">static_cast&lt;</span>T<span class="keyword">&gt;</span>(10));</div>
+<div class="line"><a name="l00072"></a><span class="lineno">   72</span>&#160;        }</div>
+<div class="line"><a name="l00073"></a><span class="lineno">   73</span>&#160; </div>
+<div class="line"><a name="l00074"></a><span class="lineno">   74</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T, qualifier Q&gt;</div>
+<div class="line"><a name="l00075"></a><span class="lineno">   75</span>&#160;        GLM_FUNC_QUALIFIER vec&lt;4, T, Q&gt; fade(vec&lt;4, T, Q&gt; <span class="keyword">const</span>&amp; t)</div>
+<div class="line"><a name="l00076"></a><span class="lineno">   76</span>&#160;        {</div>
+<div class="line"><a name="l00077"></a><span class="lineno">   77</span>&#160;                <span class="keywordflow">return</span> (t * t * t) * (t * (t * <span class="keyword">static_cast&lt;</span>T<span class="keyword">&gt;</span>(6) - <span class="keyword">static_cast&lt;</span>T<span class="keyword">&gt;</span>(15)) + <span class="keyword">static_cast&lt;</span>T<span class="keyword">&gt;</span>(10));</div>
+<div class="line"><a name="l00078"></a><span class="lineno">   78</span>&#160;        }</div>
+<div class="line"><a name="l00079"></a><span class="lineno">   79</span>&#160;}<span class="comment">//namespace detail</span></div>
+<div class="line"><a name="l00080"></a><span class="lineno">   80</span>&#160;}<span class="comment">//namespace glm</span></div>
+<div class="line"><a name="l00081"></a><span class="lineno">   81</span>&#160; </div>
 </div><!-- fragment --></div><!-- contents -->
+<div class="ttc" id="aa00803_html_gaa9d0742639e85b29c7c5de11cfd6840d"><div class="ttname"><a href="a00803.html#gaa9d0742639e85b29c7c5de11cfd6840d">glm::floor</a></div><div class="ttdeci">GLM_FUNC_DECL vec&lt; L, T, Q &gt; floor(vec&lt; L, T, Q &gt; const &amp;x)</div><div class="ttdoc">Returns a value equal to the nearest integer that is less then or equal to x.</div></div>
 <!-- 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.10
+</a> 1.8.18
 </small></address>
 </body>
 </html>

+ 0 - 150
doc/api/a00013_source.html

@@ -1,150 +0,0 @@
-<!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.10"/>
-<title>0.9.9 API documentation: color_space.hpp Source File</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="search/search.css" rel="stylesheet" type="text/css"/>
-<script type="text/javascript" src="search/searchdata.js"></script>
-<script type="text/javascript" src="search/search.js"></script>
-<script type="text/javascript">
-  $(document).ready(function() { init_search(); });
-</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 id="projectlogo"><img alt="Logo" src="logo-mini.png"/></td>
-  <td id="projectalign" style="padding-left: 0.5em;">
-   <div id="projectname">0.9.9 API documentation
-   </div>
-  </td>
- </tr>
- </tbody>
-</table>
-</div>
-<!-- end header part -->
-<!-- Generated by Doxygen 1.8.10 -->
-<script type="text/javascript">
-var searchBox = new SearchBox("searchBox", "search",false,'Search');
-</script>
-  <div id="navrow1" class="tabs">
-    <ul class="tablist">
-      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
-      <li><a href="modules.html"><span>Modules</span></a></li>
-      <li class="current"><a href="files.html"><span>Files</span></a></li>
-      <li>
-        <div id="MSearchBox" class="MSearchBoxInactive">
-        <span class="left">
-          <img id="MSearchSelect" src="search/mag_sel.png"
-               onmouseover="return searchBox.OnSearchSelectShow()"
-               onmouseout="return searchBox.OnSearchSelectHide()"
-               alt=""/>
-          <input type="text" id="MSearchField" value="Search" accesskey="S"
-               onfocus="searchBox.OnSearchFieldFocus(true)" 
-               onblur="searchBox.OnSearchFieldFocus(false)" 
-               onkeyup="searchBox.OnSearchFieldChange(event)"/>
-          </span><span class="right">
-            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
-          </span>
-        </div>
-      </li>
-    </ul>
-  </div>
-  <div id="navrow2" class="tabs2">
-    <ul class="tablist">
-      <li><a href="files.html"><span>File&#160;List</span></a></li>
-    </ul>
-  </div>
-<!-- window showing the filter options -->
-<div id="MSearchSelectWindow"
-     onmouseover="return searchBox.OnSearchSelectShow()"
-     onmouseout="return searchBox.OnSearchSelectHide()"
-     onkeydown="return searchBox.OnSearchSelectKey(event)">
-</div>
-
-<!-- iframe showing the search results (closed by default) -->
-<div id="MSearchResultsWindow">
-<iframe src="javascript:void(0)" frameborder="0" 
-        name="MSearchResults" id="MSearchResults">
-</iframe>
-</div>
-
-<div id="nav-path" class="navpath">
-  <ul>
-<li class="navelem"><a class="el" href="dir_3a581ba30d25676e4b797b1f96d53b45.html">F:</a></li><li class="navelem"><a class="el" href="dir_9e5fe034a00e89334fd5186c3e7db156.html">G-Truc</a></li><li class="navelem"><a class="el" href="dir_d9496f0844b48bc7e53b5af8c99b9ab2.html">Source</a></li><li class="navelem"><a class="el" href="dir_a8bee7be44182a33f3820393ae0b105d.html">G-Truc</a></li><li class="navelem"><a class="el" href="dir_44e5e654415abd9ca6fdeaddaff8565e.html">glm</a></li><li class="navelem"><a class="el" href="dir_cef2d71d502cb69a9252bca2297d9549.html">glm</a></li><li class="navelem"><a class="el" href="dir_f35778ec600a1b9bbc4524e62e226aa2.html">gtx</a></li>  </ul>
-</div>
-</div><!-- top -->
-<div class="header">
-  <div class="headertitle">
-<div class="title">gtx/color_space.hpp</div>  </div>
-</div><!--header-->
-<div class="contents">
-<a href="a00013.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span>&#160;</div>
-<div class="line"><a name="l00013"></a><span class="lineno">   13</span>&#160;<span class="preprocessor">#pragma once</span></div>
-<div class="line"><a name="l00014"></a><span class="lineno">   14</span>&#160;</div>
-<div class="line"><a name="l00015"></a><span class="lineno">   15</span>&#160;<span class="comment">// Dependency:</span></div>
-<div class="line"><a name="l00016"></a><span class="lineno">   16</span>&#160;<span class="preprocessor">#include &quot;../glm.hpp&quot;</span></div>
-<div class="line"><a name="l00017"></a><span class="lineno">   17</span>&#160;</div>
-<div class="line"><a name="l00018"></a><span class="lineno">   18</span>&#160;<span class="preprocessor">#if GLM_MESSAGES == GLM_ENABLE &amp;&amp; !defined(GLM_EXT_INCLUDED)</span></div>
-<div class="line"><a name="l00019"></a><span class="lineno">   19</span>&#160;<span class="preprocessor">#       ifndef GLM_ENABLE_EXPERIMENTAL</span></div>
-<div class="line"><a name="l00020"></a><span class="lineno">   20</span>&#160;<span class="preprocessor">#               pragma message(&quot;GLM: GLM_GTX_color_space is an experimental extension and may change in the future. Use #define GLM_ENABLE_EXPERIMENTAL before including it, if you really want to use it.&quot;)</span></div>
-<div class="line"><a name="l00021"></a><span class="lineno">   21</span>&#160;<span class="preprocessor">#       else</span></div>
-<div class="line"><a name="l00022"></a><span class="lineno">   22</span>&#160;<span class="preprocessor">#               pragma message(&quot;GLM: GLM_GTX_color_space extension included&quot;)</span></div>
-<div class="line"><a name="l00023"></a><span class="lineno">   23</span>&#160;<span class="preprocessor">#       endif</span></div>
-<div class="line"><a name="l00024"></a><span class="lineno">   24</span>&#160;<span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00025"></a><span class="lineno">   25</span>&#160;</div>
-<div class="line"><a name="l00026"></a><span class="lineno">   26</span>&#160;<span class="keyword">namespace </span><a class="code" href="a00236.html">glm</a></div>
-<div class="line"><a name="l00027"></a><span class="lineno">   27</span>&#160;{</div>
-<div class="line"><a name="l00030"></a><span class="lineno">   30</span>&#160;</div>
-<div class="line"><a name="l00033"></a><span class="lineno">   33</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T, qualifier Q&gt;</div>
-<div class="line"><a name="l00034"></a><span class="lineno">   34</span>&#160;        GLM_FUNC_DECL vec&lt;3, T, Q&gt; <a class="code" href="a00312.html#ga5f9193be46f45f0655c05a0cdca006db">rgbColor</a>(</div>
-<div class="line"><a name="l00035"></a><span class="lineno">   35</span>&#160;                vec&lt;3, T, Q&gt; <span class="keyword">const</span>&amp; hsvValue);</div>
-<div class="line"><a name="l00036"></a><span class="lineno">   36</span>&#160;</div>
-<div class="line"><a name="l00039"></a><span class="lineno">   39</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T, qualifier Q&gt;</div>
-<div class="line"><a name="l00040"></a><span class="lineno">   40</span>&#160;        GLM_FUNC_DECL vec&lt;3, T, Q&gt; <a class="code" href="a00312.html#ga789802bec2d4fe0f9741c731b4a8a7d8">hsvColor</a>(</div>
-<div class="line"><a name="l00041"></a><span class="lineno">   41</span>&#160;                vec&lt;3, T, Q&gt; <span class="keyword">const</span>&amp; rgbValue);</div>
-<div class="line"><a name="l00042"></a><span class="lineno">   42</span>&#160;</div>
-<div class="line"><a name="l00045"></a><span class="lineno">   45</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T&gt;</div>
-<div class="line"><a name="l00046"></a><span class="lineno">   46</span>&#160;        GLM_FUNC_DECL mat&lt;4, 4, T, defaultp&gt; <a class="code" href="a00312.html#gaba0eacee0736dae860e9371cc1ae4785">saturation</a>(</div>
-<div class="line"><a name="l00047"></a><span class="lineno">   47</span>&#160;                T <span class="keyword">const</span> s);</div>
-<div class="line"><a name="l00048"></a><span class="lineno">   48</span>&#160;</div>
-<div class="line"><a name="l00051"></a><span class="lineno">   51</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T, qualifier Q&gt;</div>
-<div class="line"><a name="l00052"></a><span class="lineno">   52</span>&#160;        GLM_FUNC_DECL vec&lt;3, T, Q&gt; <a class="code" href="a00312.html#gaba0eacee0736dae860e9371cc1ae4785">saturation</a>(</div>
-<div class="line"><a name="l00053"></a><span class="lineno">   53</span>&#160;                T <span class="keyword">const</span> s,</div>
-<div class="line"><a name="l00054"></a><span class="lineno">   54</span>&#160;                vec&lt;3, T, Q&gt; <span class="keyword">const</span>&amp; color);</div>
-<div class="line"><a name="l00055"></a><span class="lineno">   55</span>&#160;</div>
-<div class="line"><a name="l00058"></a><span class="lineno">   58</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T, qualifier Q&gt;</div>
-<div class="line"><a name="l00059"></a><span class="lineno">   59</span>&#160;        GLM_FUNC_DECL vec&lt;4, T, Q&gt; <a class="code" href="a00312.html#gaba0eacee0736dae860e9371cc1ae4785">saturation</a>(</div>
-<div class="line"><a name="l00060"></a><span class="lineno">   60</span>&#160;                T <span class="keyword">const</span> s,</div>
-<div class="line"><a name="l00061"></a><span class="lineno">   61</span>&#160;                vec&lt;4, T, Q&gt; <span class="keyword">const</span>&amp; color);</div>
-<div class="line"><a name="l00062"></a><span class="lineno">   62</span>&#160;</div>
-<div class="line"><a name="l00065"></a><span class="lineno">   65</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T, qualifier Q&gt;</div>
-<div class="line"><a name="l00066"></a><span class="lineno">   66</span>&#160;        GLM_FUNC_DECL T <a class="code" href="a00312.html#gad028e0a4f1a9c812b39439b746295b34">luminosity</a>(</div>
-<div class="line"><a name="l00067"></a><span class="lineno">   67</span>&#160;                vec&lt;3, T, Q&gt; <span class="keyword">const</span>&amp; color);</div>
-<div class="line"><a name="l00068"></a><span class="lineno">   68</span>&#160;</div>
-<div class="line"><a name="l00070"></a><span class="lineno">   70</span>&#160;}<span class="comment">//namespace glm</span></div>
-<div class="line"><a name="l00071"></a><span class="lineno">   71</span>&#160;</div>
-<div class="line"><a name="l00072"></a><span class="lineno">   72</span>&#160;<span class="preprocessor">#include &quot;color_space.inl&quot;</span></div>
-<div class="ttc" id="a00312_html_gad028e0a4f1a9c812b39439b746295b34"><div class="ttname"><a href="a00312.html#gad028e0a4f1a9c812b39439b746295b34">glm::luminosity</a></div><div class="ttdeci">GLM_FUNC_DECL T luminosity(vec&lt; 3, T, Q &gt; const &amp;color)</div><div class="ttdoc">Compute color luminosity associating ratios (0.33, 0.59, 0.11) to RGB canals. </div></div>
-<div class="ttc" id="a00312_html_gaba0eacee0736dae860e9371cc1ae4785"><div class="ttname"><a href="a00312.html#gaba0eacee0736dae860e9371cc1ae4785">glm::saturation</a></div><div class="ttdeci">GLM_FUNC_DECL vec&lt; 4, T, Q &gt; saturation(T const s, vec&lt; 4, T, Q &gt; const &amp;color)</div><div class="ttdoc">Modify the saturation of a color. </div></div>
-<div class="ttc" id="a00312_html_ga5f9193be46f45f0655c05a0cdca006db"><div class="ttname"><a href="a00312.html#ga5f9193be46f45f0655c05a0cdca006db">glm::rgbColor</a></div><div class="ttdeci">GLM_FUNC_DECL vec&lt; 3, T, Q &gt; rgbColor(vec&lt; 3, T, Q &gt; const &amp;hsvValue)</div><div class="ttdoc">Converts a color from HSV color space to its color in RGB color space. </div></div>
-<div class="ttc" id="a00312_html_ga789802bec2d4fe0f9741c731b4a8a7d8"><div class="ttname"><a href="a00312.html#ga789802bec2d4fe0f9741c731b4a8a7d8">glm::hsvColor</a></div><div class="ttdeci">GLM_FUNC_DECL vec&lt; 3, T, Q &gt; hsvColor(vec&lt; 3, T, Q &gt; const &amp;rgbValue)</div><div class="ttdoc">Converts a color from RGB color space to its color in HSV color space. </div></div>
-<div class="ttc" id="a00236_html"><div class="ttname"><a href="a00236.html">glm</a></div><div class="ttdef"><b>Definition:</b> <a href="a00015_source.html#l00020">common.hpp:20</a></div></div>
-</div><!-- fragment --></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.10
-</small></address>
-</body>
-</html>

+ 826 - 81
doc/api/a00014_source.html

@@ -1,19 +1,17 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://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.10"/>
-<title>0.9.9 API documentation: color_space_YCoCg.hpp Source File</title>
+<meta name="generator" content="Doxygen 1.8.18"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>1.0.0 API documentation: _swizzle.hpp Source File</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="search/search.css" rel="stylesheet" type="text/css"/>
 <script type="text/javascript" src="search/searchdata.js"></script>
 <script type="text/javascript" src="search/search.js"></script>
-<script type="text/javascript">
-  $(document).ready(function() { init_search(); });
-</script>
 <link href="doxygen.css" rel="stylesheet" type="text/css" />
 </head>
 <body>
@@ -24,7 +22,7 @@
  <tr style="height: 56px;">
   <td id="projectlogo"><img alt="Logo" src="logo-mini.png"/></td>
   <td id="projectalign" style="padding-left: 0.5em;">
-   <div id="projectname">0.9.9 API documentation
+   <div id="projectname">1.0.0 API documentation
    </div>
   </td>
  </tr>
@@ -32,38 +30,22 @@
 </table>
 </div>
 <!-- end header part -->
-<!-- Generated by Doxygen 1.8.10 -->
+<!-- Generated by Doxygen 1.8.18 -->
 <script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
 var searchBox = new SearchBox("searchBox", "search",false,'Search');
+/* @license-end */
 </script>
-  <div id="navrow1" class="tabs">
-    <ul class="tablist">
-      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
-      <li><a href="modules.html"><span>Modules</span></a></li>
-      <li class="current"><a href="files.html"><span>Files</span></a></li>
-      <li>
-        <div id="MSearchBox" class="MSearchBoxInactive">
-        <span class="left">
-          <img id="MSearchSelect" src="search/mag_sel.png"
-               onmouseover="return searchBox.OnSearchSelectShow()"
-               onmouseout="return searchBox.OnSearchSelectHide()"
-               alt=""/>
-          <input type="text" id="MSearchField" value="Search" accesskey="S"
-               onfocus="searchBox.OnSearchFieldFocus(true)" 
-               onblur="searchBox.OnSearchFieldFocus(false)" 
-               onkeyup="searchBox.OnSearchFieldChange(event)"/>
-          </span><span class="right">
-            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
-          </span>
-        </div>
-      </li>
-    </ul>
-  </div>
-  <div id="navrow2" class="tabs2">
-    <ul class="tablist">
-      <li><a href="files.html"><span>File&#160;List</span></a></li>
-    </ul>
-  </div>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
 <!-- window showing the filter options -->
 <div id="MSearchSelectWindow"
      onmouseover="return searchBox.OnSearchSelectShow()"
@@ -80,62 +62,825 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 
 <div id="nav-path" class="navpath">
   <ul>
-<li class="navelem"><a class="el" href="dir_3a581ba30d25676e4b797b1f96d53b45.html">F:</a></li><li class="navelem"><a class="el" href="dir_9e5fe034a00e89334fd5186c3e7db156.html">G-Truc</a></li><li class="navelem"><a class="el" href="dir_d9496f0844b48bc7e53b5af8c99b9ab2.html">Source</a></li><li class="navelem"><a class="el" href="dir_a8bee7be44182a33f3820393ae0b105d.html">G-Truc</a></li><li class="navelem"><a class="el" href="dir_44e5e654415abd9ca6fdeaddaff8565e.html">glm</a></li><li class="navelem"><a class="el" href="dir_cef2d71d502cb69a9252bca2297d9549.html">glm</a></li><li class="navelem"><a class="el" href="dir_f35778ec600a1b9bbc4524e62e226aa2.html">gtx</a></li>  </ul>
+<li class="navelem"><a class="el" href="dir_885cc87fac2d91e269af0a5a959fa5f6.html">E:</a></li><li class="navelem"><a class="el" href="dir_63ed049134a778d525e06b63afc2c979.html">Github</a></li><li class="navelem"><a class="el" href="dir_c98a9ac98258ab9f831b188d66361a70.html">g-truc</a></li><li class="navelem"><a class="el" href="dir_50f12b6ceb23d7f6adfb377a1ae8b006.html">glm</a></li><li class="navelem"><a class="el" href="dir_fca33f1b5115d46f42c670590789c0d2.html">glm</a></li><li class="navelem"><a class="el" href="dir_382f4fd018b81be8753cb53c0a41a09a.html">detail</a></li>  </ul>
 </div>
 </div><!-- top -->
 <div class="header">
   <div class="headertitle">
-<div class="title">color_space_YCoCg.hpp</div>  </div>
+<div class="title">_swizzle.hpp</div>  </div>
 </div><!--header-->
 <div class="contents">
-<a href="a00014.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span>&#160;</div>
-<div class="line"><a name="l00013"></a><span class="lineno">   13</span>&#160;<span class="preprocessor">#pragma once</span></div>
-<div class="line"><a name="l00014"></a><span class="lineno">   14</span>&#160;</div>
-<div class="line"><a name="l00015"></a><span class="lineno">   15</span>&#160;<span class="comment">// Dependency:</span></div>
-<div class="line"><a name="l00016"></a><span class="lineno">   16</span>&#160;<span class="preprocessor">#include &quot;../glm.hpp&quot;</span></div>
-<div class="line"><a name="l00017"></a><span class="lineno">   17</span>&#160;</div>
-<div class="line"><a name="l00018"></a><span class="lineno">   18</span>&#160;<span class="preprocessor">#if GLM_MESSAGES == GLM_ENABLE &amp;&amp; !defined(GLM_EXT_INCLUDED)</span></div>
-<div class="line"><a name="l00019"></a><span class="lineno">   19</span>&#160;<span class="preprocessor">#       ifndef GLM_ENABLE_EXPERIMENTAL</span></div>
-<div class="line"><a name="l00020"></a><span class="lineno">   20</span>&#160;<span class="preprocessor">#               pragma message(&quot;GLM: GLM_GTX_color_space_YCoCg is an experimental extension and may change in the future. Use #define GLM_ENABLE_EXPERIMENTAL before including it, if you really want to use it.&quot;)</span></div>
-<div class="line"><a name="l00021"></a><span class="lineno">   21</span>&#160;<span class="preprocessor">#       else</span></div>
-<div class="line"><a name="l00022"></a><span class="lineno">   22</span>&#160;<span class="preprocessor">#               pragma message(&quot;GLM: GLM_GTX_color_space_YCoCg extension included&quot;)</span></div>
-<div class="line"><a name="l00023"></a><span class="lineno">   23</span>&#160;<span class="preprocessor">#       endif</span></div>
-<div class="line"><a name="l00024"></a><span class="lineno">   24</span>&#160;<span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00025"></a><span class="lineno">   25</span>&#160;</div>
-<div class="line"><a name="l00026"></a><span class="lineno">   26</span>&#160;<span class="keyword">namespace </span><a class="code" href="a00236.html">glm</a></div>
-<div class="line"><a name="l00027"></a><span class="lineno">   27</span>&#160;{</div>
-<div class="line"><a name="l00030"></a><span class="lineno">   30</span>&#160;</div>
-<div class="line"><a name="l00033"></a><span class="lineno">   33</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T, qualifier Q&gt;</div>
-<div class="line"><a name="l00034"></a><span class="lineno">   34</span>&#160;        GLM_FUNC_DECL vec&lt;3, T, Q&gt; <a class="code" href="a00313.html#ga0606353ec2a9b9eaa84f1b02ec391bc5">rgb2YCoCg</a>(</div>
-<div class="line"><a name="l00035"></a><span class="lineno">   35</span>&#160;                vec&lt;3, T, Q&gt; <span class="keyword">const</span>&amp; <a class="code" href="a00312.html#ga5f9193be46f45f0655c05a0cdca006db">rgbColor</a>);</div>
-<div class="line"><a name="l00036"></a><span class="lineno">   36</span>&#160;</div>
-<div class="line"><a name="l00039"></a><span class="lineno">   39</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T, qualifier Q&gt;</div>
-<div class="line"><a name="l00040"></a><span class="lineno">   40</span>&#160;        GLM_FUNC_DECL vec&lt;3, T, Q&gt; <a class="code" href="a00313.html#ga163596b804c7241810b2534a99eb1343">YCoCg2rgb</a>(</div>
-<div class="line"><a name="l00041"></a><span class="lineno">   41</span>&#160;                vec&lt;3, T, Q&gt; <span class="keyword">const</span>&amp; YCoCgColor);</div>
-<div class="line"><a name="l00042"></a><span class="lineno">   42</span>&#160;</div>
-<div class="line"><a name="l00046"></a><span class="lineno">   46</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T, qualifier Q&gt;</div>
-<div class="line"><a name="l00047"></a><span class="lineno">   47</span>&#160;        GLM_FUNC_DECL vec&lt;3, T, Q&gt; <a class="code" href="a00313.html#ga0389772e44ca0fd2ba4a79bdd8efe898">rgb2YCoCgR</a>(</div>
-<div class="line"><a name="l00048"></a><span class="lineno">   48</span>&#160;                vec&lt;3, T, Q&gt; <span class="keyword">const</span>&amp; <a class="code" href="a00312.html#ga5f9193be46f45f0655c05a0cdca006db">rgbColor</a>);</div>
-<div class="line"><a name="l00049"></a><span class="lineno">   49</span>&#160;</div>
-<div class="line"><a name="l00053"></a><span class="lineno">   53</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T, qualifier Q&gt;</div>
-<div class="line"><a name="l00054"></a><span class="lineno">   54</span>&#160;        GLM_FUNC_DECL vec&lt;3, T, Q&gt; <a class="code" href="a00313.html#gaf8d30574c8576838097d8e20c295384a">YCoCgR2rgb</a>(</div>
-<div class="line"><a name="l00055"></a><span class="lineno">   55</span>&#160;                vec&lt;3, T, Q&gt; <span class="keyword">const</span>&amp; YCoCgColor);</div>
-<div class="line"><a name="l00056"></a><span class="lineno">   56</span>&#160;</div>
-<div class="line"><a name="l00058"></a><span class="lineno">   58</span>&#160;}<span class="comment">//namespace glm</span></div>
-<div class="line"><a name="l00059"></a><span class="lineno">   59</span>&#160;</div>
-<div class="line"><a name="l00060"></a><span class="lineno">   60</span>&#160;<span class="preprocessor">#include &quot;color_space_YCoCg.inl&quot;</span></div>
-<div class="ttc" id="a00313_html_gaf8d30574c8576838097d8e20c295384a"><div class="ttname"><a href="a00313.html#gaf8d30574c8576838097d8e20c295384a">glm::YCoCgR2rgb</a></div><div class="ttdeci">GLM_FUNC_DECL vec&lt; 3, T, Q &gt; YCoCgR2rgb(vec&lt; 3, T, Q &gt; const &amp;YCoCgColor)</div><div class="ttdoc">Convert a color from YCoCgR color space to RGB color space. </div></div>
-<div class="ttc" id="a00313_html_ga163596b804c7241810b2534a99eb1343"><div class="ttname"><a href="a00313.html#ga163596b804c7241810b2534a99eb1343">glm::YCoCg2rgb</a></div><div class="ttdeci">GLM_FUNC_DECL vec&lt; 3, T, Q &gt; YCoCg2rgb(vec&lt; 3, T, Q &gt; const &amp;YCoCgColor)</div><div class="ttdoc">Convert a color from YCoCg color space to RGB color space. </div></div>
-<div class="ttc" id="a00312_html_ga5f9193be46f45f0655c05a0cdca006db"><div class="ttname"><a href="a00312.html#ga5f9193be46f45f0655c05a0cdca006db">glm::rgbColor</a></div><div class="ttdeci">GLM_FUNC_DECL vec&lt; 3, T, Q &gt; rgbColor(vec&lt; 3, T, Q &gt; const &amp;hsvValue)</div><div class="ttdoc">Converts a color from HSV color space to its color in RGB color space. </div></div>
-<div class="ttc" id="a00313_html_ga0606353ec2a9b9eaa84f1b02ec391bc5"><div class="ttname"><a href="a00313.html#ga0606353ec2a9b9eaa84f1b02ec391bc5">glm::rgb2YCoCg</a></div><div class="ttdeci">GLM_FUNC_DECL vec&lt; 3, T, Q &gt; rgb2YCoCg(vec&lt; 3, T, Q &gt; const &amp;rgbColor)</div><div class="ttdoc">Convert a color from RGB color space to YCoCg color space. </div></div>
-<div class="ttc" id="a00313_html_ga0389772e44ca0fd2ba4a79bdd8efe898"><div class="ttname"><a href="a00313.html#ga0389772e44ca0fd2ba4a79bdd8efe898">glm::rgb2YCoCgR</a></div><div class="ttdeci">GLM_FUNC_DECL vec&lt; 3, T, Q &gt; rgb2YCoCgR(vec&lt; 3, T, Q &gt; const &amp;rgbColor)</div><div class="ttdoc">Convert a color from RGB color space to YCoCgR color space. </div></div>
-<div class="ttc" id="a00236_html"><div class="ttname"><a href="a00236.html">glm</a></div><div class="ttdef"><b>Definition:</b> <a href="a00015_source.html#l00020">common.hpp:20</a></div></div>
+<div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span>&#160;<span class="preprocessor">#pragma once</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno">    2</span>&#160; </div>
+<div class="line"><a name="l00003"></a><span class="lineno">    3</span>&#160;<span class="keyword">namespace </span>glm{</div>
+<div class="line"><a name="l00004"></a><span class="lineno">    4</span>&#160;<span class="keyword">namespace </span>detail</div>
+<div class="line"><a name="l00005"></a><span class="lineno">    5</span>&#160;{</div>
+<div class="line"><a name="l00006"></a><span class="lineno">    6</span>&#160;        <span class="comment">// Internal class for implementing swizzle operators</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno">    7</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T, <span class="keywordtype">int</span> N&gt;</div>
+<div class="line"><a name="l00008"></a><span class="lineno">    8</span>&#160;        <span class="keyword">struct </span>_swizzle_base0</div>
+<div class="line"><a name="l00009"></a><span class="lineno">    9</span>&#160;        {</div>
+<div class="line"><a name="l00010"></a><span class="lineno">   10</span>&#160;        <span class="keyword">protected</span>:</div>
+<div class="line"><a name="l00011"></a><span class="lineno">   11</span>&#160;                GLM_FUNC_QUALIFIER T&amp; elem(<span class="keywordtype">int</span> i){ <span class="keywordflow">return</span> (<span class="keyword">reinterpret_cast&lt;</span>T*<span class="keyword">&gt;</span>(_buffer))[i]; }</div>
+<div class="line"><a name="l00012"></a><span class="lineno">   12</span>&#160;                GLM_FUNC_QUALIFIER T <span class="keyword">const</span>&amp; elem(<span class="keywordtype">int</span> i)<span class="keyword"> const</span>{ <span class="keywordflow">return</span> (<span class="keyword">reinterpret_cast&lt;</span><span class="keyword">const </span>T*<span class="keyword">&gt;</span>(_buffer))[i]; }</div>
+<div class="line"><a name="l00013"></a><span class="lineno">   13</span>&#160; </div>
+<div class="line"><a name="l00014"></a><span class="lineno">   14</span>&#160;                <span class="comment">// Use an opaque buffer to *ensure* the compiler doesn&#39;t call a constructor.</span></div>
+<div class="line"><a name="l00015"></a><span class="lineno">   15</span>&#160;                <span class="comment">// The size 1 buffer is assumed to aligned to the actual members so that the</span></div>
+<div class="line"><a name="l00016"></a><span class="lineno">   16</span>&#160;                <span class="comment">// elem()</span></div>
+<div class="line"><a name="l00017"></a><span class="lineno">   17</span>&#160;                <span class="keywordtype">char</span>    _buffer[1];</div>
+<div class="line"><a name="l00018"></a><span class="lineno">   18</span>&#160;        };</div>
+<div class="line"><a name="l00019"></a><span class="lineno">   19</span>&#160; </div>
+<div class="line"><a name="l00020"></a><span class="lineno">   20</span>&#160;        <span class="keyword">template</span>&lt;<span class="keywordtype">int</span> N, <span class="keyword">typename</span> T, qualifier Q, <span class="keywordtype">int</span> E0, <span class="keywordtype">int</span> E1, <span class="keywordtype">int</span> E2, <span class="keywordtype">int</span> E3, <span class="keywordtype">bool</span> Aligned&gt;</div>
+<div class="line"><a name="l00021"></a><span class="lineno">   21</span>&#160;        <span class="keyword">struct </span>_swizzle_base1 : <span class="keyword">public</span> _swizzle_base0&lt;T, N&gt;</div>
+<div class="line"><a name="l00022"></a><span class="lineno">   22</span>&#160;        {</div>
+<div class="line"><a name="l00023"></a><span class="lineno">   23</span>&#160;        };</div>
+<div class="line"><a name="l00024"></a><span class="lineno">   24</span>&#160; </div>
+<div class="line"><a name="l00025"></a><span class="lineno">   25</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T, qualifier Q, <span class="keywordtype">int</span> E0, <span class="keywordtype">int</span> E1, <span class="keywordtype">bool</span> Aligned&gt;</div>
+<div class="line"><a name="l00026"></a><span class="lineno">   26</span>&#160;        <span class="keyword">struct </span>_swizzle_base1&lt;2, T, Q, E0,E1,-1,-2, Aligned&gt; : <span class="keyword">public</span> _swizzle_base0&lt;T, 2&gt;</div>
+<div class="line"><a name="l00027"></a><span class="lineno">   27</span>&#160;        {</div>
+<div class="line"><a name="l00028"></a><span class="lineno">   28</span>&#160;                GLM_FUNC_QUALIFIER vec&lt;2, T, Q&gt; operator ()()<span class="keyword">  const </span>{ <span class="keywordflow">return</span> vec&lt;2, T, Q&gt;(this-&gt;elem(E0), this-&gt;elem(E1)); }</div>
+<div class="line"><a name="l00029"></a><span class="lineno">   29</span>&#160;        };</div>
+<div class="line"><a name="l00030"></a><span class="lineno">   30</span>&#160; </div>
+<div class="line"><a name="l00031"></a><span class="lineno">   31</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T, qualifier Q, <span class="keywordtype">int</span> E0, <span class="keywordtype">int</span> E1, <span class="keywordtype">int</span> E2, <span class="keywordtype">bool</span> Aligned&gt;</div>
+<div class="line"><a name="l00032"></a><span class="lineno">   32</span>&#160;        <span class="keyword">struct </span>_swizzle_base1&lt;3, T, Q, E0,E1,E2,-1, Aligned&gt; : <span class="keyword">public</span> _swizzle_base0&lt;T, 3&gt;</div>
+<div class="line"><a name="l00033"></a><span class="lineno">   33</span>&#160;        {</div>
+<div class="line"><a name="l00034"></a><span class="lineno">   34</span>&#160;                GLM_FUNC_QUALIFIER vec&lt;3, T, Q&gt; operator ()()<span class="keyword">  const </span>{ <span class="keywordflow">return</span> vec&lt;3, T, Q&gt;(this-&gt;elem(E0), this-&gt;elem(E1), this-&gt;elem(E2)); }</div>
+<div class="line"><a name="l00035"></a><span class="lineno">   35</span>&#160;        };</div>
+<div class="line"><a name="l00036"></a><span class="lineno">   36</span>&#160; </div>
+<div class="line"><a name="l00037"></a><span class="lineno">   37</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T, qualifier Q, <span class="keywordtype">int</span> E0, <span class="keywordtype">int</span> E1, <span class="keywordtype">int</span> E2, <span class="keywordtype">int</span> E3, <span class="keywordtype">bool</span> Aligned&gt;</div>
+<div class="line"><a name="l00038"></a><span class="lineno">   38</span>&#160;        <span class="keyword">struct </span>_swizzle_base1&lt;4, T, Q, E0,E1,E2,E3, Aligned&gt; : <span class="keyword">public</span> _swizzle_base0&lt;T, 4&gt;</div>
+<div class="line"><a name="l00039"></a><span class="lineno">   39</span>&#160;        {</div>
+<div class="line"><a name="l00040"></a><span class="lineno">   40</span>&#160;                GLM_FUNC_QUALIFIER vec&lt;4, T, Q&gt; operator ()()<span class="keyword">  const </span>{ <span class="keywordflow">return</span> vec&lt;4, T, Q&gt;(this-&gt;elem(E0), this-&gt;elem(E1), this-&gt;elem(E2), this-&gt;elem(E3)); }</div>
+<div class="line"><a name="l00041"></a><span class="lineno">   41</span>&#160;        };</div>
+<div class="line"><a name="l00042"></a><span class="lineno">   42</span>&#160; </div>
+<div class="line"><a name="l00043"></a><span class="lineno">   43</span>&#160;        <span class="comment">// Internal class for implementing swizzle operators</span></div>
+<div class="line"><a name="l00044"></a><span class="lineno">   44</span>&#160;        <span class="comment">/*</span></div>
+<div class="line"><a name="l00045"></a><span class="lineno">   45</span>&#160;<span class="comment">                Template parameters:</span></div>
+<div class="line"><a name="l00046"></a><span class="lineno">   46</span>&#160;<span class="comment"></span> </div>
+<div class="line"><a name="l00047"></a><span class="lineno">   47</span>&#160;<span class="comment">                T                       = type of scalar values (e.g. float, double)</span></div>
+<div class="line"><a name="l00048"></a><span class="lineno">   48</span>&#160;<span class="comment">                N                       = number of components in the vector (e.g. 3)</span></div>
+<div class="line"><a name="l00049"></a><span class="lineno">   49</span>&#160;<span class="comment">                E0...3          = what index the n-th element of this swizzle refers to in the unswizzled vec</span></div>
+<div class="line"><a name="l00050"></a><span class="lineno">   50</span>&#160;<span class="comment"></span> </div>
+<div class="line"><a name="l00051"></a><span class="lineno">   51</span>&#160;<span class="comment">                DUPLICATE_ELEMENTS = 1 if there is a repeated element, 0 otherwise (used to specialize swizzles</span></div>
+<div class="line"><a name="l00052"></a><span class="lineno">   52</span>&#160;<span class="comment">                        containing duplicate elements so that they cannot be used as r-values).</span></div>
+<div class="line"><a name="l00053"></a><span class="lineno">   53</span>&#160;<span class="comment">        */</span></div>
+<div class="line"><a name="l00054"></a><span class="lineno">   54</span>&#160;        <span class="keyword">template</span>&lt;<span class="keywordtype">int</span> N, <span class="keyword">typename</span> T, qualifier Q, <span class="keywordtype">int</span> E0, <span class="keywordtype">int</span> E1, <span class="keywordtype">int</span> E2, <span class="keywordtype">int</span> E3, <span class="keywordtype">int</span> DUPLICATE_ELEMENTS&gt;</div>
+<div class="line"><a name="l00055"></a><span class="lineno">   55</span>&#160;        <span class="keyword">struct </span>_swizzle_base2 : <span class="keyword">public</span> _swizzle_base1&lt;N, T, Q, E0,E1,E2,E3, detail::is_aligned&lt;Q&gt;::value&gt;</div>
+<div class="line"><a name="l00056"></a><span class="lineno">   56</span>&#160;        {</div>
+<div class="line"><a name="l00057"></a><span class="lineno">   57</span>&#160;                <span class="keyword">struct </span>op_equal</div>
+<div class="line"><a name="l00058"></a><span class="lineno">   58</span>&#160;                {</div>
+<div class="line"><a name="l00059"></a><span class="lineno">   59</span>&#160;                        GLM_FUNC_QUALIFIER <span class="keywordtype">void</span> operator() (T&amp; <a class="code" href="a00899.html#ga4b7956eb6e2fbedfc7cf2e46e85c5139">e</a>, T&amp; t)<span class="keyword"> const</span>{ <a class="code" href="a00899.html#ga4b7956eb6e2fbedfc7cf2e46e85c5139">e</a> = t; }</div>
+<div class="line"><a name="l00060"></a><span class="lineno">   60</span>&#160;                };</div>
+<div class="line"><a name="l00061"></a><span class="lineno">   61</span>&#160; </div>
+<div class="line"><a name="l00062"></a><span class="lineno">   62</span>&#160;                <span class="keyword">struct </span>op_minus</div>
+<div class="line"><a name="l00063"></a><span class="lineno">   63</span>&#160;                {</div>
+<div class="line"><a name="l00064"></a><span class="lineno">   64</span>&#160;                        GLM_FUNC_QUALIFIER <span class="keywordtype">void</span> operator() (T&amp; <a class="code" href="a00899.html#ga4b7956eb6e2fbedfc7cf2e46e85c5139">e</a>, T&amp; t)<span class="keyword"> const</span>{ <a class="code" href="a00899.html#ga4b7956eb6e2fbedfc7cf2e46e85c5139">e</a> -= t; }</div>
+<div class="line"><a name="l00065"></a><span class="lineno">   65</span>&#160;                };</div>
+<div class="line"><a name="l00066"></a><span class="lineno">   66</span>&#160; </div>
+<div class="line"><a name="l00067"></a><span class="lineno">   67</span>&#160;                <span class="keyword">struct </span>op_plus</div>
+<div class="line"><a name="l00068"></a><span class="lineno">   68</span>&#160;                {</div>
+<div class="line"><a name="l00069"></a><span class="lineno">   69</span>&#160;                        GLM_FUNC_QUALIFIER <span class="keywordtype">void</span> operator() (T&amp; <a class="code" href="a00899.html#ga4b7956eb6e2fbedfc7cf2e46e85c5139">e</a>, T&amp; t)<span class="keyword"> const</span>{ <a class="code" href="a00899.html#ga4b7956eb6e2fbedfc7cf2e46e85c5139">e</a> += t; }</div>
+<div class="line"><a name="l00070"></a><span class="lineno">   70</span>&#160;                };</div>
+<div class="line"><a name="l00071"></a><span class="lineno">   71</span>&#160; </div>
+<div class="line"><a name="l00072"></a><span class="lineno">   72</span>&#160;                <span class="keyword">struct </span>op_mul</div>
+<div class="line"><a name="l00073"></a><span class="lineno">   73</span>&#160;                {</div>
+<div class="line"><a name="l00074"></a><span class="lineno">   74</span>&#160;                        GLM_FUNC_QUALIFIER <span class="keywordtype">void</span> operator() (T&amp; <a class="code" href="a00899.html#ga4b7956eb6e2fbedfc7cf2e46e85c5139">e</a>, T&amp; t)<span class="keyword"> const</span>{ <a class="code" href="a00899.html#ga4b7956eb6e2fbedfc7cf2e46e85c5139">e</a> *= t; }</div>
+<div class="line"><a name="l00075"></a><span class="lineno">   75</span>&#160;                };</div>
+<div class="line"><a name="l00076"></a><span class="lineno">   76</span>&#160; </div>
+<div class="line"><a name="l00077"></a><span class="lineno">   77</span>&#160;                <span class="keyword">struct </span>op_div</div>
+<div class="line"><a name="l00078"></a><span class="lineno">   78</span>&#160;                {</div>
+<div class="line"><a name="l00079"></a><span class="lineno">   79</span>&#160;                        GLM_FUNC_QUALIFIER <span class="keywordtype">void</span> operator() (T&amp; <a class="code" href="a00899.html#ga4b7956eb6e2fbedfc7cf2e46e85c5139">e</a>, T&amp; t)<span class="keyword"> const</span>{ <a class="code" href="a00899.html#ga4b7956eb6e2fbedfc7cf2e46e85c5139">e</a> /= t; }</div>
+<div class="line"><a name="l00080"></a><span class="lineno">   80</span>&#160;                };</div>
+<div class="line"><a name="l00081"></a><span class="lineno">   81</span>&#160; </div>
+<div class="line"><a name="l00082"></a><span class="lineno">   82</span>&#160;        <span class="keyword">public</span>:</div>
+<div class="line"><a name="l00083"></a><span class="lineno">   83</span>&#160;                GLM_FUNC_QUALIFIER _swizzle_base2&amp; operator= (<span class="keyword">const</span> T&amp; t)</div>
+<div class="line"><a name="l00084"></a><span class="lineno">   84</span>&#160;                {</div>
+<div class="line"><a name="l00085"></a><span class="lineno">   85</span>&#160;                        <span class="keywordflow">for</span> (<span class="keywordtype">int</span> i = 0; i &lt; N; ++i)</div>
+<div class="line"><a name="l00086"></a><span class="lineno">   86</span>&#160;                                (*<span class="keyword">this</span>)[i] = t;</div>
+<div class="line"><a name="l00087"></a><span class="lineno">   87</span>&#160;                        <span class="keywordflow">return</span> *<span class="keyword">this</span>;</div>
+<div class="line"><a name="l00088"></a><span class="lineno">   88</span>&#160;                }</div>
+<div class="line"><a name="l00089"></a><span class="lineno">   89</span>&#160; </div>
+<div class="line"><a name="l00090"></a><span class="lineno">   90</span>&#160;                GLM_FUNC_QUALIFIER _swizzle_base2&amp; operator= (vec&lt;N, T, Q&gt; <span class="keyword">const</span>&amp; that)</div>
+<div class="line"><a name="l00091"></a><span class="lineno">   91</span>&#160;                {</div>
+<div class="line"><a name="l00092"></a><span class="lineno">   92</span>&#160;                        _apply_op(that, op_equal());</div>
+<div class="line"><a name="l00093"></a><span class="lineno">   93</span>&#160;                        <span class="keywordflow">return</span> *<span class="keyword">this</span>;</div>
+<div class="line"><a name="l00094"></a><span class="lineno">   94</span>&#160;                }</div>
+<div class="line"><a name="l00095"></a><span class="lineno">   95</span>&#160; </div>
+<div class="line"><a name="l00096"></a><span class="lineno">   96</span>&#160;                GLM_FUNC_QUALIFIER <span class="keywordtype">void</span> operator -= (vec&lt;N, T, Q&gt; <span class="keyword">const</span>&amp; that)</div>
+<div class="line"><a name="l00097"></a><span class="lineno">   97</span>&#160;                {</div>
+<div class="line"><a name="l00098"></a><span class="lineno">   98</span>&#160;                        _apply_op(that, op_minus());</div>
+<div class="line"><a name="l00099"></a><span class="lineno">   99</span>&#160;                }</div>
+<div class="line"><a name="l00100"></a><span class="lineno">  100</span>&#160; </div>
+<div class="line"><a name="l00101"></a><span class="lineno">  101</span>&#160;                GLM_FUNC_QUALIFIER <span class="keywordtype">void</span> operator += (vec&lt;N, T, Q&gt; <span class="keyword">const</span>&amp; that)</div>
+<div class="line"><a name="l00102"></a><span class="lineno">  102</span>&#160;                {</div>
+<div class="line"><a name="l00103"></a><span class="lineno">  103</span>&#160;                        _apply_op(that, op_plus());</div>
+<div class="line"><a name="l00104"></a><span class="lineno">  104</span>&#160;                }</div>
+<div class="line"><a name="l00105"></a><span class="lineno">  105</span>&#160; </div>
+<div class="line"><a name="l00106"></a><span class="lineno">  106</span>&#160;                GLM_FUNC_QUALIFIER <span class="keywordtype">void</span> operator *= (vec&lt;N, T, Q&gt; <span class="keyword">const</span>&amp; that)</div>
+<div class="line"><a name="l00107"></a><span class="lineno">  107</span>&#160;                {</div>
+<div class="line"><a name="l00108"></a><span class="lineno">  108</span>&#160;                        _apply_op(that, op_mul());</div>
+<div class="line"><a name="l00109"></a><span class="lineno">  109</span>&#160;                }</div>
+<div class="line"><a name="l00110"></a><span class="lineno">  110</span>&#160; </div>
+<div class="line"><a name="l00111"></a><span class="lineno">  111</span>&#160;                GLM_FUNC_QUALIFIER <span class="keywordtype">void</span> operator /= (vec&lt;N, T, Q&gt; <span class="keyword">const</span>&amp; that)</div>
+<div class="line"><a name="l00112"></a><span class="lineno">  112</span>&#160;                {</div>
+<div class="line"><a name="l00113"></a><span class="lineno">  113</span>&#160;                        _apply_op(that, op_div());</div>
+<div class="line"><a name="l00114"></a><span class="lineno">  114</span>&#160;                }</div>
+<div class="line"><a name="l00115"></a><span class="lineno">  115</span>&#160; </div>
+<div class="line"><a name="l00116"></a><span class="lineno">  116</span>&#160;                GLM_FUNC_QUALIFIER T&amp; operator[](<span class="keywordtype">int</span> i)</div>
+<div class="line"><a name="l00117"></a><span class="lineno">  117</span>&#160;                {</div>
+<div class="line"><a name="l00118"></a><span class="lineno">  118</span>&#160;                        <span class="keyword">const</span> <span class="keywordtype">int</span> offset_dst[4] = { E0, E1, E2, E3 };</div>
+<div class="line"><a name="l00119"></a><span class="lineno">  119</span>&#160;                        <span class="keywordflow">return</span> this-&gt;elem(offset_dst[i]);</div>
+<div class="line"><a name="l00120"></a><span class="lineno">  120</span>&#160;                }</div>
+<div class="line"><a name="l00121"></a><span class="lineno">  121</span>&#160;                GLM_FUNC_QUALIFIER T operator[](<span class="keywordtype">int</span> i)<span class="keyword"> const</span></div>
+<div class="line"><a name="l00122"></a><span class="lineno">  122</span>&#160;<span class="keyword">                </span>{</div>
+<div class="line"><a name="l00123"></a><span class="lineno">  123</span>&#160;                        <span class="keyword">const</span> <span class="keywordtype">int</span> offset_dst[4] = { E0, E1, E2, E3 };</div>
+<div class="line"><a name="l00124"></a><span class="lineno">  124</span>&#160;                        <span class="keywordflow">return</span> this-&gt;elem(offset_dst[i]);</div>
+<div class="line"><a name="l00125"></a><span class="lineno">  125</span>&#160;                }</div>
+<div class="line"><a name="l00126"></a><span class="lineno">  126</span>&#160; </div>
+<div class="line"><a name="l00127"></a><span class="lineno">  127</span>&#160;        <span class="keyword">protected</span>:</div>
+<div class="line"><a name="l00128"></a><span class="lineno">  128</span>&#160;                <span class="keyword">template</span>&lt;<span class="keyword">typename</span> U&gt;</div>
+<div class="line"><a name="l00129"></a><span class="lineno">  129</span>&#160;                GLM_FUNC_QUALIFIER <span class="keywordtype">void</span> _apply_op(vec&lt;N, T, Q&gt; <span class="keyword">const</span>&amp; that, <span class="keyword">const</span> U&amp; op)</div>
+<div class="line"><a name="l00130"></a><span class="lineno">  130</span>&#160;                {</div>
+<div class="line"><a name="l00131"></a><span class="lineno">  131</span>&#160;                        <span class="comment">// Make a copy of the data in this == &amp;that.</span></div>
+<div class="line"><a name="l00132"></a><span class="lineno">  132</span>&#160;                        <span class="comment">// The copier should optimize out the copy in cases where the function is</span></div>
+<div class="line"><a name="l00133"></a><span class="lineno">  133</span>&#160;                        <span class="comment">// properly inlined and the copy is not necessary.</span></div>
+<div class="line"><a name="l00134"></a><span class="lineno">  134</span>&#160;                        T t[N];</div>
+<div class="line"><a name="l00135"></a><span class="lineno">  135</span>&#160;                        <span class="keywordflow">for</span> (<span class="keywordtype">int</span> i = 0; i &lt; N; ++i)</div>
+<div class="line"><a name="l00136"></a><span class="lineno">  136</span>&#160;                                t[i] = that[i];</div>
+<div class="line"><a name="l00137"></a><span class="lineno">  137</span>&#160;                        <span class="keywordflow">for</span> (<span class="keywordtype">int</span> i = 0; i &lt; N; ++i)</div>
+<div class="line"><a name="l00138"></a><span class="lineno">  138</span>&#160;                                op( (*<span class="keyword">this</span>)[i], t[i] );</div>
+<div class="line"><a name="l00139"></a><span class="lineno">  139</span>&#160;                }</div>
+<div class="line"><a name="l00140"></a><span class="lineno">  140</span>&#160;        };</div>
+<div class="line"><a name="l00141"></a><span class="lineno">  141</span>&#160; </div>
+<div class="line"><a name="l00142"></a><span class="lineno">  142</span>&#160;        <span class="comment">// Specialization for swizzles containing duplicate elements.  These cannot be modified.</span></div>
+<div class="line"><a name="l00143"></a><span class="lineno">  143</span>&#160;        <span class="keyword">template</span>&lt;<span class="keywordtype">int</span> N, <span class="keyword">typename</span> T, qualifier Q, <span class="keywordtype">int</span> E0, <span class="keywordtype">int</span> E1, <span class="keywordtype">int</span> E2, <span class="keywordtype">int</span> E3&gt;</div>
+<div class="line"><a name="l00144"></a><span class="lineno">  144</span>&#160;        <span class="keyword">struct </span>_swizzle_base2&lt;N, T, Q, E0,E1,E2,E3, 1&gt; : <span class="keyword">public</span> _swizzle_base1&lt;N, T, Q, E0,E1,E2,E3, detail::is_aligned&lt;Q&gt;::value&gt;</div>
+<div class="line"><a name="l00145"></a><span class="lineno">  145</span>&#160;        {</div>
+<div class="line"><a name="l00146"></a><span class="lineno">  146</span>&#160;                <span class="keyword">struct </span>Stub {};</div>
+<div class="line"><a name="l00147"></a><span class="lineno">  147</span>&#160; </div>
+<div class="line"><a name="l00148"></a><span class="lineno">  148</span>&#160;                GLM_FUNC_QUALIFIER _swizzle_base2&amp; operator= (Stub <span class="keyword">const</span>&amp;) { <span class="keywordflow">return</span> *<span class="keyword">this</span>; }</div>
+<div class="line"><a name="l00149"></a><span class="lineno">  149</span>&#160; </div>
+<div class="line"><a name="l00150"></a><span class="lineno">  150</span>&#160;                GLM_FUNC_QUALIFIER T operator[]  (<span class="keywordtype">int</span> i)<span class="keyword"> const</span></div>
+<div class="line"><a name="l00151"></a><span class="lineno">  151</span>&#160;<span class="keyword">                </span>{</div>
+<div class="line"><a name="l00152"></a><span class="lineno">  152</span>&#160;                        <span class="keyword">const</span> <span class="keywordtype">int</span> offset_dst[4] = { E0, E1, E2, E3 };</div>
+<div class="line"><a name="l00153"></a><span class="lineno">  153</span>&#160;                        <span class="keywordflow">return</span> this-&gt;elem(offset_dst[i]);</div>
+<div class="line"><a name="l00154"></a><span class="lineno">  154</span>&#160;                }</div>
+<div class="line"><a name="l00155"></a><span class="lineno">  155</span>&#160;        };</div>
+<div class="line"><a name="l00156"></a><span class="lineno">  156</span>&#160; </div>
+<div class="line"><a name="l00157"></a><span class="lineno">  157</span>&#160;        <span class="keyword">template</span>&lt;<span class="keywordtype">int</span> N, <span class="keyword">typename</span> T, qualifier Q, <span class="keywordtype">int</span> E0, <span class="keywordtype">int</span> E1, <span class="keywordtype">int</span> E2, <span class="keywordtype">int</span> E3&gt;</div>
+<div class="line"><a name="l00158"></a><span class="lineno">  158</span>&#160;        <span class="keyword">struct </span>_swizzle : <span class="keyword">public</span> _swizzle_base2&lt;N, T, Q, E0, E1, E2, E3, (E0 == E1 || E0 == E2 || E0 == E3 || E1 == E2 || E1 == E3 || E2 == E3)&gt;</div>
+<div class="line"><a name="l00159"></a><span class="lineno">  159</span>&#160;        {</div>
+<div class="line"><a name="l00160"></a><span class="lineno">  160</span>&#160;                <span class="keyword">typedef</span> _swizzle_base2&lt;N, T, Q, E0, E1, E2, E3, (E0 == E1 || E0 == E2 || E0 == E3 || E1 == E2 || E1 == E3 || E2 == E3)&gt; base_type;</div>
+<div class="line"><a name="l00161"></a><span class="lineno">  161</span>&#160; </div>
+<div class="line"><a name="l00162"></a><span class="lineno">  162</span>&#160;                <span class="keyword">using</span> base_type::operator=;</div>
+<div class="line"><a name="l00163"></a><span class="lineno">  163</span>&#160; </div>
+<div class="line"><a name="l00164"></a><span class="lineno">  164</span>&#160;                GLM_FUNC_QUALIFIER <span class="keyword">operator</span> vec&lt;N, T, Q&gt; ()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> (*<span class="keyword">this</span>)(); }</div>
+<div class="line"><a name="l00165"></a><span class="lineno">  165</span>&#160;        };</div>
+<div class="line"><a name="l00166"></a><span class="lineno">  166</span>&#160; </div>
+<div class="line"><a name="l00167"></a><span class="lineno">  167</span>&#160;<span class="comment">//</span></div>
+<div class="line"><a name="l00168"></a><span class="lineno">  168</span>&#160;<span class="comment">// To prevent the C++ syntax from getting entirely overwhelming, define some alias macros</span></div>
+<div class="line"><a name="l00169"></a><span class="lineno">  169</span>&#160;<span class="comment">//</span></div>
+<div class="line"><a name="l00170"></a><span class="lineno">  170</span>&#160;<span class="preprocessor">#define GLM_SWIZZLE_TEMPLATE1   template&lt;int N, typename T, qualifier Q, int E0, int E1, int E2, int E3&gt;</span></div>
+<div class="line"><a name="l00171"></a><span class="lineno">  171</span>&#160;<span class="preprocessor">#define GLM_SWIZZLE_TEMPLATE2   template&lt;int N, typename T, qualifier Q, int E0, int E1, int E2, int E3, int F0, int F1, int F2, int F3&gt;</span></div>
+<div class="line"><a name="l00172"></a><span class="lineno">  172</span>&#160;<span class="preprocessor">#define GLM_SWIZZLE_TYPE1       _swizzle&lt;N, T, Q, E0, E1, E2, E3&gt;</span></div>
+<div class="line"><a name="l00173"></a><span class="lineno">  173</span>&#160;<span class="preprocessor">#define GLM_SWIZZLE_TYPE2       _swizzle&lt;N, T, Q, F0, F1, F2, F3&gt;</span></div>
+<div class="line"><a name="l00174"></a><span class="lineno">  174</span>&#160; </div>
+<div class="line"><a name="l00175"></a><span class="lineno">  175</span>&#160;<span class="comment">//</span></div>
+<div class="line"><a name="l00176"></a><span class="lineno">  176</span>&#160;<span class="comment">// Wrapper for a binary operator (e.g. u.yy + v.zy)</span></div>
+<div class="line"><a name="l00177"></a><span class="lineno">  177</span>&#160;<span class="comment">//</span></div>
+<div class="line"><a name="l00178"></a><span class="lineno">  178</span>&#160;<span class="preprocessor">#define GLM_SWIZZLE_VECTOR_BINARY_OPERATOR_IMPLEMENTATION(OPERAND)                 \</span></div>
+<div class="line"><a name="l00179"></a><span class="lineno">  179</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_TEMPLATE2                                                          \</span></div>
+<div class="line"><a name="l00180"></a><span class="lineno">  180</span>&#160;<span class="preprocessor">        GLM_FUNC_QUALIFIER vec&lt;N, T, Q&gt; operator OPERAND ( const GLM_SWIZZLE_TYPE1&amp; a, const GLM_SWIZZLE_TYPE2&amp; b)  \</span></div>
+<div class="line"><a name="l00181"></a><span class="lineno">  181</span>&#160;<span class="preprocessor">        {                                                                               \</span></div>
+<div class="line"><a name="l00182"></a><span class="lineno">  182</span>&#160;<span class="preprocessor">                return a() OPERAND b();                                                     \</span></div>
+<div class="line"><a name="l00183"></a><span class="lineno">  183</span>&#160;<span class="preprocessor">        }                                                                               \</span></div>
+<div class="line"><a name="l00184"></a><span class="lineno">  184</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_TEMPLATE1                                                          \</span></div>
+<div class="line"><a name="l00185"></a><span class="lineno">  185</span>&#160;<span class="preprocessor">        GLM_FUNC_QUALIFIER vec&lt;N, T, Q&gt; operator OPERAND ( const GLM_SWIZZLE_TYPE1&amp; a, const vec&lt;N, T, Q&gt;&amp; b)                   \</span></div>
+<div class="line"><a name="l00186"></a><span class="lineno">  186</span>&#160;<span class="preprocessor">        {                                                                               \</span></div>
+<div class="line"><a name="l00187"></a><span class="lineno">  187</span>&#160;<span class="preprocessor">                return a() OPERAND b;                                                       \</span></div>
+<div class="line"><a name="l00188"></a><span class="lineno">  188</span>&#160;<span class="preprocessor">        }                                                                               \</span></div>
+<div class="line"><a name="l00189"></a><span class="lineno">  189</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_TEMPLATE1                                                          \</span></div>
+<div class="line"><a name="l00190"></a><span class="lineno">  190</span>&#160;<span class="preprocessor">        GLM_FUNC_QUALIFIER vec&lt;N, T, Q&gt; operator OPERAND ( const vec&lt;N, T, Q&gt;&amp; a, const GLM_SWIZZLE_TYPE1&amp; b)                   \</span></div>
+<div class="line"><a name="l00191"></a><span class="lineno">  191</span>&#160;<span class="preprocessor">        {                                                                               \</span></div>
+<div class="line"><a name="l00192"></a><span class="lineno">  192</span>&#160;<span class="preprocessor">                return a OPERAND b();                                                       \</span></div>
+<div class="line"><a name="l00193"></a><span class="lineno">  193</span>&#160;<span class="preprocessor">        }</span></div>
+<div class="line"><a name="l00194"></a><span class="lineno">  194</span>&#160; </div>
+<div class="line"><a name="l00195"></a><span class="lineno">  195</span>&#160;<span class="comment">//</span></div>
+<div class="line"><a name="l00196"></a><span class="lineno">  196</span>&#160;<span class="comment">// Wrapper for a operand between a swizzle and a binary (e.g. 1.0f - u.xyz)</span></div>
+<div class="line"><a name="l00197"></a><span class="lineno">  197</span>&#160;<span class="comment">//</span></div>
+<div class="line"><a name="l00198"></a><span class="lineno">  198</span>&#160;<span class="preprocessor">#define GLM_SWIZZLE_SCALAR_BINARY_OPERATOR_IMPLEMENTATION(OPERAND)                                                              \</span></div>
+<div class="line"><a name="l00199"></a><span class="lineno">  199</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_TEMPLATE1                                                                                                                                           \</span></div>
+<div class="line"><a name="l00200"></a><span class="lineno">  200</span>&#160;<span class="preprocessor">        GLM_FUNC_QUALIFIER vec&lt;N, T, Q&gt; operator OPERAND ( const GLM_SWIZZLE_TYPE1&amp; a, const T&amp; b)      \</span></div>
+<div class="line"><a name="l00201"></a><span class="lineno">  201</span>&#160;<span class="preprocessor">        {                                                                                                                                                                                       \</span></div>
+<div class="line"><a name="l00202"></a><span class="lineno">  202</span>&#160;<span class="preprocessor">                return a() OPERAND b;                                                                                                                                   \</span></div>
+<div class="line"><a name="l00203"></a><span class="lineno">  203</span>&#160;<span class="preprocessor">        }                                                                                                                                                                                       \</span></div>
+<div class="line"><a name="l00204"></a><span class="lineno">  204</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_TEMPLATE1                                                                                                                                           \</span></div>
+<div class="line"><a name="l00205"></a><span class="lineno">  205</span>&#160;<span class="preprocessor">        GLM_FUNC_QUALIFIER vec&lt;N, T, Q&gt; operator OPERAND ( const T&amp; a, const GLM_SWIZZLE_TYPE1&amp; b)      \</span></div>
+<div class="line"><a name="l00206"></a><span class="lineno">  206</span>&#160;<span class="preprocessor">        {                                                                                                                                                                                       \</span></div>
+<div class="line"><a name="l00207"></a><span class="lineno">  207</span>&#160;<span class="preprocessor">                return a OPERAND b();                                                                                                                                   \</span></div>
+<div class="line"><a name="l00208"></a><span class="lineno">  208</span>&#160;<span class="preprocessor">        }</span></div>
+<div class="line"><a name="l00209"></a><span class="lineno">  209</span>&#160; </div>
+<div class="line"><a name="l00210"></a><span class="lineno">  210</span>&#160;<span class="comment">//</span></div>
+<div class="line"><a name="l00211"></a><span class="lineno">  211</span>&#160;<span class="comment">// Macro for wrapping a function taking one argument (e.g. abs())</span></div>
+<div class="line"><a name="l00212"></a><span class="lineno">  212</span>&#160;<span class="comment">//</span></div>
+<div class="line"><a name="l00213"></a><span class="lineno">  213</span>&#160;<span class="preprocessor">#define GLM_SWIZZLE_FUNCTION_1_ARGS(RETURN_TYPE,FUNCTION)                                                                                               \</span></div>
+<div class="line"><a name="l00214"></a><span class="lineno">  214</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_TEMPLATE1                                                                                                                                                           \</span></div>
+<div class="line"><a name="l00215"></a><span class="lineno">  215</span>&#160;<span class="preprocessor">        GLM_FUNC_QUALIFIER typename GLM_SWIZZLE_TYPE1::RETURN_TYPE FUNCTION(const GLM_SWIZZLE_TYPE1&amp; a)         \</span></div>
+<div class="line"><a name="l00216"></a><span class="lineno">  216</span>&#160;<span class="preprocessor">        {                                                                                                                                                                                                       \</span></div>
+<div class="line"><a name="l00217"></a><span class="lineno">  217</span>&#160;<span class="preprocessor">                return FUNCTION(a());                                                                                                                                                   \</span></div>
+<div class="line"><a name="l00218"></a><span class="lineno">  218</span>&#160;<span class="preprocessor">        }</span></div>
+<div class="line"><a name="l00219"></a><span class="lineno">  219</span>&#160; </div>
+<div class="line"><a name="l00220"></a><span class="lineno">  220</span>&#160;<span class="comment">//</span></div>
+<div class="line"><a name="l00221"></a><span class="lineno">  221</span>&#160;<span class="comment">// Macro for wrapping a function taking two vector arguments (e.g. dot()).</span></div>
+<div class="line"><a name="l00222"></a><span class="lineno">  222</span>&#160;<span class="comment">//</span></div>
+<div class="line"><a name="l00223"></a><span class="lineno">  223</span>&#160;<span class="preprocessor">#define GLM_SWIZZLE_FUNCTION_2_ARGS(RETURN_TYPE,FUNCTION)                                                       \</span></div>
+<div class="line"><a name="l00224"></a><span class="lineno">  224</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_TEMPLATE2                                                                                       \</span></div>
+<div class="line"><a name="l00225"></a><span class="lineno">  225</span>&#160;<span class="preprocessor">        GLM_FUNC_QUALIFIER typename GLM_SWIZZLE_TYPE1::RETURN_TYPE FUNCTION(const GLM_SWIZZLE_TYPE1&amp; a, const GLM_SWIZZLE_TYPE2&amp; b) \</span></div>
+<div class="line"><a name="l00226"></a><span class="lineno">  226</span>&#160;<span class="preprocessor">        {                                                                                                           \</span></div>
+<div class="line"><a name="l00227"></a><span class="lineno">  227</span>&#160;<span class="preprocessor">                return FUNCTION(a(), b());                                                                              \</span></div>
+<div class="line"><a name="l00228"></a><span class="lineno">  228</span>&#160;<span class="preprocessor">        }                                                                                                           \</span></div>
+<div class="line"><a name="l00229"></a><span class="lineno">  229</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_TEMPLATE1                                                                                       \</span></div>
+<div class="line"><a name="l00230"></a><span class="lineno">  230</span>&#160;<span class="preprocessor">        GLM_FUNC_QUALIFIER typename GLM_SWIZZLE_TYPE1::RETURN_TYPE FUNCTION(const GLM_SWIZZLE_TYPE1&amp; a, const GLM_SWIZZLE_TYPE1&amp; b) \</span></div>
+<div class="line"><a name="l00231"></a><span class="lineno">  231</span>&#160;<span class="preprocessor">        {                                                                                                           \</span></div>
+<div class="line"><a name="l00232"></a><span class="lineno">  232</span>&#160;<span class="preprocessor">                return FUNCTION(a(), b());                                                                              \</span></div>
+<div class="line"><a name="l00233"></a><span class="lineno">  233</span>&#160;<span class="preprocessor">        }                                                                                                           \</span></div>
+<div class="line"><a name="l00234"></a><span class="lineno">  234</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_TEMPLATE1                                                                                       \</span></div>
+<div class="line"><a name="l00235"></a><span class="lineno">  235</span>&#160;<span class="preprocessor">        GLM_FUNC_QUALIFIER typename GLM_SWIZZLE_TYPE1::RETURN_TYPE FUNCTION(const GLM_SWIZZLE_TYPE1&amp; a, const typename V&amp; b)         \</span></div>
+<div class="line"><a name="l00236"></a><span class="lineno">  236</span>&#160;<span class="preprocessor">        {                                                                                                           \</span></div>
+<div class="line"><a name="l00237"></a><span class="lineno">  237</span>&#160;<span class="preprocessor">                return FUNCTION(a(), b);                                                                                \</span></div>
+<div class="line"><a name="l00238"></a><span class="lineno">  238</span>&#160;<span class="preprocessor">        }                                                                                                           \</span></div>
+<div class="line"><a name="l00239"></a><span class="lineno">  239</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_TEMPLATE1                                                                                       \</span></div>
+<div class="line"><a name="l00240"></a><span class="lineno">  240</span>&#160;<span class="preprocessor">        GLM_FUNC_QUALIFIER typename GLM_SWIZZLE_TYPE1::RETURN_TYPE FUNCTION(const V&amp; a, const GLM_SWIZZLE_TYPE1&amp; b)                  \</span></div>
+<div class="line"><a name="l00241"></a><span class="lineno">  241</span>&#160;<span class="preprocessor">        {                                                                                                           \</span></div>
+<div class="line"><a name="l00242"></a><span class="lineno">  242</span>&#160;<span class="preprocessor">                return FUNCTION(a, b());                                                                                \</span></div>
+<div class="line"><a name="l00243"></a><span class="lineno">  243</span>&#160;<span class="preprocessor">        }</span></div>
+<div class="line"><a name="l00244"></a><span class="lineno">  244</span>&#160; </div>
+<div class="line"><a name="l00245"></a><span class="lineno">  245</span>&#160;<span class="comment">//</span></div>
+<div class="line"><a name="l00246"></a><span class="lineno">  246</span>&#160;<span class="comment">// Macro for wrapping a function take 2 vec arguments followed by a scalar (e.g. mix()).</span></div>
+<div class="line"><a name="l00247"></a><span class="lineno">  247</span>&#160;<span class="comment">//</span></div>
+<div class="line"><a name="l00248"></a><span class="lineno">  248</span>&#160;<span class="preprocessor">#define GLM_SWIZZLE_FUNCTION_2_ARGS_SCALAR(RETURN_TYPE,FUNCTION)                                                             \</span></div>
+<div class="line"><a name="l00249"></a><span class="lineno">  249</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_TEMPLATE2                                                                                                    \</span></div>
+<div class="line"><a name="l00250"></a><span class="lineno">  250</span>&#160;<span class="preprocessor">        GLM_FUNC_QUALIFIER typename GLM_SWIZZLE_TYPE1::RETURN_TYPE FUNCTION(const GLM_SWIZZLE_TYPE1&amp; a, const GLM_SWIZZLE_TYPE2&amp; b, const T&amp; c)   \</span></div>
+<div class="line"><a name="l00251"></a><span class="lineno">  251</span>&#160;<span class="preprocessor">        {                                                                                                                         \</span></div>
+<div class="line"><a name="l00252"></a><span class="lineno">  252</span>&#160;<span class="preprocessor">                return FUNCTION(a(), b(), c);                                                                                         \</span></div>
+<div class="line"><a name="l00253"></a><span class="lineno">  253</span>&#160;<span class="preprocessor">        }                                                                                                                         \</span></div>
+<div class="line"><a name="l00254"></a><span class="lineno">  254</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_TEMPLATE1                                                                                                    \</span></div>
+<div class="line"><a name="l00255"></a><span class="lineno">  255</span>&#160;<span class="preprocessor">        GLM_FUNC_QUALIFIER typename GLM_SWIZZLE_TYPE1::RETURN_TYPE FUNCTION(const GLM_SWIZZLE_TYPE1&amp; a, const GLM_SWIZZLE_TYPE1&amp; b, const T&amp; c)   \</span></div>
+<div class="line"><a name="l00256"></a><span class="lineno">  256</span>&#160;<span class="preprocessor">        {                                                                                                                         \</span></div>
+<div class="line"><a name="l00257"></a><span class="lineno">  257</span>&#160;<span class="preprocessor">                return FUNCTION(a(), b(), c);                                                                                         \</span></div>
+<div class="line"><a name="l00258"></a><span class="lineno">  258</span>&#160;<span class="preprocessor">        }                                                                                                                         \</span></div>
+<div class="line"><a name="l00259"></a><span class="lineno">  259</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_TEMPLATE1                                                                                                    \</span></div>
+<div class="line"><a name="l00260"></a><span class="lineno">  260</span>&#160;<span class="preprocessor">        GLM_FUNC_QUALIFIER typename GLM_SWIZZLE_TYPE1::RETURN_TYPE FUNCTION(const GLM_SWIZZLE_TYPE1&amp; a, const typename S0::vec_type&amp; b, const T&amp; c)\</span></div>
+<div class="line"><a name="l00261"></a><span class="lineno">  261</span>&#160;<span class="preprocessor">        {                                                                                                                         \</span></div>
+<div class="line"><a name="l00262"></a><span class="lineno">  262</span>&#160;<span class="preprocessor">                return FUNCTION(a(), b, c);                                                                                           \</span></div>
+<div class="line"><a name="l00263"></a><span class="lineno">  263</span>&#160;<span class="preprocessor">        }                                                                                                                         \</span></div>
+<div class="line"><a name="l00264"></a><span class="lineno">  264</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_TEMPLATE1                                                                                                    \</span></div>
+<div class="line"><a name="l00265"></a><span class="lineno">  265</span>&#160;<span class="preprocessor">        GLM_FUNC_QUALIFIER typename GLM_SWIZZLE_TYPE1::RETURN_TYPE FUNCTION(const typename V&amp; a, const GLM_SWIZZLE_TYPE1&amp; b, const T&amp; c)           \</span></div>
+<div class="line"><a name="l00266"></a><span class="lineno">  266</span>&#160;<span class="preprocessor">        {                                                                                                                         \</span></div>
+<div class="line"><a name="l00267"></a><span class="lineno">  267</span>&#160;<span class="preprocessor">                return FUNCTION(a, b(), c);                                                                                           \</span></div>
+<div class="line"><a name="l00268"></a><span class="lineno">  268</span>&#160;<span class="preprocessor">        }</span></div>
+<div class="line"><a name="l00269"></a><span class="lineno">  269</span>&#160; </div>
+<div class="line"><a name="l00270"></a><span class="lineno">  270</span>&#160;}<span class="comment">//namespace detail</span></div>
+<div class="line"><a name="l00271"></a><span class="lineno">  271</span>&#160;}<span class="comment">//namespace glm</span></div>
+<div class="line"><a name="l00272"></a><span class="lineno">  272</span>&#160; </div>
+<div class="line"><a name="l00273"></a><span class="lineno">  273</span>&#160;<span class="keyword">namespace </span>glm</div>
+<div class="line"><a name="l00274"></a><span class="lineno">  274</span>&#160;{</div>
+<div class="line"><a name="l00275"></a><span class="lineno">  275</span>&#160;        <span class="keyword">namespace </span>detail</div>
+<div class="line"><a name="l00276"></a><span class="lineno">  276</span>&#160;        {</div>
+<div class="line"><a name="l00277"></a><span class="lineno">  277</span>&#160;                GLM_SWIZZLE_SCALAR_BINARY_OPERATOR_IMPLEMENTATION(-)</div>
+<div class="line"><a name="l00278"></a><span class="lineno">  278</span>&#160;                GLM_SWIZZLE_SCALAR_BINARY_OPERATOR_IMPLEMENTATION(*)</div>
+<div class="line"><a name="l00279"></a><span class="lineno">  279</span>&#160;                GLM_SWIZZLE_VECTOR_BINARY_OPERATOR_IMPLEMENTATION(+)</div>
+<div class="line"><a name="l00280"></a><span class="lineno">  280</span>&#160;                GLM_SWIZZLE_VECTOR_BINARY_OPERATOR_IMPLEMENTATION(-)</div>
+<div class="line"><a name="l00281"></a><span class="lineno">  281</span>&#160;                GLM_SWIZZLE_VECTOR_BINARY_OPERATOR_IMPLEMENTATION(*)</div>
+<div class="line"><a name="l00282"></a><span class="lineno">  282</span>&#160;                GLM_SWIZZLE_VECTOR_BINARY_OPERATOR_IMPLEMENTATION(/)</div>
+<div class="line"><a name="l00283"></a><span class="lineno">  283</span>&#160;        }</div>
+<div class="line"><a name="l00284"></a><span class="lineno">  284</span>&#160; </div>
+<div class="line"><a name="l00285"></a><span class="lineno">  285</span>&#160;        <span class="comment">//</span></div>
+<div class="line"><a name="l00286"></a><span class="lineno">  286</span>&#160;        <span class="comment">// Swizzles are distinct types from the unswizzled type.  The below macros will</span></div>
+<div class="line"><a name="l00287"></a><span class="lineno">  287</span>&#160;        <span class="comment">// provide template specializations for the swizzle types for the given functions</span></div>
+<div class="line"><a name="l00288"></a><span class="lineno">  288</span>&#160;        <span class="comment">// so that the compiler does not have any ambiguity to choosing how to handle</span></div>
+<div class="line"><a name="l00289"></a><span class="lineno">  289</span>&#160;        <span class="comment">// the function.</span></div>
+<div class="line"><a name="l00290"></a><span class="lineno">  290</span>&#160;        <span class="comment">//</span></div>
+<div class="line"><a name="l00291"></a><span class="lineno">  291</span>&#160;        <span class="comment">// The alternative is to use the operator()() when calling the function in order</span></div>
+<div class="line"><a name="l00292"></a><span class="lineno">  292</span>&#160;        <span class="comment">// to explicitly convert the swizzled type to the unswizzled type.</span></div>
+<div class="line"><a name="l00293"></a><span class="lineno">  293</span>&#160;        <span class="comment">//</span></div>
+<div class="line"><a name="l00294"></a><span class="lineno">  294</span>&#160; </div>
+<div class="line"><a name="l00295"></a><span class="lineno">  295</span>&#160;        <span class="comment">//GLM_SWIZZLE_FUNCTION_1_ARGS(vec_type,    abs);</span></div>
+<div class="line"><a name="l00296"></a><span class="lineno">  296</span>&#160;        <span class="comment">//GLM_SWIZZLE_FUNCTION_1_ARGS(vec_type,    acos);</span></div>
+<div class="line"><a name="l00297"></a><span class="lineno">  297</span>&#160;        <span class="comment">//GLM_SWIZZLE_FUNCTION_1_ARGS(vec_type,    acosh);</span></div>
+<div class="line"><a name="l00298"></a><span class="lineno">  298</span>&#160;        <span class="comment">//GLM_SWIZZLE_FUNCTION_1_ARGS(vec_type,    all);</span></div>
+<div class="line"><a name="l00299"></a><span class="lineno">  299</span>&#160;        <span class="comment">//GLM_SWIZZLE_FUNCTION_1_ARGS(vec_type,    any);</span></div>
+<div class="line"><a name="l00300"></a><span class="lineno">  300</span>&#160; </div>
+<div class="line"><a name="l00301"></a><span class="lineno">  301</span>&#160;        <span class="comment">//GLM_SWIZZLE_FUNCTION_2_ARGS(value_type,  dot);</span></div>
+<div class="line"><a name="l00302"></a><span class="lineno">  302</span>&#160;        <span class="comment">//GLM_SWIZZLE_FUNCTION_2_ARGS(vec_type,    cross);</span></div>
+<div class="line"><a name="l00303"></a><span class="lineno">  303</span>&#160;        <span class="comment">//GLM_SWIZZLE_FUNCTION_2_ARGS(vec_type,    step);</span></div>
+<div class="line"><a name="l00304"></a><span class="lineno">  304</span>&#160;        <span class="comment">//GLM_SWIZZLE_FUNCTION_2_ARGS_SCALAR(vec_type, mix);</span></div>
+<div class="line"><a name="l00305"></a><span class="lineno">  305</span>&#160;}</div>
+<div class="line"><a name="l00306"></a><span class="lineno">  306</span>&#160; </div>
+<div class="line"><a name="l00307"></a><span class="lineno">  307</span>&#160;<span class="preprocessor">#define GLM_SWIZZLE2_2_MEMBERS(T, Q, E0,E1) \</span></div>
+<div class="line"><a name="l00308"></a><span class="lineno">  308</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;2, T, Q, 0,0,-1,-2&gt; E0 ## E0; }; \</span></div>
+<div class="line"><a name="l00309"></a><span class="lineno">  309</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;2, T, Q, 0,1,-1,-2&gt; E0 ## E1; }; \</span></div>
+<div class="line"><a name="l00310"></a><span class="lineno">  310</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;2, T, Q, 1,0,-1,-2&gt; E1 ## E0; }; \</span></div>
+<div class="line"><a name="l00311"></a><span class="lineno">  311</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;2, T, Q, 1,1,-1,-2&gt; E1 ## E1; };</span></div>
+<div class="line"><a name="l00312"></a><span class="lineno">  312</span>&#160; </div>
+<div class="line"><a name="l00313"></a><span class="lineno">  313</span>&#160;<span class="preprocessor">#define GLM_SWIZZLE2_3_MEMBERS(T, Q, E0,E1) \</span></div>
+<div class="line"><a name="l00314"></a><span class="lineno">  314</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;3,T, Q, 0,0,0,-1&gt; E0 ## E0 ## E0; }; \</span></div>
+<div class="line"><a name="l00315"></a><span class="lineno">  315</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;3,T, Q, 0,0,1,-1&gt; E0 ## E0 ## E1; }; \</span></div>
+<div class="line"><a name="l00316"></a><span class="lineno">  316</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;3,T, Q, 0,1,0,-1&gt; E0 ## E1 ## E0; }; \</span></div>
+<div class="line"><a name="l00317"></a><span class="lineno">  317</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;3,T, Q, 0,1,1,-1&gt; E0 ## E1 ## E1; }; \</span></div>
+<div class="line"><a name="l00318"></a><span class="lineno">  318</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;3,T, Q, 1,0,0,-1&gt; E1 ## E0 ## E0; }; \</span></div>
+<div class="line"><a name="l00319"></a><span class="lineno">  319</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;3,T, Q, 1,0,1,-1&gt; E1 ## E0 ## E1; }; \</span></div>
+<div class="line"><a name="l00320"></a><span class="lineno">  320</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;3,T, Q, 1,1,0,-1&gt; E1 ## E1 ## E0; }; \</span></div>
+<div class="line"><a name="l00321"></a><span class="lineno">  321</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;3,T, Q, 1,1,1,-1&gt; E1 ## E1 ## E1; };</span></div>
+<div class="line"><a name="l00322"></a><span class="lineno">  322</span>&#160; </div>
+<div class="line"><a name="l00323"></a><span class="lineno">  323</span>&#160;<span class="preprocessor">#define GLM_SWIZZLE2_4_MEMBERS(T, Q, E0,E1) \</span></div>
+<div class="line"><a name="l00324"></a><span class="lineno">  324</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4,T, Q, 0,0,0,0&gt; E0 ## E0 ## E0 ## E0; }; \</span></div>
+<div class="line"><a name="l00325"></a><span class="lineno">  325</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4,T, Q, 0,0,0,1&gt; E0 ## E0 ## E0 ## E1; }; \</span></div>
+<div class="line"><a name="l00326"></a><span class="lineno">  326</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4,T, Q, 0,0,1,0&gt; E0 ## E0 ## E1 ## E0; }; \</span></div>
+<div class="line"><a name="l00327"></a><span class="lineno">  327</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4,T, Q, 0,0,1,1&gt; E0 ## E0 ## E1 ## E1; }; \</span></div>
+<div class="line"><a name="l00328"></a><span class="lineno">  328</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4,T, Q, 0,1,0,0&gt; E0 ## E1 ## E0 ## E0; }; \</span></div>
+<div class="line"><a name="l00329"></a><span class="lineno">  329</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4,T, Q, 0,1,0,1&gt; E0 ## E1 ## E0 ## E1; }; \</span></div>
+<div class="line"><a name="l00330"></a><span class="lineno">  330</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4,T, Q, 0,1,1,0&gt; E0 ## E1 ## E1 ## E0; }; \</span></div>
+<div class="line"><a name="l00331"></a><span class="lineno">  331</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4,T, Q, 0,1,1,1&gt; E0 ## E1 ## E1 ## E1; }; \</span></div>
+<div class="line"><a name="l00332"></a><span class="lineno">  332</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4,T, Q, 1,0,0,0&gt; E1 ## E0 ## E0 ## E0; }; \</span></div>
+<div class="line"><a name="l00333"></a><span class="lineno">  333</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4,T, Q, 1,0,0,1&gt; E1 ## E0 ## E0 ## E1; }; \</span></div>
+<div class="line"><a name="l00334"></a><span class="lineno">  334</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4,T, Q, 1,0,1,0&gt; E1 ## E0 ## E1 ## E0; }; \</span></div>
+<div class="line"><a name="l00335"></a><span class="lineno">  335</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4,T, Q, 1,0,1,1&gt; E1 ## E0 ## E1 ## E1; }; \</span></div>
+<div class="line"><a name="l00336"></a><span class="lineno">  336</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4,T, Q, 1,1,0,0&gt; E1 ## E1 ## E0 ## E0; }; \</span></div>
+<div class="line"><a name="l00337"></a><span class="lineno">  337</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4,T, Q, 1,1,0,1&gt; E1 ## E1 ## E0 ## E1; }; \</span></div>
+<div class="line"><a name="l00338"></a><span class="lineno">  338</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4,T, Q, 1,1,1,0&gt; E1 ## E1 ## E1 ## E0; }; \</span></div>
+<div class="line"><a name="l00339"></a><span class="lineno">  339</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4,T, Q, 1,1,1,1&gt; E1 ## E1 ## E1 ## E1; };</span></div>
+<div class="line"><a name="l00340"></a><span class="lineno">  340</span>&#160; </div>
+<div class="line"><a name="l00341"></a><span class="lineno">  341</span>&#160;<span class="preprocessor">#define GLM_SWIZZLE3_2_MEMBERS(T, Q, E0,E1,E2) \</span></div>
+<div class="line"><a name="l00342"></a><span class="lineno">  342</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;2,T, Q, 0,0,-1,-2&gt; E0 ## E0; }; \</span></div>
+<div class="line"><a name="l00343"></a><span class="lineno">  343</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;2,T, Q, 0,1,-1,-2&gt; E0 ## E1; }; \</span></div>
+<div class="line"><a name="l00344"></a><span class="lineno">  344</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;2,T, Q, 0,2,-1,-2&gt; E0 ## E2; }; \</span></div>
+<div class="line"><a name="l00345"></a><span class="lineno">  345</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;2,T, Q, 1,0,-1,-2&gt; E1 ## E0; }; \</span></div>
+<div class="line"><a name="l00346"></a><span class="lineno">  346</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;2,T, Q, 1,1,-1,-2&gt; E1 ## E1; }; \</span></div>
+<div class="line"><a name="l00347"></a><span class="lineno">  347</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;2,T, Q, 1,2,-1,-2&gt; E1 ## E2; }; \</span></div>
+<div class="line"><a name="l00348"></a><span class="lineno">  348</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;2,T, Q, 2,0,-1,-2&gt; E2 ## E0; }; \</span></div>
+<div class="line"><a name="l00349"></a><span class="lineno">  349</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;2,T, Q, 2,1,-1,-2&gt; E2 ## E1; }; \</span></div>
+<div class="line"><a name="l00350"></a><span class="lineno">  350</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;2,T, Q, 2,2,-1,-2&gt; E2 ## E2; };</span></div>
+<div class="line"><a name="l00351"></a><span class="lineno">  351</span>&#160; </div>
+<div class="line"><a name="l00352"></a><span class="lineno">  352</span>&#160;<span class="preprocessor">#define GLM_SWIZZLE3_3_MEMBERS(T, Q ,E0,E1,E2) \</span></div>
+<div class="line"><a name="l00353"></a><span class="lineno">  353</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;3, T, Q, 0,0,0,-1&gt; E0 ## E0 ## E0; }; \</span></div>
+<div class="line"><a name="l00354"></a><span class="lineno">  354</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;3, T, Q, 0,0,1,-1&gt; E0 ## E0 ## E1; }; \</span></div>
+<div class="line"><a name="l00355"></a><span class="lineno">  355</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;3, T, Q, 0,0,2,-1&gt; E0 ## E0 ## E2; }; \</span></div>
+<div class="line"><a name="l00356"></a><span class="lineno">  356</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;3, T, Q, 0,1,0,-1&gt; E0 ## E1 ## E0; }; \</span></div>
+<div class="line"><a name="l00357"></a><span class="lineno">  357</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;3, T, Q, 0,1,1,-1&gt; E0 ## E1 ## E1; }; \</span></div>
+<div class="line"><a name="l00358"></a><span class="lineno">  358</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;3, T, Q, 0,1,2,-1&gt; E0 ## E1 ## E2; }; \</span></div>
+<div class="line"><a name="l00359"></a><span class="lineno">  359</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;3, T, Q, 0,2,0,-1&gt; E0 ## E2 ## E0; }; \</span></div>
+<div class="line"><a name="l00360"></a><span class="lineno">  360</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;3, T, Q, 0,2,1,-1&gt; E0 ## E2 ## E1; }; \</span></div>
+<div class="line"><a name="l00361"></a><span class="lineno">  361</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;3, T, Q, 0,2,2,-1&gt; E0 ## E2 ## E2; }; \</span></div>
+<div class="line"><a name="l00362"></a><span class="lineno">  362</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;3, T, Q, 1,0,0,-1&gt; E1 ## E0 ## E0; }; \</span></div>
+<div class="line"><a name="l00363"></a><span class="lineno">  363</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;3, T, Q, 1,0,1,-1&gt; E1 ## E0 ## E1; }; \</span></div>
+<div class="line"><a name="l00364"></a><span class="lineno">  364</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;3, T, Q, 1,0,2,-1&gt; E1 ## E0 ## E2; }; \</span></div>
+<div class="line"><a name="l00365"></a><span class="lineno">  365</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;3, T, Q, 1,1,0,-1&gt; E1 ## E1 ## E0; }; \</span></div>
+<div class="line"><a name="l00366"></a><span class="lineno">  366</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;3, T, Q, 1,1,1,-1&gt; E1 ## E1 ## E1; }; \</span></div>
+<div class="line"><a name="l00367"></a><span class="lineno">  367</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;3, T, Q, 1,1,2,-1&gt; E1 ## E1 ## E2; }; \</span></div>
+<div class="line"><a name="l00368"></a><span class="lineno">  368</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;3, T, Q, 1,2,0,-1&gt; E1 ## E2 ## E0; }; \</span></div>
+<div class="line"><a name="l00369"></a><span class="lineno">  369</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;3, T, Q, 1,2,1,-1&gt; E1 ## E2 ## E1; }; \</span></div>
+<div class="line"><a name="l00370"></a><span class="lineno">  370</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;3, T, Q, 1,2,2,-1&gt; E1 ## E2 ## E2; }; \</span></div>
+<div class="line"><a name="l00371"></a><span class="lineno">  371</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;3, T, Q, 2,0,0,-1&gt; E2 ## E0 ## E0; }; \</span></div>
+<div class="line"><a name="l00372"></a><span class="lineno">  372</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;3, T, Q, 2,0,1,-1&gt; E2 ## E0 ## E1; }; \</span></div>
+<div class="line"><a name="l00373"></a><span class="lineno">  373</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;3, T, Q, 2,0,2,-1&gt; E2 ## E0 ## E2; }; \</span></div>
+<div class="line"><a name="l00374"></a><span class="lineno">  374</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;3, T, Q, 2,1,0,-1&gt; E2 ## E1 ## E0; }; \</span></div>
+<div class="line"><a name="l00375"></a><span class="lineno">  375</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;3, T, Q, 2,1,1,-1&gt; E2 ## E1 ## E1; }; \</span></div>
+<div class="line"><a name="l00376"></a><span class="lineno">  376</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;3, T, Q, 2,1,2,-1&gt; E2 ## E1 ## E2; }; \</span></div>
+<div class="line"><a name="l00377"></a><span class="lineno">  377</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;3, T, Q, 2,2,0,-1&gt; E2 ## E2 ## E0; }; \</span></div>
+<div class="line"><a name="l00378"></a><span class="lineno">  378</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;3, T, Q, 2,2,1,-1&gt; E2 ## E2 ## E1; }; \</span></div>
+<div class="line"><a name="l00379"></a><span class="lineno">  379</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;3, T, Q, 2,2,2,-1&gt; E2 ## E2 ## E2; };</span></div>
+<div class="line"><a name="l00380"></a><span class="lineno">  380</span>&#160; </div>
+<div class="line"><a name="l00381"></a><span class="lineno">  381</span>&#160;<span class="preprocessor">#define GLM_SWIZZLE3_4_MEMBERS(T, Q, E0,E1,E2) \</span></div>
+<div class="line"><a name="l00382"></a><span class="lineno">  382</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4,T, Q, 0,0,0,0&gt; E0 ## E0 ## E0 ## E0; }; \</span></div>
+<div class="line"><a name="l00383"></a><span class="lineno">  383</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4,T, Q, 0,0,0,1&gt; E0 ## E0 ## E0 ## E1; }; \</span></div>
+<div class="line"><a name="l00384"></a><span class="lineno">  384</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4,T, Q, 0,0,0,2&gt; E0 ## E0 ## E0 ## E2; }; \</span></div>
+<div class="line"><a name="l00385"></a><span class="lineno">  385</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4,T, Q, 0,0,1,0&gt; E0 ## E0 ## E1 ## E0; }; \</span></div>
+<div class="line"><a name="l00386"></a><span class="lineno">  386</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4,T, Q, 0,0,1,1&gt; E0 ## E0 ## E1 ## E1; }; \</span></div>
+<div class="line"><a name="l00387"></a><span class="lineno">  387</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4,T, Q, 0,0,1,2&gt; E0 ## E0 ## E1 ## E2; }; \</span></div>
+<div class="line"><a name="l00388"></a><span class="lineno">  388</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4,T, Q, 0,0,2,0&gt; E0 ## E0 ## E2 ## E0; }; \</span></div>
+<div class="line"><a name="l00389"></a><span class="lineno">  389</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4,T, Q, 0,0,2,1&gt; E0 ## E0 ## E2 ## E1; }; \</span></div>
+<div class="line"><a name="l00390"></a><span class="lineno">  390</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4,T, Q, 0,0,2,2&gt; E0 ## E0 ## E2 ## E2; }; \</span></div>
+<div class="line"><a name="l00391"></a><span class="lineno">  391</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4,T, Q, 0,1,0,0&gt; E0 ## E1 ## E0 ## E0; }; \</span></div>
+<div class="line"><a name="l00392"></a><span class="lineno">  392</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4,T, Q, 0,1,0,1&gt; E0 ## E1 ## E0 ## E1; }; \</span></div>
+<div class="line"><a name="l00393"></a><span class="lineno">  393</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4,T, Q, 0,1,0,2&gt; E0 ## E1 ## E0 ## E2; }; \</span></div>
+<div class="line"><a name="l00394"></a><span class="lineno">  394</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4,T, Q, 0,1,1,0&gt; E0 ## E1 ## E1 ## E0; }; \</span></div>
+<div class="line"><a name="l00395"></a><span class="lineno">  395</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4,T, Q, 0,1,1,1&gt; E0 ## E1 ## E1 ## E1; }; \</span></div>
+<div class="line"><a name="l00396"></a><span class="lineno">  396</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4,T, Q, 0,1,1,2&gt; E0 ## E1 ## E1 ## E2; }; \</span></div>
+<div class="line"><a name="l00397"></a><span class="lineno">  397</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4,T, Q, 0,1,2,0&gt; E0 ## E1 ## E2 ## E0; }; \</span></div>
+<div class="line"><a name="l00398"></a><span class="lineno">  398</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4,T, Q, 0,1,2,1&gt; E0 ## E1 ## E2 ## E1; }; \</span></div>
+<div class="line"><a name="l00399"></a><span class="lineno">  399</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4,T, Q, 0,1,2,2&gt; E0 ## E1 ## E2 ## E2; }; \</span></div>
+<div class="line"><a name="l00400"></a><span class="lineno">  400</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4,T, Q, 0,2,0,0&gt; E0 ## E2 ## E0 ## E0; }; \</span></div>
+<div class="line"><a name="l00401"></a><span class="lineno">  401</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4,T, Q, 0,2,0,1&gt; E0 ## E2 ## E0 ## E1; }; \</span></div>
+<div class="line"><a name="l00402"></a><span class="lineno">  402</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4,T, Q, 0,2,0,2&gt; E0 ## E2 ## E0 ## E2; }; \</span></div>
+<div class="line"><a name="l00403"></a><span class="lineno">  403</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4,T, Q, 0,2,1,0&gt; E0 ## E2 ## E1 ## E0; }; \</span></div>
+<div class="line"><a name="l00404"></a><span class="lineno">  404</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4,T, Q, 0,2,1,1&gt; E0 ## E2 ## E1 ## E1; }; \</span></div>
+<div class="line"><a name="l00405"></a><span class="lineno">  405</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4,T, Q, 0,2,1,2&gt; E0 ## E2 ## E1 ## E2; }; \</span></div>
+<div class="line"><a name="l00406"></a><span class="lineno">  406</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4,T, Q, 0,2,2,0&gt; E0 ## E2 ## E2 ## E0; }; \</span></div>
+<div class="line"><a name="l00407"></a><span class="lineno">  407</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4,T, Q, 0,2,2,1&gt; E0 ## E2 ## E2 ## E1; }; \</span></div>
+<div class="line"><a name="l00408"></a><span class="lineno">  408</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4,T, Q, 0,2,2,2&gt; E0 ## E2 ## E2 ## E2; }; \</span></div>
+<div class="line"><a name="l00409"></a><span class="lineno">  409</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4,T, Q, 1,0,0,0&gt; E1 ## E0 ## E0 ## E0; }; \</span></div>
+<div class="line"><a name="l00410"></a><span class="lineno">  410</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4,T, Q, 1,0,0,1&gt; E1 ## E0 ## E0 ## E1; }; \</span></div>
+<div class="line"><a name="l00411"></a><span class="lineno">  411</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4,T, Q, 1,0,0,2&gt; E1 ## E0 ## E0 ## E2; }; \</span></div>
+<div class="line"><a name="l00412"></a><span class="lineno">  412</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4,T, Q, 1,0,1,0&gt; E1 ## E0 ## E1 ## E0; }; \</span></div>
+<div class="line"><a name="l00413"></a><span class="lineno">  413</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4,T, Q, 1,0,1,1&gt; E1 ## E0 ## E1 ## E1; }; \</span></div>
+<div class="line"><a name="l00414"></a><span class="lineno">  414</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4,T, Q, 1,0,1,2&gt; E1 ## E0 ## E1 ## E2; }; \</span></div>
+<div class="line"><a name="l00415"></a><span class="lineno">  415</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4,T, Q, 1,0,2,0&gt; E1 ## E0 ## E2 ## E0; }; \</span></div>
+<div class="line"><a name="l00416"></a><span class="lineno">  416</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4,T, Q, 1,0,2,1&gt; E1 ## E0 ## E2 ## E1; }; \</span></div>
+<div class="line"><a name="l00417"></a><span class="lineno">  417</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4,T, Q, 1,0,2,2&gt; E1 ## E0 ## E2 ## E2; }; \</span></div>
+<div class="line"><a name="l00418"></a><span class="lineno">  418</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4,T, Q, 1,1,0,0&gt; E1 ## E1 ## E0 ## E0; }; \</span></div>
+<div class="line"><a name="l00419"></a><span class="lineno">  419</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4,T, Q, 1,1,0,1&gt; E1 ## E1 ## E0 ## E1; }; \</span></div>
+<div class="line"><a name="l00420"></a><span class="lineno">  420</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4,T, Q, 1,1,0,2&gt; E1 ## E1 ## E0 ## E2; }; \</span></div>
+<div class="line"><a name="l00421"></a><span class="lineno">  421</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4,T, Q, 1,1,1,0&gt; E1 ## E1 ## E1 ## E0; }; \</span></div>
+<div class="line"><a name="l00422"></a><span class="lineno">  422</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4,T, Q, 1,1,1,1&gt; E1 ## E1 ## E1 ## E1; }; \</span></div>
+<div class="line"><a name="l00423"></a><span class="lineno">  423</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4,T, Q, 1,1,1,2&gt; E1 ## E1 ## E1 ## E2; }; \</span></div>
+<div class="line"><a name="l00424"></a><span class="lineno">  424</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4,T, Q, 1,1,2,0&gt; E1 ## E1 ## E2 ## E0; }; \</span></div>
+<div class="line"><a name="l00425"></a><span class="lineno">  425</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4,T, Q, 1,1,2,1&gt; E1 ## E1 ## E2 ## E1; }; \</span></div>
+<div class="line"><a name="l00426"></a><span class="lineno">  426</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4,T, Q, 1,1,2,2&gt; E1 ## E1 ## E2 ## E2; }; \</span></div>
+<div class="line"><a name="l00427"></a><span class="lineno">  427</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4,T, Q, 1,2,0,0&gt; E1 ## E2 ## E0 ## E0; }; \</span></div>
+<div class="line"><a name="l00428"></a><span class="lineno">  428</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4,T, Q, 1,2,0,1&gt; E1 ## E2 ## E0 ## E1; }; \</span></div>
+<div class="line"><a name="l00429"></a><span class="lineno">  429</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4,T, Q, 1,2,0,2&gt; E1 ## E2 ## E0 ## E2; }; \</span></div>
+<div class="line"><a name="l00430"></a><span class="lineno">  430</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4,T, Q, 1,2,1,0&gt; E1 ## E2 ## E1 ## E0; }; \</span></div>
+<div class="line"><a name="l00431"></a><span class="lineno">  431</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4,T, Q, 1,2,1,1&gt; E1 ## E2 ## E1 ## E1; }; \</span></div>
+<div class="line"><a name="l00432"></a><span class="lineno">  432</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4,T, Q, 1,2,1,2&gt; E1 ## E2 ## E1 ## E2; }; \</span></div>
+<div class="line"><a name="l00433"></a><span class="lineno">  433</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4,T, Q, 1,2,2,0&gt; E1 ## E2 ## E2 ## E0; }; \</span></div>
+<div class="line"><a name="l00434"></a><span class="lineno">  434</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4,T, Q, 1,2,2,1&gt; E1 ## E2 ## E2 ## E1; }; \</span></div>
+<div class="line"><a name="l00435"></a><span class="lineno">  435</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4,T, Q, 1,2,2,2&gt; E1 ## E2 ## E2 ## E2; }; \</span></div>
+<div class="line"><a name="l00436"></a><span class="lineno">  436</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4,T, Q, 2,0,0,0&gt; E2 ## E0 ## E0 ## E0; }; \</span></div>
+<div class="line"><a name="l00437"></a><span class="lineno">  437</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4,T, Q, 2,0,0,1&gt; E2 ## E0 ## E0 ## E1; }; \</span></div>
+<div class="line"><a name="l00438"></a><span class="lineno">  438</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4,T, Q, 2,0,0,2&gt; E2 ## E0 ## E0 ## E2; }; \</span></div>
+<div class="line"><a name="l00439"></a><span class="lineno">  439</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4,T, Q, 2,0,1,0&gt; E2 ## E0 ## E1 ## E0; }; \</span></div>
+<div class="line"><a name="l00440"></a><span class="lineno">  440</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4,T, Q, 2,0,1,1&gt; E2 ## E0 ## E1 ## E1; }; \</span></div>
+<div class="line"><a name="l00441"></a><span class="lineno">  441</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4,T, Q, 2,0,1,2&gt; E2 ## E0 ## E1 ## E2; }; \</span></div>
+<div class="line"><a name="l00442"></a><span class="lineno">  442</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4,T, Q, 2,0,2,0&gt; E2 ## E0 ## E2 ## E0; }; \</span></div>
+<div class="line"><a name="l00443"></a><span class="lineno">  443</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4,T, Q, 2,0,2,1&gt; E2 ## E0 ## E2 ## E1; }; \</span></div>
+<div class="line"><a name="l00444"></a><span class="lineno">  444</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4,T, Q, 2,0,2,2&gt; E2 ## E0 ## E2 ## E2; }; \</span></div>
+<div class="line"><a name="l00445"></a><span class="lineno">  445</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4,T, Q, 2,1,0,0&gt; E2 ## E1 ## E0 ## E0; }; \</span></div>
+<div class="line"><a name="l00446"></a><span class="lineno">  446</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4,T, Q, 2,1,0,1&gt; E2 ## E1 ## E0 ## E1; }; \</span></div>
+<div class="line"><a name="l00447"></a><span class="lineno">  447</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4,T, Q, 2,1,0,2&gt; E2 ## E1 ## E0 ## E2; }; \</span></div>
+<div class="line"><a name="l00448"></a><span class="lineno">  448</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4,T, Q, 2,1,1,0&gt; E2 ## E1 ## E1 ## E0; }; \</span></div>
+<div class="line"><a name="l00449"></a><span class="lineno">  449</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4,T, Q, 2,1,1,1&gt; E2 ## E1 ## E1 ## E1; }; \</span></div>
+<div class="line"><a name="l00450"></a><span class="lineno">  450</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4,T, Q, 2,1,1,2&gt; E2 ## E1 ## E1 ## E2; }; \</span></div>
+<div class="line"><a name="l00451"></a><span class="lineno">  451</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4,T, Q, 2,1,2,0&gt; E2 ## E1 ## E2 ## E0; }; \</span></div>
+<div class="line"><a name="l00452"></a><span class="lineno">  452</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4,T, Q, 2,1,2,1&gt; E2 ## E1 ## E2 ## E1; }; \</span></div>
+<div class="line"><a name="l00453"></a><span class="lineno">  453</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4,T, Q, 2,1,2,2&gt; E2 ## E1 ## E2 ## E2; }; \</span></div>
+<div class="line"><a name="l00454"></a><span class="lineno">  454</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4,T, Q, 2,2,0,0&gt; E2 ## E2 ## E0 ## E0; }; \</span></div>
+<div class="line"><a name="l00455"></a><span class="lineno">  455</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4,T, Q, 2,2,0,1&gt; E2 ## E2 ## E0 ## E1; }; \</span></div>
+<div class="line"><a name="l00456"></a><span class="lineno">  456</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4,T, Q, 2,2,0,2&gt; E2 ## E2 ## E0 ## E2; }; \</span></div>
+<div class="line"><a name="l00457"></a><span class="lineno">  457</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4,T, Q, 2,2,1,0&gt; E2 ## E2 ## E1 ## E0; }; \</span></div>
+<div class="line"><a name="l00458"></a><span class="lineno">  458</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4,T, Q, 2,2,1,1&gt; E2 ## E2 ## E1 ## E1; }; \</span></div>
+<div class="line"><a name="l00459"></a><span class="lineno">  459</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4,T, Q, 2,2,1,2&gt; E2 ## E2 ## E1 ## E2; }; \</span></div>
+<div class="line"><a name="l00460"></a><span class="lineno">  460</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4,T, Q, 2,2,2,0&gt; E2 ## E2 ## E2 ## E0; }; \</span></div>
+<div class="line"><a name="l00461"></a><span class="lineno">  461</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4,T, Q, 2,2,2,1&gt; E2 ## E2 ## E2 ## E1; }; \</span></div>
+<div class="line"><a name="l00462"></a><span class="lineno">  462</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4,T, Q, 2,2,2,2&gt; E2 ## E2 ## E2 ## E2; };</span></div>
+<div class="line"><a name="l00463"></a><span class="lineno">  463</span>&#160; </div>
+<div class="line"><a name="l00464"></a><span class="lineno">  464</span>&#160;<span class="preprocessor">#define GLM_SWIZZLE4_2_MEMBERS(T, Q, E0,E1,E2,E3) \</span></div>
+<div class="line"><a name="l00465"></a><span class="lineno">  465</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;2,T, Q, 0,0,-1,-2&gt; E0 ## E0; }; \</span></div>
+<div class="line"><a name="l00466"></a><span class="lineno">  466</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;2,T, Q, 0,1,-1,-2&gt; E0 ## E1; }; \</span></div>
+<div class="line"><a name="l00467"></a><span class="lineno">  467</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;2,T, Q, 0,2,-1,-2&gt; E0 ## E2; }; \</span></div>
+<div class="line"><a name="l00468"></a><span class="lineno">  468</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;2,T, Q, 0,3,-1,-2&gt; E0 ## E3; }; \</span></div>
+<div class="line"><a name="l00469"></a><span class="lineno">  469</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;2,T, Q, 1,0,-1,-2&gt; E1 ## E0; }; \</span></div>
+<div class="line"><a name="l00470"></a><span class="lineno">  470</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;2,T, Q, 1,1,-1,-2&gt; E1 ## E1; }; \</span></div>
+<div class="line"><a name="l00471"></a><span class="lineno">  471</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;2,T, Q, 1,2,-1,-2&gt; E1 ## E2; }; \</span></div>
+<div class="line"><a name="l00472"></a><span class="lineno">  472</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;2,T, Q, 1,3,-1,-2&gt; E1 ## E3; }; \</span></div>
+<div class="line"><a name="l00473"></a><span class="lineno">  473</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;2,T, Q, 2,0,-1,-2&gt; E2 ## E0; }; \</span></div>
+<div class="line"><a name="l00474"></a><span class="lineno">  474</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;2,T, Q, 2,1,-1,-2&gt; E2 ## E1; }; \</span></div>
+<div class="line"><a name="l00475"></a><span class="lineno">  475</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;2,T, Q, 2,2,-1,-2&gt; E2 ## E2; }; \</span></div>
+<div class="line"><a name="l00476"></a><span class="lineno">  476</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;2,T, Q, 2,3,-1,-2&gt; E2 ## E3; }; \</span></div>
+<div class="line"><a name="l00477"></a><span class="lineno">  477</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;2,T, Q, 3,0,-1,-2&gt; E3 ## E0; }; \</span></div>
+<div class="line"><a name="l00478"></a><span class="lineno">  478</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;2,T, Q, 3,1,-1,-2&gt; E3 ## E1; }; \</span></div>
+<div class="line"><a name="l00479"></a><span class="lineno">  479</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;2,T, Q, 3,2,-1,-2&gt; E3 ## E2; }; \</span></div>
+<div class="line"><a name="l00480"></a><span class="lineno">  480</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;2,T, Q, 3,3,-1,-2&gt; E3 ## E3; };</span></div>
+<div class="line"><a name="l00481"></a><span class="lineno">  481</span>&#160; </div>
+<div class="line"><a name="l00482"></a><span class="lineno">  482</span>&#160;<span class="preprocessor">#define GLM_SWIZZLE4_3_MEMBERS(T, Q, E0,E1,E2,E3) \</span></div>
+<div class="line"><a name="l00483"></a><span class="lineno">  483</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;3, T, Q, 0,0,0,-1&gt; E0 ## E0 ## E0; }; \</span></div>
+<div class="line"><a name="l00484"></a><span class="lineno">  484</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;3, T, Q, 0,0,1,-1&gt; E0 ## E0 ## E1; }; \</span></div>
+<div class="line"><a name="l00485"></a><span class="lineno">  485</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;3, T, Q, 0,0,2,-1&gt; E0 ## E0 ## E2; }; \</span></div>
+<div class="line"><a name="l00486"></a><span class="lineno">  486</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;3, T, Q, 0,0,3,-1&gt; E0 ## E0 ## E3; }; \</span></div>
+<div class="line"><a name="l00487"></a><span class="lineno">  487</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;3, T, Q, 0,1,0,-1&gt; E0 ## E1 ## E0; }; \</span></div>
+<div class="line"><a name="l00488"></a><span class="lineno">  488</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;3, T, Q, 0,1,1,-1&gt; E0 ## E1 ## E1; }; \</span></div>
+<div class="line"><a name="l00489"></a><span class="lineno">  489</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;3, T, Q, 0,1,2,-1&gt; E0 ## E1 ## E2; }; \</span></div>
+<div class="line"><a name="l00490"></a><span class="lineno">  490</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;3, T, Q, 0,1,3,-1&gt; E0 ## E1 ## E3; }; \</span></div>
+<div class="line"><a name="l00491"></a><span class="lineno">  491</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;3, T, Q, 0,2,0,-1&gt; E0 ## E2 ## E0; }; \</span></div>
+<div class="line"><a name="l00492"></a><span class="lineno">  492</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;3, T, Q, 0,2,1,-1&gt; E0 ## E2 ## E1; }; \</span></div>
+<div class="line"><a name="l00493"></a><span class="lineno">  493</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;3, T, Q, 0,2,2,-1&gt; E0 ## E2 ## E2; }; \</span></div>
+<div class="line"><a name="l00494"></a><span class="lineno">  494</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;3, T, Q, 0,2,3,-1&gt; E0 ## E2 ## E3; }; \</span></div>
+<div class="line"><a name="l00495"></a><span class="lineno">  495</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;3, T, Q, 0,3,0,-1&gt; E0 ## E3 ## E0; }; \</span></div>
+<div class="line"><a name="l00496"></a><span class="lineno">  496</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;3, T, Q, 0,3,1,-1&gt; E0 ## E3 ## E1; }; \</span></div>
+<div class="line"><a name="l00497"></a><span class="lineno">  497</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;3, T, Q, 0,3,2,-1&gt; E0 ## E3 ## E2; }; \</span></div>
+<div class="line"><a name="l00498"></a><span class="lineno">  498</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;3, T, Q, 0,3,3,-1&gt; E0 ## E3 ## E3; }; \</span></div>
+<div class="line"><a name="l00499"></a><span class="lineno">  499</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;3, T, Q, 1,0,0,-1&gt; E1 ## E0 ## E0; }; \</span></div>
+<div class="line"><a name="l00500"></a><span class="lineno">  500</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;3, T, Q, 1,0,1,-1&gt; E1 ## E0 ## E1; }; \</span></div>
+<div class="line"><a name="l00501"></a><span class="lineno">  501</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;3, T, Q, 1,0,2,-1&gt; E1 ## E0 ## E2; }; \</span></div>
+<div class="line"><a name="l00502"></a><span class="lineno">  502</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;3, T, Q, 1,0,3,-1&gt; E1 ## E0 ## E3; }; \</span></div>
+<div class="line"><a name="l00503"></a><span class="lineno">  503</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;3, T, Q, 1,1,0,-1&gt; E1 ## E1 ## E0; }; \</span></div>
+<div class="line"><a name="l00504"></a><span class="lineno">  504</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;3, T, Q, 1,1,1,-1&gt; E1 ## E1 ## E1; }; \</span></div>
+<div class="line"><a name="l00505"></a><span class="lineno">  505</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;3, T, Q, 1,1,2,-1&gt; E1 ## E1 ## E2; }; \</span></div>
+<div class="line"><a name="l00506"></a><span class="lineno">  506</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;3, T, Q, 1,1,3,-1&gt; E1 ## E1 ## E3; }; \</span></div>
+<div class="line"><a name="l00507"></a><span class="lineno">  507</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;3, T, Q, 1,2,0,-1&gt; E1 ## E2 ## E0; }; \</span></div>
+<div class="line"><a name="l00508"></a><span class="lineno">  508</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;3, T, Q, 1,2,1,-1&gt; E1 ## E2 ## E1; }; \</span></div>
+<div class="line"><a name="l00509"></a><span class="lineno">  509</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;3, T, Q, 1,2,2,-1&gt; E1 ## E2 ## E2; }; \</span></div>
+<div class="line"><a name="l00510"></a><span class="lineno">  510</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;3, T, Q, 1,2,3,-1&gt; E1 ## E2 ## E3; }; \</span></div>
+<div class="line"><a name="l00511"></a><span class="lineno">  511</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;3, T, Q, 1,3,0,-1&gt; E1 ## E3 ## E0; }; \</span></div>
+<div class="line"><a name="l00512"></a><span class="lineno">  512</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;3, T, Q, 1,3,1,-1&gt; E1 ## E3 ## E1; }; \</span></div>
+<div class="line"><a name="l00513"></a><span class="lineno">  513</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;3, T, Q, 1,3,2,-1&gt; E1 ## E3 ## E2; }; \</span></div>
+<div class="line"><a name="l00514"></a><span class="lineno">  514</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;3, T, Q, 1,3,3,-1&gt; E1 ## E3 ## E3; }; \</span></div>
+<div class="line"><a name="l00515"></a><span class="lineno">  515</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;3, T, Q, 2,0,0,-1&gt; E2 ## E0 ## E0; }; \</span></div>
+<div class="line"><a name="l00516"></a><span class="lineno">  516</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;3, T, Q, 2,0,1,-1&gt; E2 ## E0 ## E1; }; \</span></div>
+<div class="line"><a name="l00517"></a><span class="lineno">  517</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;3, T, Q, 2,0,2,-1&gt; E2 ## E0 ## E2; }; \</span></div>
+<div class="line"><a name="l00518"></a><span class="lineno">  518</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;3, T, Q, 2,0,3,-1&gt; E2 ## E0 ## E3; }; \</span></div>
+<div class="line"><a name="l00519"></a><span class="lineno">  519</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;3, T, Q, 2,1,0,-1&gt; E2 ## E1 ## E0; }; \</span></div>
+<div class="line"><a name="l00520"></a><span class="lineno">  520</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;3, T, Q, 2,1,1,-1&gt; E2 ## E1 ## E1; }; \</span></div>
+<div class="line"><a name="l00521"></a><span class="lineno">  521</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;3, T, Q, 2,1,2,-1&gt; E2 ## E1 ## E2; }; \</span></div>
+<div class="line"><a name="l00522"></a><span class="lineno">  522</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;3, T, Q, 2,1,3,-1&gt; E2 ## E1 ## E3; }; \</span></div>
+<div class="line"><a name="l00523"></a><span class="lineno">  523</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;3, T, Q, 2,2,0,-1&gt; E2 ## E2 ## E0; }; \</span></div>
+<div class="line"><a name="l00524"></a><span class="lineno">  524</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;3, T, Q, 2,2,1,-1&gt; E2 ## E2 ## E1; }; \</span></div>
+<div class="line"><a name="l00525"></a><span class="lineno">  525</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;3, T, Q, 2,2,2,-1&gt; E2 ## E2 ## E2; }; \</span></div>
+<div class="line"><a name="l00526"></a><span class="lineno">  526</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;3, T, Q, 2,2,3,-1&gt; E2 ## E2 ## E3; }; \</span></div>
+<div class="line"><a name="l00527"></a><span class="lineno">  527</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;3, T, Q, 2,3,0,-1&gt; E2 ## E3 ## E0; }; \</span></div>
+<div class="line"><a name="l00528"></a><span class="lineno">  528</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;3, T, Q, 2,3,1,-1&gt; E2 ## E3 ## E1; }; \</span></div>
+<div class="line"><a name="l00529"></a><span class="lineno">  529</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;3, T, Q, 2,3,2,-1&gt; E2 ## E3 ## E2; }; \</span></div>
+<div class="line"><a name="l00530"></a><span class="lineno">  530</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;3, T, Q, 2,3,3,-1&gt; E2 ## E3 ## E3; }; \</span></div>
+<div class="line"><a name="l00531"></a><span class="lineno">  531</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;3, T, Q, 3,0,0,-1&gt; E3 ## E0 ## E0; }; \</span></div>
+<div class="line"><a name="l00532"></a><span class="lineno">  532</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;3, T, Q, 3,0,1,-1&gt; E3 ## E0 ## E1; }; \</span></div>
+<div class="line"><a name="l00533"></a><span class="lineno">  533</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;3, T, Q, 3,0,2,-1&gt; E3 ## E0 ## E2; }; \</span></div>
+<div class="line"><a name="l00534"></a><span class="lineno">  534</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;3, T, Q, 3,0,3,-1&gt; E3 ## E0 ## E3; }; \</span></div>
+<div class="line"><a name="l00535"></a><span class="lineno">  535</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;3, T, Q, 3,1,0,-1&gt; E3 ## E1 ## E0; }; \</span></div>
+<div class="line"><a name="l00536"></a><span class="lineno">  536</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;3, T, Q, 3,1,1,-1&gt; E3 ## E1 ## E1; }; \</span></div>
+<div class="line"><a name="l00537"></a><span class="lineno">  537</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;3, T, Q, 3,1,2,-1&gt; E3 ## E1 ## E2; }; \</span></div>
+<div class="line"><a name="l00538"></a><span class="lineno">  538</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;3, T, Q, 3,1,3,-1&gt; E3 ## E1 ## E3; }; \</span></div>
+<div class="line"><a name="l00539"></a><span class="lineno">  539</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;3, T, Q, 3,2,0,-1&gt; E3 ## E2 ## E0; }; \</span></div>
+<div class="line"><a name="l00540"></a><span class="lineno">  540</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;3, T, Q, 3,2,1,-1&gt; E3 ## E2 ## E1; }; \</span></div>
+<div class="line"><a name="l00541"></a><span class="lineno">  541</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;3, T, Q, 3,2,2,-1&gt; E3 ## E2 ## E2; }; \</span></div>
+<div class="line"><a name="l00542"></a><span class="lineno">  542</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;3, T, Q, 3,2,3,-1&gt; E3 ## E2 ## E3; }; \</span></div>
+<div class="line"><a name="l00543"></a><span class="lineno">  543</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;3, T, Q, 3,3,0,-1&gt; E3 ## E3 ## E0; }; \</span></div>
+<div class="line"><a name="l00544"></a><span class="lineno">  544</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;3, T, Q, 3,3,1,-1&gt; E3 ## E3 ## E1; }; \</span></div>
+<div class="line"><a name="l00545"></a><span class="lineno">  545</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;3, T, Q, 3,3,2,-1&gt; E3 ## E3 ## E2; }; \</span></div>
+<div class="line"><a name="l00546"></a><span class="lineno">  546</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;3, T, Q, 3,3,3,-1&gt; E3 ## E3 ## E3; };</span></div>
+<div class="line"><a name="l00547"></a><span class="lineno">  547</span>&#160; </div>
+<div class="line"><a name="l00548"></a><span class="lineno">  548</span>&#160;<span class="preprocessor">#define GLM_SWIZZLE4_4_MEMBERS(T, Q, E0,E1,E2,E3) \</span></div>
+<div class="line"><a name="l00549"></a><span class="lineno">  549</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 0,0,0,0&gt; E0 ## E0 ## E0 ## E0; }; \</span></div>
+<div class="line"><a name="l00550"></a><span class="lineno">  550</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 0,0,0,1&gt; E0 ## E0 ## E0 ## E1; }; \</span></div>
+<div class="line"><a name="l00551"></a><span class="lineno">  551</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 0,0,0,2&gt; E0 ## E0 ## E0 ## E2; }; \</span></div>
+<div class="line"><a name="l00552"></a><span class="lineno">  552</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 0,0,0,3&gt; E0 ## E0 ## E0 ## E3; }; \</span></div>
+<div class="line"><a name="l00553"></a><span class="lineno">  553</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 0,0,1,0&gt; E0 ## E0 ## E1 ## E0; }; \</span></div>
+<div class="line"><a name="l00554"></a><span class="lineno">  554</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 0,0,1,1&gt; E0 ## E0 ## E1 ## E1; }; \</span></div>
+<div class="line"><a name="l00555"></a><span class="lineno">  555</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 0,0,1,2&gt; E0 ## E0 ## E1 ## E2; }; \</span></div>
+<div class="line"><a name="l00556"></a><span class="lineno">  556</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 0,0,1,3&gt; E0 ## E0 ## E1 ## E3; }; \</span></div>
+<div class="line"><a name="l00557"></a><span class="lineno">  557</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 0,0,2,0&gt; E0 ## E0 ## E2 ## E0; }; \</span></div>
+<div class="line"><a name="l00558"></a><span class="lineno">  558</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 0,0,2,1&gt; E0 ## E0 ## E2 ## E1; }; \</span></div>
+<div class="line"><a name="l00559"></a><span class="lineno">  559</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 0,0,2,2&gt; E0 ## E0 ## E2 ## E2; }; \</span></div>
+<div class="line"><a name="l00560"></a><span class="lineno">  560</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 0,0,2,3&gt; E0 ## E0 ## E2 ## E3; }; \</span></div>
+<div class="line"><a name="l00561"></a><span class="lineno">  561</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 0,0,3,0&gt; E0 ## E0 ## E3 ## E0; }; \</span></div>
+<div class="line"><a name="l00562"></a><span class="lineno">  562</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 0,0,3,1&gt; E0 ## E0 ## E3 ## E1; }; \</span></div>
+<div class="line"><a name="l00563"></a><span class="lineno">  563</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 0,0,3,2&gt; E0 ## E0 ## E3 ## E2; }; \</span></div>
+<div class="line"><a name="l00564"></a><span class="lineno">  564</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 0,0,3,3&gt; E0 ## E0 ## E3 ## E3; }; \</span></div>
+<div class="line"><a name="l00565"></a><span class="lineno">  565</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 0,1,0,0&gt; E0 ## E1 ## E0 ## E0; }; \</span></div>
+<div class="line"><a name="l00566"></a><span class="lineno">  566</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 0,1,0,1&gt; E0 ## E1 ## E0 ## E1; }; \</span></div>
+<div class="line"><a name="l00567"></a><span class="lineno">  567</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 0,1,0,2&gt; E0 ## E1 ## E0 ## E2; }; \</span></div>
+<div class="line"><a name="l00568"></a><span class="lineno">  568</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 0,1,0,3&gt; E0 ## E1 ## E0 ## E3; }; \</span></div>
+<div class="line"><a name="l00569"></a><span class="lineno">  569</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 0,1,1,0&gt; E0 ## E1 ## E1 ## E0; }; \</span></div>
+<div class="line"><a name="l00570"></a><span class="lineno">  570</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 0,1,1,1&gt; E0 ## E1 ## E1 ## E1; }; \</span></div>
+<div class="line"><a name="l00571"></a><span class="lineno">  571</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 0,1,1,2&gt; E0 ## E1 ## E1 ## E2; }; \</span></div>
+<div class="line"><a name="l00572"></a><span class="lineno">  572</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 0,1,1,3&gt; E0 ## E1 ## E1 ## E3; }; \</span></div>
+<div class="line"><a name="l00573"></a><span class="lineno">  573</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 0,1,2,0&gt; E0 ## E1 ## E2 ## E0; }; \</span></div>
+<div class="line"><a name="l00574"></a><span class="lineno">  574</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 0,1,2,1&gt; E0 ## E1 ## E2 ## E1; }; \</span></div>
+<div class="line"><a name="l00575"></a><span class="lineno">  575</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 0,1,2,2&gt; E0 ## E1 ## E2 ## E2; }; \</span></div>
+<div class="line"><a name="l00576"></a><span class="lineno">  576</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 0,1,2,3&gt; E0 ## E1 ## E2 ## E3; }; \</span></div>
+<div class="line"><a name="l00577"></a><span class="lineno">  577</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 0,1,3,0&gt; E0 ## E1 ## E3 ## E0; }; \</span></div>
+<div class="line"><a name="l00578"></a><span class="lineno">  578</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 0,1,3,1&gt; E0 ## E1 ## E3 ## E1; }; \</span></div>
+<div class="line"><a name="l00579"></a><span class="lineno">  579</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 0,1,3,2&gt; E0 ## E1 ## E3 ## E2; }; \</span></div>
+<div class="line"><a name="l00580"></a><span class="lineno">  580</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 0,1,3,3&gt; E0 ## E1 ## E3 ## E3; }; \</span></div>
+<div class="line"><a name="l00581"></a><span class="lineno">  581</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 0,2,0,0&gt; E0 ## E2 ## E0 ## E0; }; \</span></div>
+<div class="line"><a name="l00582"></a><span class="lineno">  582</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 0,2,0,1&gt; E0 ## E2 ## E0 ## E1; }; \</span></div>
+<div class="line"><a name="l00583"></a><span class="lineno">  583</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 0,2,0,2&gt; E0 ## E2 ## E0 ## E2; }; \</span></div>
+<div class="line"><a name="l00584"></a><span class="lineno">  584</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 0,2,0,3&gt; E0 ## E2 ## E0 ## E3; }; \</span></div>
+<div class="line"><a name="l00585"></a><span class="lineno">  585</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 0,2,1,0&gt; E0 ## E2 ## E1 ## E0; }; \</span></div>
+<div class="line"><a name="l00586"></a><span class="lineno">  586</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 0,2,1,1&gt; E0 ## E2 ## E1 ## E1; }; \</span></div>
+<div class="line"><a name="l00587"></a><span class="lineno">  587</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 0,2,1,2&gt; E0 ## E2 ## E1 ## E2; }; \</span></div>
+<div class="line"><a name="l00588"></a><span class="lineno">  588</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 0,2,1,3&gt; E0 ## E2 ## E1 ## E3; }; \</span></div>
+<div class="line"><a name="l00589"></a><span class="lineno">  589</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 0,2,2,0&gt; E0 ## E2 ## E2 ## E0; }; \</span></div>
+<div class="line"><a name="l00590"></a><span class="lineno">  590</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 0,2,2,1&gt; E0 ## E2 ## E2 ## E1; }; \</span></div>
+<div class="line"><a name="l00591"></a><span class="lineno">  591</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 0,2,2,2&gt; E0 ## E2 ## E2 ## E2; }; \</span></div>
+<div class="line"><a name="l00592"></a><span class="lineno">  592</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 0,2,2,3&gt; E0 ## E2 ## E2 ## E3; }; \</span></div>
+<div class="line"><a name="l00593"></a><span class="lineno">  593</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 0,2,3,0&gt; E0 ## E2 ## E3 ## E0; }; \</span></div>
+<div class="line"><a name="l00594"></a><span class="lineno">  594</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 0,2,3,1&gt; E0 ## E2 ## E3 ## E1; }; \</span></div>
+<div class="line"><a name="l00595"></a><span class="lineno">  595</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 0,2,3,2&gt; E0 ## E2 ## E3 ## E2; }; \</span></div>
+<div class="line"><a name="l00596"></a><span class="lineno">  596</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 0,2,3,3&gt; E0 ## E2 ## E3 ## E3; }; \</span></div>
+<div class="line"><a name="l00597"></a><span class="lineno">  597</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 0,3,0,0&gt; E0 ## E3 ## E0 ## E0; }; \</span></div>
+<div class="line"><a name="l00598"></a><span class="lineno">  598</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 0,3,0,1&gt; E0 ## E3 ## E0 ## E1; }; \</span></div>
+<div class="line"><a name="l00599"></a><span class="lineno">  599</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 0,3,0,2&gt; E0 ## E3 ## E0 ## E2; }; \</span></div>
+<div class="line"><a name="l00600"></a><span class="lineno">  600</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 0,3,0,3&gt; E0 ## E3 ## E0 ## E3; }; \</span></div>
+<div class="line"><a name="l00601"></a><span class="lineno">  601</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 0,3,1,0&gt; E0 ## E3 ## E1 ## E0; }; \</span></div>
+<div class="line"><a name="l00602"></a><span class="lineno">  602</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 0,3,1,1&gt; E0 ## E3 ## E1 ## E1; }; \</span></div>
+<div class="line"><a name="l00603"></a><span class="lineno">  603</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 0,3,1,2&gt; E0 ## E3 ## E1 ## E2; }; \</span></div>
+<div class="line"><a name="l00604"></a><span class="lineno">  604</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 0,3,1,3&gt; E0 ## E3 ## E1 ## E3; }; \</span></div>
+<div class="line"><a name="l00605"></a><span class="lineno">  605</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 0,3,2,0&gt; E0 ## E3 ## E2 ## E0; }; \</span></div>
+<div class="line"><a name="l00606"></a><span class="lineno">  606</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 0,3,2,1&gt; E0 ## E3 ## E2 ## E1; }; \</span></div>
+<div class="line"><a name="l00607"></a><span class="lineno">  607</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 0,3,2,2&gt; E0 ## E3 ## E2 ## E2; }; \</span></div>
+<div class="line"><a name="l00608"></a><span class="lineno">  608</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 0,3,2,3&gt; E0 ## E3 ## E2 ## E3; }; \</span></div>
+<div class="line"><a name="l00609"></a><span class="lineno">  609</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 0,3,3,0&gt; E0 ## E3 ## E3 ## E0; }; \</span></div>
+<div class="line"><a name="l00610"></a><span class="lineno">  610</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 0,3,3,1&gt; E0 ## E3 ## E3 ## E1; }; \</span></div>
+<div class="line"><a name="l00611"></a><span class="lineno">  611</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 0,3,3,2&gt; E0 ## E3 ## E3 ## E2; }; \</span></div>
+<div class="line"><a name="l00612"></a><span class="lineno">  612</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 0,3,3,3&gt; E0 ## E3 ## E3 ## E3; }; \</span></div>
+<div class="line"><a name="l00613"></a><span class="lineno">  613</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 1,0,0,0&gt; E1 ## E0 ## E0 ## E0; }; \</span></div>
+<div class="line"><a name="l00614"></a><span class="lineno">  614</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 1,0,0,1&gt; E1 ## E0 ## E0 ## E1; }; \</span></div>
+<div class="line"><a name="l00615"></a><span class="lineno">  615</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 1,0,0,2&gt; E1 ## E0 ## E0 ## E2; }; \</span></div>
+<div class="line"><a name="l00616"></a><span class="lineno">  616</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 1,0,0,3&gt; E1 ## E0 ## E0 ## E3; }; \</span></div>
+<div class="line"><a name="l00617"></a><span class="lineno">  617</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 1,0,1,0&gt; E1 ## E0 ## E1 ## E0; }; \</span></div>
+<div class="line"><a name="l00618"></a><span class="lineno">  618</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 1,0,1,1&gt; E1 ## E0 ## E1 ## E1; }; \</span></div>
+<div class="line"><a name="l00619"></a><span class="lineno">  619</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 1,0,1,2&gt; E1 ## E0 ## E1 ## E2; }; \</span></div>
+<div class="line"><a name="l00620"></a><span class="lineno">  620</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 1,0,1,3&gt; E1 ## E0 ## E1 ## E3; }; \</span></div>
+<div class="line"><a name="l00621"></a><span class="lineno">  621</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 1,0,2,0&gt; E1 ## E0 ## E2 ## E0; }; \</span></div>
+<div class="line"><a name="l00622"></a><span class="lineno">  622</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 1,0,2,1&gt; E1 ## E0 ## E2 ## E1; }; \</span></div>
+<div class="line"><a name="l00623"></a><span class="lineno">  623</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 1,0,2,2&gt; E1 ## E0 ## E2 ## E2; }; \</span></div>
+<div class="line"><a name="l00624"></a><span class="lineno">  624</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 1,0,2,3&gt; E1 ## E0 ## E2 ## E3; }; \</span></div>
+<div class="line"><a name="l00625"></a><span class="lineno">  625</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 1,0,3,0&gt; E1 ## E0 ## E3 ## E0; }; \</span></div>
+<div class="line"><a name="l00626"></a><span class="lineno">  626</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 1,0,3,1&gt; E1 ## E0 ## E3 ## E1; }; \</span></div>
+<div class="line"><a name="l00627"></a><span class="lineno">  627</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 1,0,3,2&gt; E1 ## E0 ## E3 ## E2; }; \</span></div>
+<div class="line"><a name="l00628"></a><span class="lineno">  628</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 1,0,3,3&gt; E1 ## E0 ## E3 ## E3; }; \</span></div>
+<div class="line"><a name="l00629"></a><span class="lineno">  629</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 1,1,0,0&gt; E1 ## E1 ## E0 ## E0; }; \</span></div>
+<div class="line"><a name="l00630"></a><span class="lineno">  630</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 1,1,0,1&gt; E1 ## E1 ## E0 ## E1; }; \</span></div>
+<div class="line"><a name="l00631"></a><span class="lineno">  631</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 1,1,0,2&gt; E1 ## E1 ## E0 ## E2; }; \</span></div>
+<div class="line"><a name="l00632"></a><span class="lineno">  632</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 1,1,0,3&gt; E1 ## E1 ## E0 ## E3; }; \</span></div>
+<div class="line"><a name="l00633"></a><span class="lineno">  633</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 1,1,1,0&gt; E1 ## E1 ## E1 ## E0; }; \</span></div>
+<div class="line"><a name="l00634"></a><span class="lineno">  634</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 1,1,1,1&gt; E1 ## E1 ## E1 ## E1; }; \</span></div>
+<div class="line"><a name="l00635"></a><span class="lineno">  635</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 1,1,1,2&gt; E1 ## E1 ## E1 ## E2; }; \</span></div>
+<div class="line"><a name="l00636"></a><span class="lineno">  636</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 1,1,1,3&gt; E1 ## E1 ## E1 ## E3; }; \</span></div>
+<div class="line"><a name="l00637"></a><span class="lineno">  637</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 1,1,2,0&gt; E1 ## E1 ## E2 ## E0; }; \</span></div>
+<div class="line"><a name="l00638"></a><span class="lineno">  638</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 1,1,2,1&gt; E1 ## E1 ## E2 ## E1; }; \</span></div>
+<div class="line"><a name="l00639"></a><span class="lineno">  639</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 1,1,2,2&gt; E1 ## E1 ## E2 ## E2; }; \</span></div>
+<div class="line"><a name="l00640"></a><span class="lineno">  640</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 1,1,2,3&gt; E1 ## E1 ## E2 ## E3; }; \</span></div>
+<div class="line"><a name="l00641"></a><span class="lineno">  641</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 1,1,3,0&gt; E1 ## E1 ## E3 ## E0; }; \</span></div>
+<div class="line"><a name="l00642"></a><span class="lineno">  642</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 1,1,3,1&gt; E1 ## E1 ## E3 ## E1; }; \</span></div>
+<div class="line"><a name="l00643"></a><span class="lineno">  643</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 1,1,3,2&gt; E1 ## E1 ## E3 ## E2; }; \</span></div>
+<div class="line"><a name="l00644"></a><span class="lineno">  644</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 1,1,3,3&gt; E1 ## E1 ## E3 ## E3; }; \</span></div>
+<div class="line"><a name="l00645"></a><span class="lineno">  645</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 1,2,0,0&gt; E1 ## E2 ## E0 ## E0; }; \</span></div>
+<div class="line"><a name="l00646"></a><span class="lineno">  646</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 1,2,0,1&gt; E1 ## E2 ## E0 ## E1; }; \</span></div>
+<div class="line"><a name="l00647"></a><span class="lineno">  647</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 1,2,0,2&gt; E1 ## E2 ## E0 ## E2; }; \</span></div>
+<div class="line"><a name="l00648"></a><span class="lineno">  648</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 1,2,0,3&gt; E1 ## E2 ## E0 ## E3; }; \</span></div>
+<div class="line"><a name="l00649"></a><span class="lineno">  649</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 1,2,1,0&gt; E1 ## E2 ## E1 ## E0; }; \</span></div>
+<div class="line"><a name="l00650"></a><span class="lineno">  650</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 1,2,1,1&gt; E1 ## E2 ## E1 ## E1; }; \</span></div>
+<div class="line"><a name="l00651"></a><span class="lineno">  651</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 1,2,1,2&gt; E1 ## E2 ## E1 ## E2; }; \</span></div>
+<div class="line"><a name="l00652"></a><span class="lineno">  652</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 1,2,1,3&gt; E1 ## E2 ## E1 ## E3; }; \</span></div>
+<div class="line"><a name="l00653"></a><span class="lineno">  653</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 1,2,2,0&gt; E1 ## E2 ## E2 ## E0; }; \</span></div>
+<div class="line"><a name="l00654"></a><span class="lineno">  654</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 1,2,2,1&gt; E1 ## E2 ## E2 ## E1; }; \</span></div>
+<div class="line"><a name="l00655"></a><span class="lineno">  655</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 1,2,2,2&gt; E1 ## E2 ## E2 ## E2; }; \</span></div>
+<div class="line"><a name="l00656"></a><span class="lineno">  656</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 1,2,2,3&gt; E1 ## E2 ## E2 ## E3; }; \</span></div>
+<div class="line"><a name="l00657"></a><span class="lineno">  657</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 1,2,3,0&gt; E1 ## E2 ## E3 ## E0; }; \</span></div>
+<div class="line"><a name="l00658"></a><span class="lineno">  658</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 1,2,3,1&gt; E1 ## E2 ## E3 ## E1; }; \</span></div>
+<div class="line"><a name="l00659"></a><span class="lineno">  659</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 1,2,3,2&gt; E1 ## E2 ## E3 ## E2; }; \</span></div>
+<div class="line"><a name="l00660"></a><span class="lineno">  660</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 1,2,3,3&gt; E1 ## E2 ## E3 ## E3; }; \</span></div>
+<div class="line"><a name="l00661"></a><span class="lineno">  661</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 1,3,0,0&gt; E1 ## E3 ## E0 ## E0; }; \</span></div>
+<div class="line"><a name="l00662"></a><span class="lineno">  662</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 1,3,0,1&gt; E1 ## E3 ## E0 ## E1; }; \</span></div>
+<div class="line"><a name="l00663"></a><span class="lineno">  663</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 1,3,0,2&gt; E1 ## E3 ## E0 ## E2; }; \</span></div>
+<div class="line"><a name="l00664"></a><span class="lineno">  664</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 1,3,0,3&gt; E1 ## E3 ## E0 ## E3; }; \</span></div>
+<div class="line"><a name="l00665"></a><span class="lineno">  665</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 1,3,1,0&gt; E1 ## E3 ## E1 ## E0; }; \</span></div>
+<div class="line"><a name="l00666"></a><span class="lineno">  666</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 1,3,1,1&gt; E1 ## E3 ## E1 ## E1; }; \</span></div>
+<div class="line"><a name="l00667"></a><span class="lineno">  667</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 1,3,1,2&gt; E1 ## E3 ## E1 ## E2; }; \</span></div>
+<div class="line"><a name="l00668"></a><span class="lineno">  668</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 1,3,1,3&gt; E1 ## E3 ## E1 ## E3; }; \</span></div>
+<div class="line"><a name="l00669"></a><span class="lineno">  669</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 1,3,2,0&gt; E1 ## E3 ## E2 ## E0; }; \</span></div>
+<div class="line"><a name="l00670"></a><span class="lineno">  670</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 1,3,2,1&gt; E1 ## E3 ## E2 ## E1; }; \</span></div>
+<div class="line"><a name="l00671"></a><span class="lineno">  671</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 1,3,2,2&gt; E1 ## E3 ## E2 ## E2; }; \</span></div>
+<div class="line"><a name="l00672"></a><span class="lineno">  672</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 1,3,2,3&gt; E1 ## E3 ## E2 ## E3; }; \</span></div>
+<div class="line"><a name="l00673"></a><span class="lineno">  673</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 1,3,3,0&gt; E1 ## E3 ## E3 ## E0; }; \</span></div>
+<div class="line"><a name="l00674"></a><span class="lineno">  674</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 1,3,3,1&gt; E1 ## E3 ## E3 ## E1; }; \</span></div>
+<div class="line"><a name="l00675"></a><span class="lineno">  675</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 1,3,3,2&gt; E1 ## E3 ## E3 ## E2; }; \</span></div>
+<div class="line"><a name="l00676"></a><span class="lineno">  676</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 1,3,3,3&gt; E1 ## E3 ## E3 ## E3; }; \</span></div>
+<div class="line"><a name="l00677"></a><span class="lineno">  677</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 2,0,0,0&gt; E2 ## E0 ## E0 ## E0; }; \</span></div>
+<div class="line"><a name="l00678"></a><span class="lineno">  678</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 2,0,0,1&gt; E2 ## E0 ## E0 ## E1; }; \</span></div>
+<div class="line"><a name="l00679"></a><span class="lineno">  679</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 2,0,0,2&gt; E2 ## E0 ## E0 ## E2; }; \</span></div>
+<div class="line"><a name="l00680"></a><span class="lineno">  680</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 2,0,0,3&gt; E2 ## E0 ## E0 ## E3; }; \</span></div>
+<div class="line"><a name="l00681"></a><span class="lineno">  681</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 2,0,1,0&gt; E2 ## E0 ## E1 ## E0; }; \</span></div>
+<div class="line"><a name="l00682"></a><span class="lineno">  682</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 2,0,1,1&gt; E2 ## E0 ## E1 ## E1; }; \</span></div>
+<div class="line"><a name="l00683"></a><span class="lineno">  683</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 2,0,1,2&gt; E2 ## E0 ## E1 ## E2; }; \</span></div>
+<div class="line"><a name="l00684"></a><span class="lineno">  684</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 2,0,1,3&gt; E2 ## E0 ## E1 ## E3; }; \</span></div>
+<div class="line"><a name="l00685"></a><span class="lineno">  685</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 2,0,2,0&gt; E2 ## E0 ## E2 ## E0; }; \</span></div>
+<div class="line"><a name="l00686"></a><span class="lineno">  686</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 2,0,2,1&gt; E2 ## E0 ## E2 ## E1; }; \</span></div>
+<div class="line"><a name="l00687"></a><span class="lineno">  687</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 2,0,2,2&gt; E2 ## E0 ## E2 ## E2; }; \</span></div>
+<div class="line"><a name="l00688"></a><span class="lineno">  688</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 2,0,2,3&gt; E2 ## E0 ## E2 ## E3; }; \</span></div>
+<div class="line"><a name="l00689"></a><span class="lineno">  689</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 2,0,3,0&gt; E2 ## E0 ## E3 ## E0; }; \</span></div>
+<div class="line"><a name="l00690"></a><span class="lineno">  690</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 2,0,3,1&gt; E2 ## E0 ## E3 ## E1; }; \</span></div>
+<div class="line"><a name="l00691"></a><span class="lineno">  691</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 2,0,3,2&gt; E2 ## E0 ## E3 ## E2; }; \</span></div>
+<div class="line"><a name="l00692"></a><span class="lineno">  692</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 2,0,3,3&gt; E2 ## E0 ## E3 ## E3; }; \</span></div>
+<div class="line"><a name="l00693"></a><span class="lineno">  693</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 2,1,0,0&gt; E2 ## E1 ## E0 ## E0; }; \</span></div>
+<div class="line"><a name="l00694"></a><span class="lineno">  694</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 2,1,0,1&gt; E2 ## E1 ## E0 ## E1; }; \</span></div>
+<div class="line"><a name="l00695"></a><span class="lineno">  695</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 2,1,0,2&gt; E2 ## E1 ## E0 ## E2; }; \</span></div>
+<div class="line"><a name="l00696"></a><span class="lineno">  696</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 2,1,0,3&gt; E2 ## E1 ## E0 ## E3; }; \</span></div>
+<div class="line"><a name="l00697"></a><span class="lineno">  697</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 2,1,1,0&gt; E2 ## E1 ## E1 ## E0; }; \</span></div>
+<div class="line"><a name="l00698"></a><span class="lineno">  698</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 2,1,1,1&gt; E2 ## E1 ## E1 ## E1; }; \</span></div>
+<div class="line"><a name="l00699"></a><span class="lineno">  699</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 2,1,1,2&gt; E2 ## E1 ## E1 ## E2; }; \</span></div>
+<div class="line"><a name="l00700"></a><span class="lineno">  700</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 2,1,1,3&gt; E2 ## E1 ## E1 ## E3; }; \</span></div>
+<div class="line"><a name="l00701"></a><span class="lineno">  701</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 2,1,2,0&gt; E2 ## E1 ## E2 ## E0; }; \</span></div>
+<div class="line"><a name="l00702"></a><span class="lineno">  702</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 2,1,2,1&gt; E2 ## E1 ## E2 ## E1; }; \</span></div>
+<div class="line"><a name="l00703"></a><span class="lineno">  703</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 2,1,2,2&gt; E2 ## E1 ## E2 ## E2; }; \</span></div>
+<div class="line"><a name="l00704"></a><span class="lineno">  704</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 2,1,2,3&gt; E2 ## E1 ## E2 ## E3; }; \</span></div>
+<div class="line"><a name="l00705"></a><span class="lineno">  705</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 2,1,3,0&gt; E2 ## E1 ## E3 ## E0; }; \</span></div>
+<div class="line"><a name="l00706"></a><span class="lineno">  706</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 2,1,3,1&gt; E2 ## E1 ## E3 ## E1; }; \</span></div>
+<div class="line"><a name="l00707"></a><span class="lineno">  707</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 2,1,3,2&gt; E2 ## E1 ## E3 ## E2; }; \</span></div>
+<div class="line"><a name="l00708"></a><span class="lineno">  708</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 2,1,3,3&gt; E2 ## E1 ## E3 ## E3; }; \</span></div>
+<div class="line"><a name="l00709"></a><span class="lineno">  709</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 2,2,0,0&gt; E2 ## E2 ## E0 ## E0; }; \</span></div>
+<div class="line"><a name="l00710"></a><span class="lineno">  710</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 2,2,0,1&gt; E2 ## E2 ## E0 ## E1; }; \</span></div>
+<div class="line"><a name="l00711"></a><span class="lineno">  711</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 2,2,0,2&gt; E2 ## E2 ## E0 ## E2; }; \</span></div>
+<div class="line"><a name="l00712"></a><span class="lineno">  712</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 2,2,0,3&gt; E2 ## E2 ## E0 ## E3; }; \</span></div>
+<div class="line"><a name="l00713"></a><span class="lineno">  713</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 2,2,1,0&gt; E2 ## E2 ## E1 ## E0; }; \</span></div>
+<div class="line"><a name="l00714"></a><span class="lineno">  714</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 2,2,1,1&gt; E2 ## E2 ## E1 ## E1; }; \</span></div>
+<div class="line"><a name="l00715"></a><span class="lineno">  715</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 2,2,1,2&gt; E2 ## E2 ## E1 ## E2; }; \</span></div>
+<div class="line"><a name="l00716"></a><span class="lineno">  716</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 2,2,1,3&gt; E2 ## E2 ## E1 ## E3; }; \</span></div>
+<div class="line"><a name="l00717"></a><span class="lineno">  717</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 2,2,2,0&gt; E2 ## E2 ## E2 ## E0; }; \</span></div>
+<div class="line"><a name="l00718"></a><span class="lineno">  718</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 2,2,2,1&gt; E2 ## E2 ## E2 ## E1; }; \</span></div>
+<div class="line"><a name="l00719"></a><span class="lineno">  719</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 2,2,2,2&gt; E2 ## E2 ## E2 ## E2; }; \</span></div>
+<div class="line"><a name="l00720"></a><span class="lineno">  720</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 2,2,2,3&gt; E2 ## E2 ## E2 ## E3; }; \</span></div>
+<div class="line"><a name="l00721"></a><span class="lineno">  721</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 2,2,3,0&gt; E2 ## E2 ## E3 ## E0; }; \</span></div>
+<div class="line"><a name="l00722"></a><span class="lineno">  722</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 2,2,3,1&gt; E2 ## E2 ## E3 ## E1; }; \</span></div>
+<div class="line"><a name="l00723"></a><span class="lineno">  723</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 2,2,3,2&gt; E2 ## E2 ## E3 ## E2; }; \</span></div>
+<div class="line"><a name="l00724"></a><span class="lineno">  724</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 2,2,3,3&gt; E2 ## E2 ## E3 ## E3; }; \</span></div>
+<div class="line"><a name="l00725"></a><span class="lineno">  725</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 2,3,0,0&gt; E2 ## E3 ## E0 ## E0; }; \</span></div>
+<div class="line"><a name="l00726"></a><span class="lineno">  726</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 2,3,0,1&gt; E2 ## E3 ## E0 ## E1; }; \</span></div>
+<div class="line"><a name="l00727"></a><span class="lineno">  727</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 2,3,0,2&gt; E2 ## E3 ## E0 ## E2; }; \</span></div>
+<div class="line"><a name="l00728"></a><span class="lineno">  728</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 2,3,0,3&gt; E2 ## E3 ## E0 ## E3; }; \</span></div>
+<div class="line"><a name="l00729"></a><span class="lineno">  729</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 2,3,1,0&gt; E2 ## E3 ## E1 ## E0; }; \</span></div>
+<div class="line"><a name="l00730"></a><span class="lineno">  730</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 2,3,1,1&gt; E2 ## E3 ## E1 ## E1; }; \</span></div>
+<div class="line"><a name="l00731"></a><span class="lineno">  731</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 2,3,1,2&gt; E2 ## E3 ## E1 ## E2; }; \</span></div>
+<div class="line"><a name="l00732"></a><span class="lineno">  732</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 2,3,1,3&gt; E2 ## E3 ## E1 ## E3; }; \</span></div>
+<div class="line"><a name="l00733"></a><span class="lineno">  733</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 2,3,2,0&gt; E2 ## E3 ## E2 ## E0; }; \</span></div>
+<div class="line"><a name="l00734"></a><span class="lineno">  734</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 2,3,2,1&gt; E2 ## E3 ## E2 ## E1; }; \</span></div>
+<div class="line"><a name="l00735"></a><span class="lineno">  735</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 2,3,2,2&gt; E2 ## E3 ## E2 ## E2; }; \</span></div>
+<div class="line"><a name="l00736"></a><span class="lineno">  736</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 2,3,2,3&gt; E2 ## E3 ## E2 ## E3; }; \</span></div>
+<div class="line"><a name="l00737"></a><span class="lineno">  737</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 2,3,3,0&gt; E2 ## E3 ## E3 ## E0; }; \</span></div>
+<div class="line"><a name="l00738"></a><span class="lineno">  738</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 2,3,3,1&gt; E2 ## E3 ## E3 ## E1; }; \</span></div>
+<div class="line"><a name="l00739"></a><span class="lineno">  739</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 2,3,3,2&gt; E2 ## E3 ## E3 ## E2; }; \</span></div>
+<div class="line"><a name="l00740"></a><span class="lineno">  740</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 2,3,3,3&gt; E2 ## E3 ## E3 ## E3; }; \</span></div>
+<div class="line"><a name="l00741"></a><span class="lineno">  741</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 3,0,0,0&gt; E3 ## E0 ## E0 ## E0; }; \</span></div>
+<div class="line"><a name="l00742"></a><span class="lineno">  742</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 3,0,0,1&gt; E3 ## E0 ## E0 ## E1; }; \</span></div>
+<div class="line"><a name="l00743"></a><span class="lineno">  743</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 3,0,0,2&gt; E3 ## E0 ## E0 ## E2; }; \</span></div>
+<div class="line"><a name="l00744"></a><span class="lineno">  744</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 3,0,0,3&gt; E3 ## E0 ## E0 ## E3; }; \</span></div>
+<div class="line"><a name="l00745"></a><span class="lineno">  745</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 3,0,1,0&gt; E3 ## E0 ## E1 ## E0; }; \</span></div>
+<div class="line"><a name="l00746"></a><span class="lineno">  746</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 3,0,1,1&gt; E3 ## E0 ## E1 ## E1; }; \</span></div>
+<div class="line"><a name="l00747"></a><span class="lineno">  747</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 3,0,1,2&gt; E3 ## E0 ## E1 ## E2; }; \</span></div>
+<div class="line"><a name="l00748"></a><span class="lineno">  748</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 3,0,1,3&gt; E3 ## E0 ## E1 ## E3; }; \</span></div>
+<div class="line"><a name="l00749"></a><span class="lineno">  749</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 3,0,2,0&gt; E3 ## E0 ## E2 ## E0; }; \</span></div>
+<div class="line"><a name="l00750"></a><span class="lineno">  750</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 3,0,2,1&gt; E3 ## E0 ## E2 ## E1; }; \</span></div>
+<div class="line"><a name="l00751"></a><span class="lineno">  751</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 3,0,2,2&gt; E3 ## E0 ## E2 ## E2; }; \</span></div>
+<div class="line"><a name="l00752"></a><span class="lineno">  752</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 3,0,2,3&gt; E3 ## E0 ## E2 ## E3; }; \</span></div>
+<div class="line"><a name="l00753"></a><span class="lineno">  753</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 3,0,3,0&gt; E3 ## E0 ## E3 ## E0; }; \</span></div>
+<div class="line"><a name="l00754"></a><span class="lineno">  754</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 3,0,3,1&gt; E3 ## E0 ## E3 ## E1; }; \</span></div>
+<div class="line"><a name="l00755"></a><span class="lineno">  755</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 3,0,3,2&gt; E3 ## E0 ## E3 ## E2; }; \</span></div>
+<div class="line"><a name="l00756"></a><span class="lineno">  756</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 3,0,3,3&gt; E3 ## E0 ## E3 ## E3; }; \</span></div>
+<div class="line"><a name="l00757"></a><span class="lineno">  757</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 3,1,0,0&gt; E3 ## E1 ## E0 ## E0; }; \</span></div>
+<div class="line"><a name="l00758"></a><span class="lineno">  758</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 3,1,0,1&gt; E3 ## E1 ## E0 ## E1; }; \</span></div>
+<div class="line"><a name="l00759"></a><span class="lineno">  759</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 3,1,0,2&gt; E3 ## E1 ## E0 ## E2; }; \</span></div>
+<div class="line"><a name="l00760"></a><span class="lineno">  760</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 3,1,0,3&gt; E3 ## E1 ## E0 ## E3; }; \</span></div>
+<div class="line"><a name="l00761"></a><span class="lineno">  761</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 3,1,1,0&gt; E3 ## E1 ## E1 ## E0; }; \</span></div>
+<div class="line"><a name="l00762"></a><span class="lineno">  762</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 3,1,1,1&gt; E3 ## E1 ## E1 ## E1; }; \</span></div>
+<div class="line"><a name="l00763"></a><span class="lineno">  763</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 3,1,1,2&gt; E3 ## E1 ## E1 ## E2; }; \</span></div>
+<div class="line"><a name="l00764"></a><span class="lineno">  764</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 3,1,1,3&gt; E3 ## E1 ## E1 ## E3; }; \</span></div>
+<div class="line"><a name="l00765"></a><span class="lineno">  765</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 3,1,2,0&gt; E3 ## E1 ## E2 ## E0; }; \</span></div>
+<div class="line"><a name="l00766"></a><span class="lineno">  766</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 3,1,2,1&gt; E3 ## E1 ## E2 ## E1; }; \</span></div>
+<div class="line"><a name="l00767"></a><span class="lineno">  767</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 3,1,2,2&gt; E3 ## E1 ## E2 ## E2; }; \</span></div>
+<div class="line"><a name="l00768"></a><span class="lineno">  768</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 3,1,2,3&gt; E3 ## E1 ## E2 ## E3; }; \</span></div>
+<div class="line"><a name="l00769"></a><span class="lineno">  769</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 3,1,3,0&gt; E3 ## E1 ## E3 ## E0; }; \</span></div>
+<div class="line"><a name="l00770"></a><span class="lineno">  770</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 3,1,3,1&gt; E3 ## E1 ## E3 ## E1; }; \</span></div>
+<div class="line"><a name="l00771"></a><span class="lineno">  771</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 3,1,3,2&gt; E3 ## E1 ## E3 ## E2; }; \</span></div>
+<div class="line"><a name="l00772"></a><span class="lineno">  772</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 3,1,3,3&gt; E3 ## E1 ## E3 ## E3; }; \</span></div>
+<div class="line"><a name="l00773"></a><span class="lineno">  773</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 3,2,0,0&gt; E3 ## E2 ## E0 ## E0; }; \</span></div>
+<div class="line"><a name="l00774"></a><span class="lineno">  774</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 3,2,0,1&gt; E3 ## E2 ## E0 ## E1; }; \</span></div>
+<div class="line"><a name="l00775"></a><span class="lineno">  775</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 3,2,0,2&gt; E3 ## E2 ## E0 ## E2; }; \</span></div>
+<div class="line"><a name="l00776"></a><span class="lineno">  776</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 3,2,0,3&gt; E3 ## E2 ## E0 ## E3; }; \</span></div>
+<div class="line"><a name="l00777"></a><span class="lineno">  777</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 3,2,1,0&gt; E3 ## E2 ## E1 ## E0; }; \</span></div>
+<div class="line"><a name="l00778"></a><span class="lineno">  778</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 3,2,1,1&gt; E3 ## E2 ## E1 ## E1; }; \</span></div>
+<div class="line"><a name="l00779"></a><span class="lineno">  779</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 3,2,1,2&gt; E3 ## E2 ## E1 ## E2; }; \</span></div>
+<div class="line"><a name="l00780"></a><span class="lineno">  780</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 3,2,1,3&gt; E3 ## E2 ## E1 ## E3; }; \</span></div>
+<div class="line"><a name="l00781"></a><span class="lineno">  781</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 3,2,2,0&gt; E3 ## E2 ## E2 ## E0; }; \</span></div>
+<div class="line"><a name="l00782"></a><span class="lineno">  782</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 3,2,2,1&gt; E3 ## E2 ## E2 ## E1; }; \</span></div>
+<div class="line"><a name="l00783"></a><span class="lineno">  783</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 3,2,2,2&gt; E3 ## E2 ## E2 ## E2; }; \</span></div>
+<div class="line"><a name="l00784"></a><span class="lineno">  784</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 3,2,2,3&gt; E3 ## E2 ## E2 ## E3; }; \</span></div>
+<div class="line"><a name="l00785"></a><span class="lineno">  785</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 3,2,3,0&gt; E3 ## E2 ## E3 ## E0; }; \</span></div>
+<div class="line"><a name="l00786"></a><span class="lineno">  786</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 3,2,3,1&gt; E3 ## E2 ## E3 ## E1; }; \</span></div>
+<div class="line"><a name="l00787"></a><span class="lineno">  787</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 3,2,3,2&gt; E3 ## E2 ## E3 ## E2; }; \</span></div>
+<div class="line"><a name="l00788"></a><span class="lineno">  788</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 3,2,3,3&gt; E3 ## E2 ## E3 ## E3; }; \</span></div>
+<div class="line"><a name="l00789"></a><span class="lineno">  789</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 3,3,0,0&gt; E3 ## E3 ## E0 ## E0; }; \</span></div>
+<div class="line"><a name="l00790"></a><span class="lineno">  790</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 3,3,0,1&gt; E3 ## E3 ## E0 ## E1; }; \</span></div>
+<div class="line"><a name="l00791"></a><span class="lineno">  791</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 3,3,0,2&gt; E3 ## E3 ## E0 ## E2; }; \</span></div>
+<div class="line"><a name="l00792"></a><span class="lineno">  792</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 3,3,0,3&gt; E3 ## E3 ## E0 ## E3; }; \</span></div>
+<div class="line"><a name="l00793"></a><span class="lineno">  793</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 3,3,1,0&gt; E3 ## E3 ## E1 ## E0; }; \</span></div>
+<div class="line"><a name="l00794"></a><span class="lineno">  794</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 3,3,1,1&gt; E3 ## E3 ## E1 ## E1; }; \</span></div>
+<div class="line"><a name="l00795"></a><span class="lineno">  795</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 3,3,1,2&gt; E3 ## E3 ## E1 ## E2; }; \</span></div>
+<div class="line"><a name="l00796"></a><span class="lineno">  796</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 3,3,1,3&gt; E3 ## E3 ## E1 ## E3; }; \</span></div>
+<div class="line"><a name="l00797"></a><span class="lineno">  797</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 3,3,2,0&gt; E3 ## E3 ## E2 ## E0; }; \</span></div>
+<div class="line"><a name="l00798"></a><span class="lineno">  798</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 3,3,2,1&gt; E3 ## E3 ## E2 ## E1; }; \</span></div>
+<div class="line"><a name="l00799"></a><span class="lineno">  799</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 3,3,2,2&gt; E3 ## E3 ## E2 ## E2; }; \</span></div>
+<div class="line"><a name="l00800"></a><span class="lineno">  800</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 3,3,2,3&gt; E3 ## E3 ## E2 ## E3; }; \</span></div>
+<div class="line"><a name="l00801"></a><span class="lineno">  801</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 3,3,3,0&gt; E3 ## E3 ## E3 ## E0; }; \</span></div>
+<div class="line"><a name="l00802"></a><span class="lineno">  802</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 3,3,3,1&gt; E3 ## E3 ## E3 ## E1; }; \</span></div>
+<div class="line"><a name="l00803"></a><span class="lineno">  803</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 3,3,3,2&gt; E3 ## E3 ## E3 ## E2; }; \</span></div>
+<div class="line"><a name="l00804"></a><span class="lineno">  804</span>&#160;<span class="preprocessor">        struct { detail::_swizzle&lt;4, T, Q, 3,3,3,3&gt; E3 ## E3 ## E3 ## E3; };</span></div>
 </div><!-- fragment --></div><!-- contents -->
+<div class="ttc" id="aa00899_html_ga4b7956eb6e2fbedfc7cf2e46e85c5139"><div class="ttname"><a href="a00899.html#ga4b7956eb6e2fbedfc7cf2e46e85c5139">glm::e</a></div><div class="ttdeci">GLM_FUNC_DECL GLM_CONSTEXPR genType e()</div><div class="ttdoc">Return e constant.</div></div>
 <!-- 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.10
+</a> 1.8.18
 </small></address>
 </body>
 </html>

+ 0 - 276
doc/api/a00015_source.html

@@ -1,276 +0,0 @@
-<!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.10"/>
-<title>0.9.9 API documentation: common.hpp Source File</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="search/search.css" rel="stylesheet" type="text/css"/>
-<script type="text/javascript" src="search/searchdata.js"></script>
-<script type="text/javascript" src="search/search.js"></script>
-<script type="text/javascript">
-  $(document).ready(function() { init_search(); });
-</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 id="projectlogo"><img alt="Logo" src="logo-mini.png"/></td>
-  <td id="projectalign" style="padding-left: 0.5em;">
-   <div id="projectname">0.9.9 API documentation
-   </div>
-  </td>
- </tr>
- </tbody>
-</table>
-</div>
-<!-- end header part -->
-<!-- Generated by Doxygen 1.8.10 -->
-<script type="text/javascript">
-var searchBox = new SearchBox("searchBox", "search",false,'Search');
-</script>
-  <div id="navrow1" class="tabs">
-    <ul class="tablist">
-      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
-      <li><a href="modules.html"><span>Modules</span></a></li>
-      <li class="current"><a href="files.html"><span>Files</span></a></li>
-      <li>
-        <div id="MSearchBox" class="MSearchBoxInactive">
-        <span class="left">
-          <img id="MSearchSelect" src="search/mag_sel.png"
-               onmouseover="return searchBox.OnSearchSelectShow()"
-               onmouseout="return searchBox.OnSearchSelectHide()"
-               alt=""/>
-          <input type="text" id="MSearchField" value="Search" accesskey="S"
-               onfocus="searchBox.OnSearchFieldFocus(true)" 
-               onblur="searchBox.OnSearchFieldFocus(false)" 
-               onkeyup="searchBox.OnSearchFieldChange(event)"/>
-          </span><span class="right">
-            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
-          </span>
-        </div>
-      </li>
-    </ul>
-  </div>
-  <div id="navrow2" class="tabs2">
-    <ul class="tablist">
-      <li><a href="files.html"><span>File&#160;List</span></a></li>
-    </ul>
-  </div>
-<!-- window showing the filter options -->
-<div id="MSearchSelectWindow"
-     onmouseover="return searchBox.OnSearchSelectShow()"
-     onmouseout="return searchBox.OnSearchSelectHide()"
-     onkeydown="return searchBox.OnSearchSelectKey(event)">
-</div>
-
-<!-- iframe showing the search results (closed by default) -->
-<div id="MSearchResultsWindow">
-<iframe src="javascript:void(0)" frameborder="0" 
-        name="MSearchResults" id="MSearchResults">
-</iframe>
-</div>
-
-<div id="nav-path" class="navpath">
-  <ul>
-<li class="navelem"><a class="el" href="dir_3a581ba30d25676e4b797b1f96d53b45.html">F:</a></li><li class="navelem"><a class="el" href="dir_9e5fe034a00e89334fd5186c3e7db156.html">G-Truc</a></li><li class="navelem"><a class="el" href="dir_d9496f0844b48bc7e53b5af8c99b9ab2.html">Source</a></li><li class="navelem"><a class="el" href="dir_a8bee7be44182a33f3820393ae0b105d.html">G-Truc</a></li><li class="navelem"><a class="el" href="dir_44e5e654415abd9ca6fdeaddaff8565e.html">glm</a></li><li class="navelem"><a class="el" href="dir_cef2d71d502cb69a9252bca2297d9549.html">glm</a></li>  </ul>
-</div>
-</div><!-- top -->
-<div class="header">
-  <div class="headertitle">
-<div class="title">common.hpp</div>  </div>
-</div><!--header-->
-<div class="contents">
-<a href="a00015.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span>&#160;</div>
-<div class="line"><a name="l00015"></a><span class="lineno">   15</span>&#160;<span class="preprocessor">#pragma once</span></div>
-<div class="line"><a name="l00016"></a><span class="lineno">   16</span>&#160;</div>
-<div class="line"><a name="l00017"></a><span class="lineno">   17</span>&#160;<span class="preprocessor">#include &quot;detail/qualifier.hpp&quot;</span></div>
-<div class="line"><a name="l00018"></a><span class="lineno">   18</span>&#160;<span class="preprocessor">#include &quot;detail/_fixes.hpp&quot;</span></div>
-<div class="line"><a name="l00019"></a><span class="lineno">   19</span>&#160;</div>
-<div class="line"><a name="l00020"></a><span class="lineno">   20</span>&#160;<span class="keyword">namespace </span><a class="code" href="a00236.html">glm</a></div>
-<div class="line"><a name="l00021"></a><span class="lineno">   21</span>&#160;{</div>
-<div class="line"><a name="l00024"></a><span class="lineno">   24</span>&#160;</div>
-<div class="line"><a name="l00031"></a><span class="lineno">   31</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> genType&gt;</div>
-<div class="line"><a name="l00032"></a><span class="lineno">   32</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR genType <a class="code" href="a00241.html#ga81d3abddd0ef0c8de579bc541ecadab6">abs</a>(genType x);</div>
-<div class="line"><a name="l00033"></a><span class="lineno">   33</span>&#160;</div>
-<div class="line"><a name="l00042"></a><span class="lineno">   42</span>&#160;        <span class="keyword">template</span>&lt;length_t L, <span class="keyword">typename</span> T, qualifier Q&gt;</div>
-<div class="line"><a name="l00043"></a><span class="lineno">   43</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR vec&lt;L, T, Q&gt; <a class="code" href="a00241.html#ga81d3abddd0ef0c8de579bc541ecadab6">abs</a>(vec&lt;L, T, Q&gt; <span class="keyword">const</span>&amp; x);</div>
-<div class="line"><a name="l00044"></a><span class="lineno">   44</span>&#160;</div>
-<div class="line"><a name="l00053"></a><span class="lineno">   53</span>&#160;        <span class="keyword">template</span>&lt;length_t L, <span class="keyword">typename</span> T, qualifier Q&gt;</div>
-<div class="line"><a name="l00054"></a><span class="lineno">   54</span>&#160;        GLM_FUNC_DECL vec&lt;L, T, Q&gt; <a class="code" href="a00241.html#ga1e2e5cfff800056540e32f6c9b604b28">sign</a>(vec&lt;L, T, Q&gt; <span class="keyword">const</span>&amp; x);</div>
-<div class="line"><a name="l00055"></a><span class="lineno">   55</span>&#160;</div>
-<div class="line"><a name="l00064"></a><span class="lineno">   64</span>&#160;        <span class="keyword">template</span>&lt;length_t L, <span class="keyword">typename</span> T, qualifier Q&gt;</div>
-<div class="line"><a name="l00065"></a><span class="lineno">   65</span>&#160;        GLM_FUNC_DECL vec&lt;L, T, Q&gt; <a class="code" href="a00241.html#gaa9d0742639e85b29c7c5de11cfd6840d">floor</a>(vec&lt;L, T, Q&gt; <span class="keyword">const</span>&amp; x);</div>
-<div class="line"><a name="l00066"></a><span class="lineno">   66</span>&#160;</div>
-<div class="line"><a name="l00076"></a><span class="lineno">   76</span>&#160;        <span class="keyword">template</span>&lt;length_t L, <span class="keyword">typename</span> T, qualifier Q&gt;</div>
-<div class="line"><a name="l00077"></a><span class="lineno">   77</span>&#160;        GLM_FUNC_DECL vec&lt;L, T, Q&gt; <a class="code" href="a00241.html#gaf9375e3e06173271d49e6ffa3a334259">trunc</a>(vec&lt;L, T, Q&gt; <span class="keyword">const</span>&amp; x);</div>
-<div class="line"><a name="l00078"></a><span class="lineno">   78</span>&#160;</div>
-<div class="line"><a name="l00091"></a><span class="lineno">   91</span>&#160;        <span class="keyword">template</span>&lt;length_t L, <span class="keyword">typename</span> T, qualifier Q&gt;</div>
-<div class="line"><a name="l00092"></a><span class="lineno">   92</span>&#160;        GLM_FUNC_DECL vec&lt;L, T, Q&gt; <a class="code" href="a00241.html#gafa03aca8c4713e1cc892aa92ca135a7e">round</a>(vec&lt;L, T, Q&gt; <span class="keyword">const</span>&amp; x);</div>
-<div class="line"><a name="l00093"></a><span class="lineno">   93</span>&#160;</div>
-<div class="line"><a name="l00105"></a><span class="lineno">  105</span>&#160;        <span class="keyword">template</span>&lt;length_t L, <span class="keyword">typename</span> T, qualifier Q&gt;</div>
-<div class="line"><a name="l00106"></a><span class="lineno">  106</span>&#160;        GLM_FUNC_DECL vec&lt;L, T, Q&gt; <a class="code" href="a00241.html#ga76b81785045a057989a84d99aeeb1578">roundEven</a>(vec&lt;L, T, Q&gt; <span class="keyword">const</span>&amp; x);</div>
-<div class="line"><a name="l00107"></a><span class="lineno">  107</span>&#160;</div>
-<div class="line"><a name="l00117"></a><span class="lineno">  117</span>&#160;        <span class="keyword">template</span>&lt;length_t L, <span class="keyword">typename</span> T, qualifier Q&gt;</div>
-<div class="line"><a name="l00118"></a><span class="lineno">  118</span>&#160;        GLM_FUNC_DECL vec&lt;L, T, Q&gt; <a class="code" href="a00241.html#gafb9d2a645a23aca12d4d6de0104b7657">ceil</a>(vec&lt;L, T, Q&gt; <span class="keyword">const</span>&amp; x);</div>
-<div class="line"><a name="l00119"></a><span class="lineno">  119</span>&#160;</div>
-<div class="line"><a name="l00126"></a><span class="lineno">  126</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> genType&gt;</div>
-<div class="line"><a name="l00127"></a><span class="lineno">  127</span>&#160;        GLM_FUNC_DECL genType <a class="code" href="a00241.html#ga2df623004f634b440d61e018d62c751b">fract</a>(genType x);</div>
-<div class="line"><a name="l00128"></a><span class="lineno">  128</span>&#160;</div>
-<div class="line"><a name="l00137"></a><span class="lineno">  137</span>&#160;        <span class="keyword">template</span>&lt;length_t L, <span class="keyword">typename</span> T, qualifier Q&gt;</div>
-<div class="line"><a name="l00138"></a><span class="lineno">  138</span>&#160;        GLM_FUNC_DECL vec&lt;L, T, Q&gt; <a class="code" href="a00241.html#ga2df623004f634b440d61e018d62c751b">fract</a>(vec&lt;L, T, Q&gt; <span class="keyword">const</span>&amp; x);</div>
-<div class="line"><a name="l00139"></a><span class="lineno">  139</span>&#160;</div>
-<div class="line"><a name="l00140"></a><span class="lineno">  140</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> genType&gt;</div>
-<div class="line"><a name="l00141"></a><span class="lineno">  141</span>&#160;        GLM_FUNC_DECL genType <a class="code" href="a00241.html#ga9b197a452cd52db3c5c18bac72bd7798">mod</a>(genType x, genType y);</div>
-<div class="line"><a name="l00142"></a><span class="lineno">  142</span>&#160;</div>
-<div class="line"><a name="l00143"></a><span class="lineno">  143</span>&#160;        <span class="keyword">template</span>&lt;length_t L, <span class="keyword">typename</span> T, qualifier Q&gt;</div>
-<div class="line"><a name="l00144"></a><span class="lineno">  144</span>&#160;        GLM_FUNC_DECL vec&lt;L, T, Q&gt; <a class="code" href="a00241.html#ga9b197a452cd52db3c5c18bac72bd7798">mod</a>(vec&lt;L, T, Q&gt; <span class="keyword">const</span>&amp; x, T y);</div>
-<div class="line"><a name="l00145"></a><span class="lineno">  145</span>&#160;</div>
-<div class="line"><a name="l00155"></a><span class="lineno">  155</span>&#160;        <span class="keyword">template</span>&lt;length_t L, <span class="keyword">typename</span> T, qualifier Q&gt;</div>
-<div class="line"><a name="l00156"></a><span class="lineno">  156</span>&#160;        GLM_FUNC_DECL vec&lt;L, T, Q&gt; <a class="code" href="a00241.html#ga9b197a452cd52db3c5c18bac72bd7798">mod</a>(vec&lt;L, T, Q&gt; <span class="keyword">const</span>&amp; x, vec&lt;L, T, Q&gt; <span class="keyword">const</span>&amp; y);</div>
-<div class="line"><a name="l00157"></a><span class="lineno">  157</span>&#160;</div>
-<div class="line"><a name="l00167"></a><span class="lineno">  167</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> genType&gt;</div>
-<div class="line"><a name="l00168"></a><span class="lineno">  168</span>&#160;        GLM_FUNC_DECL genType <a class="code" href="a00241.html#ga85e33f139b8db1b39b590a5713b9e679">modf</a>(genType x, genType&amp; i);</div>
-<div class="line"><a name="l00169"></a><span class="lineno">  169</span>&#160;</div>
-<div class="line"><a name="l00176"></a><span class="lineno">  176</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> genType&gt;</div>
-<div class="line"><a name="l00177"></a><span class="lineno">  177</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR genType <a class="code" href="a00241.html#ga31f49ef9e7d1beb003160c5e009b0c48">min</a>(genType x, genType y);</div>
-<div class="line"><a name="l00178"></a><span class="lineno">  178</span>&#160;</div>
-<div class="line"><a name="l00187"></a><span class="lineno">  187</span>&#160;        <span class="keyword">template</span>&lt;length_t L, <span class="keyword">typename</span> T, qualifier Q&gt;</div>
-<div class="line"><a name="l00188"></a><span class="lineno">  188</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR vec&lt;L, T, Q&gt; <a class="code" href="a00241.html#ga31f49ef9e7d1beb003160c5e009b0c48">min</a>(vec&lt;L, T, Q&gt; <span class="keyword">const</span>&amp; x, T y);</div>
-<div class="line"><a name="l00189"></a><span class="lineno">  189</span>&#160;</div>
-<div class="line"><a name="l00198"></a><span class="lineno">  198</span>&#160;        <span class="keyword">template</span>&lt;length_t L, <span class="keyword">typename</span> T, qualifier Q&gt;</div>
-<div class="line"><a name="l00199"></a><span class="lineno">  199</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR vec&lt;L, T, Q&gt; <a class="code" href="a00241.html#ga31f49ef9e7d1beb003160c5e009b0c48">min</a>(vec&lt;L, T, Q&gt; <span class="keyword">const</span>&amp; x, vec&lt;L, T, Q&gt; <span class="keyword">const</span>&amp; y);</div>
-<div class="line"><a name="l00200"></a><span class="lineno">  200</span>&#160;</div>
-<div class="line"><a name="l00207"></a><span class="lineno">  207</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> genType&gt;</div>
-<div class="line"><a name="l00208"></a><span class="lineno">  208</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR genType <a class="code" href="a00241.html#gac1fec0c3303b572a6d4697a637213870">max</a>(genType x, genType y);</div>
-<div class="line"><a name="l00209"></a><span class="lineno">  209</span>&#160;</div>
-<div class="line"><a name="l00218"></a><span class="lineno">  218</span>&#160;        <span class="keyword">template</span>&lt;length_t L, <span class="keyword">typename</span> T, qualifier Q&gt;</div>
-<div class="line"><a name="l00219"></a><span class="lineno">  219</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR vec&lt;L, T, Q&gt; <a class="code" href="a00241.html#gac1fec0c3303b572a6d4697a637213870">max</a>(vec&lt;L, T, Q&gt; <span class="keyword">const</span>&amp; x, T y);</div>
-<div class="line"><a name="l00220"></a><span class="lineno">  220</span>&#160;</div>
-<div class="line"><a name="l00229"></a><span class="lineno">  229</span>&#160;        <span class="keyword">template</span>&lt;length_t L, <span class="keyword">typename</span> T, qualifier Q&gt;</div>
-<div class="line"><a name="l00230"></a><span class="lineno">  230</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR vec&lt;L, T, Q&gt; <a class="code" href="a00241.html#gac1fec0c3303b572a6d4697a637213870">max</a>(vec&lt;L, T, Q&gt; <span class="keyword">const</span>&amp; x, vec&lt;L, T, Q&gt; <span class="keyword">const</span>&amp; y);</div>
-<div class="line"><a name="l00231"></a><span class="lineno">  231</span>&#160;</div>
-<div class="line"><a name="l00239"></a><span class="lineno">  239</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> genType&gt;</div>
-<div class="line"><a name="l00240"></a><span class="lineno">  240</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR genType <a class="code" href="a00241.html#gaa0f2f12e9108b09e22a3f0b2008a0b5d">clamp</a>(genType x, genType minVal, genType maxVal);</div>
-<div class="line"><a name="l00241"></a><span class="lineno">  241</span>&#160;</div>
-<div class="line"><a name="l00251"></a><span class="lineno">  251</span>&#160;        <span class="keyword">template</span>&lt;length_t L, <span class="keyword">typename</span> T, qualifier Q&gt;</div>
-<div class="line"><a name="l00252"></a><span class="lineno">  252</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR vec&lt;L, T, Q&gt; <a class="code" href="a00241.html#gaa0f2f12e9108b09e22a3f0b2008a0b5d">clamp</a>(vec&lt;L, T, Q&gt; <span class="keyword">const</span>&amp; x, T minVal, T maxVal);</div>
-<div class="line"><a name="l00253"></a><span class="lineno">  253</span>&#160;</div>
-<div class="line"><a name="l00263"></a><span class="lineno">  263</span>&#160;        <span class="keyword">template</span>&lt;length_t L, <span class="keyword">typename</span> T, qualifier Q&gt;</div>
-<div class="line"><a name="l00264"></a><span class="lineno">  264</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR vec&lt;L, T, Q&gt; <a class="code" href="a00241.html#gaa0f2f12e9108b09e22a3f0b2008a0b5d">clamp</a>(vec&lt;L, T, Q&gt; <span class="keyword">const</span>&amp; x, vec&lt;L, T, Q&gt; <span class="keyword">const</span>&amp; minVal, vec&lt;L, T, Q&gt; <span class="keyword">const</span>&amp; maxVal);</div>
-<div class="line"><a name="l00265"></a><span class="lineno">  265</span>&#160;</div>
-<div class="line"><a name="l00308"></a><span class="lineno">  308</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> genTypeT, <span class="keyword">typename</span> genTypeU&gt;</div>
-<div class="line"><a name="l00309"></a><span class="lineno">  309</span>&#160;        GLM_FUNC_DECL genTypeT <a class="code" href="a00241.html#ga8e93f374aae27d1a88b921860351f8d4">mix</a>(genTypeT x, genTypeT y, genTypeU a);</div>
-<div class="line"><a name="l00310"></a><span class="lineno">  310</span>&#160;</div>
-<div class="line"><a name="l00311"></a><span class="lineno">  311</span>&#160;        <span class="keyword">template</span>&lt;length_t L, <span class="keyword">typename</span> T, <span class="keyword">typename</span> U, qualifier Q&gt;</div>
-<div class="line"><a name="l00312"></a><span class="lineno">  312</span>&#160;        GLM_FUNC_DECL vec&lt;L, T, Q&gt; <a class="code" href="a00241.html#ga8e93f374aae27d1a88b921860351f8d4">mix</a>(vec&lt;L, T, Q&gt; <span class="keyword">const</span>&amp; x, vec&lt;L, T, Q&gt; <span class="keyword">const</span>&amp; y, vec&lt;L, U, Q&gt; <span class="keyword">const</span>&amp; a);</div>
-<div class="line"><a name="l00313"></a><span class="lineno">  313</span>&#160;</div>
-<div class="line"><a name="l00314"></a><span class="lineno">  314</span>&#160;        <span class="keyword">template</span>&lt;length_t L, <span class="keyword">typename</span> T, <span class="keyword">typename</span> U, qualifier Q&gt;</div>
-<div class="line"><a name="l00315"></a><span class="lineno">  315</span>&#160;        GLM_FUNC_DECL vec&lt;L, T, Q&gt; <a class="code" href="a00241.html#ga8e93f374aae27d1a88b921860351f8d4">mix</a>(vec&lt;L, T, Q&gt; <span class="keyword">const</span>&amp; x, vec&lt;L, T, Q&gt; <span class="keyword">const</span>&amp; y, U a);</div>
-<div class="line"><a name="l00316"></a><span class="lineno">  316</span>&#160;</div>
-<div class="line"><a name="l00321"></a><span class="lineno">  321</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> genType&gt;</div>
-<div class="line"><a name="l00322"></a><span class="lineno">  322</span>&#160;        GLM_FUNC_DECL genType <a class="code" href="a00241.html#gaf4a5fc81619c7d3e8b22f53d4a098c7f">step</a>(genType edge, genType x);</div>
-<div class="line"><a name="l00323"></a><span class="lineno">  323</span>&#160;</div>
-<div class="line"><a name="l00332"></a><span class="lineno">  332</span>&#160;        <span class="keyword">template</span>&lt;length_t L, <span class="keyword">typename</span> T, qualifier Q&gt;</div>
-<div class="line"><a name="l00333"></a><span class="lineno">  333</span>&#160;        GLM_FUNC_DECL vec&lt;L, T, Q&gt; <a class="code" href="a00241.html#gaf4a5fc81619c7d3e8b22f53d4a098c7f">step</a>(T edge, vec&lt;L, T, Q&gt; <span class="keyword">const</span>&amp; x);</div>
-<div class="line"><a name="l00334"></a><span class="lineno">  334</span>&#160;</div>
-<div class="line"><a name="l00343"></a><span class="lineno">  343</span>&#160;        <span class="keyword">template</span>&lt;length_t L, <span class="keyword">typename</span> T, qualifier Q&gt;</div>
-<div class="line"><a name="l00344"></a><span class="lineno">  344</span>&#160;        GLM_FUNC_DECL vec&lt;L, T, Q&gt; <a class="code" href="a00241.html#gaf4a5fc81619c7d3e8b22f53d4a098c7f">step</a>(vec&lt;L, T, Q&gt; <span class="keyword">const</span>&amp; edge, vec&lt;L, T, Q&gt; <span class="keyword">const</span>&amp; x);</div>
-<div class="line"><a name="l00345"></a><span class="lineno">  345</span>&#160;</div>
-<div class="line"><a name="l00360"></a><span class="lineno">  360</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> genType&gt;</div>
-<div class="line"><a name="l00361"></a><span class="lineno">  361</span>&#160;        GLM_FUNC_DECL genType <a class="code" href="a00241.html#ga562edf7eca082cc5b7a0aaf180436daf">smoothstep</a>(genType edge0, genType edge1, genType x);</div>
-<div class="line"><a name="l00362"></a><span class="lineno">  362</span>&#160;</div>
-<div class="line"><a name="l00363"></a><span class="lineno">  363</span>&#160;        <span class="keyword">template</span>&lt;length_t L, <span class="keyword">typename</span> T, qualifier Q&gt;</div>
-<div class="line"><a name="l00364"></a><span class="lineno">  364</span>&#160;        GLM_FUNC_DECL vec&lt;L, T, Q&gt; <a class="code" href="a00241.html#ga562edf7eca082cc5b7a0aaf180436daf">smoothstep</a>(T edge0, T edge1, vec&lt;L, T, Q&gt; <span class="keyword">const</span>&amp; x);</div>
-<div class="line"><a name="l00365"></a><span class="lineno">  365</span>&#160;</div>
-<div class="line"><a name="l00366"></a><span class="lineno">  366</span>&#160;        <span class="keyword">template</span>&lt;length_t L, <span class="keyword">typename</span> T, qualifier Q&gt;</div>
-<div class="line"><a name="l00367"></a><span class="lineno">  367</span>&#160;        GLM_FUNC_DECL vec&lt;L, T, Q&gt; <a class="code" href="a00241.html#ga562edf7eca082cc5b7a0aaf180436daf">smoothstep</a>(vec&lt;L, T, Q&gt; <span class="keyword">const</span>&amp; edge0, vec&lt;L, T, Q&gt; <span class="keyword">const</span>&amp; edge1, vec&lt;L, T, Q&gt; <span class="keyword">const</span>&amp; x);</div>
-<div class="line"><a name="l00368"></a><span class="lineno">  368</span>&#160;</div>
-<div class="line"><a name="l00383"></a><span class="lineno">  383</span>&#160;        <span class="keyword">template</span>&lt;length_t L, <span class="keyword">typename</span> T, qualifier Q&gt;</div>
-<div class="line"><a name="l00384"></a><span class="lineno">  384</span>&#160;        GLM_FUNC_DECL vec&lt;L, bool, Q&gt; <a class="code" href="a00241.html#ga29ef934c00306490de837b4746b4e14d">isnan</a>(vec&lt;L, T, Q&gt; <span class="keyword">const</span>&amp; x);</div>
-<div class="line"><a name="l00385"></a><span class="lineno">  385</span>&#160;</div>
-<div class="line"><a name="l00398"></a><span class="lineno">  398</span>&#160;        <span class="keyword">template</span>&lt;length_t L, <span class="keyword">typename</span> T, qualifier Q&gt;</div>
-<div class="line"><a name="l00399"></a><span class="lineno">  399</span>&#160;        GLM_FUNC_DECL vec&lt;L, bool, Q&gt; <a class="code" href="a00241.html#ga2885587c23a106301f20443896365b62">isinf</a>(vec&lt;L, T, Q&gt; <span class="keyword">const</span>&amp; x);</div>
-<div class="line"><a name="l00400"></a><span class="lineno">  400</span>&#160;</div>
-<div class="line"><a name="l00407"></a><span class="lineno">  407</span>&#160;        GLM_FUNC_DECL <span class="keywordtype">int</span> <a class="code" href="a00241.html#ga99f7d62f78ac5ea3b49bae715c9488ed">floatBitsToInt</a>(<span class="keywordtype">float</span> <span class="keyword">const</span>&amp; v);</div>
-<div class="line"><a name="l00408"></a><span class="lineno">  408</span>&#160;</div>
-<div class="line"><a name="l00418"></a><span class="lineno">  418</span>&#160;        <span class="keyword">template</span>&lt;length_t L, qualifier Q&gt;</div>
-<div class="line"><a name="l00419"></a><span class="lineno">  419</span>&#160;        GLM_FUNC_DECL vec&lt;L, int, Q&gt; <a class="code" href="a00241.html#ga99f7d62f78ac5ea3b49bae715c9488ed">floatBitsToInt</a>(vec&lt;L, float, Q&gt; <span class="keyword">const</span>&amp; v);</div>
-<div class="line"><a name="l00420"></a><span class="lineno">  420</span>&#160;</div>
-<div class="line"><a name="l00427"></a><span class="lineno">  427</span>&#160;        GLM_FUNC_DECL uint <a class="code" href="a00241.html#ga49418ba4c8a60fbbb5d57b705f3e26db">floatBitsToUint</a>(<span class="keywordtype">float</span> <span class="keyword">const</span>&amp; v);</div>
-<div class="line"><a name="l00428"></a><span class="lineno">  428</span>&#160;</div>
-<div class="line"><a name="l00438"></a><span class="lineno">  438</span>&#160;        <span class="keyword">template</span>&lt;length_t L, qualifier Q&gt;</div>
-<div class="line"><a name="l00439"></a><span class="lineno">  439</span>&#160;        GLM_FUNC_DECL vec&lt;L, uint, Q&gt; <a class="code" href="a00241.html#ga49418ba4c8a60fbbb5d57b705f3e26db">floatBitsToUint</a>(vec&lt;L, float, Q&gt; <span class="keyword">const</span>&amp; v);</div>
-<div class="line"><a name="l00440"></a><span class="lineno">  440</span>&#160;</div>
-<div class="line"><a name="l00449"></a><span class="lineno">  449</span>&#160;        GLM_FUNC_DECL <span class="keywordtype">float</span> <a class="code" href="a00241.html#ga7a0a8291a1cf3e1c2aee33030a1bd7b0">intBitsToFloat</a>(<span class="keywordtype">int</span> <span class="keyword">const</span>&amp; v);</div>
-<div class="line"><a name="l00450"></a><span class="lineno">  450</span>&#160;</div>
-<div class="line"><a name="l00462"></a><span class="lineno">  462</span>&#160;        <span class="keyword">template</span>&lt;length_t L, qualifier Q&gt;</div>
-<div class="line"><a name="l00463"></a><span class="lineno">  463</span>&#160;        GLM_FUNC_DECL vec&lt;L, float, Q&gt; <a class="code" href="a00241.html#ga7a0a8291a1cf3e1c2aee33030a1bd7b0">intBitsToFloat</a>(vec&lt;L, int, Q&gt; <span class="keyword">const</span>&amp; v);</div>
-<div class="line"><a name="l00464"></a><span class="lineno">  464</span>&#160;</div>
-<div class="line"><a name="l00473"></a><span class="lineno">  473</span>&#160;        GLM_FUNC_DECL <span class="keywordtype">float</span> <a class="code" href="a00241.html#ga97f46b5f7b42fe44482e13356eb394ae">uintBitsToFloat</a>(uint <span class="keyword">const</span>&amp; v);</div>
-<div class="line"><a name="l00474"></a><span class="lineno">  474</span>&#160;</div>
-<div class="line"><a name="l00486"></a><span class="lineno">  486</span>&#160;        <span class="keyword">template</span>&lt;length_t L, qualifier Q&gt;</div>
-<div class="line"><a name="l00487"></a><span class="lineno">  487</span>&#160;        GLM_FUNC_DECL vec&lt;L, float, Q&gt; <a class="code" href="a00241.html#ga97f46b5f7b42fe44482e13356eb394ae">uintBitsToFloat</a>(vec&lt;L, uint, Q&gt; <span class="keyword">const</span>&amp; v);</div>
-<div class="line"><a name="l00488"></a><span class="lineno">  488</span>&#160;</div>
-<div class="line"><a name="l00495"></a><span class="lineno">  495</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> genType&gt;</div>
-<div class="line"><a name="l00496"></a><span class="lineno">  496</span>&#160;        GLM_FUNC_DECL genType <a class="code" href="a00241.html#gad0f444d4b81cc53c3b6edf5aa25078c2">fma</a>(genType <span class="keyword">const</span>&amp; a, genType <span class="keyword">const</span>&amp; b, genType <span class="keyword">const</span>&amp; c);</div>
-<div class="line"><a name="l00497"></a><span class="lineno">  497</span>&#160;</div>
-<div class="line"><a name="l00512"></a><span class="lineno">  512</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> genType&gt;</div>
-<div class="line"><a name="l00513"></a><span class="lineno">  513</span>&#160;        GLM_FUNC_DECL genType <a class="code" href="a00241.html#gaddf5ef73283c171730e0bcc11833fa81">frexp</a>(genType x, <span class="keywordtype">int</span>&amp; <a class="code" href="a00242.html#ga071566cadc7505455e611f2a0353f4d4">exp</a>);</div>
-<div class="line"><a name="l00514"></a><span class="lineno">  514</span>&#160;        </div>
-<div class="line"><a name="l00515"></a><span class="lineno">  515</span>&#160;        <span class="keyword">template</span>&lt;length_t L, <span class="keyword">typename</span> T, qualifier Q&gt;</div>
-<div class="line"><a name="l00516"></a><span class="lineno">  516</span>&#160;        GLM_FUNC_DECL vec&lt;L, T, Q&gt; <a class="code" href="a00241.html#gaddf5ef73283c171730e0bcc11833fa81">frexp</a>(vec&lt;L, T, Q&gt; <span class="keyword">const</span>&amp; v, vec&lt;L, int, Q&gt;&amp; <a class="code" href="a00242.html#ga071566cadc7505455e611f2a0353f4d4">exp</a>);</div>
-<div class="line"><a name="l00517"></a><span class="lineno">  517</span>&#160;</div>
-<div class="line"><a name="l00529"></a><span class="lineno">  529</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> genType&gt;</div>
-<div class="line"><a name="l00530"></a><span class="lineno">  530</span>&#160;        GLM_FUNC_DECL genType <a class="code" href="a00241.html#gac3010e0a0c35a1b514540f2fb579c58c">ldexp</a>(genType <span class="keyword">const</span>&amp; x, <span class="keywordtype">int</span> <span class="keyword">const</span>&amp; <a class="code" href="a00242.html#ga071566cadc7505455e611f2a0353f4d4">exp</a>);</div>
-<div class="line"><a name="l00531"></a><span class="lineno">  531</span>&#160;        </div>
-<div class="line"><a name="l00532"></a><span class="lineno">  532</span>&#160;        <span class="keyword">template</span>&lt;length_t L, <span class="keyword">typename</span> T, qualifier Q&gt;</div>
-<div class="line"><a name="l00533"></a><span class="lineno">  533</span>&#160;        GLM_FUNC_DECL vec&lt;L, T, Q&gt; <a class="code" href="a00241.html#gac3010e0a0c35a1b514540f2fb579c58c">ldexp</a>(vec&lt;L, T, Q&gt; <span class="keyword">const</span>&amp; v, vec&lt;L, int, Q&gt; <span class="keyword">const</span>&amp; <a class="code" href="a00242.html#ga071566cadc7505455e611f2a0353f4d4">exp</a>);</div>
-<div class="line"><a name="l00534"></a><span class="lineno">  534</span>&#160;</div>
-<div class="line"><a name="l00536"></a><span class="lineno">  536</span>&#160;}<span class="comment">//namespace glm</span></div>
-<div class="line"><a name="l00537"></a><span class="lineno">  537</span>&#160;</div>
-<div class="line"><a name="l00538"></a><span class="lineno">  538</span>&#160;<span class="preprocessor">#include &quot;detail/func_common.inl&quot;</span></div>
-<div class="line"><a name="l00539"></a><span class="lineno">  539</span>&#160;</div>
-<div class="ttc" id="a00241_html_gaa9d0742639e85b29c7c5de11cfd6840d"><div class="ttname"><a href="a00241.html#gaa9d0742639e85b29c7c5de11cfd6840d">glm::floor</a></div><div class="ttdeci">GLM_FUNC_DECL vec&lt; L, T, Q &gt; floor(vec&lt; L, T, Q &gt; const &amp;x)</div><div class="ttdoc">Returns a value equal to the nearest integer that is less then or equal to x. </div></div>
-<div class="ttc" id="a00241_html_gad0f444d4b81cc53c3b6edf5aa25078c2"><div class="ttname"><a href="a00241.html#gad0f444d4b81cc53c3b6edf5aa25078c2">glm::fma</a></div><div class="ttdeci">GLM_FUNC_DECL genType fma(genType const &amp;a, genType const &amp;b, genType const &amp;c)</div><div class="ttdoc">Computes and returns a * b + c. </div></div>
-<div class="ttc" id="a00241_html_gaf9375e3e06173271d49e6ffa3a334259"><div class="ttname"><a href="a00241.html#gaf9375e3e06173271d49e6ffa3a334259">glm::trunc</a></div><div class="ttdeci">GLM_FUNC_DECL vec&lt; L, T, Q &gt; trunc(vec&lt; L, T, Q &gt; const &amp;x)</div><div class="ttdoc">Returns a value equal to the nearest integer to x whose absolute value is not larger than the absolut...</div></div>
-<div class="ttc" id="a00241_html_ga9b197a452cd52db3c5c18bac72bd7798"><div class="ttname"><a href="a00241.html#ga9b197a452cd52db3c5c18bac72bd7798">glm::mod</a></div><div class="ttdeci">GLM_FUNC_DECL vec&lt; L, T, Q &gt; mod(vec&lt; L, T, Q &gt; const &amp;x, vec&lt; L, T, Q &gt; const &amp;y)</div><div class="ttdoc">Modulus. </div></div>
-<div class="ttc" id="a00241_html_gaa0f2f12e9108b09e22a3f0b2008a0b5d"><div class="ttname"><a href="a00241.html#gaa0f2f12e9108b09e22a3f0b2008a0b5d">glm::clamp</a></div><div class="ttdeci">GLM_FUNC_DECL GLM_CONSTEXPR vec&lt; L, T, Q &gt; clamp(vec&lt; L, T, Q &gt; const &amp;x, vec&lt; L, T, Q &gt; const &amp;minVal, vec&lt; L, T, Q &gt; const &amp;maxVal)</div><div class="ttdoc">Returns min(max(x, minVal), maxVal) for each component in x using the floating-point values minVal an...</div></div>
-<div class="ttc" id="a00241_html_gafa03aca8c4713e1cc892aa92ca135a7e"><div class="ttname"><a href="a00241.html#gafa03aca8c4713e1cc892aa92ca135a7e">glm::round</a></div><div class="ttdeci">GLM_FUNC_DECL vec&lt; L, T, Q &gt; round(vec&lt; L, T, Q &gt; const &amp;x)</div><div class="ttdoc">Returns a value equal to the nearest integer to x. </div></div>
-<div class="ttc" id="a00241_html_ga97f46b5f7b42fe44482e13356eb394ae"><div class="ttname"><a href="a00241.html#ga97f46b5f7b42fe44482e13356eb394ae">glm::uintBitsToFloat</a></div><div class="ttdeci">GLM_FUNC_DECL vec&lt; L, float, Q &gt; uintBitsToFloat(vec&lt; L, uint, Q &gt; const &amp;v)</div><div class="ttdoc">Returns a floating-point value corresponding to a unsigned integer encoding of a floating-point value...</div></div>
-<div class="ttc" id="a00241_html_ga1e2e5cfff800056540e32f6c9b604b28"><div class="ttname"><a href="a00241.html#ga1e2e5cfff800056540e32f6c9b604b28">glm::sign</a></div><div class="ttdeci">GLM_FUNC_DECL vec&lt; L, T, Q &gt; sign(vec&lt; L, T, Q &gt; const &amp;x)</div><div class="ttdoc">Returns 1.0 if x > 0, 0.0 if x == 0, or -1.0 if x < 0. </div></div>
-<div class="ttc" id="a00241_html_ga2885587c23a106301f20443896365b62"><div class="ttname"><a href="a00241.html#ga2885587c23a106301f20443896365b62">glm::isinf</a></div><div class="ttdeci">GLM_FUNC_DECL vec&lt; L, bool, Q &gt; isinf(vec&lt; L, T, Q &gt; const &amp;x)</div><div class="ttdoc">Returns true if x holds a positive infinity or negative infinity representation in the underlying imp...</div></div>
-<div class="ttc" id="a00241_html_ga76b81785045a057989a84d99aeeb1578"><div class="ttname"><a href="a00241.html#ga76b81785045a057989a84d99aeeb1578">glm::roundEven</a></div><div class="ttdeci">GLM_FUNC_DECL vec&lt; L, T, Q &gt; roundEven(vec&lt; L, T, Q &gt; const &amp;x)</div><div class="ttdoc">Returns a value equal to the nearest integer to x. </div></div>
-<div class="ttc" id="a00241_html_ga85e33f139b8db1b39b590a5713b9e679"><div class="ttname"><a href="a00241.html#ga85e33f139b8db1b39b590a5713b9e679">glm::modf</a></div><div class="ttdeci">GLM_FUNC_DECL genType modf(genType x, genType &amp;i)</div><div class="ttdoc">Returns the fractional part of x and sets i to the integer part (as a whole number floating point val...</div></div>
-<div class="ttc" id="a00241_html_gafb9d2a645a23aca12d4d6de0104b7657"><div class="ttname"><a href="a00241.html#gafb9d2a645a23aca12d4d6de0104b7657">glm::ceil</a></div><div class="ttdeci">GLM_FUNC_DECL vec&lt; L, T, Q &gt; ceil(vec&lt; L, T, Q &gt; const &amp;x)</div><div class="ttdoc">Returns a value equal to the nearest integer that is greater than or equal to x. </div></div>
-<div class="ttc" id="a00241_html_ga31f49ef9e7d1beb003160c5e009b0c48"><div class="ttname"><a href="a00241.html#ga31f49ef9e7d1beb003160c5e009b0c48">glm::min</a></div><div class="ttdeci">GLM_FUNC_DECL GLM_CONSTEXPR vec&lt; L, T, Q &gt; min(vec&lt; L, T, Q &gt; const &amp;x, vec&lt; L, T, Q &gt; const &amp;y)</div><div class="ttdoc">Returns y if y < x; otherwise, it returns x. </div></div>
-<div class="ttc" id="a00241_html_ga7a0a8291a1cf3e1c2aee33030a1bd7b0"><div class="ttname"><a href="a00241.html#ga7a0a8291a1cf3e1c2aee33030a1bd7b0">glm::intBitsToFloat</a></div><div class="ttdeci">GLM_FUNC_DECL vec&lt; L, float, Q &gt; intBitsToFloat(vec&lt; L, int, Q &gt; const &amp;v)</div><div class="ttdoc">Returns a floating-point value corresponding to a signed integer encoding of a floating-point value...</div></div>
-<div class="ttc" id="a00241_html_ga29ef934c00306490de837b4746b4e14d"><div class="ttname"><a href="a00241.html#ga29ef934c00306490de837b4746b4e14d">glm::isnan</a></div><div class="ttdeci">GLM_FUNC_DECL vec&lt; L, bool, Q &gt; isnan(vec&lt; L, T, Q &gt; const &amp;x)</div><div class="ttdoc">Returns true if x holds a NaN (not a number) representation in the underlying implementation&#39;s set of...</div></div>
-<div class="ttc" id="a00242_html_ga071566cadc7505455e611f2a0353f4d4"><div class="ttname"><a href="a00242.html#ga071566cadc7505455e611f2a0353f4d4">glm::exp</a></div><div class="ttdeci">GLM_FUNC_DECL vec&lt; L, T, Q &gt; exp(vec&lt; L, T, Q &gt; const &amp;v)</div><div class="ttdoc">Returns the natural exponentiation of x, i.e., e^x. </div></div>
-<div class="ttc" id="a00241_html_ga49418ba4c8a60fbbb5d57b705f3e26db"><div class="ttname"><a href="a00241.html#ga49418ba4c8a60fbbb5d57b705f3e26db">glm::floatBitsToUint</a></div><div class="ttdeci">GLM_FUNC_DECL vec&lt; L, uint, Q &gt; floatBitsToUint(vec&lt; L, float, Q &gt; const &amp;v)</div><div class="ttdoc">Returns a unsigned integer value representing the encoding of a floating-point value. </div></div>
-<div class="ttc" id="a00241_html_ga562edf7eca082cc5b7a0aaf180436daf"><div class="ttname"><a href="a00241.html#ga562edf7eca082cc5b7a0aaf180436daf">glm::smoothstep</a></div><div class="ttdeci">GLM_FUNC_DECL genType smoothstep(genType edge0, genType edge1, genType x)</div><div class="ttdoc">Returns 0.0 if x <= edge0 and 1.0 if x >= edge1 and performs smooth Hermite interpolation between 0 a...</div></div>
-<div class="ttc" id="a00241_html_ga81d3abddd0ef0c8de579bc541ecadab6"><div class="ttname"><a href="a00241.html#ga81d3abddd0ef0c8de579bc541ecadab6">glm::abs</a></div><div class="ttdeci">GLM_FUNC_DECL GLM_CONSTEXPR vec&lt; L, T, Q &gt; abs(vec&lt; L, T, Q &gt; const &amp;x)</div><div class="ttdoc">Returns x if x >= 0; otherwise, it returns -x. </div></div>
-<div class="ttc" id="a00241_html_gac1fec0c3303b572a6d4697a637213870"><div class="ttname"><a href="a00241.html#gac1fec0c3303b572a6d4697a637213870">glm::max</a></div><div class="ttdeci">GLM_FUNC_DECL GLM_CONSTEXPR vec&lt; L, T, Q &gt; max(vec&lt; L, T, Q &gt; const &amp;x, vec&lt; L, T, Q &gt; const &amp;y)</div><div class="ttdoc">Returns y if x < y; otherwise, it returns x. </div></div>
-<div class="ttc" id="a00241_html_gaf4a5fc81619c7d3e8b22f53d4a098c7f"><div class="ttname"><a href="a00241.html#gaf4a5fc81619c7d3e8b22f53d4a098c7f">glm::step</a></div><div class="ttdeci">GLM_FUNC_DECL vec&lt; L, T, Q &gt; step(vec&lt; L, T, Q &gt; const &amp;edge, vec&lt; L, T, Q &gt; const &amp;x)</div><div class="ttdoc">Returns 0.0 if x < edge, otherwise it returns 1.0. </div></div>
-<div class="ttc" id="a00241_html_ga2df623004f634b440d61e018d62c751b"><div class="ttname"><a href="a00241.html#ga2df623004f634b440d61e018d62c751b">glm::fract</a></div><div class="ttdeci">GLM_FUNC_DECL vec&lt; L, T, Q &gt; fract(vec&lt; L, T, Q &gt; const &amp;x)</div><div class="ttdoc">Return x - floor(x). </div></div>
-<div class="ttc" id="a00241_html_gac3010e0a0c35a1b514540f2fb579c58c"><div class="ttname"><a href="a00241.html#gac3010e0a0c35a1b514540f2fb579c58c">glm::ldexp</a></div><div class="ttdeci">GLM_FUNC_DECL genType ldexp(genType const &amp;x, int const &amp;exp)</div><div class="ttdoc">Builds a floating-point number from x and the corresponding integral exponent of two in exp...</div></div>
-<div class="ttc" id="a00241_html_ga99f7d62f78ac5ea3b49bae715c9488ed"><div class="ttname"><a href="a00241.html#ga99f7d62f78ac5ea3b49bae715c9488ed">glm::floatBitsToInt</a></div><div class="ttdeci">GLM_FUNC_DECL vec&lt; L, int, Q &gt; floatBitsToInt(vec&lt; L, float, Q &gt; const &amp;v)</div><div class="ttdoc">Returns a signed integer value representing the encoding of a floating-point value. </div></div>
-<div class="ttc" id="a00241_html_ga8e93f374aae27d1a88b921860351f8d4"><div class="ttname"><a href="a00241.html#ga8e93f374aae27d1a88b921860351f8d4">glm::mix</a></div><div class="ttdeci">GLM_FUNC_DECL genTypeT mix(genTypeT x, genTypeT y, genTypeU a)</div><div class="ttdoc">If genTypeU is a floating scalar or vector: Returns x * (1.0 - a) + y * a, i.e., the linear blend of ...</div></div>
-<div class="ttc" id="a00241_html_gaddf5ef73283c171730e0bcc11833fa81"><div class="ttname"><a href="a00241.html#gaddf5ef73283c171730e0bcc11833fa81">glm::frexp</a></div><div class="ttdeci">GLM_FUNC_DECL genType frexp(genType x, int &amp;exp)</div><div class="ttdoc">Splits x into a floating-point significand in the range [0.5, 1.0) and an integral exponent of two...</div></div>
-<div class="ttc" id="a00236_html"><div class="ttname"><a href="a00236.html">glm</a></div><div class="ttdef"><b>Definition:</b> <a href="a00015_source.html#l00020">common.hpp:20</a></div></div>
-</div><!-- fragment --></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.10
-</small></address>
-</body>
-</html>

+ 0 - 139
doc/api/a00016_source.html

@@ -1,139 +0,0 @@
-<!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.10"/>
-<title>0.9.9 API documentation: common.hpp Source File</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="search/search.css" rel="stylesheet" type="text/css"/>
-<script type="text/javascript" src="search/searchdata.js"></script>
-<script type="text/javascript" src="search/search.js"></script>
-<script type="text/javascript">
-  $(document).ready(function() { init_search(); });
-</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 id="projectlogo"><img alt="Logo" src="logo-mini.png"/></td>
-  <td id="projectalign" style="padding-left: 0.5em;">
-   <div id="projectname">0.9.9 API documentation
-   </div>
-  </td>
- </tr>
- </tbody>
-</table>
-</div>
-<!-- end header part -->
-<!-- Generated by Doxygen 1.8.10 -->
-<script type="text/javascript">
-var searchBox = new SearchBox("searchBox", "search",false,'Search');
-</script>
-  <div id="navrow1" class="tabs">
-    <ul class="tablist">
-      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
-      <li><a href="modules.html"><span>Modules</span></a></li>
-      <li class="current"><a href="files.html"><span>Files</span></a></li>
-      <li>
-        <div id="MSearchBox" class="MSearchBoxInactive">
-        <span class="left">
-          <img id="MSearchSelect" src="search/mag_sel.png"
-               onmouseover="return searchBox.OnSearchSelectShow()"
-               onmouseout="return searchBox.OnSearchSelectHide()"
-               alt=""/>
-          <input type="text" id="MSearchField" value="Search" accesskey="S"
-               onfocus="searchBox.OnSearchFieldFocus(true)" 
-               onblur="searchBox.OnSearchFieldFocus(false)" 
-               onkeyup="searchBox.OnSearchFieldChange(event)"/>
-          </span><span class="right">
-            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
-          </span>
-        </div>
-      </li>
-    </ul>
-  </div>
-  <div id="navrow2" class="tabs2">
-    <ul class="tablist">
-      <li><a href="files.html"><span>File&#160;List</span></a></li>
-    </ul>
-  </div>
-<!-- window showing the filter options -->
-<div id="MSearchSelectWindow"
-     onmouseover="return searchBox.OnSearchSelectShow()"
-     onmouseout="return searchBox.OnSearchSelectHide()"
-     onkeydown="return searchBox.OnSearchSelectKey(event)">
-</div>
-
-<!-- iframe showing the search results (closed by default) -->
-<div id="MSearchResultsWindow">
-<iframe src="javascript:void(0)" frameborder="0" 
-        name="MSearchResults" id="MSearchResults">
-</iframe>
-</div>
-
-<div id="nav-path" class="navpath">
-  <ul>
-<li class="navelem"><a class="el" href="dir_3a581ba30d25676e4b797b1f96d53b45.html">F:</a></li><li class="navelem"><a class="el" href="dir_9e5fe034a00e89334fd5186c3e7db156.html">G-Truc</a></li><li class="navelem"><a class="el" href="dir_d9496f0844b48bc7e53b5af8c99b9ab2.html">Source</a></li><li class="navelem"><a class="el" href="dir_a8bee7be44182a33f3820393ae0b105d.html">G-Truc</a></li><li class="navelem"><a class="el" href="dir_44e5e654415abd9ca6fdeaddaff8565e.html">glm</a></li><li class="navelem"><a class="el" href="dir_cef2d71d502cb69a9252bca2297d9549.html">glm</a></li><li class="navelem"><a class="el" href="dir_f35778ec600a1b9bbc4524e62e226aa2.html">gtx</a></li>  </ul>
-</div>
-</div><!-- top -->
-<div class="header">
-  <div class="headertitle">
-<div class="title">gtx/common.hpp</div>  </div>
-</div><!--header-->
-<div class="contents">
-<a href="a00016.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span>&#160;</div>
-<div class="line"><a name="l00013"></a><span class="lineno">   13</span>&#160;<span class="preprocessor">#pragma once</span></div>
-<div class="line"><a name="l00014"></a><span class="lineno">   14</span>&#160;</div>
-<div class="line"><a name="l00015"></a><span class="lineno">   15</span>&#160;<span class="comment">// Dependencies:</span></div>
-<div class="line"><a name="l00016"></a><span class="lineno">   16</span>&#160;<span class="preprocessor">#include &quot;../vec2.hpp&quot;</span></div>
-<div class="line"><a name="l00017"></a><span class="lineno">   17</span>&#160;<span class="preprocessor">#include &quot;../vec3.hpp&quot;</span></div>
-<div class="line"><a name="l00018"></a><span class="lineno">   18</span>&#160;<span class="preprocessor">#include &quot;../vec4.hpp&quot;</span></div>
-<div class="line"><a name="l00019"></a><span class="lineno">   19</span>&#160;<span class="preprocessor">#include &quot;../gtc/vec1.hpp&quot;</span></div>
-<div class="line"><a name="l00020"></a><span class="lineno">   20</span>&#160;</div>
-<div class="line"><a name="l00021"></a><span class="lineno">   21</span>&#160;<span class="preprocessor">#if GLM_MESSAGES == GLM_ENABLE &amp;&amp; !defined(GLM_EXT_INCLUDED)</span></div>
-<div class="line"><a name="l00022"></a><span class="lineno">   22</span>&#160;<span class="preprocessor">#       ifndef GLM_ENABLE_EXPERIMENTAL</span></div>
-<div class="line"><a name="l00023"></a><span class="lineno">   23</span>&#160;<span class="preprocessor">#               pragma message(&quot;GLM: GLM_GTX_common is an experimental extension and may change in the future. Use #define GLM_ENABLE_EXPERIMENTAL before including it, if you really want to use it.&quot;)</span></div>
-<div class="line"><a name="l00024"></a><span class="lineno">   24</span>&#160;<span class="preprocessor">#       else</span></div>
-<div class="line"><a name="l00025"></a><span class="lineno">   25</span>&#160;<span class="preprocessor">#               pragma message(&quot;GLM: GLM_GTX_common extension included&quot;)</span></div>
-<div class="line"><a name="l00026"></a><span class="lineno">   26</span>&#160;<span class="preprocessor">#       endif</span></div>
-<div class="line"><a name="l00027"></a><span class="lineno">   27</span>&#160;<span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00028"></a><span class="lineno">   28</span>&#160;</div>
-<div class="line"><a name="l00029"></a><span class="lineno">   29</span>&#160;<span class="keyword">namespace </span><a class="code" href="a00236.html">glm</a></div>
-<div class="line"><a name="l00030"></a><span class="lineno">   30</span>&#160;{</div>
-<div class="line"><a name="l00033"></a><span class="lineno">   33</span>&#160;</div>
-<div class="line"><a name="l00042"></a><span class="lineno">   42</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> genType&gt;</div>
-<div class="line"><a name="l00043"></a><span class="lineno">   43</span>&#160;        GLM_FUNC_DECL <span class="keyword">typename</span> genType::bool_type <a class="code" href="a00314.html#ga74aa7c7462245d83bd5a9edf9c6c2d91">isdenormal</a>(genType <span class="keyword">const</span>&amp; x);</div>
-<div class="line"><a name="l00044"></a><span class="lineno">   44</span>&#160;</div>
-<div class="line"><a name="l00050"></a><span class="lineno">   50</span>&#160;        <span class="keyword">template</span>&lt;length_t L, <span class="keyword">typename</span> T, qualifier Q&gt;</div>
-<div class="line"><a name="l00051"></a><span class="lineno">   51</span>&#160;        GLM_FUNC_DECL vec&lt;L, T, Q&gt; <a class="code" href="a00314.html#gae5e80425df9833164ad469e83b475fb4">fmod</a>(vec&lt;L, T, Q&gt; <span class="keyword">const</span>&amp; v);</div>
-<div class="line"><a name="l00052"></a><span class="lineno">   52</span>&#160;</div>
-<div class="line"><a name="l00060"></a><span class="lineno">   60</span>&#160;        <span class="keyword">template</span> &lt;length_t L, <span class="keyword">typename</span> T, qualifier Q&gt;</div>
-<div class="line"><a name="l00061"></a><span class="lineno">   61</span>&#160;        GLM_FUNC_DECL vec&lt;L, bool, Q&gt; <a class="code" href="a00314.html#gafd303042ba2ba695bf53b2315f53f93f">openBounded</a>(vec&lt;L, T, Q&gt; <span class="keyword">const</span>&amp; Value, vec&lt;L, T, Q&gt; <span class="keyword">const</span>&amp; Min, vec&lt;L, T, Q&gt; <span class="keyword">const</span>&amp; Max);</div>
-<div class="line"><a name="l00062"></a><span class="lineno">   62</span>&#160;</div>
-<div class="line"><a name="l00070"></a><span class="lineno">   70</span>&#160;        <span class="keyword">template</span> &lt;length_t L, <span class="keyword">typename</span> T, qualifier Q&gt;</div>
-<div class="line"><a name="l00071"></a><span class="lineno">   71</span>&#160;        GLM_FUNC_DECL vec&lt;L, bool, Q&gt; <a class="code" href="a00314.html#gab7d89c14c48ad01f720fb5daf8813161">closeBounded</a>(vec&lt;L, T, Q&gt; <span class="keyword">const</span>&amp; Value, vec&lt;L, T, Q&gt; <span class="keyword">const</span>&amp; Min, vec&lt;L, T, Q&gt; <span class="keyword">const</span>&amp; Max);</div>
-<div class="line"><a name="l00072"></a><span class="lineno">   72</span>&#160;</div>
-<div class="line"><a name="l00074"></a><span class="lineno">   74</span>&#160;}<span class="comment">//namespace glm</span></div>
-<div class="line"><a name="l00075"></a><span class="lineno">   75</span>&#160;</div>
-<div class="line"><a name="l00076"></a><span class="lineno">   76</span>&#160;<span class="preprocessor">#include &quot;common.inl&quot;</span></div>
-<div class="ttc" id="a00314_html_gae5e80425df9833164ad469e83b475fb4"><div class="ttname"><a href="a00314.html#gae5e80425df9833164ad469e83b475fb4">glm::fmod</a></div><div class="ttdeci">GLM_FUNC_DECL vec&lt; L, T, Q &gt; fmod(vec&lt; L, T, Q &gt; const &amp;v)</div><div class="ttdoc">Similar to &#39;mod&#39; but with a different rounding and integer support. </div></div>
-<div class="ttc" id="a00314_html_gafd303042ba2ba695bf53b2315f53f93f"><div class="ttname"><a href="a00314.html#gafd303042ba2ba695bf53b2315f53f93f">glm::openBounded</a></div><div class="ttdeci">GLM_FUNC_DECL vec&lt; L, bool, Q &gt; openBounded(vec&lt; L, T, Q &gt; const &amp;Value, vec&lt; L, T, Q &gt; const &amp;Min, vec&lt; L, T, Q &gt; const &amp;Max)</div><div class="ttdoc">Returns whether vector components values are within an interval. </div></div>
-<div class="ttc" id="a00314_html_ga74aa7c7462245d83bd5a9edf9c6c2d91"><div class="ttname"><a href="a00314.html#ga74aa7c7462245d83bd5a9edf9c6c2d91">glm::isdenormal</a></div><div class="ttdeci">GLM_FUNC_DECL genType::bool_type isdenormal(genType const &amp;x)</div><div class="ttdoc">Returns true if x is a denormalized number Numbers whose absolute value is too small to be represente...</div></div>
-<div class="ttc" id="a00236_html"><div class="ttname"><a href="a00236.html">glm</a></div><div class="ttdef"><b>Definition:</b> <a href="a00015_source.html#l00020">common.hpp:20</a></div></div>
-<div class="ttc" id="a00314_html_gab7d89c14c48ad01f720fb5daf8813161"><div class="ttname"><a href="a00314.html#gab7d89c14c48ad01f720fb5daf8813161">glm::closeBounded</a></div><div class="ttdeci">GLM_FUNC_DECL vec&lt; L, bool, Q &gt; closeBounded(vec&lt; L, T, Q &gt; const &amp;Value, vec&lt; L, T, Q &gt; const &amp;Min, vec&lt; L, T, Q &gt; const &amp;Max)</div><div class="ttdoc">Returns whether vector components values are within an interval. </div></div>
-</div><!-- fragment --></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.10
-</small></address>
-</body>
-</html>

+ 703 - 222
doc/api/a00017_source.html

@@ -1,19 +1,17 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://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.10"/>
-<title>0.9.9 API documentation: compatibility.hpp Source File</title>
+<meta name="generator" content="Doxygen 1.8.18"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>1.0.0 API documentation: _swizzle_func.hpp Source File</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="search/search.css" rel="stylesheet" type="text/css"/>
 <script type="text/javascript" src="search/searchdata.js"></script>
 <script type="text/javascript" src="search/search.js"></script>
-<script type="text/javascript">
-  $(document).ready(function() { init_search(); });
-</script>
 <link href="doxygen.css" rel="stylesheet" type="text/css" />
 </head>
 <body>
@@ -24,7 +22,7 @@
  <tr style="height: 56px;">
   <td id="projectlogo"><img alt="Logo" src="logo-mini.png"/></td>
   <td id="projectalign" style="padding-left: 0.5em;">
-   <div id="projectname">0.9.9 API documentation
+   <div id="projectname">1.0.0 API documentation
    </div>
   </td>
  </tr>
@@ -32,38 +30,22 @@
 </table>
 </div>
 <!-- end header part -->
-<!-- Generated by Doxygen 1.8.10 -->
+<!-- Generated by Doxygen 1.8.18 -->
 <script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
 var searchBox = new SearchBox("searchBox", "search",false,'Search');
+/* @license-end */
 </script>
-  <div id="navrow1" class="tabs">
-    <ul class="tablist">
-      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
-      <li><a href="modules.html"><span>Modules</span></a></li>
-      <li class="current"><a href="files.html"><span>Files</span></a></li>
-      <li>
-        <div id="MSearchBox" class="MSearchBoxInactive">
-        <span class="left">
-          <img id="MSearchSelect" src="search/mag_sel.png"
-               onmouseover="return searchBox.OnSearchSelectShow()"
-               onmouseout="return searchBox.OnSearchSelectHide()"
-               alt=""/>
-          <input type="text" id="MSearchField" value="Search" accesskey="S"
-               onfocus="searchBox.OnSearchFieldFocus(true)" 
-               onblur="searchBox.OnSearchFieldFocus(false)" 
-               onkeyup="searchBox.OnSearchFieldChange(event)"/>
-          </span><span class="right">
-            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
-          </span>
-        </div>
-      </li>
-    </ul>
-  </div>
-  <div id="navrow2" class="tabs2">
-    <ul class="tablist">
-      <li><a href="files.html"><span>File&#160;List</span></a></li>
-    </ul>
-  </div>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
 <!-- window showing the filter options -->
 <div id="MSearchSelectWindow"
      onmouseover="return searchBox.OnSearchSelectShow()"
@@ -80,203 +62,702 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 
 <div id="nav-path" class="navpath">
   <ul>
-<li class="navelem"><a class="el" href="dir_3a581ba30d25676e4b797b1f96d53b45.html">F:</a></li><li class="navelem"><a class="el" href="dir_9e5fe034a00e89334fd5186c3e7db156.html">G-Truc</a></li><li class="navelem"><a class="el" href="dir_d9496f0844b48bc7e53b5af8c99b9ab2.html">Source</a></li><li class="navelem"><a class="el" href="dir_a8bee7be44182a33f3820393ae0b105d.html">G-Truc</a></li><li class="navelem"><a class="el" href="dir_44e5e654415abd9ca6fdeaddaff8565e.html">glm</a></li><li class="navelem"><a class="el" href="dir_cef2d71d502cb69a9252bca2297d9549.html">glm</a></li><li class="navelem"><a class="el" href="dir_f35778ec600a1b9bbc4524e62e226aa2.html">gtx</a></li>  </ul>
+<li class="navelem"><a class="el" href="dir_885cc87fac2d91e269af0a5a959fa5f6.html">E:</a></li><li class="navelem"><a class="el" href="dir_63ed049134a778d525e06b63afc2c979.html">Github</a></li><li class="navelem"><a class="el" href="dir_c98a9ac98258ab9f831b188d66361a70.html">g-truc</a></li><li class="navelem"><a class="el" href="dir_50f12b6ceb23d7f6adfb377a1ae8b006.html">glm</a></li><li class="navelem"><a class="el" href="dir_fca33f1b5115d46f42c670590789c0d2.html">glm</a></li><li class="navelem"><a class="el" href="dir_382f4fd018b81be8753cb53c0a41a09a.html">detail</a></li>  </ul>
 </div>
 </div><!-- top -->
 <div class="header">
   <div class="headertitle">
-<div class="title">compatibility.hpp</div>  </div>
+<div class="title">_swizzle_func.hpp</div>  </div>
 </div><!--header-->
 <div class="contents">
-<a href="a00017.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span>&#160;</div>
-<div class="line"><a name="l00013"></a><span class="lineno">   13</span>&#160;<span class="preprocessor">#pragma once</span></div>
-<div class="line"><a name="l00014"></a><span class="lineno">   14</span>&#160;</div>
-<div class="line"><a name="l00015"></a><span class="lineno">   15</span>&#160;<span class="comment">// Dependency:</span></div>
-<div class="line"><a name="l00016"></a><span class="lineno">   16</span>&#160;<span class="preprocessor">#include &quot;../glm.hpp&quot;</span></div>
-<div class="line"><a name="l00017"></a><span class="lineno">   17</span>&#160;<span class="preprocessor">#include &quot;../gtc/quaternion.hpp&quot;</span></div>
-<div class="line"><a name="l00018"></a><span class="lineno">   18</span>&#160;</div>
-<div class="line"><a name="l00019"></a><span class="lineno">   19</span>&#160;<span class="preprocessor">#if GLM_MESSAGES == GLM_ENABLE &amp;&amp; !defined(GLM_EXT_INCLUDED)</span></div>
-<div class="line"><a name="l00020"></a><span class="lineno">   20</span>&#160;<span class="preprocessor">#       ifndef GLM_ENABLE_EXPERIMENTAL</span></div>
-<div class="line"><a name="l00021"></a><span class="lineno">   21</span>&#160;<span class="preprocessor">#               pragma message(&quot;GLM: GLM_GTX_compatibility is an experimental extension and may change in the future. Use #define GLM_ENABLE_EXPERIMENTAL before including it, if you really want to use it.&quot;)</span></div>
-<div class="line"><a name="l00022"></a><span class="lineno">   22</span>&#160;<span class="preprocessor">#       else</span></div>
-<div class="line"><a name="l00023"></a><span class="lineno">   23</span>&#160;<span class="preprocessor">#               pragma message(&quot;GLM: GLM_GTX_compatibility extension included&quot;)</span></div>
-<div class="line"><a name="l00024"></a><span class="lineno">   24</span>&#160;<span class="preprocessor">#       endif</span></div>
-<div class="line"><a name="l00025"></a><span class="lineno">   25</span>&#160;<span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00026"></a><span class="lineno">   26</span>&#160;</div>
-<div class="line"><a name="l00027"></a><span class="lineno">   27</span>&#160;<span class="preprocessor">#if GLM_COMPILER &amp; GLM_COMPILER_VC</span></div>
-<div class="line"><a name="l00028"></a><span class="lineno">   28</span>&#160;<span class="preprocessor">#       include &lt;cfloat&gt;</span></div>
-<div class="line"><a name="l00029"></a><span class="lineno">   29</span>&#160;<span class="preprocessor">#elif GLM_COMPILER &amp; GLM_COMPILER_GCC</span></div>
-<div class="line"><a name="l00030"></a><span class="lineno">   30</span>&#160;<span class="preprocessor">#       include &lt;cmath&gt;</span></div>
-<div class="line"><a name="l00031"></a><span class="lineno">   31</span>&#160;<span class="preprocessor">#       if(GLM_PLATFORM &amp; GLM_PLATFORM_ANDROID)</span></div>
-<div class="line"><a name="l00032"></a><span class="lineno">   32</span>&#160;<span class="preprocessor">#               undef isfinite</span></div>
-<div class="line"><a name="l00033"></a><span class="lineno">   33</span>&#160;<span class="preprocessor">#       endif</span></div>
-<div class="line"><a name="l00034"></a><span class="lineno">   34</span>&#160;<span class="preprocessor">#endif//GLM_COMPILER</span></div>
-<div class="line"><a name="l00035"></a><span class="lineno">   35</span>&#160;</div>
-<div class="line"><a name="l00036"></a><span class="lineno">   36</span>&#160;<span class="keyword">namespace </span><a class="code" href="a00236.html">glm</a></div>
-<div class="line"><a name="l00037"></a><span class="lineno">   37</span>&#160;{</div>
-<div class="line"><a name="l00040"></a><span class="lineno">   40</span>&#160;</div>
-<div class="line"><a name="l00041"></a><span class="lineno"><a class="line" href="a00315.html#ga5494ba3a95ea6594c86fc75236886864">   41</a></span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T&gt; GLM_FUNC_QUALIFIER T <a class="code" href="a00315.html#gab5477ab69c40de4db5d58d3359529724">lerp</a>(T x, T y, T a){<span class="keywordflow">return</span> <a class="code" href="a00241.html#ga8e93f374aae27d1a88b921860351f8d4">mix</a>(x, y, a);}                                                                                                                                                                     </div>
-<div class="line"><a name="l00042"></a><span class="lineno"><a class="line" href="a00315.html#gaa551c0a0e16d2d4608e49f7696df897f">   42</a></span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T, qualifier Q&gt; GLM_FUNC_QUALIFIER vec&lt;2, T, Q&gt; <a class="code" href="a00315.html#gab5477ab69c40de4db5d58d3359529724">lerp</a>(<span class="keyword">const</span> vec&lt;2, T, Q&gt;&amp; x, <span class="keyword">const</span> vec&lt;2, T, Q&gt;&amp; y, T a){<span class="keywordflow">return</span> <a class="code" href="a00241.html#ga8e93f374aae27d1a88b921860351f8d4">mix</a>(x, y, a);}                                                 </div>
-<div class="line"><a name="l00043"></a><span class="lineno">   43</span>&#160;</div>
-<div class="line"><a name="l00044"></a><span class="lineno"><a class="line" href="a00315.html#ga44a8b5fd776320f1713413dec959b32a">   44</a></span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T, qualifier Q&gt; GLM_FUNC_QUALIFIER vec&lt;3, T, Q&gt; <a class="code" href="a00315.html#gab5477ab69c40de4db5d58d3359529724">lerp</a>(<span class="keyword">const</span> vec&lt;3, T, Q&gt;&amp; x, <span class="keyword">const</span> vec&lt;3, T, Q&gt;&amp; y, T a){<span class="keywordflow">return</span> <a class="code" href="a00241.html#ga8e93f374aae27d1a88b921860351f8d4">mix</a>(x, y, a);}                                                 </div>
-<div class="line"><a name="l00045"></a><span class="lineno"><a class="line" href="a00315.html#ga89ac8e000199292ec7875519d27e214b">   45</a></span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T, qualifier Q&gt; GLM_FUNC_QUALIFIER vec&lt;4, T, Q&gt; <a class="code" href="a00315.html#gab5477ab69c40de4db5d58d3359529724">lerp</a>(<span class="keyword">const</span> vec&lt;4, T, Q&gt;&amp; x, <span class="keyword">const</span> vec&lt;4, T, Q&gt;&amp; y, T a){<span class="keywordflow">return</span> <a class="code" href="a00241.html#ga8e93f374aae27d1a88b921860351f8d4">mix</a>(x, y, a);}                                                 </div>
-<div class="line"><a name="l00046"></a><span class="lineno"><a class="line" href="a00315.html#gaf68de5baf72d16135368b8ef4f841604">   46</a></span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T, qualifier Q&gt; GLM_FUNC_QUALIFIER vec&lt;2, T, Q&gt; <a class="code" href="a00315.html#gab5477ab69c40de4db5d58d3359529724">lerp</a>(<span class="keyword">const</span> vec&lt;2, T, Q&gt;&amp; x, <span class="keyword">const</span> vec&lt;2, T, Q&gt;&amp; y, <span class="keyword">const</span> vec&lt;2, T, Q&gt;&amp; a){<span class="keywordflow">return</span> <a class="code" href="a00241.html#ga8e93f374aae27d1a88b921860351f8d4">mix</a>(x, y, a);}       </div>
-<div class="line"><a name="l00047"></a><span class="lineno"><a class="line" href="a00315.html#ga4ae1a616c8540a2649eab8e0cd051bb3">   47</a></span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T, qualifier Q&gt; GLM_FUNC_QUALIFIER vec&lt;3, T, Q&gt; <a class="code" href="a00315.html#gab5477ab69c40de4db5d58d3359529724">lerp</a>(<span class="keyword">const</span> vec&lt;3, T, Q&gt;&amp; x, <span class="keyword">const</span> vec&lt;3, T, Q&gt;&amp; y, <span class="keyword">const</span> vec&lt;3, T, Q&gt;&amp; a){<span class="keywordflow">return</span> <a class="code" href="a00241.html#ga8e93f374aae27d1a88b921860351f8d4">mix</a>(x, y, a);}       </div>
-<div class="line"><a name="l00048"></a><span class="lineno"><a class="line" href="a00315.html#gab5477ab69c40de4db5d58d3359529724">   48</a></span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T, qualifier Q&gt; GLM_FUNC_QUALIFIER vec&lt;4, T, Q&gt; <a class="code" href="a00315.html#gab5477ab69c40de4db5d58d3359529724">lerp</a>(<span class="keyword">const</span> vec&lt;4, T, Q&gt;&amp; x, <span class="keyword">const</span> vec&lt;4, T, Q&gt;&amp; y, <span class="keyword">const</span> vec&lt;4, T, Q&gt;&amp; a){<span class="keywordflow">return</span> <a class="code" href="a00241.html#ga8e93f374aae27d1a88b921860351f8d4">mix</a>(x, y, a);}       </div>
-<div class="line"><a name="l00049"></a><span class="lineno">   49</span>&#160;</div>
-<div class="line"><a name="l00050"></a><span class="lineno"><a class="line" href="a00315.html#ga0fd09e616d122bc2ed9726682ffd44b7">   50</a></span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T, qualifier Q&gt; GLM_FUNC_QUALIFIER T <a class="code" href="a00315.html#ga356f8c3a7e7d6376d3d4b0a026407183">saturate</a>(T x){<span class="keywordflow">return</span> <a class="code" href="a00241.html#ga7cd77683da6361e297c56443fc70806d">clamp</a>(x, T(0), T(1));}                                                                                                              </div>
-<div class="line"><a name="l00051"></a><span class="lineno"><a class="line" href="a00315.html#gaee97b8001c794a78a44f5d59f62a8aba">   51</a></span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T, qualifier Q&gt; GLM_FUNC_QUALIFIER vec&lt;2, T, Q&gt; <a class="code" href="a00315.html#ga356f8c3a7e7d6376d3d4b0a026407183">saturate</a>(<span class="keyword">const</span> vec&lt;2, T, Q&gt;&amp; x){<span class="keywordflow">return</span> <a class="code" href="a00241.html#ga7cd77683da6361e297c56443fc70806d">clamp</a>(x, T(0), T(1));}                                 </div>
-<div class="line"><a name="l00052"></a><span class="lineno"><a class="line" href="a00315.html#ga39bfe3a421286ee31680d45c31ccc161">   52</a></span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T, qualifier Q&gt; GLM_FUNC_QUALIFIER vec&lt;3, T, Q&gt; <a class="code" href="a00315.html#ga356f8c3a7e7d6376d3d4b0a026407183">saturate</a>(<span class="keyword">const</span> vec&lt;3, T, Q&gt;&amp; x){<span class="keywordflow">return</span> <a class="code" href="a00241.html#ga7cd77683da6361e297c56443fc70806d">clamp</a>(x, T(0), T(1));}                                 </div>
-<div class="line"><a name="l00053"></a><span class="lineno"><a class="line" href="a00315.html#ga356f8c3a7e7d6376d3d4b0a026407183">   53</a></span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T, qualifier Q&gt; GLM_FUNC_QUALIFIER vec&lt;4, T, Q&gt; <a class="code" href="a00315.html#ga356f8c3a7e7d6376d3d4b0a026407183">saturate</a>(<span class="keyword">const</span> vec&lt;4, T, Q&gt;&amp; x){<span class="keywordflow">return</span> <a class="code" href="a00241.html#ga7cd77683da6361e297c56443fc70806d">clamp</a>(x, T(0), T(1));}                                 </div>
-<div class="line"><a name="l00054"></a><span class="lineno">   54</span>&#160;</div>
-<div class="line"><a name="l00055"></a><span class="lineno"><a class="line" href="a00315.html#gac63011205bf6d0be82589dc56dd26708">   55</a></span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T, qualifier Q&gt; GLM_FUNC_QUALIFIER T <a class="code" href="a00315.html#gaba86c28da7bf5bdac64fecf7d56e8ff3">atan2</a>(T y, T x){<span class="keywordflow">return</span> <a class="code" href="a00373.html#gac61629f3a4aa14057e7a8cae002291db">atan</a>(y, x);}                                                                                                                              </div>
-<div class="line"><a name="l00056"></a><span class="lineno"><a class="line" href="a00315.html#ga83bc41bd6f89113ee8006576b12bfc50">   56</a></span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T, qualifier Q&gt; GLM_FUNC_QUALIFIER vec&lt;2, T, Q&gt; <a class="code" href="a00315.html#gaba86c28da7bf5bdac64fecf7d56e8ff3">atan2</a>(<span class="keyword">const</span> vec&lt;2, T, Q&gt;&amp; y, <span class="keyword">const</span> vec&lt;2, T, Q&gt;&amp; x){<span class="keywordflow">return</span> <a class="code" href="a00373.html#gac61629f3a4aa14057e7a8cae002291db">atan</a>(y, x);}       </div>
-<div class="line"><a name="l00057"></a><span class="lineno"><a class="line" href="a00315.html#gac39314f5087e7e51e592897cabbc1927">   57</a></span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T, qualifier Q&gt; GLM_FUNC_QUALIFIER vec&lt;3, T, Q&gt; <a class="code" href="a00315.html#gaba86c28da7bf5bdac64fecf7d56e8ff3">atan2</a>(<span class="keyword">const</span> vec&lt;3, T, Q&gt;&amp; y, <span class="keyword">const</span> vec&lt;3, T, Q&gt;&amp; x){<span class="keywordflow">return</span> <a class="code" href="a00373.html#gac61629f3a4aa14057e7a8cae002291db">atan</a>(y, x);}       </div>
-<div class="line"><a name="l00058"></a><span class="lineno"><a class="line" href="a00315.html#gaba86c28da7bf5bdac64fecf7d56e8ff3">   58</a></span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T, qualifier Q&gt; GLM_FUNC_QUALIFIER vec&lt;4, T, Q&gt; <a class="code" href="a00315.html#gaba86c28da7bf5bdac64fecf7d56e8ff3">atan2</a>(<span class="keyword">const</span> vec&lt;4, T, Q&gt;&amp; y, <span class="keyword">const</span> vec&lt;4, T, Q&gt;&amp; x){<span class="keywordflow">return</span> <a class="code" href="a00373.html#gac61629f3a4aa14057e7a8cae002291db">atan</a>(y, x);}       </div>
-<div class="line"><a name="l00059"></a><span class="lineno">   59</span>&#160;</div>
-<div class="line"><a name="l00060"></a><span class="lineno">   60</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> genType&gt; GLM_FUNC_DECL <span class="keywordtype">bool</span> <a class="code" href="a00315.html#ga19925badbe10ce61df1d0de00be0b5ad">isfinite</a>(genType <span class="keyword">const</span>&amp; x);                                                                                       </div>
-<div class="line"><a name="l00061"></a><span class="lineno">   61</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T, qualifier Q&gt; GLM_FUNC_DECL vec&lt;1, bool, Q&gt; <a class="code" href="a00315.html#ga19925badbe10ce61df1d0de00be0b5ad">isfinite</a>(<span class="keyword">const</span> vec&lt;1, T, Q&gt;&amp; x);                                </div>
-<div class="line"><a name="l00062"></a><span class="lineno">   62</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T, qualifier Q&gt; GLM_FUNC_DECL vec&lt;2, bool, Q&gt; <a class="code" href="a00315.html#ga19925badbe10ce61df1d0de00be0b5ad">isfinite</a>(<span class="keyword">const</span> vec&lt;2, T, Q&gt;&amp; x);                                </div>
-<div class="line"><a name="l00063"></a><span class="lineno">   63</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T, qualifier Q&gt; GLM_FUNC_DECL vec&lt;3, bool, Q&gt; <a class="code" href="a00315.html#ga19925badbe10ce61df1d0de00be0b5ad">isfinite</a>(<span class="keyword">const</span> vec&lt;3, T, Q&gt;&amp; x);                                </div>
-<div class="line"><a name="l00064"></a><span class="lineno">   64</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T, qualifier Q&gt; GLM_FUNC_DECL vec&lt;4, bool, Q&gt; <a class="code" href="a00315.html#ga19925badbe10ce61df1d0de00be0b5ad">isfinite</a>(<span class="keyword">const</span> vec&lt;4, T, Q&gt;&amp; x);                                </div>
-<div class="line"><a name="l00065"></a><span class="lineno">   65</span>&#160;</div>
-<div class="line"><a name="l00066"></a><span class="lineno"><a class="line" href="a00315.html#gaddcd7aa2e30e61af5b38660613d3979e">   66</a></span>&#160;        <span class="keyword">typedef</span> <span class="keywordtype">bool</span>                                            <a class="code" href="a00315.html#gaddcd7aa2e30e61af5b38660613d3979e">bool1</a>;                  </div>
-<div class="line"><a name="l00067"></a><span class="lineno"><a class="line" href="a00315.html#gaa09ab65ec9c3c54305ff502e2b1fe6d9">   67</a></span>&#160;        <span class="keyword">typedef</span> vec&lt;2, bool, highp&gt;                     <a class="code" href="a00315.html#gaa09ab65ec9c3c54305ff502e2b1fe6d9">bool2</a>;                  </div>
-<div class="line"><a name="l00068"></a><span class="lineno"><a class="line" href="a00315.html#ga99629f818737f342204071ef8296b2ed">   68</a></span>&#160;        <span class="keyword">typedef</span> vec&lt;3, bool, highp&gt;                     <a class="code" href="a00315.html#ga99629f818737f342204071ef8296b2ed">bool3</a>;                  </div>
-<div class="line"><a name="l00069"></a><span class="lineno"><a class="line" href="a00315.html#ga13c3200b82708f73faac6d7f09ec91a3">   69</a></span>&#160;        <span class="keyword">typedef</span> vec&lt;4, bool, highp&gt;                     <a class="code" href="a00315.html#ga13c3200b82708f73faac6d7f09ec91a3">bool4</a>;                  </div>
-<div class="line"><a name="l00070"></a><span class="lineno">   70</span>&#160;</div>
-<div class="line"><a name="l00071"></a><span class="lineno"><a class="line" href="a00315.html#ga7f895c936f0c29c8729afbbf22806090">   71</a></span>&#160;        <span class="keyword">typedef</span> <span class="keywordtype">bool</span>                                            <a class="code" href="a00315.html#ga7f895c936f0c29c8729afbbf22806090">bool1x1</a>;                </div>
-<div class="line"><a name="l00072"></a><span class="lineno"><a class="line" href="a00315.html#gadb3703955e513632f98ba12fe051ba3e">   72</a></span>&#160;        <span class="keyword">typedef</span> mat&lt;2, 2, bool, highp&gt;          <a class="code" href="a00315.html#gadb3703955e513632f98ba12fe051ba3e">bool2x2</a>;                </div>
-<div class="line"><a name="l00073"></a><span class="lineno"><a class="line" href="a00315.html#ga9ae6ee155d0f90cb1ae5b6c4546738a0">   73</a></span>&#160;        <span class="keyword">typedef</span> mat&lt;2, 3, bool, highp&gt;          <a class="code" href="a00315.html#ga9ae6ee155d0f90cb1ae5b6c4546738a0">bool2x3</a>;                </div>
-<div class="line"><a name="l00074"></a><span class="lineno"><a class="line" href="a00315.html#ga4d7fa65be8e8e4ad6d920b45c44e471f">   74</a></span>&#160;        <span class="keyword">typedef</span> mat&lt;2, 4, bool, highp&gt;          <a class="code" href="a00315.html#ga4d7fa65be8e8e4ad6d920b45c44e471f">bool2x4</a>;                </div>
-<div class="line"><a name="l00075"></a><span class="lineno"><a class="line" href="a00315.html#gac7d7311f7e0fa8b6163d96dab033a755">   75</a></span>&#160;        <span class="keyword">typedef</span> mat&lt;3, 2, bool, highp&gt;          <a class="code" href="a00315.html#gac7d7311f7e0fa8b6163d96dab033a755">bool3x2</a>;                </div>
-<div class="line"><a name="l00076"></a><span class="lineno"><a class="line" href="a00315.html#ga6c97b99aac3e302053ffb58aace9033c">   76</a></span>&#160;        <span class="keyword">typedef</span> mat&lt;3, 3, bool, highp&gt;          <a class="code" href="a00315.html#ga6c97b99aac3e302053ffb58aace9033c">bool3x3</a>;                </div>
-<div class="line"><a name="l00077"></a><span class="lineno"><a class="line" href="a00315.html#gae7d6b679463d37d6c527d478fb470fdf">   77</a></span>&#160;        <span class="keyword">typedef</span> mat&lt;3, 4, bool, highp&gt;          <a class="code" href="a00315.html#gae7d6b679463d37d6c527d478fb470fdf">bool3x4</a>;                </div>
-<div class="line"><a name="l00078"></a><span class="lineno"><a class="line" href="a00315.html#ga9ed830f52408b2f83c085063a3eaf1d0">   78</a></span>&#160;        <span class="keyword">typedef</span> mat&lt;4, 2, bool, highp&gt;          <a class="code" href="a00315.html#ga9ed830f52408b2f83c085063a3eaf1d0">bool4x2</a>;                </div>
-<div class="line"><a name="l00079"></a><span class="lineno"><a class="line" href="a00315.html#gad0f5dc7f22c2065b1b06d57f1c0658fe">   79</a></span>&#160;        <span class="keyword">typedef</span> mat&lt;4, 3, bool, highp&gt;          <a class="code" href="a00315.html#gad0f5dc7f22c2065b1b06d57f1c0658fe">bool4x3</a>;                </div>
-<div class="line"><a name="l00080"></a><span class="lineno"><a class="line" href="a00315.html#ga7d2a7d13986602ae2896bfaa394235d4">   80</a></span>&#160;        <span class="keyword">typedef</span> mat&lt;4, 4, bool, highp&gt;          <a class="code" href="a00315.html#ga7d2a7d13986602ae2896bfaa394235d4">bool4x4</a>;                </div>
-<div class="line"><a name="l00081"></a><span class="lineno">   81</span>&#160;</div>
-<div class="line"><a name="l00082"></a><span class="lineno"><a class="line" href="a00315.html#ga0670a2111b5e4a6410bd027fa0232fc3">   82</a></span>&#160;        <span class="keyword">typedef</span> <span class="keywordtype">int</span>                                                     <a class="code" href="a00315.html#ga0670a2111b5e4a6410bd027fa0232fc3">int1</a>;                   </div>
-<div class="line"><a name="l00083"></a><span class="lineno"><a class="line" href="a00315.html#gafe3a8fd56354caafe24bfe1b1e3ad22a">   83</a></span>&#160;        <span class="keyword">typedef</span> vec&lt;2, int, highp&gt;                      <a class="code" href="a00315.html#gafe3a8fd56354caafe24bfe1b1e3ad22a">int2</a>;                   </div>
-<div class="line"><a name="l00084"></a><span class="lineno"><a class="line" href="a00315.html#ga909c38a425f215a50c847145d7da09f0">   84</a></span>&#160;        <span class="keyword">typedef</span> vec&lt;3, int, highp&gt;                      <a class="code" href="a00315.html#ga909c38a425f215a50c847145d7da09f0">int3</a>;                   </div>
-<div class="line"><a name="l00085"></a><span class="lineno"><a class="line" href="a00315.html#gaecdef18c819c205aeee9f94dc93de56a">   85</a></span>&#160;        <span class="keyword">typedef</span> vec&lt;4, int, highp&gt;                      <a class="code" href="a00315.html#gaecdef18c819c205aeee9f94dc93de56a">int4</a>;                   </div>
-<div class="line"><a name="l00086"></a><span class="lineno">   86</span>&#160;</div>
-<div class="line"><a name="l00087"></a><span class="lineno"><a class="line" href="a00315.html#ga056ffe02d3a45af626f8e62221881c7a">   87</a></span>&#160;        <span class="keyword">typedef</span> <span class="keywordtype">int</span>                                                     <a class="code" href="a00315.html#ga056ffe02d3a45af626f8e62221881c7a">int1x1</a>;                 </div>
-<div class="line"><a name="l00088"></a><span class="lineno"><a class="line" href="a00315.html#ga4e5ce477c15836b21e3c42daac68554d">   88</a></span>&#160;        <span class="keyword">typedef</span> mat&lt;2, 2, int, highp&gt;           <a class="code" href="a00315.html#ga4e5ce477c15836b21e3c42daac68554d">int2x2</a>;                 </div>
-<div class="line"><a name="l00089"></a><span class="lineno"><a class="line" href="a00315.html#ga197ded5ad8354f6b6fb91189d7a269b3">   89</a></span>&#160;        <span class="keyword">typedef</span> mat&lt;2, 3, int, highp&gt;           <a class="code" href="a00315.html#ga197ded5ad8354f6b6fb91189d7a269b3">int2x3</a>;                 </div>
-<div class="line"><a name="l00090"></a><span class="lineno"><a class="line" href="a00315.html#ga2749d59a7fddbac44f34ba78e57ef807">   90</a></span>&#160;        <span class="keyword">typedef</span> mat&lt;2, 4, int, highp&gt;           <a class="code" href="a00315.html#ga2749d59a7fddbac44f34ba78e57ef807">int2x4</a>;                 </div>
-<div class="line"><a name="l00091"></a><span class="lineno"><a class="line" href="a00315.html#gaa4cbe16a92cf3664376c7a2fc5126aa8">   91</a></span>&#160;        <span class="keyword">typedef</span> mat&lt;3, 2, int, highp&gt;           <a class="code" href="a00315.html#gaa4cbe16a92cf3664376c7a2fc5126aa8">int3x2</a>;                 </div>
-<div class="line"><a name="l00092"></a><span class="lineno"><a class="line" href="a00315.html#ga15c9649286f0bf431bdf9b3509580048">   92</a></span>&#160;        <span class="keyword">typedef</span> mat&lt;3, 3, int, highp&gt;           <a class="code" href="a00315.html#ga15c9649286f0bf431bdf9b3509580048">int3x3</a>;                 </div>
-<div class="line"><a name="l00093"></a><span class="lineno"><a class="line" href="a00315.html#gaacac46ddc7d15d0f9529d05c92946a0f">   93</a></span>&#160;        <span class="keyword">typedef</span> mat&lt;3, 4, int, highp&gt;           <a class="code" href="a00315.html#gaacac46ddc7d15d0f9529d05c92946a0f">int3x4</a>;                 </div>
-<div class="line"><a name="l00094"></a><span class="lineno"><a class="line" href="a00315.html#ga97a39dd9bc7d572810d80b8467cbffa1">   94</a></span>&#160;        <span class="keyword">typedef</span> mat&lt;4, 2, int, highp&gt;           <a class="code" href="a00315.html#ga97a39dd9bc7d572810d80b8467cbffa1">int4x2</a>;                 </div>
-<div class="line"><a name="l00095"></a><span class="lineno"><a class="line" href="a00315.html#gae4a2c53f14aeec9a17c2b81142b7e82d">   95</a></span>&#160;        <span class="keyword">typedef</span> mat&lt;4, 3, int, highp&gt;           <a class="code" href="a00315.html#gae4a2c53f14aeec9a17c2b81142b7e82d">int4x3</a>;                 </div>
-<div class="line"><a name="l00096"></a><span class="lineno"><a class="line" href="a00315.html#ga04dee1552424198b8f58b377c2ee00d8">   96</a></span>&#160;        <span class="keyword">typedef</span> mat&lt;4, 4, int, highp&gt;           <a class="code" href="a00315.html#ga04dee1552424198b8f58b377c2ee00d8">int4x4</a>;                 </div>
-<div class="line"><a name="l00097"></a><span class="lineno">   97</span>&#160;</div>
-<div class="line"><a name="l00098"></a><span class="lineno"><a class="line" href="a00315.html#gaf5208d01f6c6fbcb7bb55d610b9c0ead">   98</a></span>&#160;        <span class="keyword">typedef</span> <span class="keywordtype">float</span>                                           <a class="code" href="a00315.html#gaf5208d01f6c6fbcb7bb55d610b9c0ead">float1</a>;                 </div>
-<div class="line"><a name="l00099"></a><span class="lineno"><a class="line" href="a00315.html#ga02d3c013982c183906c61d74aa3166ce">   99</a></span>&#160;        <span class="keyword">typedef</span> vec&lt;2, float, highp&gt;            <a class="code" href="a00315.html#ga02d3c013982c183906c61d74aa3166ce">float2</a>;                 </div>
-<div class="line"><a name="l00100"></a><span class="lineno"><a class="line" href="a00315.html#ga821ff110fc8533a053cbfcc93e078cc0">  100</a></span>&#160;        <span class="keyword">typedef</span> vec&lt;3, float, highp&gt;            <a class="code" href="a00315.html#ga821ff110fc8533a053cbfcc93e078cc0">float3</a>;                 </div>
-<div class="line"><a name="l00101"></a><span class="lineno"><a class="line" href="a00315.html#gae2da7345087db3815a25d8837a727ef1">  101</a></span>&#160;        <span class="keyword">typedef</span> vec&lt;4, float, highp&gt;            <a class="code" href="a00315.html#gae2da7345087db3815a25d8837a727ef1">float4</a>;                 </div>
-<div class="line"><a name="l00102"></a><span class="lineno">  102</span>&#160;</div>
-<div class="line"><a name="l00103"></a><span class="lineno"><a class="line" href="a00315.html#ga73720b8dc4620835b17f74d428f98c0c">  103</a></span>&#160;        <span class="keyword">typedef</span> <span class="keywordtype">float</span>                                           <a class="code" href="a00315.html#ga73720b8dc4620835b17f74d428f98c0c">float1x1</a>;               </div>
-<div class="line"><a name="l00104"></a><span class="lineno"><a class="line" href="a00315.html#ga33d43ecbb60a85a1366ff83f8a0ec85f">  104</a></span>&#160;        <span class="keyword">typedef</span> mat&lt;2, 2, float, highp&gt;         <a class="code" href="a00315.html#ga33d43ecbb60a85a1366ff83f8a0ec85f">float2x2</a>;               </div>
-<div class="line"><a name="l00105"></a><span class="lineno"><a class="line" href="a00315.html#ga939b0cff15cee3030f75c1b2e36f89fe">  105</a></span>&#160;        <span class="keyword">typedef</span> mat&lt;2, 3, float, highp&gt;         <a class="code" href="a00315.html#ga939b0cff15cee3030f75c1b2e36f89fe">float2x3</a>;               </div>
-<div class="line"><a name="l00106"></a><span class="lineno"><a class="line" href="a00315.html#gafec3cfd901ab334a92e0242b8f2269b4">  106</a></span>&#160;        <span class="keyword">typedef</span> mat&lt;2, 4, float, highp&gt;         <a class="code" href="a00315.html#gafec3cfd901ab334a92e0242b8f2269b4">float2x4</a>;               </div>
-<div class="line"><a name="l00107"></a><span class="lineno"><a class="line" href="a00315.html#gaa6c69f04ba95f3faedf95dae874de576">  107</a></span>&#160;        <span class="keyword">typedef</span> mat&lt;3, 2, float, highp&gt;         <a class="code" href="a00315.html#gaa6c69f04ba95f3faedf95dae874de576">float3x2</a>;               </div>
-<div class="line"><a name="l00108"></a><span class="lineno"><a class="line" href="a00315.html#ga6ceb5d38a58becdf420026e12a6562f3">  108</a></span>&#160;        <span class="keyword">typedef</span> mat&lt;3, 3, float, highp&gt;         <a class="code" href="a00315.html#ga6ceb5d38a58becdf420026e12a6562f3">float3x3</a>;               </div>
-<div class="line"><a name="l00109"></a><span class="lineno"><a class="line" href="a00315.html#ga4d2679c321b793ca3784fe0315bb5332">  109</a></span>&#160;        <span class="keyword">typedef</span> mat&lt;3, 4, float, highp&gt;         <a class="code" href="a00315.html#ga4d2679c321b793ca3784fe0315bb5332">float3x4</a>;               </div>
-<div class="line"><a name="l00110"></a><span class="lineno"><a class="line" href="a00315.html#ga308b9af0c221145bcfe9bfc129d9098e">  110</a></span>&#160;        <span class="keyword">typedef</span> mat&lt;4, 2, float, highp&gt;         <a class="code" href="a00315.html#ga308b9af0c221145bcfe9bfc129d9098e">float4x2</a>;               </div>
-<div class="line"><a name="l00111"></a><span class="lineno"><a class="line" href="a00315.html#gac0a51b4812038aa81d73ffcc37f741ac">  111</a></span>&#160;        <span class="keyword">typedef</span> mat&lt;4, 3, float, highp&gt;         <a class="code" href="a00315.html#gac0a51b4812038aa81d73ffcc37f741ac">float4x3</a>;               </div>
-<div class="line"><a name="l00112"></a><span class="lineno"><a class="line" href="a00315.html#gad3051649b3715d828a4ab92cdae7c3bf">  112</a></span>&#160;        <span class="keyword">typedef</span> mat&lt;4, 4, float, highp&gt;         <a class="code" href="a00315.html#gad3051649b3715d828a4ab92cdae7c3bf">float4x4</a>;               </div>
-<div class="line"><a name="l00113"></a><span class="lineno">  113</span>&#160;</div>
-<div class="line"><a name="l00114"></a><span class="lineno"><a class="line" href="a00315.html#ga20b861a9b6e2a300323671c57a02525b">  114</a></span>&#160;        <span class="keyword">typedef</span> <span class="keywordtype">double</span>                                          <a class="code" href="a00315.html#ga20b861a9b6e2a300323671c57a02525b">double1</a>;                </div>
-<div class="line"><a name="l00115"></a><span class="lineno"><a class="line" href="a00315.html#ga31b729b04facccda73f07ed26958b3c2">  115</a></span>&#160;        <span class="keyword">typedef</span> vec&lt;2, double, highp&gt;           <a class="code" href="a00315.html#ga31b729b04facccda73f07ed26958b3c2">double2</a>;                </div>
-<div class="line"><a name="l00116"></a><span class="lineno"><a class="line" href="a00315.html#ga3d8b9028a1053a44a98902cd1c389472">  116</a></span>&#160;        <span class="keyword">typedef</span> vec&lt;3, double, highp&gt;           <a class="code" href="a00315.html#ga3d8b9028a1053a44a98902cd1c389472">double3</a>;                </div>
-<div class="line"><a name="l00117"></a><span class="lineno"><a class="line" href="a00315.html#gaf92f58af24f35617518aeb3d4f63fda6">  117</a></span>&#160;        <span class="keyword">typedef</span> vec&lt;4, double, highp&gt;           <a class="code" href="a00315.html#gaf92f58af24f35617518aeb3d4f63fda6">double4</a>;                </div>
-<div class="line"><a name="l00118"></a><span class="lineno">  118</span>&#160;</div>
-<div class="line"><a name="l00119"></a><span class="lineno"><a class="line" href="a00315.html#ga45f16a4dd0db1f199afaed9fd12fe9a8">  119</a></span>&#160;        <span class="keyword">typedef</span> <span class="keywordtype">double</span>                                          <a class="code" href="a00315.html#ga45f16a4dd0db1f199afaed9fd12fe9a8">double1x1</a>;              </div>
-<div class="line"><a name="l00120"></a><span class="lineno"><a class="line" href="a00315.html#gae57d0201096834d25f2b91b319e7cdbd">  120</a></span>&#160;        <span class="keyword">typedef</span> mat&lt;2, 2, double, highp&gt;                <a class="code" href="a00315.html#gae57d0201096834d25f2b91b319e7cdbd">double2x2</a>;              </div>
-<div class="line"><a name="l00121"></a><span class="lineno"><a class="line" href="a00315.html#ga3655bc324008553ca61f39952d0b2d08">  121</a></span>&#160;        <span class="keyword">typedef</span> mat&lt;2, 3, double, highp&gt;                <a class="code" href="a00315.html#ga3655bc324008553ca61f39952d0b2d08">double2x3</a>;              </div>
-<div class="line"><a name="l00122"></a><span class="lineno"><a class="line" href="a00315.html#gacd33061fc64a7b2dcfd7322c49d9557a">  122</a></span>&#160;        <span class="keyword">typedef</span> mat&lt;2, 4, double, highp&gt;                <a class="code" href="a00315.html#gacd33061fc64a7b2dcfd7322c49d9557a">double2x4</a>;              </div>
-<div class="line"><a name="l00123"></a><span class="lineno"><a class="line" href="a00315.html#ga5ec08fc39c9d783dfcc488be240fe975">  123</a></span>&#160;        <span class="keyword">typedef</span> mat&lt;3, 2, double, highp&gt;                <a class="code" href="a00315.html#ga5ec08fc39c9d783dfcc488be240fe975">double3x2</a>;              </div>
-<div class="line"><a name="l00124"></a><span class="lineno"><a class="line" href="a00315.html#ga4bad5bb20c6ddaecfe4006c93841d180">  124</a></span>&#160;        <span class="keyword">typedef</span> mat&lt;3, 3, double, highp&gt;                <a class="code" href="a00315.html#ga4bad5bb20c6ddaecfe4006c93841d180">double3x3</a>;              </div>
-<div class="line"><a name="l00125"></a><span class="lineno"><a class="line" href="a00315.html#ga2ef022e453d663d70aec414b2a80f756">  125</a></span>&#160;        <span class="keyword">typedef</span> mat&lt;3, 4, double, highp&gt;                <a class="code" href="a00315.html#ga2ef022e453d663d70aec414b2a80f756">double3x4</a>;              </div>
-<div class="line"><a name="l00126"></a><span class="lineno"><a class="line" href="a00315.html#gabca29ccceea53669618b751aae0ba83d">  126</a></span>&#160;        <span class="keyword">typedef</span> mat&lt;4, 2, double, highp&gt;                <a class="code" href="a00315.html#gabca29ccceea53669618b751aae0ba83d">double4x2</a>;              </div>
-<div class="line"><a name="l00127"></a><span class="lineno"><a class="line" href="a00315.html#gafad66a02ccd360c86d6ab9ff9cfbc19c">  127</a></span>&#160;        <span class="keyword">typedef</span> mat&lt;4, 3, double, highp&gt;                <a class="code" href="a00315.html#gafad66a02ccd360c86d6ab9ff9cfbc19c">double4x3</a>;              </div>
-<div class="line"><a name="l00128"></a><span class="lineno"><a class="line" href="a00315.html#gaab541bed2e788e4537852a2492860806">  128</a></span>&#160;        <span class="keyword">typedef</span> mat&lt;4, 4, double, highp&gt;                <a class="code" href="a00315.html#gaab541bed2e788e4537852a2492860806">double4x4</a>;              </div>
-<div class="line"><a name="l00129"></a><span class="lineno">  129</span>&#160;</div>
-<div class="line"><a name="l00131"></a><span class="lineno">  131</span>&#160;}<span class="comment">//namespace glm</span></div>
-<div class="line"><a name="l00132"></a><span class="lineno">  132</span>&#160;</div>
-<div class="line"><a name="l00133"></a><span class="lineno">  133</span>&#160;<span class="preprocessor">#include &quot;compatibility.inl&quot;</span></div>
-<div class="ttc" id="a00315_html_gaab541bed2e788e4537852a2492860806"><div class="ttname"><a href="a00315.html#gaab541bed2e788e4537852a2492860806">glm::double4x4</a></div><div class="ttdeci">mat&lt; 4, 4, double, highp &gt; double4x4</div><div class="ttdoc">double-qualifier floating-point matrix with 4 x 4 components. (From GLM_GTX_compatibility extension) ...</div><div class="ttdef"><b>Definition:</b> <a href="a00017_source.html#l00128">compatibility.hpp:128</a></div></div>
-<div class="ttc" id="a00315_html_gaacac46ddc7d15d0f9529d05c92946a0f"><div class="ttname"><a href="a00315.html#gaacac46ddc7d15d0f9529d05c92946a0f">glm::int3x4</a></div><div class="ttdeci">mat&lt; 3, 4, int, highp &gt; int3x4</div><div class="ttdoc">integer matrix with 3 x 4 components. (From GLM_GTX_compatibility extension) </div><div class="ttdef"><b>Definition:</b> <a href="a00017_source.html#l00093">compatibility.hpp:93</a></div></div>
-<div class="ttc" id="a00373_html_gac61629f3a4aa14057e7a8cae002291db"><div class="ttname"><a href="a00373.html#gac61629f3a4aa14057e7a8cae002291db">glm::atan</a></div><div class="ttdeci">GLM_FUNC_DECL vec&lt; L, T, Q &gt; atan(vec&lt; L, T, Q &gt; const &amp;y, vec&lt; L, T, Q &gt; const &amp;x)</div><div class="ttdoc">Arc tangent. </div></div>
-<div class="ttc" id="a00315_html_gaddcd7aa2e30e61af5b38660613d3979e"><div class="ttname"><a href="a00315.html#gaddcd7aa2e30e61af5b38660613d3979e">glm::bool1</a></div><div class="ttdeci">bool bool1</div><div class="ttdoc">boolean type with 1 component. (From GLM_GTX_compatibility extension) </div><div class="ttdef"><b>Definition:</b> <a href="a00017_source.html#l00066">compatibility.hpp:66</a></div></div>
-<div class="ttc" id="a00315_html_gac0a51b4812038aa81d73ffcc37f741ac"><div class="ttname"><a href="a00315.html#gac0a51b4812038aa81d73ffcc37f741ac">glm::float4x3</a></div><div class="ttdeci">mat&lt; 4, 3, float, highp &gt; float4x3</div><div class="ttdoc">single-qualifier floating-point matrix with 4 x 3 components. (From GLM_GTX_compatibility extension) ...</div><div class="ttdef"><b>Definition:</b> <a href="a00017_source.html#l00111">compatibility.hpp:111</a></div></div>
-<div class="ttc" id="a00315_html_gad3051649b3715d828a4ab92cdae7c3bf"><div class="ttname"><a href="a00315.html#gad3051649b3715d828a4ab92cdae7c3bf">glm::float4x4</a></div><div class="ttdeci">mat&lt; 4, 4, float, highp &gt; float4x4</div><div class="ttdoc">single-qualifier floating-point matrix with 4 x 4 components. (From GLM_GTX_compatibility extension) ...</div><div class="ttdef"><b>Definition:</b> <a href="a00017_source.html#l00112">compatibility.hpp:112</a></div></div>
-<div class="ttc" id="a00315_html_gacd33061fc64a7b2dcfd7322c49d9557a"><div class="ttname"><a href="a00315.html#gacd33061fc64a7b2dcfd7322c49d9557a">glm::double2x4</a></div><div class="ttdeci">mat&lt; 2, 4, double, highp &gt; double2x4</div><div class="ttdoc">double-qualifier floating-point matrix with 2 x 4 components. (From GLM_GTX_compatibility extension) ...</div><div class="ttdef"><b>Definition:</b> <a href="a00017_source.html#l00122">compatibility.hpp:122</a></div></div>
-<div class="ttc" id="a00315_html_gae57d0201096834d25f2b91b319e7cdbd"><div class="ttname"><a href="a00315.html#gae57d0201096834d25f2b91b319e7cdbd">glm::double2x2</a></div><div class="ttdeci">mat&lt; 2, 2, double, highp &gt; double2x2</div><div class="ttdoc">double-qualifier floating-point matrix with 2 x 2 components. (From GLM_GTX_compatibility extension) ...</div><div class="ttdef"><b>Definition:</b> <a href="a00017_source.html#l00120">compatibility.hpp:120</a></div></div>
-<div class="ttc" id="a00315_html_ga5ec08fc39c9d783dfcc488be240fe975"><div class="ttname"><a href="a00315.html#ga5ec08fc39c9d783dfcc488be240fe975">glm::double3x2</a></div><div class="ttdeci">mat&lt; 3, 2, double, highp &gt; double3x2</div><div class="ttdoc">double-qualifier floating-point matrix with 3 x 2 components. (From GLM_GTX_compatibility extension) ...</div><div class="ttdef"><b>Definition:</b> <a href="a00017_source.html#l00123">compatibility.hpp:123</a></div></div>
-<div class="ttc" id="a00315_html_gaba86c28da7bf5bdac64fecf7d56e8ff3"><div class="ttname"><a href="a00315.html#gaba86c28da7bf5bdac64fecf7d56e8ff3">glm::atan2</a></div><div class="ttdeci">GLM_FUNC_QUALIFIER vec&lt; 4, T, Q &gt; atan2(const vec&lt; 4, T, Q &gt; &amp;y, const vec&lt; 4, T, Q &gt; &amp;x)</div><div class="ttdoc">Arc tangent. Returns an angle whose tangent is y/x. The signs of x and y are used to determine what q...</div><div class="ttdef"><b>Definition:</b> <a href="a00017_source.html#l00058">compatibility.hpp:58</a></div></div>
-<div class="ttc" id="a00315_html_ga45f16a4dd0db1f199afaed9fd12fe9a8"><div class="ttname"><a href="a00315.html#ga45f16a4dd0db1f199afaed9fd12fe9a8">glm::double1x1</a></div><div class="ttdeci">double double1x1</div><div class="ttdoc">double-qualifier floating-point matrix with 1 component. (From GLM_GTX_compatibility extension) ...</div><div class="ttdef"><b>Definition:</b> <a href="a00017_source.html#l00119">compatibility.hpp:119</a></div></div>
-<div class="ttc" id="a00315_html_gab5477ab69c40de4db5d58d3359529724"><div class="ttname"><a href="a00315.html#gab5477ab69c40de4db5d58d3359529724">glm::lerp</a></div><div class="ttdeci">GLM_FUNC_QUALIFIER vec&lt; 4, T, Q &gt; lerp(const vec&lt; 4, T, Q &gt; &amp;x, const vec&lt; 4, T, Q &gt; &amp;y, const vec&lt; 4, T, Q &gt; &amp;a)</div><div class="ttdoc">Returns the component-wise result of x * (1.0 - a) + y * a, i.e., the linear blend of x and y using v...</div><div class="ttdef"><b>Definition:</b> <a href="a00017_source.html#l00048">compatibility.hpp:48</a></div></div>
-<div class="ttc" id="a00315_html_ga4bad5bb20c6ddaecfe4006c93841d180"><div class="ttname"><a href="a00315.html#ga4bad5bb20c6ddaecfe4006c93841d180">glm::double3x3</a></div><div class="ttdeci">mat&lt; 3, 3, double, highp &gt; double3x3</div><div class="ttdoc">double-qualifier floating-point matrix with 3 x 3 components. (From GLM_GTX_compatibility extension) ...</div><div class="ttdef"><b>Definition:</b> <a href="a00017_source.html#l00124">compatibility.hpp:124</a></div></div>
-<div class="ttc" id="a00315_html_gae2da7345087db3815a25d8837a727ef1"><div class="ttname"><a href="a00315.html#gae2da7345087db3815a25d8837a727ef1">glm::float4</a></div><div class="ttdeci">vec&lt; 4, float, highp &gt; float4</div><div class="ttdoc">single-qualifier floating-point vector with 4 components. (From GLM_GTX_compatibility extension) ...</div><div class="ttdef"><b>Definition:</b> <a href="a00017_source.html#l00101">compatibility.hpp:101</a></div></div>
-<div class="ttc" id="a00315_html_ga056ffe02d3a45af626f8e62221881c7a"><div class="ttname"><a href="a00315.html#ga056ffe02d3a45af626f8e62221881c7a">glm::int1x1</a></div><div class="ttdeci">int int1x1</div><div class="ttdoc">integer matrix with 1 component. (From GLM_GTX_compatibility extension) </div><div class="ttdef"><b>Definition:</b> <a href="a00017_source.html#l00087">compatibility.hpp:87</a></div></div>
-<div class="ttc" id="a00315_html_ga02d3c013982c183906c61d74aa3166ce"><div class="ttname"><a href="a00315.html#ga02d3c013982c183906c61d74aa3166ce">glm::float2</a></div><div class="ttdeci">vec&lt; 2, float, highp &gt; float2</div><div class="ttdoc">single-qualifier floating-point vector with 2 components. (From GLM_GTX_compatibility extension) ...</div><div class="ttdef"><b>Definition:</b> <a href="a00017_source.html#l00099">compatibility.hpp:99</a></div></div>
-<div class="ttc" id="a00315_html_ga19925badbe10ce61df1d0de00be0b5ad"><div class="ttname"><a href="a00315.html#ga19925badbe10ce61df1d0de00be0b5ad">glm::isfinite</a></div><div class="ttdeci">GLM_FUNC_DECL vec&lt; 4, bool, Q &gt; isfinite(const vec&lt; 4, T, Q &gt; &amp;x)</div><div class="ttdoc">Test whether or not a scalar or each vector component is a finite value. (From GLM_GTX_compatibility)...</div></div>
-<div class="ttc" id="a00315_html_ga9ae6ee155d0f90cb1ae5b6c4546738a0"><div class="ttname"><a href="a00315.html#ga9ae6ee155d0f90cb1ae5b6c4546738a0">glm::bool2x3</a></div><div class="ttdeci">mat&lt; 2, 3, bool, highp &gt; bool2x3</div><div class="ttdoc">boolean matrix with 2 x 3 components. (From GLM_GTX_compatibility extension) </div><div class="ttdef"><b>Definition:</b> <a href="a00017_source.html#l00073">compatibility.hpp:73</a></div></div>
-<div class="ttc" id="a00315_html_ga197ded5ad8354f6b6fb91189d7a269b3"><div class="ttname"><a href="a00315.html#ga197ded5ad8354f6b6fb91189d7a269b3">glm::int2x3</a></div><div class="ttdeci">mat&lt; 2, 3, int, highp &gt; int2x3</div><div class="ttdoc">integer matrix with 2 x 3 components. (From GLM_GTX_compatibility extension) </div><div class="ttdef"><b>Definition:</b> <a href="a00017_source.html#l00089">compatibility.hpp:89</a></div></div>
-<div class="ttc" id="a00315_html_ga0670a2111b5e4a6410bd027fa0232fc3"><div class="ttname"><a href="a00315.html#ga0670a2111b5e4a6410bd027fa0232fc3">glm::int1</a></div><div class="ttdeci">int int1</div><div class="ttdoc">integer vector with 1 component. (From GLM_GTX_compatibility extension) </div><div class="ttdef"><b>Definition:</b> <a href="a00017_source.html#l00082">compatibility.hpp:82</a></div></div>
-<div class="ttc" id="a00315_html_ga821ff110fc8533a053cbfcc93e078cc0"><div class="ttname"><a href="a00315.html#ga821ff110fc8533a053cbfcc93e078cc0">glm::float3</a></div><div class="ttdeci">vec&lt; 3, float, highp &gt; float3</div><div class="ttdoc">single-qualifier floating-point vector with 3 components. (From GLM_GTX_compatibility extension) ...</div><div class="ttdef"><b>Definition:</b> <a href="a00017_source.html#l00100">compatibility.hpp:100</a></div></div>
-<div class="ttc" id="a00315_html_gafec3cfd901ab334a92e0242b8f2269b4"><div class="ttname"><a href="a00315.html#gafec3cfd901ab334a92e0242b8f2269b4">glm::float2x4</a></div><div class="ttdeci">mat&lt; 2, 4, float, highp &gt; float2x4</div><div class="ttdoc">single-qualifier floating-point matrix with 2 x 4 components. (From GLM_GTX_compatibility extension) ...</div><div class="ttdef"><b>Definition:</b> <a href="a00017_source.html#l00106">compatibility.hpp:106</a></div></div>
-<div class="ttc" id="a00315_html_gadb3703955e513632f98ba12fe051ba3e"><div class="ttname"><a href="a00315.html#gadb3703955e513632f98ba12fe051ba3e">glm::bool2x2</a></div><div class="ttdeci">mat&lt; 2, 2, bool, highp &gt; bool2x2</div><div class="ttdoc">boolean matrix with 2 x 2 components. (From GLM_GTX_compatibility extension) </div><div class="ttdef"><b>Definition:</b> <a href="a00017_source.html#l00072">compatibility.hpp:72</a></div></div>
-<div class="ttc" id="a00315_html_ga7d2a7d13986602ae2896bfaa394235d4"><div class="ttname"><a href="a00315.html#ga7d2a7d13986602ae2896bfaa394235d4">glm::bool4x4</a></div><div class="ttdeci">mat&lt; 4, 4, bool, highp &gt; bool4x4</div><div class="ttdoc">boolean matrix with 4 x 4 components. (From GLM_GTX_compatibility extension) </div><div class="ttdef"><b>Definition:</b> <a href="a00017_source.html#l00080">compatibility.hpp:80</a></div></div>
-<div class="ttc" id="a00315_html_gaf5208d01f6c6fbcb7bb55d610b9c0ead"><div class="ttname"><a href="a00315.html#gaf5208d01f6c6fbcb7bb55d610b9c0ead">glm::float1</a></div><div class="ttdeci">float float1</div><div class="ttdoc">single-qualifier floating-point vector with 1 component. (From GLM_GTX_compatibility extension) ...</div><div class="ttdef"><b>Definition:</b> <a href="a00017_source.html#l00098">compatibility.hpp:98</a></div></div>
-<div class="ttc" id="a00315_html_ga73720b8dc4620835b17f74d428f98c0c"><div class="ttname"><a href="a00315.html#ga73720b8dc4620835b17f74d428f98c0c">glm::float1x1</a></div><div class="ttdeci">float float1x1</div><div class="ttdoc">single-qualifier floating-point matrix with 1 component. (From GLM_GTX_compatibility extension) ...</div><div class="ttdef"><b>Definition:</b> <a href="a00017_source.html#l00103">compatibility.hpp:103</a></div></div>
-<div class="ttc" id="a00315_html_gabca29ccceea53669618b751aae0ba83d"><div class="ttname"><a href="a00315.html#gabca29ccceea53669618b751aae0ba83d">glm::double4x2</a></div><div class="ttdeci">mat&lt; 4, 2, double, highp &gt; double4x2</div><div class="ttdoc">double-qualifier floating-point matrix with 4 x 2 components. (From GLM_GTX_compatibility extension) ...</div><div class="ttdef"><b>Definition:</b> <a href="a00017_source.html#l00126">compatibility.hpp:126</a></div></div>
-<div class="ttc" id="a00315_html_gae4a2c53f14aeec9a17c2b81142b7e82d"><div class="ttname"><a href="a00315.html#gae4a2c53f14aeec9a17c2b81142b7e82d">glm::int4x3</a></div><div class="ttdeci">mat&lt; 4, 3, int, highp &gt; int4x3</div><div class="ttdoc">integer matrix with 4 x 3 components. (From GLM_GTX_compatibility extension) </div><div class="ttdef"><b>Definition:</b> <a href="a00017_source.html#l00095">compatibility.hpp:95</a></div></div>
-<div class="ttc" id="a00315_html_ga9ed830f52408b2f83c085063a3eaf1d0"><div class="ttname"><a href="a00315.html#ga9ed830f52408b2f83c085063a3eaf1d0">glm::bool4x2</a></div><div class="ttdeci">mat&lt; 4, 2, bool, highp &gt; bool4x2</div><div class="ttdoc">boolean matrix with 4 x 2 components. (From GLM_GTX_compatibility extension) </div><div class="ttdef"><b>Definition:</b> <a href="a00017_source.html#l00078">compatibility.hpp:78</a></div></div>
-<div class="ttc" id="a00315_html_ga33d43ecbb60a85a1366ff83f8a0ec85f"><div class="ttname"><a href="a00315.html#ga33d43ecbb60a85a1366ff83f8a0ec85f">glm::float2x2</a></div><div class="ttdeci">mat&lt; 2, 2, float, highp &gt; float2x2</div><div class="ttdoc">single-qualifier floating-point matrix with 2 x 2 components. (From GLM_GTX_compatibility extension) ...</div><div class="ttdef"><b>Definition:</b> <a href="a00017_source.html#l00104">compatibility.hpp:104</a></div></div>
-<div class="ttc" id="a00315_html_ga909c38a425f215a50c847145d7da09f0"><div class="ttname"><a href="a00315.html#ga909c38a425f215a50c847145d7da09f0">glm::int3</a></div><div class="ttdeci">vec&lt; 3, int, highp &gt; int3</div><div class="ttdoc">integer vector with 3 components. (From GLM_GTX_compatibility extension) </div><div class="ttdef"><b>Definition:</b> <a href="a00017_source.html#l00084">compatibility.hpp:84</a></div></div>
-<div class="ttc" id="a00315_html_ga308b9af0c221145bcfe9bfc129d9098e"><div class="ttname"><a href="a00315.html#ga308b9af0c221145bcfe9bfc129d9098e">glm::float4x2</a></div><div class="ttdeci">mat&lt; 4, 2, float, highp &gt; float4x2</div><div class="ttdoc">single-qualifier floating-point matrix with 4 x 2 components. (From GLM_GTX_compatibility extension) ...</div><div class="ttdef"><b>Definition:</b> <a href="a00017_source.html#l00110">compatibility.hpp:110</a></div></div>
-<div class="ttc" id="a00315_html_ga3655bc324008553ca61f39952d0b2d08"><div class="ttname"><a href="a00315.html#ga3655bc324008553ca61f39952d0b2d08">glm::double2x3</a></div><div class="ttdeci">mat&lt; 2, 3, double, highp &gt; double2x3</div><div class="ttdoc">double-qualifier floating-point matrix with 2 x 3 components. (From GLM_GTX_compatibility extension) ...</div><div class="ttdef"><b>Definition:</b> <a href="a00017_source.html#l00121">compatibility.hpp:121</a></div></div>
-<div class="ttc" id="a00315_html_ga939b0cff15cee3030f75c1b2e36f89fe"><div class="ttname"><a href="a00315.html#ga939b0cff15cee3030f75c1b2e36f89fe">glm::float2x3</a></div><div class="ttdeci">mat&lt; 2, 3, float, highp &gt; float2x3</div><div class="ttdoc">single-qualifier floating-point matrix with 2 x 3 components. (From GLM_GTX_compatibility extension) ...</div><div class="ttdef"><b>Definition:</b> <a href="a00017_source.html#l00105">compatibility.hpp:105</a></div></div>
-<div class="ttc" id="a00315_html_gaa4cbe16a92cf3664376c7a2fc5126aa8"><div class="ttname"><a href="a00315.html#gaa4cbe16a92cf3664376c7a2fc5126aa8">glm::int3x2</a></div><div class="ttdeci">mat&lt; 3, 2, int, highp &gt; int3x2</div><div class="ttdoc">integer matrix with 3 x 2 components. (From GLM_GTX_compatibility extension) </div><div class="ttdef"><b>Definition:</b> <a href="a00017_source.html#l00091">compatibility.hpp:91</a></div></div>
-<div class="ttc" id="a00315_html_ga13c3200b82708f73faac6d7f09ec91a3"><div class="ttname"><a href="a00315.html#ga13c3200b82708f73faac6d7f09ec91a3">glm::bool4</a></div><div class="ttdeci">vec&lt; 4, bool, highp &gt; bool4</div><div class="ttdoc">boolean type with 4 components. (From GLM_GTX_compatibility extension) </div><div class="ttdef"><b>Definition:</b> <a href="a00017_source.html#l00069">compatibility.hpp:69</a></div></div>
-<div class="ttc" id="a00315_html_ga97a39dd9bc7d572810d80b8467cbffa1"><div class="ttname"><a href="a00315.html#ga97a39dd9bc7d572810d80b8467cbffa1">glm::int4x2</a></div><div class="ttdeci">mat&lt; 4, 2, int, highp &gt; int4x2</div><div class="ttdoc">integer matrix with 4 x 2 components. (From GLM_GTX_compatibility extension) </div><div class="ttdef"><b>Definition:</b> <a href="a00017_source.html#l00094">compatibility.hpp:94</a></div></div>
-<div class="ttc" id="a00315_html_ga7f895c936f0c29c8729afbbf22806090"><div class="ttname"><a href="a00315.html#ga7f895c936f0c29c8729afbbf22806090">glm::bool1x1</a></div><div class="ttdeci">bool bool1x1</div><div class="ttdoc">boolean matrix with 1 x 1 component. (From GLM_GTX_compatibility extension) </div><div class="ttdef"><b>Definition:</b> <a href="a00017_source.html#l00071">compatibility.hpp:71</a></div></div>
-<div class="ttc" id="a00315_html_ga356f8c3a7e7d6376d3d4b0a026407183"><div class="ttname"><a href="a00315.html#ga356f8c3a7e7d6376d3d4b0a026407183">glm::saturate</a></div><div class="ttdeci">GLM_FUNC_QUALIFIER vec&lt; 4, T, Q &gt; saturate(const vec&lt; 4, T, Q &gt; &amp;x)</div><div class="ttdoc">Returns clamp(x, 0, 1) for each component in x. (From GLM_GTX_compatibility) </div><div class="ttdef"><b>Definition:</b> <a href="a00017_source.html#l00053">compatibility.hpp:53</a></div></div>
-<div class="ttc" id="a00315_html_ga99629f818737f342204071ef8296b2ed"><div class="ttname"><a href="a00315.html#ga99629f818737f342204071ef8296b2ed">glm::bool3</a></div><div class="ttdeci">vec&lt; 3, bool, highp &gt; bool3</div><div class="ttdoc">boolean type with 3 components. (From GLM_GTX_compatibility extension) </div><div class="ttdef"><b>Definition:</b> <a href="a00017_source.html#l00068">compatibility.hpp:68</a></div></div>
-<div class="ttc" id="a00241_html_ga7cd77683da6361e297c56443fc70806d"><div class="ttname"><a href="a00241.html#ga7cd77683da6361e297c56443fc70806d">glm::clamp</a></div><div class="ttdeci">GLM_FUNC_DECL GLM_CONSTEXPR genType clamp(genType x, genType minVal, genType maxVal)</div><div class="ttdoc">Returns min(max(x, minVal), maxVal) for each component in x using the floating-point values minVal an...</div></div>
-<div class="ttc" id="a00315_html_ga4e5ce477c15836b21e3c42daac68554d"><div class="ttname"><a href="a00315.html#ga4e5ce477c15836b21e3c42daac68554d">glm::int2x2</a></div><div class="ttdeci">mat&lt; 2, 2, int, highp &gt; int2x2</div><div class="ttdoc">integer matrix with 2 x 2 components. (From GLM_GTX_compatibility extension) </div><div class="ttdef"><b>Definition:</b> <a href="a00017_source.html#l00088">compatibility.hpp:88</a></div></div>
-<div class="ttc" id="a00315_html_gafe3a8fd56354caafe24bfe1b1e3ad22a"><div class="ttname"><a href="a00315.html#gafe3a8fd56354caafe24bfe1b1e3ad22a">glm::int2</a></div><div class="ttdeci">vec&lt; 2, int, highp &gt; int2</div><div class="ttdoc">integer vector with 2 components. (From GLM_GTX_compatibility extension) </div><div class="ttdef"><b>Definition:</b> <a href="a00017_source.html#l00083">compatibility.hpp:83</a></div></div>
-<div class="ttc" id="a00315_html_ga04dee1552424198b8f58b377c2ee00d8"><div class="ttname"><a href="a00315.html#ga04dee1552424198b8f58b377c2ee00d8">glm::int4x4</a></div><div class="ttdeci">mat&lt; 4, 4, int, highp &gt; int4x4</div><div class="ttdoc">integer matrix with 4 x 4 components. (From GLM_GTX_compatibility extension) </div><div class="ttdef"><b>Definition:</b> <a href="a00017_source.html#l00096">compatibility.hpp:96</a></div></div>
-<div class="ttc" id="a00315_html_gac7d7311f7e0fa8b6163d96dab033a755"><div class="ttname"><a href="a00315.html#gac7d7311f7e0fa8b6163d96dab033a755">glm::bool3x2</a></div><div class="ttdeci">mat&lt; 3, 2, bool, highp &gt; bool3x2</div><div class="ttdoc">boolean matrix with 3 x 2 components. (From GLM_GTX_compatibility extension) </div><div class="ttdef"><b>Definition:</b> <a href="a00017_source.html#l00075">compatibility.hpp:75</a></div></div>
-<div class="ttc" id="a00315_html_gafad66a02ccd360c86d6ab9ff9cfbc19c"><div class="ttname"><a href="a00315.html#gafad66a02ccd360c86d6ab9ff9cfbc19c">glm::double4x3</a></div><div class="ttdeci">mat&lt; 4, 3, double, highp &gt; double4x3</div><div class="ttdoc">double-qualifier floating-point matrix with 4 x 3 components. (From GLM_GTX_compatibility extension) ...</div><div class="ttdef"><b>Definition:</b> <a href="a00017_source.html#l00127">compatibility.hpp:127</a></div></div>
-<div class="ttc" id="a00315_html_gad0f5dc7f22c2065b1b06d57f1c0658fe"><div class="ttname"><a href="a00315.html#gad0f5dc7f22c2065b1b06d57f1c0658fe">glm::bool4x3</a></div><div class="ttdeci">mat&lt; 4, 3, bool, highp &gt; bool4x3</div><div class="ttdoc">boolean matrix with 4 x 3 components. (From GLM_GTX_compatibility extension) </div><div class="ttdef"><b>Definition:</b> <a href="a00017_source.html#l00079">compatibility.hpp:79</a></div></div>
-<div class="ttc" id="a00315_html_ga20b861a9b6e2a300323671c57a02525b"><div class="ttname"><a href="a00315.html#ga20b861a9b6e2a300323671c57a02525b">glm::double1</a></div><div class="ttdeci">double double1</div><div class="ttdoc">double-qualifier floating-point vector with 1 component. (From GLM_GTX_compatibility extension) ...</div><div class="ttdef"><b>Definition:</b> <a href="a00017_source.html#l00114">compatibility.hpp:114</a></div></div>
-<div class="ttc" id="a00315_html_ga3d8b9028a1053a44a98902cd1c389472"><div class="ttname"><a href="a00315.html#ga3d8b9028a1053a44a98902cd1c389472">glm::double3</a></div><div class="ttdeci">vec&lt; 3, double, highp &gt; double3</div><div class="ttdoc">double-qualifier floating-point vector with 3 components. (From GLM_GTX_compatibility extension) ...</div><div class="ttdef"><b>Definition:</b> <a href="a00017_source.html#l00116">compatibility.hpp:116</a></div></div>
-<div class="ttc" id="a00315_html_gaf92f58af24f35617518aeb3d4f63fda6"><div class="ttname"><a href="a00315.html#gaf92f58af24f35617518aeb3d4f63fda6">glm::double4</a></div><div class="ttdeci">vec&lt; 4, double, highp &gt; double4</div><div class="ttdoc">double-qualifier floating-point vector with 4 components. (From GLM_GTX_compatibility extension) ...</div><div class="ttdef"><b>Definition:</b> <a href="a00017_source.html#l00117">compatibility.hpp:117</a></div></div>
-<div class="ttc" id="a00315_html_ga15c9649286f0bf431bdf9b3509580048"><div class="ttname"><a href="a00315.html#ga15c9649286f0bf431bdf9b3509580048">glm::int3x3</a></div><div class="ttdeci">mat&lt; 3, 3, int, highp &gt; int3x3</div><div class="ttdoc">integer matrix with 3 x 3 components. (From GLM_GTX_compatibility extension) </div><div class="ttdef"><b>Definition:</b> <a href="a00017_source.html#l00092">compatibility.hpp:92</a></div></div>
-<div class="ttc" id="a00315_html_ga6c97b99aac3e302053ffb58aace9033c"><div class="ttname"><a href="a00315.html#ga6c97b99aac3e302053ffb58aace9033c">glm::bool3x3</a></div><div class="ttdeci">mat&lt; 3, 3, bool, highp &gt; bool3x3</div><div class="ttdoc">boolean matrix with 3 x 3 components. (From GLM_GTX_compatibility extension) </div><div class="ttdef"><b>Definition:</b> <a href="a00017_source.html#l00076">compatibility.hpp:76</a></div></div>
-<div class="ttc" id="a00315_html_gaa6c69f04ba95f3faedf95dae874de576"><div class="ttname"><a href="a00315.html#gaa6c69f04ba95f3faedf95dae874de576">glm::float3x2</a></div><div class="ttdeci">mat&lt; 3, 2, float, highp &gt; float3x2</div><div class="ttdoc">single-qualifier floating-point matrix with 3 x 2 components. (From GLM_GTX_compatibility extension) ...</div><div class="ttdef"><b>Definition:</b> <a href="a00017_source.html#l00107">compatibility.hpp:107</a></div></div>
-<div class="ttc" id="a00315_html_gaecdef18c819c205aeee9f94dc93de56a"><div class="ttname"><a href="a00315.html#gaecdef18c819c205aeee9f94dc93de56a">glm::int4</a></div><div class="ttdeci">vec&lt; 4, int, highp &gt; int4</div><div class="ttdoc">integer vector with 4 components. (From GLM_GTX_compatibility extension) </div><div class="ttdef"><b>Definition:</b> <a href="a00017_source.html#l00085">compatibility.hpp:85</a></div></div>
-<div class="ttc" id="a00315_html_ga31b729b04facccda73f07ed26958b3c2"><div class="ttname"><a href="a00315.html#ga31b729b04facccda73f07ed26958b3c2">glm::double2</a></div><div class="ttdeci">vec&lt; 2, double, highp &gt; double2</div><div class="ttdoc">double-qualifier floating-point vector with 2 components. (From GLM_GTX_compatibility extension) ...</div><div class="ttdef"><b>Definition:</b> <a href="a00017_source.html#l00115">compatibility.hpp:115</a></div></div>
-<div class="ttc" id="a00315_html_ga6ceb5d38a58becdf420026e12a6562f3"><div class="ttname"><a href="a00315.html#ga6ceb5d38a58becdf420026e12a6562f3">glm::float3x3</a></div><div class="ttdeci">mat&lt; 3, 3, float, highp &gt; float3x3</div><div class="ttdoc">single-qualifier floating-point matrix with 3 x 3 components. (From GLM_GTX_compatibility extension) ...</div><div class="ttdef"><b>Definition:</b> <a href="a00017_source.html#l00108">compatibility.hpp:108</a></div></div>
-<div class="ttc" id="a00241_html_ga8e93f374aae27d1a88b921860351f8d4"><div class="ttname"><a href="a00241.html#ga8e93f374aae27d1a88b921860351f8d4">glm::mix</a></div><div class="ttdeci">GLM_FUNC_DECL genTypeT mix(genTypeT x, genTypeT y, genTypeU a)</div><div class="ttdoc">If genTypeU is a floating scalar or vector: Returns x * (1.0 - a) + y * a, i.e., the linear blend of ...</div></div>
-<div class="ttc" id="a00315_html_gaa09ab65ec9c3c54305ff502e2b1fe6d9"><div class="ttname"><a href="a00315.html#gaa09ab65ec9c3c54305ff502e2b1fe6d9">glm::bool2</a></div><div class="ttdeci">vec&lt; 2, bool, highp &gt; bool2</div><div class="ttdoc">boolean type with 2 components. (From GLM_GTX_compatibility extension) </div><div class="ttdef"><b>Definition:</b> <a href="a00017_source.html#l00067">compatibility.hpp:67</a></div></div>
-<div class="ttc" id="a00315_html_gae7d6b679463d37d6c527d478fb470fdf"><div class="ttname"><a href="a00315.html#gae7d6b679463d37d6c527d478fb470fdf">glm::bool3x4</a></div><div class="ttdeci">mat&lt; 3, 4, bool, highp &gt; bool3x4</div><div class="ttdoc">boolean matrix with 3 x 4 components. (From GLM_GTX_compatibility extension) </div><div class="ttdef"><b>Definition:</b> <a href="a00017_source.html#l00077">compatibility.hpp:77</a></div></div>
-<div class="ttc" id="a00315_html_ga2749d59a7fddbac44f34ba78e57ef807"><div class="ttname"><a href="a00315.html#ga2749d59a7fddbac44f34ba78e57ef807">glm::int2x4</a></div><div class="ttdeci">mat&lt; 2, 4, int, highp &gt; int2x4</div><div class="ttdoc">integer matrix with 2 x 4 components. (From GLM_GTX_compatibility extension) </div><div class="ttdef"><b>Definition:</b> <a href="a00017_source.html#l00090">compatibility.hpp:90</a></div></div>
-<div class="ttc" id="a00315_html_ga4d7fa65be8e8e4ad6d920b45c44e471f"><div class="ttname"><a href="a00315.html#ga4d7fa65be8e8e4ad6d920b45c44e471f">glm::bool2x4</a></div><div class="ttdeci">mat&lt; 2, 4, bool, highp &gt; bool2x4</div><div class="ttdoc">boolean matrix with 2 x 4 components. (From GLM_GTX_compatibility extension) </div><div class="ttdef"><b>Definition:</b> <a href="a00017_source.html#l00074">compatibility.hpp:74</a></div></div>
-<div class="ttc" id="a00315_html_ga2ef022e453d663d70aec414b2a80f756"><div class="ttname"><a href="a00315.html#ga2ef022e453d663d70aec414b2a80f756">glm::double3x4</a></div><div class="ttdeci">mat&lt; 3, 4, double, highp &gt; double3x4</div><div class="ttdoc">double-qualifier floating-point matrix with 3 x 4 components. (From GLM_GTX_compatibility extension) ...</div><div class="ttdef"><b>Definition:</b> <a href="a00017_source.html#l00125">compatibility.hpp:125</a></div></div>
-<div class="ttc" id="a00236_html"><div class="ttname"><a href="a00236.html">glm</a></div><div class="ttdef"><b>Definition:</b> <a href="a00015_source.html#l00020">common.hpp:20</a></div></div>
-<div class="ttc" id="a00315_html_ga4d2679c321b793ca3784fe0315bb5332"><div class="ttname"><a href="a00315.html#ga4d2679c321b793ca3784fe0315bb5332">glm::float3x4</a></div><div class="ttdeci">mat&lt; 3, 4, float, highp &gt; float3x4</div><div class="ttdoc">single-qualifier floating-point matrix with 3 x 4 components. (From GLM_GTX_compatibility extension) ...</div><div class="ttdef"><b>Definition:</b> <a href="a00017_source.html#l00109">compatibility.hpp:109</a></div></div>
+<div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span>&#160;<span class="preprocessor">#pragma once</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno">    2</span>&#160; </div>
+<div class="line"><a name="l00003"></a><span class="lineno">    3</span>&#160;<span class="preprocessor">#define GLM_SWIZZLE_GEN_VEC2_ENTRY(T, P, CONST, A, B)   \</span></div>
+<div class="line"><a name="l00004"></a><span class="lineno">    4</span>&#160;<span class="preprocessor">        GLM_FUNC_QUALIFIER vec&lt;2, T, Q&gt; A ## B() CONST                                                  \</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno">    5</span>&#160;<span class="preprocessor">        {                                                                                                       \</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno">    6</span>&#160;<span class="preprocessor">                return vec&lt;2, T, Q&gt;(this-&gt;A, this-&gt;B);                  \</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno">    7</span>&#160;<span class="preprocessor">        }</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno">    8</span>&#160; </div>
+<div class="line"><a name="l00009"></a><span class="lineno">    9</span>&#160;<span class="preprocessor">#define GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, CONST, A, B, C)                \</span></div>
+<div class="line"><a name="l00010"></a><span class="lineno">   10</span>&#160;<span class="preprocessor">        GLM_FUNC_QUALIFIER vec&lt;3, T, Q&gt; A ## B ## C() CONST                                                     \</span></div>
+<div class="line"><a name="l00011"></a><span class="lineno">   11</span>&#160;<span class="preprocessor">        {                                                                                                                       \</span></div>
+<div class="line"><a name="l00012"></a><span class="lineno">   12</span>&#160;<span class="preprocessor">                return vec&lt;3, T, Q&gt;(this-&gt;A, this-&gt;B, this-&gt;C);                 \</span></div>
+<div class="line"><a name="l00013"></a><span class="lineno">   13</span>&#160;<span class="preprocessor">        }</span></div>
+<div class="line"><a name="l00014"></a><span class="lineno">   14</span>&#160; </div>
+<div class="line"><a name="l00015"></a><span class="lineno">   15</span>&#160;<span class="preprocessor">#define GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, CONST, A, B, C, D)                                     \</span></div>
+<div class="line"><a name="l00016"></a><span class="lineno">   16</span>&#160;<span class="preprocessor">        GLM_FUNC_QUALIFIER vec&lt;4, T, Q&gt; A ## B ## C ## D() CONST                                                                        \</span></div>
+<div class="line"><a name="l00017"></a><span class="lineno">   17</span>&#160;<span class="preprocessor">        {                                                                                                                                               \</span></div>
+<div class="line"><a name="l00018"></a><span class="lineno">   18</span>&#160;<span class="preprocessor">                return vec&lt;4, T, Q&gt;(this-&gt;A, this-&gt;B, this-&gt;C, this-&gt;D);                        \</span></div>
+<div class="line"><a name="l00019"></a><span class="lineno">   19</span>&#160;<span class="preprocessor">        }</span></div>
+<div class="line"><a name="l00020"></a><span class="lineno">   20</span>&#160; </div>
+<div class="line"><a name="l00021"></a><span class="lineno">   21</span>&#160;<span class="preprocessor">#define GLM_SWIZZLE_GEN_VEC2_ENTRY_DEF(T, P, L, CONST, A, B)    \</span></div>
+<div class="line"><a name="l00022"></a><span class="lineno">   22</span>&#160;<span class="preprocessor">        template&lt;typename T&gt;                                                                            \</span></div>
+<div class="line"><a name="l00023"></a><span class="lineno">   23</span>&#160;<span class="preprocessor">        GLM_FUNC_QUALIFIER vec&lt;L, T, Q&gt; vec&lt;L, T, Q&gt;::A ## B() CONST                                    \</span></div>
+<div class="line"><a name="l00024"></a><span class="lineno">   24</span>&#160;<span class="preprocessor">        {                                                                                                                       \</span></div>
+<div class="line"><a name="l00025"></a><span class="lineno">   25</span>&#160;<span class="preprocessor">                return vec&lt;2, T, Q&gt;(this-&gt;A, this-&gt;B);                                  \</span></div>
+<div class="line"><a name="l00026"></a><span class="lineno">   26</span>&#160;<span class="preprocessor">        }</span></div>
+<div class="line"><a name="l00027"></a><span class="lineno">   27</span>&#160; </div>
+<div class="line"><a name="l00028"></a><span class="lineno">   28</span>&#160;<span class="preprocessor">#define GLM_SWIZZLE_GEN_VEC3_ENTRY_DEF(T, P, L, CONST, A, B, C)         \</span></div>
+<div class="line"><a name="l00029"></a><span class="lineno">   29</span>&#160;<span class="preprocessor">        template&lt;typename T&gt;                                                                                    \</span></div>
+<div class="line"><a name="l00030"></a><span class="lineno">   30</span>&#160;<span class="preprocessor">        GLM_FUNC_QUALIFIER vec&lt;3, T, Q&gt; vec&lt;L, T, Q&gt;::A ## B ## C() CONST                                       \</span></div>
+<div class="line"><a name="l00031"></a><span class="lineno">   31</span>&#160;<span class="preprocessor">        {                                                                                                                               \</span></div>
+<div class="line"><a name="l00032"></a><span class="lineno">   32</span>&#160;<span class="preprocessor">                return vec&lt;3, T, Q&gt;(this-&gt;A, this-&gt;B, this-&gt;C);                         \</span></div>
+<div class="line"><a name="l00033"></a><span class="lineno">   33</span>&#160;<span class="preprocessor">        }</span></div>
+<div class="line"><a name="l00034"></a><span class="lineno">   34</span>&#160; </div>
+<div class="line"><a name="l00035"></a><span class="lineno">   35</span>&#160;<span class="preprocessor">#define GLM_SWIZZLE_GEN_VEC4_ENTRY_DEF(T, P, L, CONST, A, B, C, D)              \</span></div>
+<div class="line"><a name="l00036"></a><span class="lineno">   36</span>&#160;<span class="preprocessor">        template&lt;typename T&gt;                                                                                            \</span></div>
+<div class="line"><a name="l00037"></a><span class="lineno">   37</span>&#160;<span class="preprocessor">        GLM_FUNC_QUALIFIER vec&lt;4, T, Q&gt; vec&lt;L, T, Q&gt;::A ## B ## C ## D() CONST                                  \</span></div>
+<div class="line"><a name="l00038"></a><span class="lineno">   38</span>&#160;<span class="preprocessor">        {                                                                                                                                       \</span></div>
+<div class="line"><a name="l00039"></a><span class="lineno">   39</span>&#160;<span class="preprocessor">                return vec&lt;4, T, Q&gt;(this-&gt;A, this-&gt;B, this-&gt;C, this-&gt;D);                \</span></div>
+<div class="line"><a name="l00040"></a><span class="lineno">   40</span>&#160;<span class="preprocessor">        }</span></div>
+<div class="line"><a name="l00041"></a><span class="lineno">   41</span>&#160; </div>
+<div class="line"><a name="l00042"></a><span class="lineno">   42</span>&#160;<span class="preprocessor">#define GLM_MUTABLE</span></div>
+<div class="line"><a name="l00043"></a><span class="lineno">   43</span>&#160; </div>
+<div class="line"><a name="l00044"></a><span class="lineno">   44</span>&#160;<span class="preprocessor">#define GLM_SWIZZLE_GEN_REF2_FROM_VEC2_SWIZZLE(T, P, A, B) \</span></div>
+<div class="line"><a name="l00045"></a><span class="lineno">   45</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC2_ENTRY(T, P, 2, GLM_MUTABLE, A, B) \</span></div>
+<div class="line"><a name="l00046"></a><span class="lineno">   46</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC2_ENTRY(T, P, 2, GLM_MUTABLE, B, A)</span></div>
+<div class="line"><a name="l00047"></a><span class="lineno">   47</span>&#160; </div>
+<div class="line"><a name="l00048"></a><span class="lineno">   48</span>&#160;<span class="preprocessor">#define GLM_SWIZZLE_GEN_REF_FROM_VEC2(T, P) \</span></div>
+<div class="line"><a name="l00049"></a><span class="lineno">   49</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_REF2_FROM_VEC2_SWIZZLE(T, P, x, y) \</span></div>
+<div class="line"><a name="l00050"></a><span class="lineno">   50</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_REF2_FROM_VEC2_SWIZZLE(T, P, r, g) \</span></div>
+<div class="line"><a name="l00051"></a><span class="lineno">   51</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_REF2_FROM_VEC2_SWIZZLE(T, P, s, t)</span></div>
+<div class="line"><a name="l00052"></a><span class="lineno">   52</span>&#160; </div>
+<div class="line"><a name="l00053"></a><span class="lineno">   53</span>&#160;<span class="preprocessor">#define GLM_SWIZZLE_GEN_REF2_FROM_VEC3_SWIZZLE(T, P, A, B, C) \</span></div>
+<div class="line"><a name="l00054"></a><span class="lineno">   54</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC2_ENTRY(T, P, GLM_MUTABLE, A, B) \</span></div>
+<div class="line"><a name="l00055"></a><span class="lineno">   55</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC2_ENTRY(T, P, GLM_MUTABLE, A, C) \</span></div>
+<div class="line"><a name="l00056"></a><span class="lineno">   56</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC2_ENTRY(T, P, GLM_MUTABLE, B, A) \</span></div>
+<div class="line"><a name="l00057"></a><span class="lineno">   57</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC2_ENTRY(T, P, GLM_MUTABLE, B, C) \</span></div>
+<div class="line"><a name="l00058"></a><span class="lineno">   58</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC2_ENTRY(T, P, GLM_MUTABLE, C, A) \</span></div>
+<div class="line"><a name="l00059"></a><span class="lineno">   59</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC2_ENTRY(T, P, GLM_MUTABLE, C, B)</span></div>
+<div class="line"><a name="l00060"></a><span class="lineno">   60</span>&#160; </div>
+<div class="line"><a name="l00061"></a><span class="lineno">   61</span>&#160;<span class="preprocessor">#define GLM_SWIZZLE_GEN_REF3_FROM_VEC3_SWIZZLE(T, P, A, B, C) \</span></div>
+<div class="line"><a name="l00062"></a><span class="lineno">   62</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, GLM_MUTABLE, A, B, C) \</span></div>
+<div class="line"><a name="l00063"></a><span class="lineno">   63</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, GLM_MUTABLE, A, C, B) \</span></div>
+<div class="line"><a name="l00064"></a><span class="lineno">   64</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, GLM_MUTABLE, B, A, C) \</span></div>
+<div class="line"><a name="l00065"></a><span class="lineno">   65</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, GLM_MUTABLE, B, C, A) \</span></div>
+<div class="line"><a name="l00066"></a><span class="lineno">   66</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, GLM_MUTABLE, C, A, B) \</span></div>
+<div class="line"><a name="l00067"></a><span class="lineno">   67</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, GLM_MUTABLE, C, B, A)</span></div>
+<div class="line"><a name="l00068"></a><span class="lineno">   68</span>&#160; </div>
+<div class="line"><a name="l00069"></a><span class="lineno">   69</span>&#160;<span class="preprocessor">#define GLM_SWIZZLE_GEN_REF_FROM_VEC3_COMP(T, P, A, B, C) \</span></div>
+<div class="line"><a name="l00070"></a><span class="lineno">   70</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_REF3_FROM_VEC3_SWIZZLE(T, P, A, B, C) \</span></div>
+<div class="line"><a name="l00071"></a><span class="lineno">   71</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_REF2_FROM_VEC3_SWIZZLE(T, P, A, B, C)</span></div>
+<div class="line"><a name="l00072"></a><span class="lineno">   72</span>&#160; </div>
+<div class="line"><a name="l00073"></a><span class="lineno">   73</span>&#160;<span class="preprocessor">#define GLM_SWIZZLE_GEN_REF_FROM_VEC3(T, P) \</span></div>
+<div class="line"><a name="l00074"></a><span class="lineno">   74</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_REF_FROM_VEC3_COMP(T, P, x, y, z) \</span></div>
+<div class="line"><a name="l00075"></a><span class="lineno">   75</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_REF_FROM_VEC3_COMP(T, P, r, g, b) \</span></div>
+<div class="line"><a name="l00076"></a><span class="lineno">   76</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_REF_FROM_VEC3_COMP(T, P, s, t, p)</span></div>
+<div class="line"><a name="l00077"></a><span class="lineno">   77</span>&#160; </div>
+<div class="line"><a name="l00078"></a><span class="lineno">   78</span>&#160;<span class="preprocessor">#define GLM_SWIZZLE_GEN_REF2_FROM_VEC4_SWIZZLE(T, P, A, B, C, D) \</span></div>
+<div class="line"><a name="l00079"></a><span class="lineno">   79</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC2_ENTRY(T, P, GLM_MUTABLE, A, B) \</span></div>
+<div class="line"><a name="l00080"></a><span class="lineno">   80</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC2_ENTRY(T, P, GLM_MUTABLE, A, C) \</span></div>
+<div class="line"><a name="l00081"></a><span class="lineno">   81</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC2_ENTRY(T, P, GLM_MUTABLE, A, D) \</span></div>
+<div class="line"><a name="l00082"></a><span class="lineno">   82</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC2_ENTRY(T, P, GLM_MUTABLE, B, A) \</span></div>
+<div class="line"><a name="l00083"></a><span class="lineno">   83</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC2_ENTRY(T, P, GLM_MUTABLE, B, C) \</span></div>
+<div class="line"><a name="l00084"></a><span class="lineno">   84</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC2_ENTRY(T, P, GLM_MUTABLE, B, D) \</span></div>
+<div class="line"><a name="l00085"></a><span class="lineno">   85</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC2_ENTRY(T, P, GLM_MUTABLE, C, A) \</span></div>
+<div class="line"><a name="l00086"></a><span class="lineno">   86</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC2_ENTRY(T, P, GLM_MUTABLE, C, B) \</span></div>
+<div class="line"><a name="l00087"></a><span class="lineno">   87</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC2_ENTRY(T, P, GLM_MUTABLE, C, D) \</span></div>
+<div class="line"><a name="l00088"></a><span class="lineno">   88</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC2_ENTRY(T, P, GLM_MUTABLE, D, A) \</span></div>
+<div class="line"><a name="l00089"></a><span class="lineno">   89</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC2_ENTRY(T, P, GLM_MUTABLE, D, B) \</span></div>
+<div class="line"><a name="l00090"></a><span class="lineno">   90</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC2_ENTRY(T, P, GLM_MUTABLE, D, C)</span></div>
+<div class="line"><a name="l00091"></a><span class="lineno">   91</span>&#160; </div>
+<div class="line"><a name="l00092"></a><span class="lineno">   92</span>&#160;<span class="preprocessor">#define GLM_SWIZZLE_GEN_REF3_FROM_VEC4_SWIZZLE(T, P, A, B, C, D) \</span></div>
+<div class="line"><a name="l00093"></a><span class="lineno">   93</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, , A, B, C) \</span></div>
+<div class="line"><a name="l00094"></a><span class="lineno">   94</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, , A, B, D) \</span></div>
+<div class="line"><a name="l00095"></a><span class="lineno">   95</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, , A, C, B) \</span></div>
+<div class="line"><a name="l00096"></a><span class="lineno">   96</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, , A, C, D) \</span></div>
+<div class="line"><a name="l00097"></a><span class="lineno">   97</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, , A, D, B) \</span></div>
+<div class="line"><a name="l00098"></a><span class="lineno">   98</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, , A, D, C) \</span></div>
+<div class="line"><a name="l00099"></a><span class="lineno">   99</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, , B, A, C) \</span></div>
+<div class="line"><a name="l00100"></a><span class="lineno">  100</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, , B, A, D) \</span></div>
+<div class="line"><a name="l00101"></a><span class="lineno">  101</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, , B, C, A) \</span></div>
+<div class="line"><a name="l00102"></a><span class="lineno">  102</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, , B, C, D) \</span></div>
+<div class="line"><a name="l00103"></a><span class="lineno">  103</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, , B, D, A) \</span></div>
+<div class="line"><a name="l00104"></a><span class="lineno">  104</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, , B, D, C) \</span></div>
+<div class="line"><a name="l00105"></a><span class="lineno">  105</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, , C, A, B) \</span></div>
+<div class="line"><a name="l00106"></a><span class="lineno">  106</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, , C, A, D) \</span></div>
+<div class="line"><a name="l00107"></a><span class="lineno">  107</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, , C, B, A) \</span></div>
+<div class="line"><a name="l00108"></a><span class="lineno">  108</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, , C, B, D) \</span></div>
+<div class="line"><a name="l00109"></a><span class="lineno">  109</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, , C, D, A) \</span></div>
+<div class="line"><a name="l00110"></a><span class="lineno">  110</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, , C, D, B) \</span></div>
+<div class="line"><a name="l00111"></a><span class="lineno">  111</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, , D, A, B) \</span></div>
+<div class="line"><a name="l00112"></a><span class="lineno">  112</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, , D, A, C) \</span></div>
+<div class="line"><a name="l00113"></a><span class="lineno">  113</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, , D, B, A) \</span></div>
+<div class="line"><a name="l00114"></a><span class="lineno">  114</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, , D, B, C) \</span></div>
+<div class="line"><a name="l00115"></a><span class="lineno">  115</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, , D, C, A) \</span></div>
+<div class="line"><a name="l00116"></a><span class="lineno">  116</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, , D, C, B)</span></div>
+<div class="line"><a name="l00117"></a><span class="lineno">  117</span>&#160; </div>
+<div class="line"><a name="l00118"></a><span class="lineno">  118</span>&#160;<span class="preprocessor">#define GLM_SWIZZLE_GEN_REF4_FROM_VEC4_SWIZZLE(T, P, A, B, C, D) \</span></div>
+<div class="line"><a name="l00119"></a><span class="lineno">  119</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, , A, C, B, D) \</span></div>
+<div class="line"><a name="l00120"></a><span class="lineno">  120</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, , A, C, D, B) \</span></div>
+<div class="line"><a name="l00121"></a><span class="lineno">  121</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, , A, D, B, C) \</span></div>
+<div class="line"><a name="l00122"></a><span class="lineno">  122</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, , A, D, C, B) \</span></div>
+<div class="line"><a name="l00123"></a><span class="lineno">  123</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, , A, B, D, C) \</span></div>
+<div class="line"><a name="l00124"></a><span class="lineno">  124</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, , A, B, C, D) \</span></div>
+<div class="line"><a name="l00125"></a><span class="lineno">  125</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, , B, C, A, D) \</span></div>
+<div class="line"><a name="l00126"></a><span class="lineno">  126</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, , B, C, D, A) \</span></div>
+<div class="line"><a name="l00127"></a><span class="lineno">  127</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, , B, D, A, C) \</span></div>
+<div class="line"><a name="l00128"></a><span class="lineno">  128</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, , B, D, C, A) \</span></div>
+<div class="line"><a name="l00129"></a><span class="lineno">  129</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, , B, A, D, C) \</span></div>
+<div class="line"><a name="l00130"></a><span class="lineno">  130</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, , B, A, C, D) \</span></div>
+<div class="line"><a name="l00131"></a><span class="lineno">  131</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, , C, B, A, D) \</span></div>
+<div class="line"><a name="l00132"></a><span class="lineno">  132</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, , C, B, D, A) \</span></div>
+<div class="line"><a name="l00133"></a><span class="lineno">  133</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, , C, D, A, B) \</span></div>
+<div class="line"><a name="l00134"></a><span class="lineno">  134</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, , C, D, B, A) \</span></div>
+<div class="line"><a name="l00135"></a><span class="lineno">  135</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, , C, A, D, B) \</span></div>
+<div class="line"><a name="l00136"></a><span class="lineno">  136</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, , C, A, B, D) \</span></div>
+<div class="line"><a name="l00137"></a><span class="lineno">  137</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, , D, C, B, A) \</span></div>
+<div class="line"><a name="l00138"></a><span class="lineno">  138</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, , D, C, A, B) \</span></div>
+<div class="line"><a name="l00139"></a><span class="lineno">  139</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, , D, A, B, C) \</span></div>
+<div class="line"><a name="l00140"></a><span class="lineno">  140</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, , D, A, C, B) \</span></div>
+<div class="line"><a name="l00141"></a><span class="lineno">  141</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, , D, B, A, C) \</span></div>
+<div class="line"><a name="l00142"></a><span class="lineno">  142</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, , D, B, C, A)</span></div>
+<div class="line"><a name="l00143"></a><span class="lineno">  143</span>&#160; </div>
+<div class="line"><a name="l00144"></a><span class="lineno">  144</span>&#160;<span class="preprocessor">#define GLM_SWIZZLE_GEN_REF_FROM_VEC4_COMP(T, P, A, B, C, D) \</span></div>
+<div class="line"><a name="l00145"></a><span class="lineno">  145</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_REF2_FROM_VEC4_SWIZZLE(T, P, A, B, C, D) \</span></div>
+<div class="line"><a name="l00146"></a><span class="lineno">  146</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_REF3_FROM_VEC4_SWIZZLE(T, P, A, B, C, D) \</span></div>
+<div class="line"><a name="l00147"></a><span class="lineno">  147</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_REF4_FROM_VEC4_SWIZZLE(T, P, A, B, C, D)</span></div>
+<div class="line"><a name="l00148"></a><span class="lineno">  148</span>&#160; </div>
+<div class="line"><a name="l00149"></a><span class="lineno">  149</span>&#160;<span class="preprocessor">#define GLM_SWIZZLE_GEN_REF_FROM_VEC4(T, P) \</span></div>
+<div class="line"><a name="l00150"></a><span class="lineno">  150</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_REF_FROM_VEC4_COMP(T, P, x, y, z, w) \</span></div>
+<div class="line"><a name="l00151"></a><span class="lineno">  151</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_REF_FROM_VEC4_COMP(T, P, r, g, b, a) \</span></div>
+<div class="line"><a name="l00152"></a><span class="lineno">  152</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_REF_FROM_VEC4_COMP(T, P, s, t, p, q)</span></div>
+<div class="line"><a name="l00153"></a><span class="lineno">  153</span>&#160; </div>
+<div class="line"><a name="l00154"></a><span class="lineno">  154</span>&#160;<span class="preprocessor">#define GLM_SWIZZLE_GEN_VEC2_FROM_VEC2_SWIZZLE(T, P, A, B) \</span></div>
+<div class="line"><a name="l00155"></a><span class="lineno">  155</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC2_ENTRY(T, P, const, A, A) \</span></div>
+<div class="line"><a name="l00156"></a><span class="lineno">  156</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC2_ENTRY(T, P, const, A, B) \</span></div>
+<div class="line"><a name="l00157"></a><span class="lineno">  157</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC2_ENTRY(T, P, const, B, A) \</span></div>
+<div class="line"><a name="l00158"></a><span class="lineno">  158</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC2_ENTRY(T, P, const, B, B)</span></div>
+<div class="line"><a name="l00159"></a><span class="lineno">  159</span>&#160; </div>
+<div class="line"><a name="l00160"></a><span class="lineno">  160</span>&#160;<span class="preprocessor">#define GLM_SWIZZLE_GEN_VEC3_FROM_VEC2_SWIZZLE(T, P, A, B) \</span></div>
+<div class="line"><a name="l00161"></a><span class="lineno">  161</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, const, A, A, A) \</span></div>
+<div class="line"><a name="l00162"></a><span class="lineno">  162</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, const, A, A, B) \</span></div>
+<div class="line"><a name="l00163"></a><span class="lineno">  163</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, const, A, B, A) \</span></div>
+<div class="line"><a name="l00164"></a><span class="lineno">  164</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, const, A, B, B) \</span></div>
+<div class="line"><a name="l00165"></a><span class="lineno">  165</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, const, B, A, A) \</span></div>
+<div class="line"><a name="l00166"></a><span class="lineno">  166</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, const, B, A, B) \</span></div>
+<div class="line"><a name="l00167"></a><span class="lineno">  167</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, const, B, B, A) \</span></div>
+<div class="line"><a name="l00168"></a><span class="lineno">  168</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, const, B, B, B)</span></div>
+<div class="line"><a name="l00169"></a><span class="lineno">  169</span>&#160; </div>
+<div class="line"><a name="l00170"></a><span class="lineno">  170</span>&#160;<span class="preprocessor">#define GLM_SWIZZLE_GEN_VEC4_FROM_VEC2_SWIZZLE(T, P, A, B) \</span></div>
+<div class="line"><a name="l00171"></a><span class="lineno">  171</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, A, A, A, A) \</span></div>
+<div class="line"><a name="l00172"></a><span class="lineno">  172</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, A, A, A, B) \</span></div>
+<div class="line"><a name="l00173"></a><span class="lineno">  173</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, A, A, B, A) \</span></div>
+<div class="line"><a name="l00174"></a><span class="lineno">  174</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, A, A, B, B) \</span></div>
+<div class="line"><a name="l00175"></a><span class="lineno">  175</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, A, B, A, A) \</span></div>
+<div class="line"><a name="l00176"></a><span class="lineno">  176</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, A, B, A, B) \</span></div>
+<div class="line"><a name="l00177"></a><span class="lineno">  177</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, A, B, B, A) \</span></div>
+<div class="line"><a name="l00178"></a><span class="lineno">  178</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, A, B, B, B) \</span></div>
+<div class="line"><a name="l00179"></a><span class="lineno">  179</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, B, A, A, A) \</span></div>
+<div class="line"><a name="l00180"></a><span class="lineno">  180</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, B, A, A, B) \</span></div>
+<div class="line"><a name="l00181"></a><span class="lineno">  181</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, B, A, B, A) \</span></div>
+<div class="line"><a name="l00182"></a><span class="lineno">  182</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, B, A, B, B) \</span></div>
+<div class="line"><a name="l00183"></a><span class="lineno">  183</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, B, B, A, A) \</span></div>
+<div class="line"><a name="l00184"></a><span class="lineno">  184</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, B, B, A, B) \</span></div>
+<div class="line"><a name="l00185"></a><span class="lineno">  185</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, B, B, B, A) \</span></div>
+<div class="line"><a name="l00186"></a><span class="lineno">  186</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, B, B, B, B)</span></div>
+<div class="line"><a name="l00187"></a><span class="lineno">  187</span>&#160; </div>
+<div class="line"><a name="l00188"></a><span class="lineno">  188</span>&#160;<span class="preprocessor">#define GLM_SWIZZLE_GEN_VEC_FROM_VEC2_COMP(T, P, A, B) \</span></div>
+<div class="line"><a name="l00189"></a><span class="lineno">  189</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC2_FROM_VEC2_SWIZZLE(T, P, A, B) \</span></div>
+<div class="line"><a name="l00190"></a><span class="lineno">  190</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_FROM_VEC2_SWIZZLE(T, P, A, B) \</span></div>
+<div class="line"><a name="l00191"></a><span class="lineno">  191</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_FROM_VEC2_SWIZZLE(T, P, A, B)</span></div>
+<div class="line"><a name="l00192"></a><span class="lineno">  192</span>&#160; </div>
+<div class="line"><a name="l00193"></a><span class="lineno">  193</span>&#160;<span class="preprocessor">#define GLM_SWIZZLE_GEN_VEC_FROM_VEC2(T, P)                     \</span></div>
+<div class="line"><a name="l00194"></a><span class="lineno">  194</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC_FROM_VEC2_COMP(T, P, x, y)  \</span></div>
+<div class="line"><a name="l00195"></a><span class="lineno">  195</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC_FROM_VEC2_COMP(T, P, r, g)  \</span></div>
+<div class="line"><a name="l00196"></a><span class="lineno">  196</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC_FROM_VEC2_COMP(T, P, s, t)</span></div>
+<div class="line"><a name="l00197"></a><span class="lineno">  197</span>&#160; </div>
+<div class="line"><a name="l00198"></a><span class="lineno">  198</span>&#160;<span class="preprocessor">#define GLM_SWIZZLE_GEN_VEC2_FROM_VEC3_SWIZZLE(T, P, A, B, C) \</span></div>
+<div class="line"><a name="l00199"></a><span class="lineno">  199</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC2_ENTRY(T, P, const, A, A) \</span></div>
+<div class="line"><a name="l00200"></a><span class="lineno">  200</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC2_ENTRY(T, P, const, A, B) \</span></div>
+<div class="line"><a name="l00201"></a><span class="lineno">  201</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC2_ENTRY(T, P, const, A, C) \</span></div>
+<div class="line"><a name="l00202"></a><span class="lineno">  202</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC2_ENTRY(T, P, const, B, A) \</span></div>
+<div class="line"><a name="l00203"></a><span class="lineno">  203</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC2_ENTRY(T, P, const, B, B) \</span></div>
+<div class="line"><a name="l00204"></a><span class="lineno">  204</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC2_ENTRY(T, P, const, B, C) \</span></div>
+<div class="line"><a name="l00205"></a><span class="lineno">  205</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC2_ENTRY(T, P, const, C, A) \</span></div>
+<div class="line"><a name="l00206"></a><span class="lineno">  206</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC2_ENTRY(T, P, const, C, B) \</span></div>
+<div class="line"><a name="l00207"></a><span class="lineno">  207</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC2_ENTRY(T, P, const, C, C)</span></div>
+<div class="line"><a name="l00208"></a><span class="lineno">  208</span>&#160; </div>
+<div class="line"><a name="l00209"></a><span class="lineno">  209</span>&#160;<span class="preprocessor">#define GLM_SWIZZLE_GEN_VEC3_FROM_VEC3_SWIZZLE(T, P, A, B, C) \</span></div>
+<div class="line"><a name="l00210"></a><span class="lineno">  210</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, const, A, A, A) \</span></div>
+<div class="line"><a name="l00211"></a><span class="lineno">  211</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, const, A, A, B) \</span></div>
+<div class="line"><a name="l00212"></a><span class="lineno">  212</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, const, A, A, C) \</span></div>
+<div class="line"><a name="l00213"></a><span class="lineno">  213</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, const, A, B, A) \</span></div>
+<div class="line"><a name="l00214"></a><span class="lineno">  214</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, const, A, B, B) \</span></div>
+<div class="line"><a name="l00215"></a><span class="lineno">  215</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, const, A, B, C) \</span></div>
+<div class="line"><a name="l00216"></a><span class="lineno">  216</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, const, A, C, A) \</span></div>
+<div class="line"><a name="l00217"></a><span class="lineno">  217</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, const, A, C, B) \</span></div>
+<div class="line"><a name="l00218"></a><span class="lineno">  218</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, const, A, C, C) \</span></div>
+<div class="line"><a name="l00219"></a><span class="lineno">  219</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, const, B, A, A) \</span></div>
+<div class="line"><a name="l00220"></a><span class="lineno">  220</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, const, B, A, B) \</span></div>
+<div class="line"><a name="l00221"></a><span class="lineno">  221</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, const, B, A, C) \</span></div>
+<div class="line"><a name="l00222"></a><span class="lineno">  222</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, const, B, B, A) \</span></div>
+<div class="line"><a name="l00223"></a><span class="lineno">  223</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, const, B, B, B) \</span></div>
+<div class="line"><a name="l00224"></a><span class="lineno">  224</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, const, B, B, C) \</span></div>
+<div class="line"><a name="l00225"></a><span class="lineno">  225</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, const, B, C, A) \</span></div>
+<div class="line"><a name="l00226"></a><span class="lineno">  226</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, const, B, C, B) \</span></div>
+<div class="line"><a name="l00227"></a><span class="lineno">  227</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, const, B, C, C) \</span></div>
+<div class="line"><a name="l00228"></a><span class="lineno">  228</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, const, C, A, A) \</span></div>
+<div class="line"><a name="l00229"></a><span class="lineno">  229</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, const, C, A, B) \</span></div>
+<div class="line"><a name="l00230"></a><span class="lineno">  230</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, const, C, A, C) \</span></div>
+<div class="line"><a name="l00231"></a><span class="lineno">  231</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, const, C, B, A) \</span></div>
+<div class="line"><a name="l00232"></a><span class="lineno">  232</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, const, C, B, B) \</span></div>
+<div class="line"><a name="l00233"></a><span class="lineno">  233</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, const, C, B, C) \</span></div>
+<div class="line"><a name="l00234"></a><span class="lineno">  234</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, const, C, C, A) \</span></div>
+<div class="line"><a name="l00235"></a><span class="lineno">  235</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, const, C, C, B) \</span></div>
+<div class="line"><a name="l00236"></a><span class="lineno">  236</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, const, C, C, C)</span></div>
+<div class="line"><a name="l00237"></a><span class="lineno">  237</span>&#160; </div>
+<div class="line"><a name="l00238"></a><span class="lineno">  238</span>&#160;<span class="preprocessor">#define GLM_SWIZZLE_GEN_VEC4_FROM_VEC3_SWIZZLE(T, P, A, B, C) \</span></div>
+<div class="line"><a name="l00239"></a><span class="lineno">  239</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, A, A, A, A) \</span></div>
+<div class="line"><a name="l00240"></a><span class="lineno">  240</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, A, A, A, B) \</span></div>
+<div class="line"><a name="l00241"></a><span class="lineno">  241</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, A, A, A, C) \</span></div>
+<div class="line"><a name="l00242"></a><span class="lineno">  242</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, A, A, B, A) \</span></div>
+<div class="line"><a name="l00243"></a><span class="lineno">  243</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, A, A, B, B) \</span></div>
+<div class="line"><a name="l00244"></a><span class="lineno">  244</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, A, A, B, C) \</span></div>
+<div class="line"><a name="l00245"></a><span class="lineno">  245</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, A, A, C, A) \</span></div>
+<div class="line"><a name="l00246"></a><span class="lineno">  246</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, A, A, C, B) \</span></div>
+<div class="line"><a name="l00247"></a><span class="lineno">  247</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, A, A, C, C) \</span></div>
+<div class="line"><a name="l00248"></a><span class="lineno">  248</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, A, B, A, A) \</span></div>
+<div class="line"><a name="l00249"></a><span class="lineno">  249</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, A, B, A, B) \</span></div>
+<div class="line"><a name="l00250"></a><span class="lineno">  250</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, A, B, A, C) \</span></div>
+<div class="line"><a name="l00251"></a><span class="lineno">  251</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, A, B, B, A) \</span></div>
+<div class="line"><a name="l00252"></a><span class="lineno">  252</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, A, B, B, B) \</span></div>
+<div class="line"><a name="l00253"></a><span class="lineno">  253</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, A, B, B, C) \</span></div>
+<div class="line"><a name="l00254"></a><span class="lineno">  254</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, A, B, C, A) \</span></div>
+<div class="line"><a name="l00255"></a><span class="lineno">  255</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, A, B, C, B) \</span></div>
+<div class="line"><a name="l00256"></a><span class="lineno">  256</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, A, B, C, C) \</span></div>
+<div class="line"><a name="l00257"></a><span class="lineno">  257</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, A, C, A, A) \</span></div>
+<div class="line"><a name="l00258"></a><span class="lineno">  258</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, A, C, A, B) \</span></div>
+<div class="line"><a name="l00259"></a><span class="lineno">  259</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, A, C, A, C) \</span></div>
+<div class="line"><a name="l00260"></a><span class="lineno">  260</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, A, C, B, A) \</span></div>
+<div class="line"><a name="l00261"></a><span class="lineno">  261</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, A, C, B, B) \</span></div>
+<div class="line"><a name="l00262"></a><span class="lineno">  262</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, A, C, B, C) \</span></div>
+<div class="line"><a name="l00263"></a><span class="lineno">  263</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, A, C, C, A) \</span></div>
+<div class="line"><a name="l00264"></a><span class="lineno">  264</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, A, C, C, B) \</span></div>
+<div class="line"><a name="l00265"></a><span class="lineno">  265</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, A, C, C, C) \</span></div>
+<div class="line"><a name="l00266"></a><span class="lineno">  266</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, B, A, A, A) \</span></div>
+<div class="line"><a name="l00267"></a><span class="lineno">  267</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, B, A, A, B) \</span></div>
+<div class="line"><a name="l00268"></a><span class="lineno">  268</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, B, A, A, C) \</span></div>
+<div class="line"><a name="l00269"></a><span class="lineno">  269</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, B, A, B, A) \</span></div>
+<div class="line"><a name="l00270"></a><span class="lineno">  270</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, B, A, B, B) \</span></div>
+<div class="line"><a name="l00271"></a><span class="lineno">  271</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, B, A, B, C) \</span></div>
+<div class="line"><a name="l00272"></a><span class="lineno">  272</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, B, A, C, A) \</span></div>
+<div class="line"><a name="l00273"></a><span class="lineno">  273</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, B, A, C, B) \</span></div>
+<div class="line"><a name="l00274"></a><span class="lineno">  274</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, B, A, C, C) \</span></div>
+<div class="line"><a name="l00275"></a><span class="lineno">  275</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, B, B, A, A) \</span></div>
+<div class="line"><a name="l00276"></a><span class="lineno">  276</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, B, B, A, B) \</span></div>
+<div class="line"><a name="l00277"></a><span class="lineno">  277</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, B, B, A, C) \</span></div>
+<div class="line"><a name="l00278"></a><span class="lineno">  278</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, B, B, B, A) \</span></div>
+<div class="line"><a name="l00279"></a><span class="lineno">  279</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, B, B, B, B) \</span></div>
+<div class="line"><a name="l00280"></a><span class="lineno">  280</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, B, B, B, C) \</span></div>
+<div class="line"><a name="l00281"></a><span class="lineno">  281</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, B, B, C, A) \</span></div>
+<div class="line"><a name="l00282"></a><span class="lineno">  282</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, B, B, C, B) \</span></div>
+<div class="line"><a name="l00283"></a><span class="lineno">  283</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, B, B, C, C) \</span></div>
+<div class="line"><a name="l00284"></a><span class="lineno">  284</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, B, C, A, A) \</span></div>
+<div class="line"><a name="l00285"></a><span class="lineno">  285</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, B, C, A, B) \</span></div>
+<div class="line"><a name="l00286"></a><span class="lineno">  286</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, B, C, A, C) \</span></div>
+<div class="line"><a name="l00287"></a><span class="lineno">  287</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, B, C, B, A) \</span></div>
+<div class="line"><a name="l00288"></a><span class="lineno">  288</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, B, C, B, B) \</span></div>
+<div class="line"><a name="l00289"></a><span class="lineno">  289</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, B, C, B, C) \</span></div>
+<div class="line"><a name="l00290"></a><span class="lineno">  290</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, B, C, C, A) \</span></div>
+<div class="line"><a name="l00291"></a><span class="lineno">  291</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, B, C, C, B) \</span></div>
+<div class="line"><a name="l00292"></a><span class="lineno">  292</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, B, C, C, C) \</span></div>
+<div class="line"><a name="l00293"></a><span class="lineno">  293</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, C, A, A, A) \</span></div>
+<div class="line"><a name="l00294"></a><span class="lineno">  294</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, C, A, A, B) \</span></div>
+<div class="line"><a name="l00295"></a><span class="lineno">  295</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, C, A, A, C) \</span></div>
+<div class="line"><a name="l00296"></a><span class="lineno">  296</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, C, A, B, A) \</span></div>
+<div class="line"><a name="l00297"></a><span class="lineno">  297</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, C, A, B, B) \</span></div>
+<div class="line"><a name="l00298"></a><span class="lineno">  298</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, C, A, B, C) \</span></div>
+<div class="line"><a name="l00299"></a><span class="lineno">  299</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, C, A, C, A) \</span></div>
+<div class="line"><a name="l00300"></a><span class="lineno">  300</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, C, A, C, B) \</span></div>
+<div class="line"><a name="l00301"></a><span class="lineno">  301</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, C, A, C, C) \</span></div>
+<div class="line"><a name="l00302"></a><span class="lineno">  302</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, C, B, A, A) \</span></div>
+<div class="line"><a name="l00303"></a><span class="lineno">  303</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, C, B, A, B) \</span></div>
+<div class="line"><a name="l00304"></a><span class="lineno">  304</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, C, B, A, C) \</span></div>
+<div class="line"><a name="l00305"></a><span class="lineno">  305</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, C, B, B, A) \</span></div>
+<div class="line"><a name="l00306"></a><span class="lineno">  306</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, C, B, B, B) \</span></div>
+<div class="line"><a name="l00307"></a><span class="lineno">  307</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, C, B, B, C) \</span></div>
+<div class="line"><a name="l00308"></a><span class="lineno">  308</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, C, B, C, A) \</span></div>
+<div class="line"><a name="l00309"></a><span class="lineno">  309</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, C, B, C, B) \</span></div>
+<div class="line"><a name="l00310"></a><span class="lineno">  310</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, C, B, C, C) \</span></div>
+<div class="line"><a name="l00311"></a><span class="lineno">  311</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, C, C, A, A) \</span></div>
+<div class="line"><a name="l00312"></a><span class="lineno">  312</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, C, C, A, B) \</span></div>
+<div class="line"><a name="l00313"></a><span class="lineno">  313</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, C, C, A, C) \</span></div>
+<div class="line"><a name="l00314"></a><span class="lineno">  314</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, C, C, B, A) \</span></div>
+<div class="line"><a name="l00315"></a><span class="lineno">  315</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, C, C, B, B) \</span></div>
+<div class="line"><a name="l00316"></a><span class="lineno">  316</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, C, C, B, C) \</span></div>
+<div class="line"><a name="l00317"></a><span class="lineno">  317</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, C, C, C, A) \</span></div>
+<div class="line"><a name="l00318"></a><span class="lineno">  318</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, C, C, C, B) \</span></div>
+<div class="line"><a name="l00319"></a><span class="lineno">  319</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, C, C, C, C)</span></div>
+<div class="line"><a name="l00320"></a><span class="lineno">  320</span>&#160; </div>
+<div class="line"><a name="l00321"></a><span class="lineno">  321</span>&#160;<span class="preprocessor">#define GLM_SWIZZLE_GEN_VEC_FROM_VEC3_COMP(T, P, A, B, C) \</span></div>
+<div class="line"><a name="l00322"></a><span class="lineno">  322</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC2_FROM_VEC3_SWIZZLE(T, P, A, B, C) \</span></div>
+<div class="line"><a name="l00323"></a><span class="lineno">  323</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_FROM_VEC3_SWIZZLE(T, P, A, B, C) \</span></div>
+<div class="line"><a name="l00324"></a><span class="lineno">  324</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_FROM_VEC3_SWIZZLE(T, P, A, B, C)</span></div>
+<div class="line"><a name="l00325"></a><span class="lineno">  325</span>&#160; </div>
+<div class="line"><a name="l00326"></a><span class="lineno">  326</span>&#160;<span class="preprocessor">#define GLM_SWIZZLE_GEN_VEC_FROM_VEC3(T, P) \</span></div>
+<div class="line"><a name="l00327"></a><span class="lineno">  327</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC_FROM_VEC3_COMP(T, P, x, y, z) \</span></div>
+<div class="line"><a name="l00328"></a><span class="lineno">  328</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC_FROM_VEC3_COMP(T, P, r, g, b) \</span></div>
+<div class="line"><a name="l00329"></a><span class="lineno">  329</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC_FROM_VEC3_COMP(T, P, s, t, p)</span></div>
+<div class="line"><a name="l00330"></a><span class="lineno">  330</span>&#160; </div>
+<div class="line"><a name="l00331"></a><span class="lineno">  331</span>&#160;<span class="preprocessor">#define GLM_SWIZZLE_GEN_VEC2_FROM_VEC4_SWIZZLE(T, P, A, B, C, D) \</span></div>
+<div class="line"><a name="l00332"></a><span class="lineno">  332</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC2_ENTRY(T, P, const, A, A) \</span></div>
+<div class="line"><a name="l00333"></a><span class="lineno">  333</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC2_ENTRY(T, P, const, A, B) \</span></div>
+<div class="line"><a name="l00334"></a><span class="lineno">  334</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC2_ENTRY(T, P, const, A, C) \</span></div>
+<div class="line"><a name="l00335"></a><span class="lineno">  335</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC2_ENTRY(T, P, const, A, D) \</span></div>
+<div class="line"><a name="l00336"></a><span class="lineno">  336</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC2_ENTRY(T, P, const, B, A) \</span></div>
+<div class="line"><a name="l00337"></a><span class="lineno">  337</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC2_ENTRY(T, P, const, B, B) \</span></div>
+<div class="line"><a name="l00338"></a><span class="lineno">  338</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC2_ENTRY(T, P, const, B, C) \</span></div>
+<div class="line"><a name="l00339"></a><span class="lineno">  339</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC2_ENTRY(T, P, const, B, D) \</span></div>
+<div class="line"><a name="l00340"></a><span class="lineno">  340</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC2_ENTRY(T, P, const, C, A) \</span></div>
+<div class="line"><a name="l00341"></a><span class="lineno">  341</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC2_ENTRY(T, P, const, C, B) \</span></div>
+<div class="line"><a name="l00342"></a><span class="lineno">  342</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC2_ENTRY(T, P, const, C, C) \</span></div>
+<div class="line"><a name="l00343"></a><span class="lineno">  343</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC2_ENTRY(T, P, const, C, D) \</span></div>
+<div class="line"><a name="l00344"></a><span class="lineno">  344</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC2_ENTRY(T, P, const, D, A) \</span></div>
+<div class="line"><a name="l00345"></a><span class="lineno">  345</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC2_ENTRY(T, P, const, D, B) \</span></div>
+<div class="line"><a name="l00346"></a><span class="lineno">  346</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC2_ENTRY(T, P, const, D, C) \</span></div>
+<div class="line"><a name="l00347"></a><span class="lineno">  347</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC2_ENTRY(T, P, const, D, D)</span></div>
+<div class="line"><a name="l00348"></a><span class="lineno">  348</span>&#160; </div>
+<div class="line"><a name="l00349"></a><span class="lineno">  349</span>&#160;<span class="preprocessor">#define GLM_SWIZZLE_GEN_VEC3_FROM_VEC4_SWIZZLE(T, P, A, B, C, D) \</span></div>
+<div class="line"><a name="l00350"></a><span class="lineno">  350</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, const, A, A, A) \</span></div>
+<div class="line"><a name="l00351"></a><span class="lineno">  351</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, const, A, A, B) \</span></div>
+<div class="line"><a name="l00352"></a><span class="lineno">  352</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, const, A, A, C) \</span></div>
+<div class="line"><a name="l00353"></a><span class="lineno">  353</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, const, A, A, D) \</span></div>
+<div class="line"><a name="l00354"></a><span class="lineno">  354</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, const, A, B, A) \</span></div>
+<div class="line"><a name="l00355"></a><span class="lineno">  355</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, const, A, B, B) \</span></div>
+<div class="line"><a name="l00356"></a><span class="lineno">  356</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, const, A, B, C) \</span></div>
+<div class="line"><a name="l00357"></a><span class="lineno">  357</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, const, A, B, D) \</span></div>
+<div class="line"><a name="l00358"></a><span class="lineno">  358</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, const, A, C, A) \</span></div>
+<div class="line"><a name="l00359"></a><span class="lineno">  359</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, const, A, C, B) \</span></div>
+<div class="line"><a name="l00360"></a><span class="lineno">  360</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, const, A, C, C) \</span></div>
+<div class="line"><a name="l00361"></a><span class="lineno">  361</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, const, A, C, D) \</span></div>
+<div class="line"><a name="l00362"></a><span class="lineno">  362</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, const, A, D, A) \</span></div>
+<div class="line"><a name="l00363"></a><span class="lineno">  363</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, const, A, D, B) \</span></div>
+<div class="line"><a name="l00364"></a><span class="lineno">  364</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, const, A, D, C) \</span></div>
+<div class="line"><a name="l00365"></a><span class="lineno">  365</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, const, A, D, D) \</span></div>
+<div class="line"><a name="l00366"></a><span class="lineno">  366</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, const, B, A, A) \</span></div>
+<div class="line"><a name="l00367"></a><span class="lineno">  367</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, const, B, A, B) \</span></div>
+<div class="line"><a name="l00368"></a><span class="lineno">  368</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, const, B, A, C) \</span></div>
+<div class="line"><a name="l00369"></a><span class="lineno">  369</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, const, B, A, D) \</span></div>
+<div class="line"><a name="l00370"></a><span class="lineno">  370</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, const, B, B, A) \</span></div>
+<div class="line"><a name="l00371"></a><span class="lineno">  371</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, const, B, B, B) \</span></div>
+<div class="line"><a name="l00372"></a><span class="lineno">  372</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, const, B, B, C) \</span></div>
+<div class="line"><a name="l00373"></a><span class="lineno">  373</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, const, B, B, D) \</span></div>
+<div class="line"><a name="l00374"></a><span class="lineno">  374</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, const, B, C, A) \</span></div>
+<div class="line"><a name="l00375"></a><span class="lineno">  375</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, const, B, C, B) \</span></div>
+<div class="line"><a name="l00376"></a><span class="lineno">  376</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, const, B, C, C) \</span></div>
+<div class="line"><a name="l00377"></a><span class="lineno">  377</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, const, B, C, D) \</span></div>
+<div class="line"><a name="l00378"></a><span class="lineno">  378</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, const, B, D, A) \</span></div>
+<div class="line"><a name="l00379"></a><span class="lineno">  379</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, const, B, D, B) \</span></div>
+<div class="line"><a name="l00380"></a><span class="lineno">  380</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, const, B, D, C) \</span></div>
+<div class="line"><a name="l00381"></a><span class="lineno">  381</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, const, B, D, D) \</span></div>
+<div class="line"><a name="l00382"></a><span class="lineno">  382</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, const, C, A, A) \</span></div>
+<div class="line"><a name="l00383"></a><span class="lineno">  383</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, const, C, A, B) \</span></div>
+<div class="line"><a name="l00384"></a><span class="lineno">  384</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, const, C, A, C) \</span></div>
+<div class="line"><a name="l00385"></a><span class="lineno">  385</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, const, C, A, D) \</span></div>
+<div class="line"><a name="l00386"></a><span class="lineno">  386</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, const, C, B, A) \</span></div>
+<div class="line"><a name="l00387"></a><span class="lineno">  387</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, const, C, B, B) \</span></div>
+<div class="line"><a name="l00388"></a><span class="lineno">  388</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, const, C, B, C) \</span></div>
+<div class="line"><a name="l00389"></a><span class="lineno">  389</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, const, C, B, D) \</span></div>
+<div class="line"><a name="l00390"></a><span class="lineno">  390</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, const, C, C, A) \</span></div>
+<div class="line"><a name="l00391"></a><span class="lineno">  391</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, const, C, C, B) \</span></div>
+<div class="line"><a name="l00392"></a><span class="lineno">  392</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, const, C, C, C) \</span></div>
+<div class="line"><a name="l00393"></a><span class="lineno">  393</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, const, C, C, D) \</span></div>
+<div class="line"><a name="l00394"></a><span class="lineno">  394</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, const, C, D, A) \</span></div>
+<div class="line"><a name="l00395"></a><span class="lineno">  395</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, const, C, D, B) \</span></div>
+<div class="line"><a name="l00396"></a><span class="lineno">  396</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, const, C, D, C) \</span></div>
+<div class="line"><a name="l00397"></a><span class="lineno">  397</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, const, C, D, D) \</span></div>
+<div class="line"><a name="l00398"></a><span class="lineno">  398</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, const, D, A, A) \</span></div>
+<div class="line"><a name="l00399"></a><span class="lineno">  399</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, const, D, A, B) \</span></div>
+<div class="line"><a name="l00400"></a><span class="lineno">  400</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, const, D, A, C) \</span></div>
+<div class="line"><a name="l00401"></a><span class="lineno">  401</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, const, D, A, D) \</span></div>
+<div class="line"><a name="l00402"></a><span class="lineno">  402</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, const, D, B, A) \</span></div>
+<div class="line"><a name="l00403"></a><span class="lineno">  403</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, const, D, B, B) \</span></div>
+<div class="line"><a name="l00404"></a><span class="lineno">  404</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, const, D, B, C) \</span></div>
+<div class="line"><a name="l00405"></a><span class="lineno">  405</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, const, D, B, D) \</span></div>
+<div class="line"><a name="l00406"></a><span class="lineno">  406</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, const, D, C, A) \</span></div>
+<div class="line"><a name="l00407"></a><span class="lineno">  407</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, const, D, C, B) \</span></div>
+<div class="line"><a name="l00408"></a><span class="lineno">  408</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, const, D, C, C) \</span></div>
+<div class="line"><a name="l00409"></a><span class="lineno">  409</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, const, D, C, D) \</span></div>
+<div class="line"><a name="l00410"></a><span class="lineno">  410</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, const, D, D, A) \</span></div>
+<div class="line"><a name="l00411"></a><span class="lineno">  411</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, const, D, D, B) \</span></div>
+<div class="line"><a name="l00412"></a><span class="lineno">  412</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, const, D, D, C) \</span></div>
+<div class="line"><a name="l00413"></a><span class="lineno">  413</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_ENTRY(T, P, const, D, D, D)</span></div>
+<div class="line"><a name="l00414"></a><span class="lineno">  414</span>&#160; </div>
+<div class="line"><a name="l00415"></a><span class="lineno">  415</span>&#160;<span class="preprocessor">#define GLM_SWIZZLE_GEN_VEC4_FROM_VEC4_SWIZZLE(T, P, A, B, C, D) \</span></div>
+<div class="line"><a name="l00416"></a><span class="lineno">  416</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, A, A, A, A) \</span></div>
+<div class="line"><a name="l00417"></a><span class="lineno">  417</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, A, A, A, B) \</span></div>
+<div class="line"><a name="l00418"></a><span class="lineno">  418</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, A, A, A, C) \</span></div>
+<div class="line"><a name="l00419"></a><span class="lineno">  419</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, A, A, A, D) \</span></div>
+<div class="line"><a name="l00420"></a><span class="lineno">  420</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, A, A, B, A) \</span></div>
+<div class="line"><a name="l00421"></a><span class="lineno">  421</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, A, A, B, B) \</span></div>
+<div class="line"><a name="l00422"></a><span class="lineno">  422</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, A, A, B, C) \</span></div>
+<div class="line"><a name="l00423"></a><span class="lineno">  423</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, A, A, B, D) \</span></div>
+<div class="line"><a name="l00424"></a><span class="lineno">  424</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, A, A, C, A) \</span></div>
+<div class="line"><a name="l00425"></a><span class="lineno">  425</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, A, A, C, B) \</span></div>
+<div class="line"><a name="l00426"></a><span class="lineno">  426</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, A, A, C, C) \</span></div>
+<div class="line"><a name="l00427"></a><span class="lineno">  427</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, A, A, C, D) \</span></div>
+<div class="line"><a name="l00428"></a><span class="lineno">  428</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, A, A, D, A) \</span></div>
+<div class="line"><a name="l00429"></a><span class="lineno">  429</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, A, A, D, B) \</span></div>
+<div class="line"><a name="l00430"></a><span class="lineno">  430</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, A, A, D, C) \</span></div>
+<div class="line"><a name="l00431"></a><span class="lineno">  431</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, A, A, D, D) \</span></div>
+<div class="line"><a name="l00432"></a><span class="lineno">  432</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, A, B, A, A) \</span></div>
+<div class="line"><a name="l00433"></a><span class="lineno">  433</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, A, B, A, B) \</span></div>
+<div class="line"><a name="l00434"></a><span class="lineno">  434</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, A, B, A, C) \</span></div>
+<div class="line"><a name="l00435"></a><span class="lineno">  435</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, A, B, A, D) \</span></div>
+<div class="line"><a name="l00436"></a><span class="lineno">  436</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, A, B, B, A) \</span></div>
+<div class="line"><a name="l00437"></a><span class="lineno">  437</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, A, B, B, B) \</span></div>
+<div class="line"><a name="l00438"></a><span class="lineno">  438</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, A, B, B, C) \</span></div>
+<div class="line"><a name="l00439"></a><span class="lineno">  439</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, A, B, B, D) \</span></div>
+<div class="line"><a name="l00440"></a><span class="lineno">  440</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, A, B, C, A) \</span></div>
+<div class="line"><a name="l00441"></a><span class="lineno">  441</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, A, B, C, B) \</span></div>
+<div class="line"><a name="l00442"></a><span class="lineno">  442</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, A, B, C, C) \</span></div>
+<div class="line"><a name="l00443"></a><span class="lineno">  443</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, A, B, C, D) \</span></div>
+<div class="line"><a name="l00444"></a><span class="lineno">  444</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, A, B, D, A) \</span></div>
+<div class="line"><a name="l00445"></a><span class="lineno">  445</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, A, B, D, B) \</span></div>
+<div class="line"><a name="l00446"></a><span class="lineno">  446</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, A, B, D, C) \</span></div>
+<div class="line"><a name="l00447"></a><span class="lineno">  447</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, A, B, D, D) \</span></div>
+<div class="line"><a name="l00448"></a><span class="lineno">  448</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, A, C, A, A) \</span></div>
+<div class="line"><a name="l00449"></a><span class="lineno">  449</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, A, C, A, B) \</span></div>
+<div class="line"><a name="l00450"></a><span class="lineno">  450</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, A, C, A, C) \</span></div>
+<div class="line"><a name="l00451"></a><span class="lineno">  451</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, A, C, A, D) \</span></div>
+<div class="line"><a name="l00452"></a><span class="lineno">  452</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, A, C, B, A) \</span></div>
+<div class="line"><a name="l00453"></a><span class="lineno">  453</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, A, C, B, B) \</span></div>
+<div class="line"><a name="l00454"></a><span class="lineno">  454</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, A, C, B, C) \</span></div>
+<div class="line"><a name="l00455"></a><span class="lineno">  455</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, A, C, B, D) \</span></div>
+<div class="line"><a name="l00456"></a><span class="lineno">  456</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, A, C, C, A) \</span></div>
+<div class="line"><a name="l00457"></a><span class="lineno">  457</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, A, C, C, B) \</span></div>
+<div class="line"><a name="l00458"></a><span class="lineno">  458</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, A, C, C, C) \</span></div>
+<div class="line"><a name="l00459"></a><span class="lineno">  459</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, A, C, C, D) \</span></div>
+<div class="line"><a name="l00460"></a><span class="lineno">  460</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, A, C, D, A) \</span></div>
+<div class="line"><a name="l00461"></a><span class="lineno">  461</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, A, C, D, B) \</span></div>
+<div class="line"><a name="l00462"></a><span class="lineno">  462</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, A, C, D, C) \</span></div>
+<div class="line"><a name="l00463"></a><span class="lineno">  463</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, A, C, D, D) \</span></div>
+<div class="line"><a name="l00464"></a><span class="lineno">  464</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, A, D, A, A) \</span></div>
+<div class="line"><a name="l00465"></a><span class="lineno">  465</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, A, D, A, B) \</span></div>
+<div class="line"><a name="l00466"></a><span class="lineno">  466</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, A, D, A, C) \</span></div>
+<div class="line"><a name="l00467"></a><span class="lineno">  467</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, A, D, A, D) \</span></div>
+<div class="line"><a name="l00468"></a><span class="lineno">  468</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, A, D, B, A) \</span></div>
+<div class="line"><a name="l00469"></a><span class="lineno">  469</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, A, D, B, B) \</span></div>
+<div class="line"><a name="l00470"></a><span class="lineno">  470</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, A, D, B, C) \</span></div>
+<div class="line"><a name="l00471"></a><span class="lineno">  471</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, A, D, B, D) \</span></div>
+<div class="line"><a name="l00472"></a><span class="lineno">  472</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, A, D, C, A) \</span></div>
+<div class="line"><a name="l00473"></a><span class="lineno">  473</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, A, D, C, B) \</span></div>
+<div class="line"><a name="l00474"></a><span class="lineno">  474</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, A, D, C, C) \</span></div>
+<div class="line"><a name="l00475"></a><span class="lineno">  475</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, A, D, C, D) \</span></div>
+<div class="line"><a name="l00476"></a><span class="lineno">  476</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, A, D, D, A) \</span></div>
+<div class="line"><a name="l00477"></a><span class="lineno">  477</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, A, D, D, B) \</span></div>
+<div class="line"><a name="l00478"></a><span class="lineno">  478</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, A, D, D, C) \</span></div>
+<div class="line"><a name="l00479"></a><span class="lineno">  479</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, A, D, D, D) \</span></div>
+<div class="line"><a name="l00480"></a><span class="lineno">  480</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, B, A, A, A) \</span></div>
+<div class="line"><a name="l00481"></a><span class="lineno">  481</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, B, A, A, B) \</span></div>
+<div class="line"><a name="l00482"></a><span class="lineno">  482</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, B, A, A, C) \</span></div>
+<div class="line"><a name="l00483"></a><span class="lineno">  483</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, B, A, A, D) \</span></div>
+<div class="line"><a name="l00484"></a><span class="lineno">  484</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, B, A, B, A) \</span></div>
+<div class="line"><a name="l00485"></a><span class="lineno">  485</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, B, A, B, B) \</span></div>
+<div class="line"><a name="l00486"></a><span class="lineno">  486</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, B, A, B, C) \</span></div>
+<div class="line"><a name="l00487"></a><span class="lineno">  487</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, B, A, B, D) \</span></div>
+<div class="line"><a name="l00488"></a><span class="lineno">  488</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, B, A, C, A) \</span></div>
+<div class="line"><a name="l00489"></a><span class="lineno">  489</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, B, A, C, B) \</span></div>
+<div class="line"><a name="l00490"></a><span class="lineno">  490</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, B, A, C, C) \</span></div>
+<div class="line"><a name="l00491"></a><span class="lineno">  491</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, B, A, C, D) \</span></div>
+<div class="line"><a name="l00492"></a><span class="lineno">  492</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, B, A, D, A) \</span></div>
+<div class="line"><a name="l00493"></a><span class="lineno">  493</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, B, A, D, B) \</span></div>
+<div class="line"><a name="l00494"></a><span class="lineno">  494</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, B, A, D, C) \</span></div>
+<div class="line"><a name="l00495"></a><span class="lineno">  495</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, B, A, D, D) \</span></div>
+<div class="line"><a name="l00496"></a><span class="lineno">  496</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, B, B, A, A) \</span></div>
+<div class="line"><a name="l00497"></a><span class="lineno">  497</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, B, B, A, B) \</span></div>
+<div class="line"><a name="l00498"></a><span class="lineno">  498</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, B, B, A, C) \</span></div>
+<div class="line"><a name="l00499"></a><span class="lineno">  499</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, B, B, A, D) \</span></div>
+<div class="line"><a name="l00500"></a><span class="lineno">  500</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, B, B, B, A) \</span></div>
+<div class="line"><a name="l00501"></a><span class="lineno">  501</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, B, B, B, B) \</span></div>
+<div class="line"><a name="l00502"></a><span class="lineno">  502</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, B, B, B, C) \</span></div>
+<div class="line"><a name="l00503"></a><span class="lineno">  503</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, B, B, B, D) \</span></div>
+<div class="line"><a name="l00504"></a><span class="lineno">  504</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, B, B, C, A) \</span></div>
+<div class="line"><a name="l00505"></a><span class="lineno">  505</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, B, B, C, B) \</span></div>
+<div class="line"><a name="l00506"></a><span class="lineno">  506</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, B, B, C, C) \</span></div>
+<div class="line"><a name="l00507"></a><span class="lineno">  507</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, B, B, C, D) \</span></div>
+<div class="line"><a name="l00508"></a><span class="lineno">  508</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, B, B, D, A) \</span></div>
+<div class="line"><a name="l00509"></a><span class="lineno">  509</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, B, B, D, B) \</span></div>
+<div class="line"><a name="l00510"></a><span class="lineno">  510</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, B, B, D, C) \</span></div>
+<div class="line"><a name="l00511"></a><span class="lineno">  511</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, B, B, D, D) \</span></div>
+<div class="line"><a name="l00512"></a><span class="lineno">  512</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, B, C, A, A) \</span></div>
+<div class="line"><a name="l00513"></a><span class="lineno">  513</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, B, C, A, B) \</span></div>
+<div class="line"><a name="l00514"></a><span class="lineno">  514</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, B, C, A, C) \</span></div>
+<div class="line"><a name="l00515"></a><span class="lineno">  515</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, B, C, A, D) \</span></div>
+<div class="line"><a name="l00516"></a><span class="lineno">  516</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, B, C, B, A) \</span></div>
+<div class="line"><a name="l00517"></a><span class="lineno">  517</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, B, C, B, B) \</span></div>
+<div class="line"><a name="l00518"></a><span class="lineno">  518</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, B, C, B, C) \</span></div>
+<div class="line"><a name="l00519"></a><span class="lineno">  519</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, B, C, B, D) \</span></div>
+<div class="line"><a name="l00520"></a><span class="lineno">  520</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, B, C, C, A) \</span></div>
+<div class="line"><a name="l00521"></a><span class="lineno">  521</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, B, C, C, B) \</span></div>
+<div class="line"><a name="l00522"></a><span class="lineno">  522</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, B, C, C, C) \</span></div>
+<div class="line"><a name="l00523"></a><span class="lineno">  523</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, B, C, C, D) \</span></div>
+<div class="line"><a name="l00524"></a><span class="lineno">  524</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, B, C, D, A) \</span></div>
+<div class="line"><a name="l00525"></a><span class="lineno">  525</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, B, C, D, B) \</span></div>
+<div class="line"><a name="l00526"></a><span class="lineno">  526</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, B, C, D, C) \</span></div>
+<div class="line"><a name="l00527"></a><span class="lineno">  527</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, B, C, D, D) \</span></div>
+<div class="line"><a name="l00528"></a><span class="lineno">  528</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, B, D, A, A) \</span></div>
+<div class="line"><a name="l00529"></a><span class="lineno">  529</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, B, D, A, B) \</span></div>
+<div class="line"><a name="l00530"></a><span class="lineno">  530</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, B, D, A, C) \</span></div>
+<div class="line"><a name="l00531"></a><span class="lineno">  531</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, B, D, A, D) \</span></div>
+<div class="line"><a name="l00532"></a><span class="lineno">  532</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, B, D, B, A) \</span></div>
+<div class="line"><a name="l00533"></a><span class="lineno">  533</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, B, D, B, B) \</span></div>
+<div class="line"><a name="l00534"></a><span class="lineno">  534</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, B, D, B, C) \</span></div>
+<div class="line"><a name="l00535"></a><span class="lineno">  535</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, B, D, B, D) \</span></div>
+<div class="line"><a name="l00536"></a><span class="lineno">  536</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, B, D, C, A) \</span></div>
+<div class="line"><a name="l00537"></a><span class="lineno">  537</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, B, D, C, B) \</span></div>
+<div class="line"><a name="l00538"></a><span class="lineno">  538</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, B, D, C, C) \</span></div>
+<div class="line"><a name="l00539"></a><span class="lineno">  539</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, B, D, C, D) \</span></div>
+<div class="line"><a name="l00540"></a><span class="lineno">  540</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, B, D, D, A) \</span></div>
+<div class="line"><a name="l00541"></a><span class="lineno">  541</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, B, D, D, B) \</span></div>
+<div class="line"><a name="l00542"></a><span class="lineno">  542</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, B, D, D, C) \</span></div>
+<div class="line"><a name="l00543"></a><span class="lineno">  543</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, B, D, D, D) \</span></div>
+<div class="line"><a name="l00544"></a><span class="lineno">  544</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, C, A, A, A) \</span></div>
+<div class="line"><a name="l00545"></a><span class="lineno">  545</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, C, A, A, B) \</span></div>
+<div class="line"><a name="l00546"></a><span class="lineno">  546</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, C, A, A, C) \</span></div>
+<div class="line"><a name="l00547"></a><span class="lineno">  547</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, C, A, A, D) \</span></div>
+<div class="line"><a name="l00548"></a><span class="lineno">  548</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, C, A, B, A) \</span></div>
+<div class="line"><a name="l00549"></a><span class="lineno">  549</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, C, A, B, B) \</span></div>
+<div class="line"><a name="l00550"></a><span class="lineno">  550</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, C, A, B, C) \</span></div>
+<div class="line"><a name="l00551"></a><span class="lineno">  551</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, C, A, B, D) \</span></div>
+<div class="line"><a name="l00552"></a><span class="lineno">  552</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, C, A, C, A) \</span></div>
+<div class="line"><a name="l00553"></a><span class="lineno">  553</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, C, A, C, B) \</span></div>
+<div class="line"><a name="l00554"></a><span class="lineno">  554</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, C, A, C, C) \</span></div>
+<div class="line"><a name="l00555"></a><span class="lineno">  555</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, C, A, C, D) \</span></div>
+<div class="line"><a name="l00556"></a><span class="lineno">  556</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, C, A, D, A) \</span></div>
+<div class="line"><a name="l00557"></a><span class="lineno">  557</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, C, A, D, B) \</span></div>
+<div class="line"><a name="l00558"></a><span class="lineno">  558</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, C, A, D, C) \</span></div>
+<div class="line"><a name="l00559"></a><span class="lineno">  559</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, C, A, D, D) \</span></div>
+<div class="line"><a name="l00560"></a><span class="lineno">  560</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, C, B, A, A) \</span></div>
+<div class="line"><a name="l00561"></a><span class="lineno">  561</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, C, B, A, B) \</span></div>
+<div class="line"><a name="l00562"></a><span class="lineno">  562</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, C, B, A, C) \</span></div>
+<div class="line"><a name="l00563"></a><span class="lineno">  563</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, C, B, A, D) \</span></div>
+<div class="line"><a name="l00564"></a><span class="lineno">  564</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, C, B, B, A) \</span></div>
+<div class="line"><a name="l00565"></a><span class="lineno">  565</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, C, B, B, B) \</span></div>
+<div class="line"><a name="l00566"></a><span class="lineno">  566</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, C, B, B, C) \</span></div>
+<div class="line"><a name="l00567"></a><span class="lineno">  567</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, C, B, B, D) \</span></div>
+<div class="line"><a name="l00568"></a><span class="lineno">  568</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, C, B, C, A) \</span></div>
+<div class="line"><a name="l00569"></a><span class="lineno">  569</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, C, B, C, B) \</span></div>
+<div class="line"><a name="l00570"></a><span class="lineno">  570</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, C, B, C, C) \</span></div>
+<div class="line"><a name="l00571"></a><span class="lineno">  571</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, C, B, C, D) \</span></div>
+<div class="line"><a name="l00572"></a><span class="lineno">  572</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, C, B, D, A) \</span></div>
+<div class="line"><a name="l00573"></a><span class="lineno">  573</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, C, B, D, B) \</span></div>
+<div class="line"><a name="l00574"></a><span class="lineno">  574</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, C, B, D, C) \</span></div>
+<div class="line"><a name="l00575"></a><span class="lineno">  575</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, C, B, D, D) \</span></div>
+<div class="line"><a name="l00576"></a><span class="lineno">  576</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, C, C, A, A) \</span></div>
+<div class="line"><a name="l00577"></a><span class="lineno">  577</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, C, C, A, B) \</span></div>
+<div class="line"><a name="l00578"></a><span class="lineno">  578</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, C, C, A, C) \</span></div>
+<div class="line"><a name="l00579"></a><span class="lineno">  579</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, C, C, A, D) \</span></div>
+<div class="line"><a name="l00580"></a><span class="lineno">  580</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, C, C, B, A) \</span></div>
+<div class="line"><a name="l00581"></a><span class="lineno">  581</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, C, C, B, B) \</span></div>
+<div class="line"><a name="l00582"></a><span class="lineno">  582</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, C, C, B, C) \</span></div>
+<div class="line"><a name="l00583"></a><span class="lineno">  583</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, C, C, B, D) \</span></div>
+<div class="line"><a name="l00584"></a><span class="lineno">  584</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, C, C, C, A) \</span></div>
+<div class="line"><a name="l00585"></a><span class="lineno">  585</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, C, C, C, B) \</span></div>
+<div class="line"><a name="l00586"></a><span class="lineno">  586</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, C, C, C, C) \</span></div>
+<div class="line"><a name="l00587"></a><span class="lineno">  587</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, C, C, C, D) \</span></div>
+<div class="line"><a name="l00588"></a><span class="lineno">  588</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, C, C, D, A) \</span></div>
+<div class="line"><a name="l00589"></a><span class="lineno">  589</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, C, C, D, B) \</span></div>
+<div class="line"><a name="l00590"></a><span class="lineno">  590</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, C, C, D, C) \</span></div>
+<div class="line"><a name="l00591"></a><span class="lineno">  591</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, C, C, D, D) \</span></div>
+<div class="line"><a name="l00592"></a><span class="lineno">  592</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, C, D, A, A) \</span></div>
+<div class="line"><a name="l00593"></a><span class="lineno">  593</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, C, D, A, B) \</span></div>
+<div class="line"><a name="l00594"></a><span class="lineno">  594</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, C, D, A, C) \</span></div>
+<div class="line"><a name="l00595"></a><span class="lineno">  595</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, C, D, A, D) \</span></div>
+<div class="line"><a name="l00596"></a><span class="lineno">  596</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, C, D, B, A) \</span></div>
+<div class="line"><a name="l00597"></a><span class="lineno">  597</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, C, D, B, B) \</span></div>
+<div class="line"><a name="l00598"></a><span class="lineno">  598</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, C, D, B, C) \</span></div>
+<div class="line"><a name="l00599"></a><span class="lineno">  599</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, C, D, B, D) \</span></div>
+<div class="line"><a name="l00600"></a><span class="lineno">  600</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, C, D, C, A) \</span></div>
+<div class="line"><a name="l00601"></a><span class="lineno">  601</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, C, D, C, B) \</span></div>
+<div class="line"><a name="l00602"></a><span class="lineno">  602</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, C, D, C, C) \</span></div>
+<div class="line"><a name="l00603"></a><span class="lineno">  603</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, C, D, C, D) \</span></div>
+<div class="line"><a name="l00604"></a><span class="lineno">  604</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, C, D, D, A) \</span></div>
+<div class="line"><a name="l00605"></a><span class="lineno">  605</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, C, D, D, B) \</span></div>
+<div class="line"><a name="l00606"></a><span class="lineno">  606</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, C, D, D, C) \</span></div>
+<div class="line"><a name="l00607"></a><span class="lineno">  607</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, C, D, D, D) \</span></div>
+<div class="line"><a name="l00608"></a><span class="lineno">  608</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, D, A, A, A) \</span></div>
+<div class="line"><a name="l00609"></a><span class="lineno">  609</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, D, A, A, B) \</span></div>
+<div class="line"><a name="l00610"></a><span class="lineno">  610</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, D, A, A, C) \</span></div>
+<div class="line"><a name="l00611"></a><span class="lineno">  611</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, D, A, A, D) \</span></div>
+<div class="line"><a name="l00612"></a><span class="lineno">  612</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, D, A, B, A) \</span></div>
+<div class="line"><a name="l00613"></a><span class="lineno">  613</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, D, A, B, B) \</span></div>
+<div class="line"><a name="l00614"></a><span class="lineno">  614</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, D, A, B, C) \</span></div>
+<div class="line"><a name="l00615"></a><span class="lineno">  615</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, D, A, B, D) \</span></div>
+<div class="line"><a name="l00616"></a><span class="lineno">  616</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, D, A, C, A) \</span></div>
+<div class="line"><a name="l00617"></a><span class="lineno">  617</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, D, A, C, B) \</span></div>
+<div class="line"><a name="l00618"></a><span class="lineno">  618</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, D, A, C, C) \</span></div>
+<div class="line"><a name="l00619"></a><span class="lineno">  619</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, D, A, C, D) \</span></div>
+<div class="line"><a name="l00620"></a><span class="lineno">  620</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, D, A, D, A) \</span></div>
+<div class="line"><a name="l00621"></a><span class="lineno">  621</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, D, A, D, B) \</span></div>
+<div class="line"><a name="l00622"></a><span class="lineno">  622</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, D, A, D, C) \</span></div>
+<div class="line"><a name="l00623"></a><span class="lineno">  623</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, D, A, D, D) \</span></div>
+<div class="line"><a name="l00624"></a><span class="lineno">  624</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, D, B, A, A) \</span></div>
+<div class="line"><a name="l00625"></a><span class="lineno">  625</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, D, B, A, B) \</span></div>
+<div class="line"><a name="l00626"></a><span class="lineno">  626</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, D, B, A, C) \</span></div>
+<div class="line"><a name="l00627"></a><span class="lineno">  627</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, D, B, A, D) \</span></div>
+<div class="line"><a name="l00628"></a><span class="lineno">  628</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, D, B, B, A) \</span></div>
+<div class="line"><a name="l00629"></a><span class="lineno">  629</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, D, B, B, B) \</span></div>
+<div class="line"><a name="l00630"></a><span class="lineno">  630</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, D, B, B, C) \</span></div>
+<div class="line"><a name="l00631"></a><span class="lineno">  631</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, D, B, B, D) \</span></div>
+<div class="line"><a name="l00632"></a><span class="lineno">  632</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, D, B, C, A) \</span></div>
+<div class="line"><a name="l00633"></a><span class="lineno">  633</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, D, B, C, B) \</span></div>
+<div class="line"><a name="l00634"></a><span class="lineno">  634</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, D, B, C, C) \</span></div>
+<div class="line"><a name="l00635"></a><span class="lineno">  635</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, D, B, C, D) \</span></div>
+<div class="line"><a name="l00636"></a><span class="lineno">  636</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, D, B, D, A) \</span></div>
+<div class="line"><a name="l00637"></a><span class="lineno">  637</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, D, B, D, B) \</span></div>
+<div class="line"><a name="l00638"></a><span class="lineno">  638</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, D, B, D, C) \</span></div>
+<div class="line"><a name="l00639"></a><span class="lineno">  639</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, D, B, D, D) \</span></div>
+<div class="line"><a name="l00640"></a><span class="lineno">  640</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, D, C, A, A) \</span></div>
+<div class="line"><a name="l00641"></a><span class="lineno">  641</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, D, C, A, B) \</span></div>
+<div class="line"><a name="l00642"></a><span class="lineno">  642</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, D, C, A, C) \</span></div>
+<div class="line"><a name="l00643"></a><span class="lineno">  643</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, D, C, A, D) \</span></div>
+<div class="line"><a name="l00644"></a><span class="lineno">  644</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, D, C, B, A) \</span></div>
+<div class="line"><a name="l00645"></a><span class="lineno">  645</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, D, C, B, B) \</span></div>
+<div class="line"><a name="l00646"></a><span class="lineno">  646</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, D, C, B, C) \</span></div>
+<div class="line"><a name="l00647"></a><span class="lineno">  647</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, D, C, B, D) \</span></div>
+<div class="line"><a name="l00648"></a><span class="lineno">  648</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, D, C, C, A) \</span></div>
+<div class="line"><a name="l00649"></a><span class="lineno">  649</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, D, C, C, B) \</span></div>
+<div class="line"><a name="l00650"></a><span class="lineno">  650</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, D, C, C, C) \</span></div>
+<div class="line"><a name="l00651"></a><span class="lineno">  651</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, D, C, C, D) \</span></div>
+<div class="line"><a name="l00652"></a><span class="lineno">  652</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, D, C, D, A) \</span></div>
+<div class="line"><a name="l00653"></a><span class="lineno">  653</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, D, C, D, B) \</span></div>
+<div class="line"><a name="l00654"></a><span class="lineno">  654</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, D, C, D, C) \</span></div>
+<div class="line"><a name="l00655"></a><span class="lineno">  655</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, D, C, D, D) \</span></div>
+<div class="line"><a name="l00656"></a><span class="lineno">  656</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, D, D, A, A) \</span></div>
+<div class="line"><a name="l00657"></a><span class="lineno">  657</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, D, D, A, B) \</span></div>
+<div class="line"><a name="l00658"></a><span class="lineno">  658</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, D, D, A, C) \</span></div>
+<div class="line"><a name="l00659"></a><span class="lineno">  659</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, D, D, A, D) \</span></div>
+<div class="line"><a name="l00660"></a><span class="lineno">  660</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, D, D, B, A) \</span></div>
+<div class="line"><a name="l00661"></a><span class="lineno">  661</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, D, D, B, B) \</span></div>
+<div class="line"><a name="l00662"></a><span class="lineno">  662</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, D, D, B, C) \</span></div>
+<div class="line"><a name="l00663"></a><span class="lineno">  663</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, D, D, B, D) \</span></div>
+<div class="line"><a name="l00664"></a><span class="lineno">  664</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, D, D, C, A) \</span></div>
+<div class="line"><a name="l00665"></a><span class="lineno">  665</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, D, D, C, B) \</span></div>
+<div class="line"><a name="l00666"></a><span class="lineno">  666</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, D, D, C, C) \</span></div>
+<div class="line"><a name="l00667"></a><span class="lineno">  667</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, D, D, C, D) \</span></div>
+<div class="line"><a name="l00668"></a><span class="lineno">  668</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, D, D, D, A) \</span></div>
+<div class="line"><a name="l00669"></a><span class="lineno">  669</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, D, D, D, B) \</span></div>
+<div class="line"><a name="l00670"></a><span class="lineno">  670</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, D, D, D, C) \</span></div>
+<div class="line"><a name="l00671"></a><span class="lineno">  671</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_ENTRY(T, P, const, D, D, D, D)</span></div>
+<div class="line"><a name="l00672"></a><span class="lineno">  672</span>&#160; </div>
+<div class="line"><a name="l00673"></a><span class="lineno">  673</span>&#160;<span class="preprocessor">#define GLM_SWIZZLE_GEN_VEC_FROM_VEC4_COMP(T, P, A, B, C, D) \</span></div>
+<div class="line"><a name="l00674"></a><span class="lineno">  674</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC2_FROM_VEC4_SWIZZLE(T, P, A, B, C, D) \</span></div>
+<div class="line"><a name="l00675"></a><span class="lineno">  675</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC3_FROM_VEC4_SWIZZLE(T, P, A, B, C, D) \</span></div>
+<div class="line"><a name="l00676"></a><span class="lineno">  676</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC4_FROM_VEC4_SWIZZLE(T, P, A, B, C, D)</span></div>
+<div class="line"><a name="l00677"></a><span class="lineno">  677</span>&#160; </div>
+<div class="line"><a name="l00678"></a><span class="lineno">  678</span>&#160;<span class="preprocessor">#define GLM_SWIZZLE_GEN_VEC_FROM_VEC4(T, P) \</span></div>
+<div class="line"><a name="l00679"></a><span class="lineno">  679</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC_FROM_VEC4_COMP(T, P, x, y, z, w) \</span></div>
+<div class="line"><a name="l00680"></a><span class="lineno">  680</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC_FROM_VEC4_COMP(T, P, r, g, b, a) \</span></div>
+<div class="line"><a name="l00681"></a><span class="lineno">  681</span>&#160;<span class="preprocessor">        GLM_SWIZZLE_GEN_VEC_FROM_VEC4_COMP(T, P, s, t, p, q)</span></div>
+<div class="line"><a name="l00682"></a><span class="lineno">  682</span>&#160; </div>
 </div><!-- fragment --></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.10
+</a> 1.8.18
 </small></address>
 </body>
 </html>

+ 0 - 145
doc/api/a00018_source.html

@@ -1,145 +0,0 @@
-<!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.10"/>
-<title>0.9.9 API documentation: component_wise.hpp Source File</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="search/search.css" rel="stylesheet" type="text/css"/>
-<script type="text/javascript" src="search/searchdata.js"></script>
-<script type="text/javascript" src="search/search.js"></script>
-<script type="text/javascript">
-  $(document).ready(function() { init_search(); });
-</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 id="projectlogo"><img alt="Logo" src="logo-mini.png"/></td>
-  <td id="projectalign" style="padding-left: 0.5em;">
-   <div id="projectname">0.9.9 API documentation
-   </div>
-  </td>
- </tr>
- </tbody>
-</table>
-</div>
-<!-- end header part -->
-<!-- Generated by Doxygen 1.8.10 -->
-<script type="text/javascript">
-var searchBox = new SearchBox("searchBox", "search",false,'Search');
-</script>
-  <div id="navrow1" class="tabs">
-    <ul class="tablist">
-      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
-      <li><a href="modules.html"><span>Modules</span></a></li>
-      <li class="current"><a href="files.html"><span>Files</span></a></li>
-      <li>
-        <div id="MSearchBox" class="MSearchBoxInactive">
-        <span class="left">
-          <img id="MSearchSelect" src="search/mag_sel.png"
-               onmouseover="return searchBox.OnSearchSelectShow()"
-               onmouseout="return searchBox.OnSearchSelectHide()"
-               alt=""/>
-          <input type="text" id="MSearchField" value="Search" accesskey="S"
-               onfocus="searchBox.OnSearchFieldFocus(true)" 
-               onblur="searchBox.OnSearchFieldFocus(false)" 
-               onkeyup="searchBox.OnSearchFieldChange(event)"/>
-          </span><span class="right">
-            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
-          </span>
-        </div>
-      </li>
-    </ul>
-  </div>
-  <div id="navrow2" class="tabs2">
-    <ul class="tablist">
-      <li><a href="files.html"><span>File&#160;List</span></a></li>
-    </ul>
-  </div>
-<!-- window showing the filter options -->
-<div id="MSearchSelectWindow"
-     onmouseover="return searchBox.OnSearchSelectShow()"
-     onmouseout="return searchBox.OnSearchSelectHide()"
-     onkeydown="return searchBox.OnSearchSelectKey(event)">
-</div>
-
-<!-- iframe showing the search results (closed by default) -->
-<div id="MSearchResultsWindow">
-<iframe src="javascript:void(0)" frameborder="0" 
-        name="MSearchResults" id="MSearchResults">
-</iframe>
-</div>
-
-<div id="nav-path" class="navpath">
-  <ul>
-<li class="navelem"><a class="el" href="dir_3a581ba30d25676e4b797b1f96d53b45.html">F:</a></li><li class="navelem"><a class="el" href="dir_9e5fe034a00e89334fd5186c3e7db156.html">G-Truc</a></li><li class="navelem"><a class="el" href="dir_d9496f0844b48bc7e53b5af8c99b9ab2.html">Source</a></li><li class="navelem"><a class="el" href="dir_a8bee7be44182a33f3820393ae0b105d.html">G-Truc</a></li><li class="navelem"><a class="el" href="dir_44e5e654415abd9ca6fdeaddaff8565e.html">glm</a></li><li class="navelem"><a class="el" href="dir_cef2d71d502cb69a9252bca2297d9549.html">glm</a></li><li class="navelem"><a class="el" href="dir_f35778ec600a1b9bbc4524e62e226aa2.html">gtx</a></li>  </ul>
-</div>
-</div><!-- top -->
-<div class="header">
-  <div class="headertitle">
-<div class="title">component_wise.hpp</div>  </div>
-</div><!--header-->
-<div class="contents">
-<a href="a00018.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span>&#160;</div>
-<div class="line"><a name="l00015"></a><span class="lineno">   15</span>&#160;<span class="preprocessor">#pragma once</span></div>
-<div class="line"><a name="l00016"></a><span class="lineno">   16</span>&#160;</div>
-<div class="line"><a name="l00017"></a><span class="lineno">   17</span>&#160;<span class="comment">// Dependencies</span></div>
-<div class="line"><a name="l00018"></a><span class="lineno">   18</span>&#160;<span class="preprocessor">#include &quot;../detail/setup.hpp&quot;</span></div>
-<div class="line"><a name="l00019"></a><span class="lineno">   19</span>&#160;<span class="preprocessor">#include &quot;../detail/qualifier.hpp&quot;</span></div>
-<div class="line"><a name="l00020"></a><span class="lineno">   20</span>&#160;</div>
-<div class="line"><a name="l00021"></a><span class="lineno">   21</span>&#160;<span class="preprocessor">#if GLM_MESSAGES == GLM_ENABLE &amp;&amp; !defined(GLM_EXT_INCLUDED)</span></div>
-<div class="line"><a name="l00022"></a><span class="lineno">   22</span>&#160;<span class="preprocessor">#       ifndef GLM_ENABLE_EXPERIMENTAL</span></div>
-<div class="line"><a name="l00023"></a><span class="lineno">   23</span>&#160;<span class="preprocessor">#               pragma message(&quot;GLM: GLM_GTX_component_wise is an experimental extension and may change in the future. Use #define GLM_ENABLE_EXPERIMENTAL before including it, if you really want to use it.&quot;)</span></div>
-<div class="line"><a name="l00024"></a><span class="lineno">   24</span>&#160;<span class="preprocessor">#       else</span></div>
-<div class="line"><a name="l00025"></a><span class="lineno">   25</span>&#160;<span class="preprocessor">#               pragma message(&quot;GLM: GLM_GTX_component_wise extension included&quot;)</span></div>
-<div class="line"><a name="l00026"></a><span class="lineno">   26</span>&#160;<span class="preprocessor">#       endif</span></div>
-<div class="line"><a name="l00027"></a><span class="lineno">   27</span>&#160;<span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00028"></a><span class="lineno">   28</span>&#160;</div>
-<div class="line"><a name="l00029"></a><span class="lineno">   29</span>&#160;<span class="keyword">namespace </span><a class="code" href="a00236.html">glm</a></div>
-<div class="line"><a name="l00030"></a><span class="lineno">   30</span>&#160;{</div>
-<div class="line"><a name="l00033"></a><span class="lineno">   33</span>&#160;</div>
-<div class="line"><a name="l00037"></a><span class="lineno">   37</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> <span class="keywordtype">float</span>Type, length_t L, <span class="keyword">typename</span> T, qualifier Q&gt;</div>
-<div class="line"><a name="l00038"></a><span class="lineno">   38</span>&#160;        GLM_FUNC_DECL vec&lt;L, floatType, Q&gt; <a class="code" href="a00316.html#ga8f2b81ada8515875e58cb1667b6b9908">compNormalize</a>(vec&lt;L, T, Q&gt; <span class="keyword">const</span>&amp; v);</div>
-<div class="line"><a name="l00039"></a><span class="lineno">   39</span>&#160;</div>
-<div class="line"><a name="l00043"></a><span class="lineno">   43</span>&#160;        <span class="keyword">template</span>&lt;length_t L, <span class="keyword">typename</span> T, <span class="keyword">typename</span> <span class="keywordtype">float</span>Type, qualifier Q&gt;</div>
-<div class="line"><a name="l00044"></a><span class="lineno">   44</span>&#160;        GLM_FUNC_DECL vec&lt;L, T, Q&gt; <a class="code" href="a00316.html#ga80abc2980d65d675f435d178c36880eb">compScale</a>(vec&lt;L, floatType, Q&gt; <span class="keyword">const</span>&amp; v);</div>
-<div class="line"><a name="l00045"></a><span class="lineno">   45</span>&#160;</div>
-<div class="line"><a name="l00048"></a><span class="lineno">   48</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> genType&gt;</div>
-<div class="line"><a name="l00049"></a><span class="lineno">   49</span>&#160;        GLM_FUNC_DECL <span class="keyword">typename</span> genType::value_type <a class="code" href="a00316.html#gaf71833350e15e74d31cbf8a3e7f27051">compAdd</a>(genType <span class="keyword">const</span>&amp; v);</div>
-<div class="line"><a name="l00050"></a><span class="lineno">   50</span>&#160;</div>
-<div class="line"><a name="l00053"></a><span class="lineno">   53</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> genType&gt;</div>
-<div class="line"><a name="l00054"></a><span class="lineno">   54</span>&#160;        GLM_FUNC_DECL <span class="keyword">typename</span> genType::value_type <a class="code" href="a00316.html#gae8ab88024197202c9479d33bdc5a8a5d">compMul</a>(genType <span class="keyword">const</span>&amp; v);</div>
-<div class="line"><a name="l00055"></a><span class="lineno">   55</span>&#160;</div>
-<div class="line"><a name="l00058"></a><span class="lineno">   58</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> genType&gt;</div>
-<div class="line"><a name="l00059"></a><span class="lineno">   59</span>&#160;        GLM_FUNC_DECL <span class="keyword">typename</span> genType::value_type <a class="code" href="a00316.html#gab5d0832b5c7bb01b8d7395973bfb1425">compMin</a>(genType <span class="keyword">const</span>&amp; v);</div>
-<div class="line"><a name="l00060"></a><span class="lineno">   60</span>&#160;</div>
-<div class="line"><a name="l00063"></a><span class="lineno">   63</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> genType&gt;</div>
-<div class="line"><a name="l00064"></a><span class="lineno">   64</span>&#160;        GLM_FUNC_DECL <span class="keyword">typename</span> genType::value_type <a class="code" href="a00316.html#gabfa4bb19298c8c73d4217ba759c496b6">compMax</a>(genType <span class="keyword">const</span>&amp; v);</div>
-<div class="line"><a name="l00065"></a><span class="lineno">   65</span>&#160;</div>
-<div class="line"><a name="l00067"></a><span class="lineno">   67</span>&#160;}<span class="comment">//namespace glm</span></div>
-<div class="line"><a name="l00068"></a><span class="lineno">   68</span>&#160;</div>
-<div class="line"><a name="l00069"></a><span class="lineno">   69</span>&#160;<span class="preprocessor">#include &quot;component_wise.inl&quot;</span></div>
-<div class="ttc" id="a00316_html_gabfa4bb19298c8c73d4217ba759c496b6"><div class="ttname"><a href="a00316.html#gabfa4bb19298c8c73d4217ba759c496b6">glm::compMax</a></div><div class="ttdeci">GLM_FUNC_DECL genType::value_type compMax(genType const &amp;v)</div><div class="ttdoc">Find the maximum value between single vector components. </div></div>
-<div class="ttc" id="a00316_html_gae8ab88024197202c9479d33bdc5a8a5d"><div class="ttname"><a href="a00316.html#gae8ab88024197202c9479d33bdc5a8a5d">glm::compMul</a></div><div class="ttdeci">GLM_FUNC_DECL genType::value_type compMul(genType const &amp;v)</div><div class="ttdoc">Multiply all vector components together. </div></div>
-<div class="ttc" id="a00316_html_ga80abc2980d65d675f435d178c36880eb"><div class="ttname"><a href="a00316.html#ga80abc2980d65d675f435d178c36880eb">glm::compScale</a></div><div class="ttdeci">GLM_FUNC_DECL vec&lt; L, T, Q &gt; compScale(vec&lt; L, floatType, Q &gt; const &amp;v)</div><div class="ttdoc">Convert a normalized float vector to an integer vector. </div></div>
-<div class="ttc" id="a00316_html_ga8f2b81ada8515875e58cb1667b6b9908"><div class="ttname"><a href="a00316.html#ga8f2b81ada8515875e58cb1667b6b9908">glm::compNormalize</a></div><div class="ttdeci">GLM_FUNC_DECL vec&lt; L, floatType, Q &gt; compNormalize(vec&lt; L, T, Q &gt; const &amp;v)</div><div class="ttdoc">Convert an integer vector to a normalized float vector. </div></div>
-<div class="ttc" id="a00316_html_gab5d0832b5c7bb01b8d7395973bfb1425"><div class="ttname"><a href="a00316.html#gab5d0832b5c7bb01b8d7395973bfb1425">glm::compMin</a></div><div class="ttdeci">GLM_FUNC_DECL genType::value_type compMin(genType const &amp;v)</div><div class="ttdoc">Find the minimum value between single vector components. </div></div>
-<div class="ttc" id="a00316_html_gaf71833350e15e74d31cbf8a3e7f27051"><div class="ttname"><a href="a00316.html#gaf71833350e15e74d31cbf8a3e7f27051">glm::compAdd</a></div><div class="ttdeci">GLM_FUNC_DECL genType::value_type compAdd(genType const &amp;v)</div><div class="ttdoc">Add all vector components together. </div></div>
-<div class="ttc" id="a00236_html"><div class="ttname"><a href="a00236.html">glm</a></div><div class="ttdef"><b>Definition:</b> <a href="a00015_source.html#l00020">common.hpp:20</a></div></div>
-</div><!-- fragment --></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.10
-</small></address>
-</body>
-</html>

+ 0 - 150
doc/api/a00019_source.html

@@ -1,150 +0,0 @@
-<!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.10"/>
-<title>0.9.9 API documentation: compute_common.hpp Source File</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="search/search.css" rel="stylesheet" type="text/css"/>
-<script type="text/javascript" src="search/searchdata.js"></script>
-<script type="text/javascript" src="search/search.js"></script>
-<script type="text/javascript">
-  $(document).ready(function() { init_search(); });
-</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 id="projectlogo"><img alt="Logo" src="logo-mini.png"/></td>
-  <td id="projectalign" style="padding-left: 0.5em;">
-   <div id="projectname">0.9.9 API documentation
-   </div>
-  </td>
- </tr>
- </tbody>
-</table>
-</div>
-<!-- end header part -->
-<!-- Generated by Doxygen 1.8.10 -->
-<script type="text/javascript">
-var searchBox = new SearchBox("searchBox", "search",false,'Search');
-</script>
-  <div id="navrow1" class="tabs">
-    <ul class="tablist">
-      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
-      <li><a href="modules.html"><span>Modules</span></a></li>
-      <li class="current"><a href="files.html"><span>Files</span></a></li>
-      <li>
-        <div id="MSearchBox" class="MSearchBoxInactive">
-        <span class="left">
-          <img id="MSearchSelect" src="search/mag_sel.png"
-               onmouseover="return searchBox.OnSearchSelectShow()"
-               onmouseout="return searchBox.OnSearchSelectHide()"
-               alt=""/>
-          <input type="text" id="MSearchField" value="Search" accesskey="S"
-               onfocus="searchBox.OnSearchFieldFocus(true)" 
-               onblur="searchBox.OnSearchFieldFocus(false)" 
-               onkeyup="searchBox.OnSearchFieldChange(event)"/>
-          </span><span class="right">
-            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
-          </span>
-        </div>
-      </li>
-    </ul>
-  </div>
-  <div id="navrow2" class="tabs2">
-    <ul class="tablist">
-      <li><a href="files.html"><span>File&#160;List</span></a></li>
-    </ul>
-  </div>
-<!-- window showing the filter options -->
-<div id="MSearchSelectWindow"
-     onmouseover="return searchBox.OnSearchSelectShow()"
-     onmouseout="return searchBox.OnSearchSelectHide()"
-     onkeydown="return searchBox.OnSearchSelectKey(event)">
-</div>
-
-<!-- iframe showing the search results (closed by default) -->
-<div id="MSearchResultsWindow">
-<iframe src="javascript:void(0)" frameborder="0" 
-        name="MSearchResults" id="MSearchResults">
-</iframe>
-</div>
-
-<div id="nav-path" class="navpath">
-  <ul>
-<li class="navelem"><a class="el" href="dir_3a581ba30d25676e4b797b1f96d53b45.html">F:</a></li><li class="navelem"><a class="el" href="dir_9e5fe034a00e89334fd5186c3e7db156.html">G-Truc</a></li><li class="navelem"><a class="el" href="dir_d9496f0844b48bc7e53b5af8c99b9ab2.html">Source</a></li><li class="navelem"><a class="el" href="dir_a8bee7be44182a33f3820393ae0b105d.html">G-Truc</a></li><li class="navelem"><a class="el" href="dir_44e5e654415abd9ca6fdeaddaff8565e.html">glm</a></li><li class="navelem"><a class="el" href="dir_cef2d71d502cb69a9252bca2297d9549.html">glm</a></li><li class="navelem"><a class="el" href="dir_033f5edb0915b828d2c46ed4804e5503.html">detail</a></li>  </ul>
-</div>
-</div><!-- top -->
-<div class="header">
-  <div class="headertitle">
-<div class="title">compute_common.hpp</div>  </div>
-</div><!--header-->
-<div class="contents">
-<div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span>&#160;<span class="preprocessor">#pragma once</span></div>
-<div class="line"><a name="l00002"></a><span class="lineno">    2</span>&#160;</div>
-<div class="line"><a name="l00003"></a><span class="lineno">    3</span>&#160;<span class="preprocessor">#include &quot;setup.hpp&quot;</span></div>
-<div class="line"><a name="l00004"></a><span class="lineno">    4</span>&#160;<span class="preprocessor">#include &lt;limits&gt;</span></div>
-<div class="line"><a name="l00005"></a><span class="lineno">    5</span>&#160;</div>
-<div class="line"><a name="l00006"></a><span class="lineno">    6</span>&#160;<span class="keyword">namespace </span><a class="code" href="a00236.html">glm</a>{</div>
-<div class="line"><a name="l00007"></a><span class="lineno">    7</span>&#160;<span class="keyword">namespace </span>detail</div>
-<div class="line"><a name="l00008"></a><span class="lineno">    8</span>&#160;{</div>
-<div class="line"><a name="l00009"></a><span class="lineno">    9</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> genFIType, <span class="keywordtype">bool</span> <span class="comment">/*signed*/</span>&gt;</div>
-<div class="line"><a name="l00010"></a><span class="lineno">   10</span>&#160;        <span class="keyword">struct </span>compute_abs</div>
-<div class="line"><a name="l00011"></a><span class="lineno">   11</span>&#160;        {};</div>
-<div class="line"><a name="l00012"></a><span class="lineno">   12</span>&#160;</div>
-<div class="line"><a name="l00013"></a><span class="lineno">   13</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> genFIType&gt;</div>
-<div class="line"><a name="l00014"></a><span class="lineno">   14</span>&#160;        <span class="keyword">struct </span>compute_abs&lt;genFIType, true&gt;</div>
-<div class="line"><a name="l00015"></a><span class="lineno">   15</span>&#160;        {</div>
-<div class="line"><a name="l00016"></a><span class="lineno">   16</span>&#160;                GLM_FUNC_QUALIFIER GLM_CONSTEXPR <span class="keyword">static</span> genFIType call(genFIType x)</div>
-<div class="line"><a name="l00017"></a><span class="lineno">   17</span>&#160;                {</div>
-<div class="line"><a name="l00018"></a><span class="lineno">   18</span>&#160;                        GLM_STATIC_ASSERT(</div>
-<div class="line"><a name="l00019"></a><span class="lineno">   19</span>&#160;                                std::numeric_limits&lt;genFIType&gt;::is_iec559 || std::numeric_limits&lt;genFIType&gt;::is_signed,</div>
-<div class="line"><a name="l00020"></a><span class="lineno">   20</span>&#160;                                <span class="stringliteral">&quot;&#39;abs&#39; only accept floating-point and integer scalar or vector inputs&quot;</span>);</div>
-<div class="line"><a name="l00021"></a><span class="lineno">   21</span>&#160;</div>
-<div class="line"><a name="l00022"></a><span class="lineno">   22</span>&#160;                        <span class="keywordflow">return</span> x &gt;= genFIType(0) ? x : -x;</div>
-<div class="line"><a name="l00023"></a><span class="lineno">   23</span>&#160;                        <span class="comment">// TODO, perf comp with: *(((int *) &amp;x) + 1) &amp;= 0x7fffffff;</span></div>
-<div class="line"><a name="l00024"></a><span class="lineno">   24</span>&#160;                }</div>
-<div class="line"><a name="l00025"></a><span class="lineno">   25</span>&#160;        };</div>
-<div class="line"><a name="l00026"></a><span class="lineno">   26</span>&#160;</div>
-<div class="line"><a name="l00027"></a><span class="lineno">   27</span>&#160;<span class="preprocessor">#if GLM_COMPILER &amp; GLM_COMPILER_CUDA</span></div>
-<div class="line"><a name="l00028"></a><span class="lineno">   28</span>&#160;        <span class="keyword">template</span>&lt;&gt;</div>
-<div class="line"><a name="l00029"></a><span class="lineno">   29</span>&#160;        <span class="keyword">struct </span>compute_abs&lt;float, true&gt;</div>
-<div class="line"><a name="l00030"></a><span class="lineno">   30</span>&#160;        {</div>
-<div class="line"><a name="l00031"></a><span class="lineno">   31</span>&#160;                GLM_FUNC_QUALIFIER GLM_CONSTEXPR <span class="keyword">static</span> <span class="keywordtype">float</span> call(<span class="keywordtype">float</span> x)</div>
-<div class="line"><a name="l00032"></a><span class="lineno">   32</span>&#160;                {</div>
-<div class="line"><a name="l00033"></a><span class="lineno">   33</span>&#160;                        <span class="keywordflow">return</span> fabsf(x);</div>
-<div class="line"><a name="l00034"></a><span class="lineno">   34</span>&#160;                }</div>
-<div class="line"><a name="l00035"></a><span class="lineno">   35</span>&#160;        };</div>
-<div class="line"><a name="l00036"></a><span class="lineno">   36</span>&#160;<span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00037"></a><span class="lineno">   37</span>&#160;</div>
-<div class="line"><a name="l00038"></a><span class="lineno">   38</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> genFIType&gt;</div>
-<div class="line"><a name="l00039"></a><span class="lineno">   39</span>&#160;        <span class="keyword">struct </span>compute_abs&lt;genFIType, false&gt;</div>
-<div class="line"><a name="l00040"></a><span class="lineno">   40</span>&#160;        {</div>
-<div class="line"><a name="l00041"></a><span class="lineno">   41</span>&#160;                GLM_FUNC_QUALIFIER GLM_CONSTEXPR <span class="keyword">static</span> genFIType call(genFIType x)</div>
-<div class="line"><a name="l00042"></a><span class="lineno">   42</span>&#160;                {</div>
-<div class="line"><a name="l00043"></a><span class="lineno">   43</span>&#160;                        GLM_STATIC_ASSERT(</div>
-<div class="line"><a name="l00044"></a><span class="lineno">   44</span>&#160;                                (!std::numeric_limits&lt;genFIType&gt;::is_signed &amp;&amp; std::numeric_limits&lt;genFIType&gt;::is_integer),</div>
-<div class="line"><a name="l00045"></a><span class="lineno">   45</span>&#160;                                <span class="stringliteral">&quot;&#39;abs&#39; only accept floating-point and integer scalar or vector inputs&quot;</span>);</div>
-<div class="line"><a name="l00046"></a><span class="lineno">   46</span>&#160;                        <span class="keywordflow">return</span> x;</div>
-<div class="line"><a name="l00047"></a><span class="lineno">   47</span>&#160;                }</div>
-<div class="line"><a name="l00048"></a><span class="lineno">   48</span>&#160;        };</div>
-<div class="line"><a name="l00049"></a><span class="lineno">   49</span>&#160;}<span class="comment">//namespace detail</span></div>
-<div class="line"><a name="l00050"></a><span class="lineno">   50</span>&#160;}<span class="comment">//namespace glm</span></div>
-<div class="ttc" id="a00236_html"><div class="ttname"><a href="a00236.html">glm</a></div><div class="ttdef"><b>Definition:</b> <a href="a00015_source.html#l00020">common.hpp:20</a></div></div>
-</div><!-- fragment --></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.10
-</small></address>
-</body>
-</html>

+ 182 - 69
doc/api/a00020_source.html

@@ -1,19 +1,17 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://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.10"/>
-<title>0.9.9 API documentation: compute_vector_relational.hpp Source File</title>
+<meta name="generator" content="Doxygen 1.8.18"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>1.0.0 API documentation: _vectorize.hpp Source File</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="search/search.css" rel="stylesheet" type="text/css"/>
 <script type="text/javascript" src="search/searchdata.js"></script>
 <script type="text/javascript" src="search/search.js"></script>
-<script type="text/javascript">
-  $(document).ready(function() { init_search(); });
-</script>
 <link href="doxygen.css" rel="stylesheet" type="text/css" />
 </head>
 <body>
@@ -24,7 +22,7 @@
  <tr style="height: 56px;">
   <td id="projectlogo"><img alt="Logo" src="logo-mini.png"/></td>
   <td id="projectalign" style="padding-left: 0.5em;">
-   <div id="projectname">0.9.9 API documentation
+   <div id="projectname">1.0.0 API documentation
    </div>
   </td>
  </tr>
@@ -32,38 +30,22 @@
 </table>
 </div>
 <!-- end header part -->
-<!-- Generated by Doxygen 1.8.10 -->
+<!-- Generated by Doxygen 1.8.18 -->
 <script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
 var searchBox = new SearchBox("searchBox", "search",false,'Search');
+/* @license-end */
 </script>
-  <div id="navrow1" class="tabs">
-    <ul class="tablist">
-      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
-      <li><a href="modules.html"><span>Modules</span></a></li>
-      <li class="current"><a href="files.html"><span>Files</span></a></li>
-      <li>
-        <div id="MSearchBox" class="MSearchBoxInactive">
-        <span class="left">
-          <img id="MSearchSelect" src="search/mag_sel.png"
-               onmouseover="return searchBox.OnSearchSelectShow()"
-               onmouseout="return searchBox.OnSearchSelectHide()"
-               alt=""/>
-          <input type="text" id="MSearchField" value="Search" accesskey="S"
-               onfocus="searchBox.OnSearchFieldFocus(true)" 
-               onblur="searchBox.OnSearchFieldFocus(false)" 
-               onkeyup="searchBox.OnSearchFieldChange(event)"/>
-          </span><span class="right">
-            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
-          </span>
-        </div>
-      </li>
-    </ul>
-  </div>
-  <div id="navrow2" class="tabs2">
-    <ul class="tablist">
-      <li><a href="files.html"><span>File&#160;List</span></a></li>
-    </ul>
-  </div>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
 <!-- window showing the filter options -->
 <div id="MSearchSelectWindow"
      onmouseover="return searchBox.OnSearchSelectShow()"
@@ -80,51 +62,182 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 
 <div id="nav-path" class="navpath">
   <ul>
-<li class="navelem"><a class="el" href="dir_3a581ba30d25676e4b797b1f96d53b45.html">F:</a></li><li class="navelem"><a class="el" href="dir_9e5fe034a00e89334fd5186c3e7db156.html">G-Truc</a></li><li class="navelem"><a class="el" href="dir_d9496f0844b48bc7e53b5af8c99b9ab2.html">Source</a></li><li class="navelem"><a class="el" href="dir_a8bee7be44182a33f3820393ae0b105d.html">G-Truc</a></li><li class="navelem"><a class="el" href="dir_44e5e654415abd9ca6fdeaddaff8565e.html">glm</a></li><li class="navelem"><a class="el" href="dir_cef2d71d502cb69a9252bca2297d9549.html">glm</a></li><li class="navelem"><a class="el" href="dir_033f5edb0915b828d2c46ed4804e5503.html">detail</a></li>  </ul>
+<li class="navelem"><a class="el" href="dir_885cc87fac2d91e269af0a5a959fa5f6.html">E:</a></li><li class="navelem"><a class="el" href="dir_63ed049134a778d525e06b63afc2c979.html">Github</a></li><li class="navelem"><a class="el" href="dir_c98a9ac98258ab9f831b188d66361a70.html">g-truc</a></li><li class="navelem"><a class="el" href="dir_50f12b6ceb23d7f6adfb377a1ae8b006.html">glm</a></li><li class="navelem"><a class="el" href="dir_fca33f1b5115d46f42c670590789c0d2.html">glm</a></li><li class="navelem"><a class="el" href="dir_382f4fd018b81be8753cb53c0a41a09a.html">detail</a></li>  </ul>
 </div>
 </div><!-- top -->
 <div class="header">
   <div class="headertitle">
-<div class="title">compute_vector_relational.hpp</div>  </div>
+<div class="title">_vectorize.hpp</div>  </div>
 </div><!--header-->
 <div class="contents">
 <div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span>&#160;<span class="preprocessor">#pragma once</span></div>
-<div class="line"><a name="l00002"></a><span class="lineno">    2</span>&#160;</div>
-<div class="line"><a name="l00003"></a><span class="lineno">    3</span>&#160;<span class="comment">//#include &quot;compute_common.hpp&quot;</span></div>
-<div class="line"><a name="l00004"></a><span class="lineno">    4</span>&#160;<span class="preprocessor">#include &quot;setup.hpp&quot;</span></div>
-<div class="line"><a name="l00005"></a><span class="lineno">    5</span>&#160;<span class="preprocessor">#include &lt;limits&gt;</span></div>
-<div class="line"><a name="l00006"></a><span class="lineno">    6</span>&#160;</div>
-<div class="line"><a name="l00007"></a><span class="lineno">    7</span>&#160;<span class="keyword">namespace </span><a class="code" href="a00236.html">glm</a>{</div>
-<div class="line"><a name="l00008"></a><span class="lineno">    8</span>&#160;<span class="keyword">namespace </span>detail</div>
-<div class="line"><a name="l00009"></a><span class="lineno">    9</span>&#160;{</div>
-<div class="line"><a name="l00010"></a><span class="lineno">   10</span>&#160;        <span class="keyword">template</span> &lt;<span class="keyword">typename</span> T, <span class="keywordtype">bool</span> isFloat&gt;</div>
-<div class="line"><a name="l00011"></a><span class="lineno">   11</span>&#160;        <span class="keyword">struct </span>compute_equal</div>
-<div class="line"><a name="l00012"></a><span class="lineno">   12</span>&#160;        {</div>
-<div class="line"><a name="l00013"></a><span class="lineno">   13</span>&#160;                GLM_FUNC_QUALIFIER GLM_CONSTEXPR <span class="keyword">static</span> <span class="keywordtype">bool</span> call(T a, T b)</div>
-<div class="line"><a name="l00014"></a><span class="lineno">   14</span>&#160;                {</div>
-<div class="line"><a name="l00015"></a><span class="lineno">   15</span>&#160;                        <span class="keywordflow">return</span> a == b;</div>
-<div class="line"><a name="l00016"></a><span class="lineno">   16</span>&#160;                }</div>
-<div class="line"><a name="l00017"></a><span class="lineno">   17</span>&#160;        };</div>
-<div class="line"><a name="l00018"></a><span class="lineno">   18</span>&#160;<span class="comment">/*</span></div>
-<div class="line"><a name="l00019"></a><span class="lineno">   19</span>&#160;<span class="comment">        template &lt;typename T&gt;</span></div>
-<div class="line"><a name="l00020"></a><span class="lineno">   20</span>&#160;<span class="comment">        struct compute_equal&lt;T, true&gt;</span></div>
-<div class="line"><a name="l00021"></a><span class="lineno">   21</span>&#160;<span class="comment">        {</span></div>
-<div class="line"><a name="l00022"></a><span class="lineno">   22</span>&#160;<span class="comment">                GLM_FUNC_QUALIFIER GLM_CONSTEXPR static bool call(T a, T b)</span></div>
-<div class="line"><a name="l00023"></a><span class="lineno">   23</span>&#160;<span class="comment">                {</span></div>
-<div class="line"><a name="l00024"></a><span class="lineno">   24</span>&#160;<span class="comment">                        return detail::compute_abs&lt;T, std::numeric_limits&lt;T&gt;::is_signed&gt;::call(b - a) &lt;= static_cast&lt;T&gt;(0);</span></div>
-<div class="line"><a name="l00025"></a><span class="lineno">   25</span>&#160;<span class="comment">                        //return std::memcmp(&amp;a, &amp;b, sizeof(T)) == 0;</span></div>
-<div class="line"><a name="l00026"></a><span class="lineno">   26</span>&#160;<span class="comment">                }</span></div>
-<div class="line"><a name="l00027"></a><span class="lineno">   27</span>&#160;<span class="comment">        };</span></div>
-<div class="line"><a name="l00028"></a><span class="lineno">   28</span>&#160;<span class="comment">*/</span></div>
-<div class="line"><a name="l00029"></a><span class="lineno">   29</span>&#160;}<span class="comment">//namespace detail</span></div>
-<div class="line"><a name="l00030"></a><span class="lineno">   30</span>&#160;}<span class="comment">//namespace glm</span></div>
-<div class="ttc" id="a00236_html"><div class="ttname"><a href="a00236.html">glm</a></div><div class="ttdef"><b>Definition:</b> <a href="a00015_source.html#l00020">common.hpp:20</a></div></div>
+<div class="line"><a name="l00002"></a><span class="lineno">    2</span>&#160; </div>
+<div class="line"><a name="l00003"></a><span class="lineno">    3</span>&#160;<span class="keyword">namespace </span>glm{</div>
+<div class="line"><a name="l00004"></a><span class="lineno">    4</span>&#160;<span class="keyword">namespace </span>detail</div>
+<div class="line"><a name="l00005"></a><span class="lineno">    5</span>&#160;{</div>
+<div class="line"><a name="l00006"></a><span class="lineno">    6</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">template</span>&lt;length_t L, <span class="keyword">typename</span> T, qualifier Q&gt; <span class="keyword">class </span>vec, length_t L, <span class="keyword">typename</span> R, <span class="keyword">typename</span> T, qualifier Q&gt;</div>
+<div class="line"><a name="l00007"></a><span class="lineno">    7</span>&#160;        <span class="keyword">struct </span>functor1{};</div>
+<div class="line"><a name="l00008"></a><span class="lineno">    8</span>&#160; </div>
+<div class="line"><a name="l00009"></a><span class="lineno">    9</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">template</span>&lt;length_t L, <span class="keyword">typename</span> T, qualifier Q&gt; <span class="keyword">class </span>vec, <span class="keyword">typename</span> R, <span class="keyword">typename</span> T, qualifier Q&gt;</div>
+<div class="line"><a name="l00010"></a><span class="lineno">   10</span>&#160;        <span class="keyword">struct </span>functor1&lt;vec, 1, R, T, Q&gt;</div>
+<div class="line"><a name="l00011"></a><span class="lineno">   11</span>&#160;        {</div>
+<div class="line"><a name="l00012"></a><span class="lineno">   12</span>&#160;                GLM_FUNC_QUALIFIER GLM_CONSTEXPR <span class="keyword">static</span> vec&lt;1, R, Q&gt; call(R (*Func) (T x), vec&lt;1, T, Q&gt; <span class="keyword">const</span>&amp; v)</div>
+<div class="line"><a name="l00013"></a><span class="lineno">   13</span>&#160;                {</div>
+<div class="line"><a name="l00014"></a><span class="lineno">   14</span>&#160;                        <span class="keywordflow">return</span> vec&lt;1, R, Q&gt;(Func(v.x));</div>
+<div class="line"><a name="l00015"></a><span class="lineno">   15</span>&#160;                }</div>
+<div class="line"><a name="l00016"></a><span class="lineno">   16</span>&#160;        };</div>
+<div class="line"><a name="l00017"></a><span class="lineno">   17</span>&#160; </div>
+<div class="line"><a name="l00018"></a><span class="lineno">   18</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">template</span>&lt;length_t L, <span class="keyword">typename</span> T, qualifier Q&gt; <span class="keyword">class </span>vec, <span class="keyword">typename</span> R, <span class="keyword">typename</span> T, qualifier Q&gt;</div>
+<div class="line"><a name="l00019"></a><span class="lineno">   19</span>&#160;        <span class="keyword">struct </span>functor1&lt;vec, 2, R, T, Q&gt;</div>
+<div class="line"><a name="l00020"></a><span class="lineno">   20</span>&#160;        {</div>
+<div class="line"><a name="l00021"></a><span class="lineno">   21</span>&#160;                GLM_FUNC_QUALIFIER GLM_CONSTEXPR <span class="keyword">static</span> vec&lt;2, R, Q&gt; call(R (*Func) (T x), vec&lt;2, T, Q&gt; <span class="keyword">const</span>&amp; v)</div>
+<div class="line"><a name="l00022"></a><span class="lineno">   22</span>&#160;                {</div>
+<div class="line"><a name="l00023"></a><span class="lineno">   23</span>&#160;                        <span class="keywordflow">return</span> vec&lt;2, R, Q&gt;(Func(v.x), Func(v.y));</div>
+<div class="line"><a name="l00024"></a><span class="lineno">   24</span>&#160;                }</div>
+<div class="line"><a name="l00025"></a><span class="lineno">   25</span>&#160;        };</div>
+<div class="line"><a name="l00026"></a><span class="lineno">   26</span>&#160; </div>
+<div class="line"><a name="l00027"></a><span class="lineno">   27</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">template</span>&lt;length_t L, <span class="keyword">typename</span> T, qualifier Q&gt; <span class="keyword">class </span>vec, <span class="keyword">typename</span> R, <span class="keyword">typename</span> T, qualifier Q&gt;</div>
+<div class="line"><a name="l00028"></a><span class="lineno">   28</span>&#160;        <span class="keyword">struct </span>functor1&lt;vec, 3, R, T, Q&gt;</div>
+<div class="line"><a name="l00029"></a><span class="lineno">   29</span>&#160;        {</div>
+<div class="line"><a name="l00030"></a><span class="lineno">   30</span>&#160;                GLM_FUNC_QUALIFIER GLM_CONSTEXPR <span class="keyword">static</span> vec&lt;3, R, Q&gt; call(R (*Func) (T x), vec&lt;3, T, Q&gt; <span class="keyword">const</span>&amp; v)</div>
+<div class="line"><a name="l00031"></a><span class="lineno">   31</span>&#160;                {</div>
+<div class="line"><a name="l00032"></a><span class="lineno">   32</span>&#160;                        <span class="keywordflow">return</span> vec&lt;3, R, Q&gt;(Func(v.x), Func(v.y), Func(v.z));</div>
+<div class="line"><a name="l00033"></a><span class="lineno">   33</span>&#160;                }</div>
+<div class="line"><a name="l00034"></a><span class="lineno">   34</span>&#160;        };</div>
+<div class="line"><a name="l00035"></a><span class="lineno">   35</span>&#160; </div>
+<div class="line"><a name="l00036"></a><span class="lineno">   36</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">template</span>&lt;length_t L, <span class="keyword">typename</span> T, qualifier Q&gt; <span class="keyword">class </span>vec, <span class="keyword">typename</span> R, <span class="keyword">typename</span> T, qualifier Q&gt;</div>
+<div class="line"><a name="l00037"></a><span class="lineno">   37</span>&#160;        <span class="keyword">struct </span>functor1&lt;vec, 4, R, T, Q&gt;</div>
+<div class="line"><a name="l00038"></a><span class="lineno">   38</span>&#160;        {</div>
+<div class="line"><a name="l00039"></a><span class="lineno">   39</span>&#160;                GLM_FUNC_QUALIFIER GLM_CONSTEXPR <span class="keyword">static</span> vec&lt;4, R, Q&gt; call(R (*Func) (T x), vec&lt;4, T, Q&gt; <span class="keyword">const</span>&amp; v)</div>
+<div class="line"><a name="l00040"></a><span class="lineno">   40</span>&#160;                {</div>
+<div class="line"><a name="l00041"></a><span class="lineno">   41</span>&#160;                        <span class="keywordflow">return</span> vec&lt;4, R, Q&gt;(Func(v.x), Func(v.y), Func(v.z), Func(v.w));</div>
+<div class="line"><a name="l00042"></a><span class="lineno">   42</span>&#160;                }</div>
+<div class="line"><a name="l00043"></a><span class="lineno">   43</span>&#160;        };</div>
+<div class="line"><a name="l00044"></a><span class="lineno">   44</span>&#160; </div>
+<div class="line"><a name="l00045"></a><span class="lineno">   45</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">template</span>&lt;length_t L, <span class="keyword">typename</span> T, qualifier Q&gt; <span class="keyword">class </span>vec, length_t L, <span class="keyword">typename</span> T, qualifier Q&gt;</div>
+<div class="line"><a name="l00046"></a><span class="lineno">   46</span>&#160;        <span class="keyword">struct </span>functor2{};</div>
+<div class="line"><a name="l00047"></a><span class="lineno">   47</span>&#160; </div>
+<div class="line"><a name="l00048"></a><span class="lineno">   48</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">template</span>&lt;length_t L, <span class="keyword">typename</span> T, qualifier Q&gt; <span class="keyword">class </span>vec, <span class="keyword">typename</span> T, qualifier Q&gt;</div>
+<div class="line"><a name="l00049"></a><span class="lineno">   49</span>&#160;        <span class="keyword">struct </span>functor2&lt;vec, 1, T, Q&gt;</div>
+<div class="line"><a name="l00050"></a><span class="lineno">   50</span>&#160;        {</div>
+<div class="line"><a name="l00051"></a><span class="lineno">   51</span>&#160;                GLM_FUNC_QUALIFIER <span class="keyword">static</span> vec&lt;1, T, Q&gt; call(T (*Func) (T x, T y), vec&lt;1, T, Q&gt; <span class="keyword">const</span>&amp; a, vec&lt;1, T, Q&gt; <span class="keyword">const</span>&amp; b)</div>
+<div class="line"><a name="l00052"></a><span class="lineno">   52</span>&#160;                {</div>
+<div class="line"><a name="l00053"></a><span class="lineno">   53</span>&#160;                        <span class="keywordflow">return</span> vec&lt;1, T, Q&gt;(Func(a.x, b.x));</div>
+<div class="line"><a name="l00054"></a><span class="lineno">   54</span>&#160;                }</div>
+<div class="line"><a name="l00055"></a><span class="lineno">   55</span>&#160;        };</div>
+<div class="line"><a name="l00056"></a><span class="lineno">   56</span>&#160; </div>
+<div class="line"><a name="l00057"></a><span class="lineno">   57</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">template</span>&lt;length_t L, <span class="keyword">typename</span> T, qualifier Q&gt; <span class="keyword">class </span>vec, <span class="keyword">typename</span> T, qualifier Q&gt;</div>
+<div class="line"><a name="l00058"></a><span class="lineno">   58</span>&#160;        <span class="keyword">struct </span>functor2&lt;vec, 2, T, Q&gt;</div>
+<div class="line"><a name="l00059"></a><span class="lineno">   59</span>&#160;        {</div>
+<div class="line"><a name="l00060"></a><span class="lineno">   60</span>&#160;                GLM_FUNC_QUALIFIER <span class="keyword">static</span> vec&lt;2, T, Q&gt; call(T (*Func) (T x, T y), vec&lt;2, T, Q&gt; <span class="keyword">const</span>&amp; a, vec&lt;2, T, Q&gt; <span class="keyword">const</span>&amp; b)</div>
+<div class="line"><a name="l00061"></a><span class="lineno">   61</span>&#160;                {</div>
+<div class="line"><a name="l00062"></a><span class="lineno">   62</span>&#160;                        <span class="keywordflow">return</span> vec&lt;2, T, Q&gt;(Func(a.x, b.x), Func(a.y, b.y));</div>
+<div class="line"><a name="l00063"></a><span class="lineno">   63</span>&#160;                }</div>
+<div class="line"><a name="l00064"></a><span class="lineno">   64</span>&#160;        };</div>
+<div class="line"><a name="l00065"></a><span class="lineno">   65</span>&#160; </div>
+<div class="line"><a name="l00066"></a><span class="lineno">   66</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">template</span>&lt;length_t L, <span class="keyword">typename</span> T, qualifier Q&gt; <span class="keyword">class </span>vec, <span class="keyword">typename</span> T, qualifier Q&gt;</div>
+<div class="line"><a name="l00067"></a><span class="lineno">   67</span>&#160;        <span class="keyword">struct </span>functor2&lt;vec, 3, T, Q&gt;</div>
+<div class="line"><a name="l00068"></a><span class="lineno">   68</span>&#160;        {</div>
+<div class="line"><a name="l00069"></a><span class="lineno">   69</span>&#160;                GLM_FUNC_QUALIFIER <span class="keyword">static</span> vec&lt;3, T, Q&gt; call(T (*Func) (T x, T y), vec&lt;3, T, Q&gt; <span class="keyword">const</span>&amp; a, vec&lt;3, T, Q&gt; <span class="keyword">const</span>&amp; b)</div>
+<div class="line"><a name="l00070"></a><span class="lineno">   70</span>&#160;                {</div>
+<div class="line"><a name="l00071"></a><span class="lineno">   71</span>&#160;                        <span class="keywordflow">return</span> vec&lt;3, T, Q&gt;(Func(a.x, b.x), Func(a.y, b.y), Func(a.z, b.z));</div>
+<div class="line"><a name="l00072"></a><span class="lineno">   72</span>&#160;                }</div>
+<div class="line"><a name="l00073"></a><span class="lineno">   73</span>&#160;        };</div>
+<div class="line"><a name="l00074"></a><span class="lineno">   74</span>&#160; </div>
+<div class="line"><a name="l00075"></a><span class="lineno">   75</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">template</span>&lt;length_t L, <span class="keyword">typename</span> T, qualifier Q&gt; <span class="keyword">class </span>vec, <span class="keyword">typename</span> T, qualifier Q&gt;</div>
+<div class="line"><a name="l00076"></a><span class="lineno">   76</span>&#160;        <span class="keyword">struct </span>functor2&lt;vec, 4, T, Q&gt;</div>
+<div class="line"><a name="l00077"></a><span class="lineno">   77</span>&#160;        {</div>
+<div class="line"><a name="l00078"></a><span class="lineno">   78</span>&#160;                GLM_FUNC_QUALIFIER <span class="keyword">static</span> vec&lt;4, T, Q&gt; call(T (*Func) (T x, T y), vec&lt;4, T, Q&gt; <span class="keyword">const</span>&amp; a, vec&lt;4, T, Q&gt; <span class="keyword">const</span>&amp; b)</div>
+<div class="line"><a name="l00079"></a><span class="lineno">   79</span>&#160;                {</div>
+<div class="line"><a name="l00080"></a><span class="lineno">   80</span>&#160;                        <span class="keywordflow">return</span> vec&lt;4, T, Q&gt;(Func(a.x, b.x), Func(a.y, b.y), Func(a.z, b.z), Func(a.w, b.w));</div>
+<div class="line"><a name="l00081"></a><span class="lineno">   81</span>&#160;                }</div>
+<div class="line"><a name="l00082"></a><span class="lineno">   82</span>&#160;        };</div>
+<div class="line"><a name="l00083"></a><span class="lineno">   83</span>&#160; </div>
+<div class="line"><a name="l00084"></a><span class="lineno">   84</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">template</span>&lt;length_t L, <span class="keyword">typename</span> T, qualifier Q&gt; <span class="keyword">class </span>vec, length_t L, <span class="keyword">typename</span> T, qualifier Q&gt;</div>
+<div class="line"><a name="l00085"></a><span class="lineno">   85</span>&#160;        <span class="keyword">struct </span>functor2_vec_sca{};</div>
+<div class="line"><a name="l00086"></a><span class="lineno">   86</span>&#160; </div>
+<div class="line"><a name="l00087"></a><span class="lineno">   87</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">template</span>&lt;length_t L, <span class="keyword">typename</span> T, qualifier Q&gt; <span class="keyword">class </span>vec, <span class="keyword">typename</span> T, qualifier Q&gt;</div>
+<div class="line"><a name="l00088"></a><span class="lineno">   88</span>&#160;        <span class="keyword">struct </span>functor2_vec_sca&lt;vec, 1, T, Q&gt;</div>
+<div class="line"><a name="l00089"></a><span class="lineno">   89</span>&#160;        {</div>
+<div class="line"><a name="l00090"></a><span class="lineno">   90</span>&#160;                GLM_FUNC_QUALIFIER <span class="keyword">static</span> vec&lt;1, T, Q&gt; call(T (*Func) (T x, T y), vec&lt;1, T, Q&gt; <span class="keyword">const</span>&amp; a, T b)</div>
+<div class="line"><a name="l00091"></a><span class="lineno">   91</span>&#160;                {</div>
+<div class="line"><a name="l00092"></a><span class="lineno">   92</span>&#160;                        <span class="keywordflow">return</span> vec&lt;1, T, Q&gt;(Func(a.x, b));</div>
+<div class="line"><a name="l00093"></a><span class="lineno">   93</span>&#160;                }</div>
+<div class="line"><a name="l00094"></a><span class="lineno">   94</span>&#160;        };</div>
+<div class="line"><a name="l00095"></a><span class="lineno">   95</span>&#160; </div>
+<div class="line"><a name="l00096"></a><span class="lineno">   96</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">template</span>&lt;length_t L, <span class="keyword">typename</span> T, qualifier Q&gt; <span class="keyword">class </span>vec, <span class="keyword">typename</span> T, qualifier Q&gt;</div>
+<div class="line"><a name="l00097"></a><span class="lineno">   97</span>&#160;        <span class="keyword">struct </span>functor2_vec_sca&lt;vec, 2, T, Q&gt;</div>
+<div class="line"><a name="l00098"></a><span class="lineno">   98</span>&#160;        {</div>
+<div class="line"><a name="l00099"></a><span class="lineno">   99</span>&#160;                GLM_FUNC_QUALIFIER <span class="keyword">static</span> vec&lt;2, T, Q&gt; call(T (*Func) (T x, T y), vec&lt;2, T, Q&gt; <span class="keyword">const</span>&amp; a, T b)</div>
+<div class="line"><a name="l00100"></a><span class="lineno">  100</span>&#160;                {</div>
+<div class="line"><a name="l00101"></a><span class="lineno">  101</span>&#160;                        <span class="keywordflow">return</span> vec&lt;2, T, Q&gt;(Func(a.x, b), Func(a.y, b));</div>
+<div class="line"><a name="l00102"></a><span class="lineno">  102</span>&#160;                }</div>
+<div class="line"><a name="l00103"></a><span class="lineno">  103</span>&#160;        };</div>
+<div class="line"><a name="l00104"></a><span class="lineno">  104</span>&#160; </div>
+<div class="line"><a name="l00105"></a><span class="lineno">  105</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">template</span>&lt;length_t L, <span class="keyword">typename</span> T, qualifier Q&gt; <span class="keyword">class </span>vec, <span class="keyword">typename</span> T, qualifier Q&gt;</div>
+<div class="line"><a name="l00106"></a><span class="lineno">  106</span>&#160;        <span class="keyword">struct </span>functor2_vec_sca&lt;vec, 3, T, Q&gt;</div>
+<div class="line"><a name="l00107"></a><span class="lineno">  107</span>&#160;        {</div>
+<div class="line"><a name="l00108"></a><span class="lineno">  108</span>&#160;                GLM_FUNC_QUALIFIER <span class="keyword">static</span> vec&lt;3, T, Q&gt; call(T (*Func) (T x, T y), vec&lt;3, T, Q&gt; <span class="keyword">const</span>&amp; a, T b)</div>
+<div class="line"><a name="l00109"></a><span class="lineno">  109</span>&#160;                {</div>
+<div class="line"><a name="l00110"></a><span class="lineno">  110</span>&#160;                        <span class="keywordflow">return</span> vec&lt;3, T, Q&gt;(Func(a.x, b), Func(a.y, b), Func(a.z, b));</div>
+<div class="line"><a name="l00111"></a><span class="lineno">  111</span>&#160;                }</div>
+<div class="line"><a name="l00112"></a><span class="lineno">  112</span>&#160;        };</div>
+<div class="line"><a name="l00113"></a><span class="lineno">  113</span>&#160; </div>
+<div class="line"><a name="l00114"></a><span class="lineno">  114</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">template</span>&lt;length_t L, <span class="keyword">typename</span> T, qualifier Q&gt; <span class="keyword">class </span>vec, <span class="keyword">typename</span> T, qualifier Q&gt;</div>
+<div class="line"><a name="l00115"></a><span class="lineno">  115</span>&#160;        <span class="keyword">struct </span>functor2_vec_sca&lt;vec, 4, T, Q&gt;</div>
+<div class="line"><a name="l00116"></a><span class="lineno">  116</span>&#160;        {</div>
+<div class="line"><a name="l00117"></a><span class="lineno">  117</span>&#160;                GLM_FUNC_QUALIFIER <span class="keyword">static</span> vec&lt;4, T, Q&gt; call(T (*Func) (T x, T y), vec&lt;4, T, Q&gt; <span class="keyword">const</span>&amp; a, T b)</div>
+<div class="line"><a name="l00118"></a><span class="lineno">  118</span>&#160;                {</div>
+<div class="line"><a name="l00119"></a><span class="lineno">  119</span>&#160;                        <span class="keywordflow">return</span> vec&lt;4, T, Q&gt;(Func(a.x, b), Func(a.y, b), Func(a.z, b), Func(a.w, b));</div>
+<div class="line"><a name="l00120"></a><span class="lineno">  120</span>&#160;                }</div>
+<div class="line"><a name="l00121"></a><span class="lineno">  121</span>&#160;        };</div>
+<div class="line"><a name="l00122"></a><span class="lineno">  122</span>&#160; </div>
+<div class="line"><a name="l00123"></a><span class="lineno">  123</span>&#160;        <span class="keyword">template</span>&lt;length_t L, <span class="keyword">typename</span> T, qualifier Q&gt;</div>
+<div class="line"><a name="l00124"></a><span class="lineno">  124</span>&#160;        <span class="keyword">struct </span>functor2_vec_int {};</div>
+<div class="line"><a name="l00125"></a><span class="lineno">  125</span>&#160; </div>
+<div class="line"><a name="l00126"></a><span class="lineno">  126</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T, qualifier Q&gt;</div>
+<div class="line"><a name="l00127"></a><span class="lineno">  127</span>&#160;        <span class="keyword">struct </span>functor2_vec_int&lt;1, T, Q&gt;</div>
+<div class="line"><a name="l00128"></a><span class="lineno">  128</span>&#160;        {</div>
+<div class="line"><a name="l00129"></a><span class="lineno">  129</span>&#160;                GLM_FUNC_QUALIFIER <span class="keyword">static</span> vec&lt;1, int, Q&gt; call(<span class="keywordtype">int</span> (*Func) (T x, <span class="keywordtype">int</span> y), vec&lt;1, T, Q&gt; <span class="keyword">const</span>&amp; a, vec&lt;1, int, Q&gt; <span class="keyword">const</span>&amp; b)</div>
+<div class="line"><a name="l00130"></a><span class="lineno">  130</span>&#160;                {</div>
+<div class="line"><a name="l00131"></a><span class="lineno">  131</span>&#160;                        <span class="keywordflow">return</span> vec&lt;1, int, Q&gt;(Func(a.x, b.x));</div>
+<div class="line"><a name="l00132"></a><span class="lineno">  132</span>&#160;                }</div>
+<div class="line"><a name="l00133"></a><span class="lineno">  133</span>&#160;        };</div>
+<div class="line"><a name="l00134"></a><span class="lineno">  134</span>&#160; </div>
+<div class="line"><a name="l00135"></a><span class="lineno">  135</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T, qualifier Q&gt;</div>
+<div class="line"><a name="l00136"></a><span class="lineno">  136</span>&#160;        <span class="keyword">struct </span>functor2_vec_int&lt;2, T, Q&gt;</div>
+<div class="line"><a name="l00137"></a><span class="lineno">  137</span>&#160;        {</div>
+<div class="line"><a name="l00138"></a><span class="lineno">  138</span>&#160;                GLM_FUNC_QUALIFIER <span class="keyword">static</span> vec&lt;2, int, Q&gt; call(<span class="keywordtype">int</span> (*Func) (T x, <span class="keywordtype">int</span> y), vec&lt;2, T, Q&gt; <span class="keyword">const</span>&amp; a, vec&lt;2, int, Q&gt; <span class="keyword">const</span>&amp; b)</div>
+<div class="line"><a name="l00139"></a><span class="lineno">  139</span>&#160;                {</div>
+<div class="line"><a name="l00140"></a><span class="lineno">  140</span>&#160;                        <span class="keywordflow">return</span> vec&lt;2, int, Q&gt;(Func(a.x, b.x), Func(a.y, b.y));</div>
+<div class="line"><a name="l00141"></a><span class="lineno">  141</span>&#160;                }</div>
+<div class="line"><a name="l00142"></a><span class="lineno">  142</span>&#160;        };</div>
+<div class="line"><a name="l00143"></a><span class="lineno">  143</span>&#160; </div>
+<div class="line"><a name="l00144"></a><span class="lineno">  144</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T, qualifier Q&gt;</div>
+<div class="line"><a name="l00145"></a><span class="lineno">  145</span>&#160;        <span class="keyword">struct </span>functor2_vec_int&lt;3, T, Q&gt;</div>
+<div class="line"><a name="l00146"></a><span class="lineno">  146</span>&#160;        {</div>
+<div class="line"><a name="l00147"></a><span class="lineno">  147</span>&#160;                GLM_FUNC_QUALIFIER <span class="keyword">static</span> vec&lt;3, int, Q&gt; call(<span class="keywordtype">int</span> (*Func) (T x, <span class="keywordtype">int</span> y), vec&lt;3, T, Q&gt; <span class="keyword">const</span>&amp; a, vec&lt;3, int, Q&gt; <span class="keyword">const</span>&amp; b)</div>
+<div class="line"><a name="l00148"></a><span class="lineno">  148</span>&#160;                {</div>
+<div class="line"><a name="l00149"></a><span class="lineno">  149</span>&#160;                        <span class="keywordflow">return</span> vec&lt;3, int, Q&gt;(Func(a.x, b.x), Func(a.y, b.y), Func(a.z, b.z));</div>
+<div class="line"><a name="l00150"></a><span class="lineno">  150</span>&#160;                }</div>
+<div class="line"><a name="l00151"></a><span class="lineno">  151</span>&#160;        };</div>
+<div class="line"><a name="l00152"></a><span class="lineno">  152</span>&#160; </div>
+<div class="line"><a name="l00153"></a><span class="lineno">  153</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T, qualifier Q&gt;</div>
+<div class="line"><a name="l00154"></a><span class="lineno">  154</span>&#160;        <span class="keyword">struct </span>functor2_vec_int&lt;4, T, Q&gt;</div>
+<div class="line"><a name="l00155"></a><span class="lineno">  155</span>&#160;        {</div>
+<div class="line"><a name="l00156"></a><span class="lineno">  156</span>&#160;                GLM_FUNC_QUALIFIER <span class="keyword">static</span> vec&lt;4, int, Q&gt; call(<span class="keywordtype">int</span> (*Func) (T x, <span class="keywordtype">int</span> y), vec&lt;4, T, Q&gt; <span class="keyword">const</span>&amp; a, vec&lt;4, int, Q&gt; <span class="keyword">const</span>&amp; b)</div>
+<div class="line"><a name="l00157"></a><span class="lineno">  157</span>&#160;                {</div>
+<div class="line"><a name="l00158"></a><span class="lineno">  158</span>&#160;                        <span class="keywordflow">return</span> vec&lt;4, int, Q&gt;(Func(a.x, b.x), Func(a.y, b.y), Func(a.z, b.z), Func(a.w, b.w));</div>
+<div class="line"><a name="l00159"></a><span class="lineno">  159</span>&#160;                }</div>
+<div class="line"><a name="l00160"></a><span class="lineno">  160</span>&#160;        };</div>
+<div class="line"><a name="l00161"></a><span class="lineno">  161</span>&#160;}<span class="comment">//namespace detail</span></div>
+<div class="line"><a name="l00162"></a><span class="lineno">  162</span>&#160;}<span class="comment">//namespace glm</span></div>
 </div><!-- fragment --></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.10
+</a> 1.8.18
 </small></address>
 </body>
 </html>

+ 0 - 224
doc/api/a00021_source.html

@@ -1,224 +0,0 @@
-<!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.10"/>
-<title>0.9.9 API documentation: constants.hpp Source File</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="search/search.css" rel="stylesheet" type="text/css"/>
-<script type="text/javascript" src="search/searchdata.js"></script>
-<script type="text/javascript" src="search/search.js"></script>
-<script type="text/javascript">
-  $(document).ready(function() { init_search(); });
-</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 id="projectlogo"><img alt="Logo" src="logo-mini.png"/></td>
-  <td id="projectalign" style="padding-left: 0.5em;">
-   <div id="projectname">0.9.9 API documentation
-   </div>
-  </td>
- </tr>
- </tbody>
-</table>
-</div>
-<!-- end header part -->
-<!-- Generated by Doxygen 1.8.10 -->
-<script type="text/javascript">
-var searchBox = new SearchBox("searchBox", "search",false,'Search');
-</script>
-  <div id="navrow1" class="tabs">
-    <ul class="tablist">
-      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
-      <li><a href="modules.html"><span>Modules</span></a></li>
-      <li class="current"><a href="files.html"><span>Files</span></a></li>
-      <li>
-        <div id="MSearchBox" class="MSearchBoxInactive">
-        <span class="left">
-          <img id="MSearchSelect" src="search/mag_sel.png"
-               onmouseover="return searchBox.OnSearchSelectShow()"
-               onmouseout="return searchBox.OnSearchSelectHide()"
-               alt=""/>
-          <input type="text" id="MSearchField" value="Search" accesskey="S"
-               onfocus="searchBox.OnSearchFieldFocus(true)" 
-               onblur="searchBox.OnSearchFieldFocus(false)" 
-               onkeyup="searchBox.OnSearchFieldChange(event)"/>
-          </span><span class="right">
-            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
-          </span>
-        </div>
-      </li>
-    </ul>
-  </div>
-  <div id="navrow2" class="tabs2">
-    <ul class="tablist">
-      <li><a href="files.html"><span>File&#160;List</span></a></li>
-    </ul>
-  </div>
-<!-- window showing the filter options -->
-<div id="MSearchSelectWindow"
-     onmouseover="return searchBox.OnSearchSelectShow()"
-     onmouseout="return searchBox.OnSearchSelectHide()"
-     onkeydown="return searchBox.OnSearchSelectKey(event)">
-</div>
-
-<!-- iframe showing the search results (closed by default) -->
-<div id="MSearchResultsWindow">
-<iframe src="javascript:void(0)" frameborder="0" 
-        name="MSearchResults" id="MSearchResults">
-</iframe>
-</div>
-
-<div id="nav-path" class="navpath">
-  <ul>
-<li class="navelem"><a class="el" href="dir_3a581ba30d25676e4b797b1f96d53b45.html">F:</a></li><li class="navelem"><a class="el" href="dir_9e5fe034a00e89334fd5186c3e7db156.html">G-Truc</a></li><li class="navelem"><a class="el" href="dir_d9496f0844b48bc7e53b5af8c99b9ab2.html">Source</a></li><li class="navelem"><a class="el" href="dir_a8bee7be44182a33f3820393ae0b105d.html">G-Truc</a></li><li class="navelem"><a class="el" href="dir_44e5e654415abd9ca6fdeaddaff8565e.html">glm</a></li><li class="navelem"><a class="el" href="dir_cef2d71d502cb69a9252bca2297d9549.html">glm</a></li><li class="navelem"><a class="el" href="dir_4c6bd29c73fa4e5a2509e1c15f846751.html">gtc</a></li>  </ul>
-</div>
-</div><!-- top -->
-<div class="header">
-  <div class="headertitle">
-<div class="title">constants.hpp</div>  </div>
-</div><!--header-->
-<div class="contents">
-<a href="a00021.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span>&#160;</div>
-<div class="line"><a name="l00013"></a><span class="lineno">   13</span>&#160;<span class="preprocessor">#pragma once</span></div>
-<div class="line"><a name="l00014"></a><span class="lineno">   14</span>&#160;</div>
-<div class="line"><a name="l00015"></a><span class="lineno">   15</span>&#160;<span class="comment">// Dependencies</span></div>
-<div class="line"><a name="l00016"></a><span class="lineno">   16</span>&#160;<span class="preprocessor">#include &quot;../ext/scalar_constants.hpp&quot;</span></div>
-<div class="line"><a name="l00017"></a><span class="lineno">   17</span>&#160;</div>
-<div class="line"><a name="l00018"></a><span class="lineno">   18</span>&#160;<span class="preprocessor">#if GLM_MESSAGES == GLM_ENABLE &amp;&amp; !defined(GLM_EXT_INCLUDED)</span></div>
-<div class="line"><a name="l00019"></a><span class="lineno">   19</span>&#160;<span class="preprocessor">#       pragma message(&quot;GLM: GLM_GTC_constants extension included&quot;)</span></div>
-<div class="line"><a name="l00020"></a><span class="lineno">   20</span>&#160;<span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00021"></a><span class="lineno">   21</span>&#160;</div>
-<div class="line"><a name="l00022"></a><span class="lineno">   22</span>&#160;<span class="keyword">namespace </span><a class="code" href="a00236.html">glm</a></div>
-<div class="line"><a name="l00023"></a><span class="lineno">   23</span>&#160;{</div>
-<div class="line"><a name="l00026"></a><span class="lineno">   26</span>&#160;</div>
-<div class="line"><a name="l00029"></a><span class="lineno">   29</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> genType&gt;</div>
-<div class="line"><a name="l00030"></a><span class="lineno">   30</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR genType <a class="code" href="a00290.html#ga788f5a421fc0f40a1296ebc094cbaa8a">zero</a>();</div>
-<div class="line"><a name="l00031"></a><span class="lineno">   31</span>&#160;</div>
-<div class="line"><a name="l00034"></a><span class="lineno">   34</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> genType&gt;</div>
-<div class="line"><a name="l00035"></a><span class="lineno">   35</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR genType <a class="code" href="a00290.html#ga39c2fb227631ca25894326529bdd1ee5">one</a>();</div>
-<div class="line"><a name="l00036"></a><span class="lineno">   36</span>&#160;</div>
-<div class="line"><a name="l00039"></a><span class="lineno">   39</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> genType&gt;</div>
-<div class="line"><a name="l00040"></a><span class="lineno">   40</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR genType <a class="code" href="a00290.html#gaa5276a4617566abcfe49286f40e3a256">two_pi</a>();</div>
-<div class="line"><a name="l00041"></a><span class="lineno">   41</span>&#160;</div>
-<div class="line"><a name="l00044"></a><span class="lineno">   44</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> genType&gt;</div>
-<div class="line"><a name="l00045"></a><span class="lineno">   45</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR genType <a class="code" href="a00290.html#ga261380796b2cd496f68d2cf1d08b8eb9">root_pi</a>();</div>
-<div class="line"><a name="l00046"></a><span class="lineno">   46</span>&#160;</div>
-<div class="line"><a name="l00049"></a><span class="lineno">   49</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> genType&gt;</div>
-<div class="line"><a name="l00050"></a><span class="lineno">   50</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR genType <a class="code" href="a00290.html#ga0c36b41d462e45641faf7d7938948bac">half_pi</a>();</div>
-<div class="line"><a name="l00051"></a><span class="lineno">   51</span>&#160;</div>
-<div class="line"><a name="l00054"></a><span class="lineno">   54</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> genType&gt;</div>
-<div class="line"><a name="l00055"></a><span class="lineno">   55</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR genType <a class="code" href="a00290.html#gae94950df74b0ce382b1fc1d978ef7394">three_over_two_pi</a>();</div>
-<div class="line"><a name="l00056"></a><span class="lineno">   56</span>&#160;</div>
-<div class="line"><a name="l00059"></a><span class="lineno">   59</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> genType&gt;</div>
-<div class="line"><a name="l00060"></a><span class="lineno">   60</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR genType <a class="code" href="a00290.html#ga3c9df42bd73c519a995c43f0f99e77e0">quarter_pi</a>();</div>
-<div class="line"><a name="l00061"></a><span class="lineno">   61</span>&#160;</div>
-<div class="line"><a name="l00064"></a><span class="lineno">   64</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> genType&gt;</div>
-<div class="line"><a name="l00065"></a><span class="lineno">   65</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR genType <a class="code" href="a00290.html#ga555150da2b06d23c8738981d5013e0eb">one_over_pi</a>();</div>
-<div class="line"><a name="l00066"></a><span class="lineno">   66</span>&#160;</div>
-<div class="line"><a name="l00069"></a><span class="lineno">   69</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> genType&gt;</div>
-<div class="line"><a name="l00070"></a><span class="lineno">   70</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR genType <a class="code" href="a00290.html#ga7c922b427986cbb2e4c6ac69874eefbc">one_over_two_pi</a>();</div>
-<div class="line"><a name="l00071"></a><span class="lineno">   71</span>&#160;</div>
-<div class="line"><a name="l00074"></a><span class="lineno">   74</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> genType&gt;</div>
-<div class="line"><a name="l00075"></a><span class="lineno">   75</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR genType <a class="code" href="a00290.html#ga74eadc8a211253079683219a3ea0462a">two_over_pi</a>();</div>
-<div class="line"><a name="l00076"></a><span class="lineno">   76</span>&#160;</div>
-<div class="line"><a name="l00079"></a><span class="lineno">   79</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> genType&gt;</div>
-<div class="line"><a name="l00080"></a><span class="lineno">   80</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR genType <a class="code" href="a00290.html#ga753950e5140e4ea6a88e4a18ba61dc09">four_over_pi</a>();</div>
-<div class="line"><a name="l00081"></a><span class="lineno">   81</span>&#160;</div>
-<div class="line"><a name="l00084"></a><span class="lineno">   84</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> genType&gt;</div>
-<div class="line"><a name="l00085"></a><span class="lineno">   85</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR genType <a class="code" href="a00290.html#ga5827301817640843cf02026a8d493894">two_over_root_pi</a>();</div>
-<div class="line"><a name="l00086"></a><span class="lineno">   86</span>&#160;</div>
-<div class="line"><a name="l00089"></a><span class="lineno">   89</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> genType&gt;</div>
-<div class="line"><a name="l00090"></a><span class="lineno">   90</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR genType <a class="code" href="a00290.html#ga788fa23a0939bac4d1d0205fb4f35818">one_over_root_two</a>();</div>
-<div class="line"><a name="l00091"></a><span class="lineno">   91</span>&#160;</div>
-<div class="line"><a name="l00094"></a><span class="lineno">   94</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> genType&gt;</div>
-<div class="line"><a name="l00095"></a><span class="lineno">   95</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR genType <a class="code" href="a00290.html#ga4e276cb823cc5e612d4f89ed99c75039">root_half_pi</a>();</div>
-<div class="line"><a name="l00096"></a><span class="lineno">   96</span>&#160;</div>
-<div class="line"><a name="l00099"></a><span class="lineno">   99</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> genType&gt;</div>
-<div class="line"><a name="l00100"></a><span class="lineno">  100</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR genType <a class="code" href="a00290.html#ga2bcedc575039fe0cd765742f8bbb0bd3">root_two_pi</a>();</div>
-<div class="line"><a name="l00101"></a><span class="lineno">  101</span>&#160;</div>
-<div class="line"><a name="l00104"></a><span class="lineno">  104</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> genType&gt;</div>
-<div class="line"><a name="l00105"></a><span class="lineno">  105</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR genType <a class="code" href="a00290.html#ga4129412e96b33707a77c1a07652e23e2">root_ln_four</a>();</div>
-<div class="line"><a name="l00106"></a><span class="lineno">  106</span>&#160;</div>
-<div class="line"><a name="l00109"></a><span class="lineno">  109</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> genType&gt;</div>
-<div class="line"><a name="l00110"></a><span class="lineno">  110</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR genType <a class="code" href="a00290.html#ga4b7956eb6e2fbedfc7cf2e46e85c5139">e</a>();</div>
-<div class="line"><a name="l00111"></a><span class="lineno">  111</span>&#160;</div>
-<div class="line"><a name="l00114"></a><span class="lineno">  114</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> genType&gt;</div>
-<div class="line"><a name="l00115"></a><span class="lineno">  115</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR genType <a class="code" href="a00290.html#gad8fe2e6f90bce9d829e9723b649fbd42">euler</a>();</div>
-<div class="line"><a name="l00116"></a><span class="lineno">  116</span>&#160;</div>
-<div class="line"><a name="l00119"></a><span class="lineno">  119</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> genType&gt;</div>
-<div class="line"><a name="l00120"></a><span class="lineno">  120</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR genType <a class="code" href="a00290.html#ga74e607d29020f100c0d0dc46ce2ca950">root_two</a>();</div>
-<div class="line"><a name="l00121"></a><span class="lineno">  121</span>&#160;</div>
-<div class="line"><a name="l00124"></a><span class="lineno">  124</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> genType&gt;</div>
-<div class="line"><a name="l00125"></a><span class="lineno">  125</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR genType <a class="code" href="a00290.html#ga4f286be4abe88be1eed7d2a9f6cb193e">root_three</a>();</div>
-<div class="line"><a name="l00126"></a><span class="lineno">  126</span>&#160;</div>
-<div class="line"><a name="l00129"></a><span class="lineno">  129</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> genType&gt;</div>
-<div class="line"><a name="l00130"></a><span class="lineno">  130</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR genType <a class="code" href="a00290.html#gae9ebbded75b53d4faeb1e4ef8b3347a2">root_five</a>();</div>
-<div class="line"><a name="l00131"></a><span class="lineno">  131</span>&#160;</div>
-<div class="line"><a name="l00134"></a><span class="lineno">  134</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> genType&gt;</div>
-<div class="line"><a name="l00135"></a><span class="lineno">  135</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR genType <a class="code" href="a00290.html#ga24f4d27765678116f41a2f336ab7975c">ln_two</a>();</div>
-<div class="line"><a name="l00136"></a><span class="lineno">  136</span>&#160;</div>
-<div class="line"><a name="l00139"></a><span class="lineno">  139</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> genType&gt;</div>
-<div class="line"><a name="l00140"></a><span class="lineno">  140</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR genType <a class="code" href="a00290.html#gaf97ebc6c059ffd788e6c4946f71ef66c">ln_ten</a>();</div>
-<div class="line"><a name="l00141"></a><span class="lineno">  141</span>&#160;</div>
-<div class="line"><a name="l00144"></a><span class="lineno">  144</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> genType&gt;</div>
-<div class="line"><a name="l00145"></a><span class="lineno">  145</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR genType <a class="code" href="a00290.html#gaca94292c839ed31a405ab7a81ae7e850">ln_ln_two</a>();</div>
-<div class="line"><a name="l00146"></a><span class="lineno">  146</span>&#160;</div>
-<div class="line"><a name="l00149"></a><span class="lineno">  149</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> genType&gt;</div>
-<div class="line"><a name="l00150"></a><span class="lineno">  150</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR genType <a class="code" href="a00290.html#ga3077c6311010a214b69ddc8214ec13b5">third</a>();</div>
-<div class="line"><a name="l00151"></a><span class="lineno">  151</span>&#160;</div>
-<div class="line"><a name="l00154"></a><span class="lineno">  154</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> genType&gt;</div>
-<div class="line"><a name="l00155"></a><span class="lineno">  155</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR genType <a class="code" href="a00290.html#ga9b4d2f4322edcf63a6737b92a29dd1f5">two_thirds</a>();</div>
-<div class="line"><a name="l00156"></a><span class="lineno">  156</span>&#160;</div>
-<div class="line"><a name="l00159"></a><span class="lineno">  159</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> genType&gt;</div>
-<div class="line"><a name="l00160"></a><span class="lineno">  160</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR genType <a class="code" href="a00290.html#ga748cf8642830657c5b7eae04d0a80899">golden_ratio</a>();</div>
-<div class="line"><a name="l00161"></a><span class="lineno">  161</span>&#160;</div>
-<div class="line"><a name="l00163"></a><span class="lineno">  163</span>&#160;} <span class="comment">//namespace glm</span></div>
-<div class="line"><a name="l00164"></a><span class="lineno">  164</span>&#160;</div>
-<div class="line"><a name="l00165"></a><span class="lineno">  165</span>&#160;<span class="preprocessor">#include &quot;constants.inl&quot;</span></div>
-<div class="ttc" id="a00290_html_ga3077c6311010a214b69ddc8214ec13b5"><div class="ttname"><a href="a00290.html#ga3077c6311010a214b69ddc8214ec13b5">glm::third</a></div><div class="ttdeci">GLM_FUNC_DECL GLM_CONSTEXPR genType third()</div><div class="ttdoc">Return 1 / 3. </div></div>
-<div class="ttc" id="a00290_html_ga74e607d29020f100c0d0dc46ce2ca950"><div class="ttname"><a href="a00290.html#ga74e607d29020f100c0d0dc46ce2ca950">glm::root_two</a></div><div class="ttdeci">GLM_FUNC_DECL GLM_CONSTEXPR genType root_two()</div><div class="ttdoc">Return sqrt(2). </div></div>
-<div class="ttc" id="a00290_html_ga788fa23a0939bac4d1d0205fb4f35818"><div class="ttname"><a href="a00290.html#ga788fa23a0939bac4d1d0205fb4f35818">glm::one_over_root_two</a></div><div class="ttdeci">GLM_FUNC_DECL GLM_CONSTEXPR genType one_over_root_two()</div><div class="ttdoc">Return 1 / sqrt(2). </div></div>
-<div class="ttc" id="a00290_html_gad8fe2e6f90bce9d829e9723b649fbd42"><div class="ttname"><a href="a00290.html#gad8fe2e6f90bce9d829e9723b649fbd42">glm::euler</a></div><div class="ttdeci">GLM_FUNC_DECL GLM_CONSTEXPR genType euler()</div><div class="ttdoc">Return Euler&#39;s constant. </div></div>
-<div class="ttc" id="a00290_html_ga9b4d2f4322edcf63a6737b92a29dd1f5"><div class="ttname"><a href="a00290.html#ga9b4d2f4322edcf63a6737b92a29dd1f5">glm::two_thirds</a></div><div class="ttdeci">GLM_FUNC_DECL GLM_CONSTEXPR genType two_thirds()</div><div class="ttdoc">Return 2 / 3. </div></div>
-<div class="ttc" id="a00290_html_gaa5276a4617566abcfe49286f40e3a256"><div class="ttname"><a href="a00290.html#gaa5276a4617566abcfe49286f40e3a256">glm::two_pi</a></div><div class="ttdeci">GLM_FUNC_DECL GLM_CONSTEXPR genType two_pi()</div><div class="ttdoc">Return pi * 2. </div></div>
-<div class="ttc" id="a00290_html_ga748cf8642830657c5b7eae04d0a80899"><div class="ttname"><a href="a00290.html#ga748cf8642830657c5b7eae04d0a80899">glm::golden_ratio</a></div><div class="ttdeci">GLM_FUNC_DECL GLM_CONSTEXPR genType golden_ratio()</div><div class="ttdoc">Return the golden ratio constant. </div></div>
-<div class="ttc" id="a00290_html_ga3c9df42bd73c519a995c43f0f99e77e0"><div class="ttname"><a href="a00290.html#ga3c9df42bd73c519a995c43f0f99e77e0">glm::quarter_pi</a></div><div class="ttdeci">GLM_FUNC_DECL GLM_CONSTEXPR genType quarter_pi()</div><div class="ttdoc">Return pi / 4. </div></div>
-<div class="ttc" id="a00290_html_ga39c2fb227631ca25894326529bdd1ee5"><div class="ttname"><a href="a00290.html#ga39c2fb227631ca25894326529bdd1ee5">glm::one</a></div><div class="ttdeci">GLM_FUNC_DECL GLM_CONSTEXPR genType one()</div><div class="ttdoc">Return 1. </div></div>
-<div class="ttc" id="a00290_html_gae9ebbded75b53d4faeb1e4ef8b3347a2"><div class="ttname"><a href="a00290.html#gae9ebbded75b53d4faeb1e4ef8b3347a2">glm::root_five</a></div><div class="ttdeci">GLM_FUNC_DECL GLM_CONSTEXPR genType root_five()</div><div class="ttdoc">Return sqrt(5). </div></div>
-<div class="ttc" id="a00290_html_gae94950df74b0ce382b1fc1d978ef7394"><div class="ttname"><a href="a00290.html#gae94950df74b0ce382b1fc1d978ef7394">glm::three_over_two_pi</a></div><div class="ttdeci">GLM_FUNC_DECL GLM_CONSTEXPR genType three_over_two_pi()</div><div class="ttdoc">Return pi / 2 * 3. </div></div>
-<div class="ttc" id="a00290_html_ga788f5a421fc0f40a1296ebc094cbaa8a"><div class="ttname"><a href="a00290.html#ga788f5a421fc0f40a1296ebc094cbaa8a">glm::zero</a></div><div class="ttdeci">GLM_FUNC_DECL GLM_CONSTEXPR genType zero()</div><div class="ttdoc">Return 0. </div></div>
-<div class="ttc" id="a00290_html_gaf97ebc6c059ffd788e6c4946f71ef66c"><div class="ttname"><a href="a00290.html#gaf97ebc6c059ffd788e6c4946f71ef66c">glm::ln_ten</a></div><div class="ttdeci">GLM_FUNC_DECL GLM_CONSTEXPR genType ln_ten()</div><div class="ttdoc">Return ln(10). </div></div>
-<div class="ttc" id="a00290_html_ga4f286be4abe88be1eed7d2a9f6cb193e"><div class="ttname"><a href="a00290.html#ga4f286be4abe88be1eed7d2a9f6cb193e">glm::root_three</a></div><div class="ttdeci">GLM_FUNC_DECL GLM_CONSTEXPR genType root_three()</div><div class="ttdoc">Return sqrt(3). </div></div>
-<div class="ttc" id="a00290_html_ga261380796b2cd496f68d2cf1d08b8eb9"><div class="ttname"><a href="a00290.html#ga261380796b2cd496f68d2cf1d08b8eb9">glm::root_pi</a></div><div class="ttdeci">GLM_FUNC_DECL GLM_CONSTEXPR genType root_pi()</div><div class="ttdoc">Return square root of pi. </div></div>
-<div class="ttc" id="a00290_html_ga4b7956eb6e2fbedfc7cf2e46e85c5139"><div class="ttname"><a href="a00290.html#ga4b7956eb6e2fbedfc7cf2e46e85c5139">glm::e</a></div><div class="ttdeci">GLM_FUNC_DECL GLM_CONSTEXPR genType e()</div><div class="ttdoc">Return e constant. </div></div>
-<div class="ttc" id="a00290_html_ga555150da2b06d23c8738981d5013e0eb"><div class="ttname"><a href="a00290.html#ga555150da2b06d23c8738981d5013e0eb">glm::one_over_pi</a></div><div class="ttdeci">GLM_FUNC_DECL GLM_CONSTEXPR genType one_over_pi()</div><div class="ttdoc">Return 1 / pi. </div></div>
-<div class="ttc" id="a00290_html_ga74eadc8a211253079683219a3ea0462a"><div class="ttname"><a href="a00290.html#ga74eadc8a211253079683219a3ea0462a">glm::two_over_pi</a></div><div class="ttdeci">GLM_FUNC_DECL GLM_CONSTEXPR genType two_over_pi()</div><div class="ttdoc">Return 2 / pi. </div></div>
-<div class="ttc" id="a00290_html_ga753950e5140e4ea6a88e4a18ba61dc09"><div class="ttname"><a href="a00290.html#ga753950e5140e4ea6a88e4a18ba61dc09">glm::four_over_pi</a></div><div class="ttdeci">GLM_FUNC_DECL GLM_CONSTEXPR genType four_over_pi()</div><div class="ttdoc">Return 4 / pi. </div></div>
-<div class="ttc" id="a00290_html_ga2bcedc575039fe0cd765742f8bbb0bd3"><div class="ttname"><a href="a00290.html#ga2bcedc575039fe0cd765742f8bbb0bd3">glm::root_two_pi</a></div><div class="ttdeci">GLM_FUNC_DECL GLM_CONSTEXPR genType root_two_pi()</div><div class="ttdoc">Return sqrt(2 * pi). </div></div>
-<div class="ttc" id="a00290_html_ga24f4d27765678116f41a2f336ab7975c"><div class="ttname"><a href="a00290.html#ga24f4d27765678116f41a2f336ab7975c">glm::ln_two</a></div><div class="ttdeci">GLM_FUNC_DECL GLM_CONSTEXPR genType ln_two()</div><div class="ttdoc">Return ln(2). </div></div>
-<div class="ttc" id="a00290_html_ga4129412e96b33707a77c1a07652e23e2"><div class="ttname"><a href="a00290.html#ga4129412e96b33707a77c1a07652e23e2">glm::root_ln_four</a></div><div class="ttdeci">GLM_FUNC_DECL GLM_CONSTEXPR genType root_ln_four()</div><div class="ttdoc">Return sqrt(ln(4)). </div></div>
-<div class="ttc" id="a00290_html_ga5827301817640843cf02026a8d493894"><div class="ttname"><a href="a00290.html#ga5827301817640843cf02026a8d493894">glm::two_over_root_pi</a></div><div class="ttdeci">GLM_FUNC_DECL GLM_CONSTEXPR genType two_over_root_pi()</div><div class="ttdoc">Return 2 / sqrt(pi). </div></div>
-<div class="ttc" id="a00290_html_gaca94292c839ed31a405ab7a81ae7e850"><div class="ttname"><a href="a00290.html#gaca94292c839ed31a405ab7a81ae7e850">glm::ln_ln_two</a></div><div class="ttdeci">GLM_FUNC_DECL GLM_CONSTEXPR genType ln_ln_two()</div><div class="ttdoc">Return ln(ln(2)). </div></div>
-<div class="ttc" id="a00290_html_ga4e276cb823cc5e612d4f89ed99c75039"><div class="ttname"><a href="a00290.html#ga4e276cb823cc5e612d4f89ed99c75039">glm::root_half_pi</a></div><div class="ttdeci">GLM_FUNC_DECL GLM_CONSTEXPR genType root_half_pi()</div><div class="ttdoc">Return sqrt(pi / 2). </div></div>
-<div class="ttc" id="a00290_html_ga0c36b41d462e45641faf7d7938948bac"><div class="ttname"><a href="a00290.html#ga0c36b41d462e45641faf7d7938948bac">glm::half_pi</a></div><div class="ttdeci">GLM_FUNC_DECL GLM_CONSTEXPR genType half_pi()</div><div class="ttdoc">Return pi / 2. </div></div>
-<div class="ttc" id="a00290_html_ga7c922b427986cbb2e4c6ac69874eefbc"><div class="ttname"><a href="a00290.html#ga7c922b427986cbb2e4c6ac69874eefbc">glm::one_over_two_pi</a></div><div class="ttdeci">GLM_FUNC_DECL GLM_CONSTEXPR genType one_over_two_pi()</div><div class="ttdoc">Return 1 / (pi * 2). </div></div>
-<div class="ttc" id="a00236_html"><div class="ttname"><a href="a00236.html">glm</a></div><div class="ttdef"><b>Definition:</b> <a href="a00015_source.html#l00020">common.hpp:20</a></div></div>
-</div><!-- fragment --></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.10
-</small></address>
-</body>
-</html>

+ 0 - 317
doc/api/a00022_source.html

@@ -1,317 +0,0 @@
-<!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.10"/>
-<title>0.9.9 API documentation: dual_quaternion.hpp Source File</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="search/search.css" rel="stylesheet" type="text/css"/>
-<script type="text/javascript" src="search/searchdata.js"></script>
-<script type="text/javascript" src="search/search.js"></script>
-<script type="text/javascript">
-  $(document).ready(function() { init_search(); });
-</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 id="projectlogo"><img alt="Logo" src="logo-mini.png"/></td>
-  <td id="projectalign" style="padding-left: 0.5em;">
-   <div id="projectname">0.9.9 API documentation
-   </div>
-  </td>
- </tr>
- </tbody>
-</table>
-</div>
-<!-- end header part -->
-<!-- Generated by Doxygen 1.8.10 -->
-<script type="text/javascript">
-var searchBox = new SearchBox("searchBox", "search",false,'Search');
-</script>
-  <div id="navrow1" class="tabs">
-    <ul class="tablist">
-      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
-      <li><a href="modules.html"><span>Modules</span></a></li>
-      <li class="current"><a href="files.html"><span>Files</span></a></li>
-      <li>
-        <div id="MSearchBox" class="MSearchBoxInactive">
-        <span class="left">
-          <img id="MSearchSelect" src="search/mag_sel.png"
-               onmouseover="return searchBox.OnSearchSelectShow()"
-               onmouseout="return searchBox.OnSearchSelectHide()"
-               alt=""/>
-          <input type="text" id="MSearchField" value="Search" accesskey="S"
-               onfocus="searchBox.OnSearchFieldFocus(true)" 
-               onblur="searchBox.OnSearchFieldFocus(false)" 
-               onkeyup="searchBox.OnSearchFieldChange(event)"/>
-          </span><span class="right">
-            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
-          </span>
-        </div>
-      </li>
-    </ul>
-  </div>
-  <div id="navrow2" class="tabs2">
-    <ul class="tablist">
-      <li><a href="files.html"><span>File&#160;List</span></a></li>
-    </ul>
-  </div>
-<!-- window showing the filter options -->
-<div id="MSearchSelectWindow"
-     onmouseover="return searchBox.OnSearchSelectShow()"
-     onmouseout="return searchBox.OnSearchSelectHide()"
-     onkeydown="return searchBox.OnSearchSelectKey(event)">
-</div>
-
-<!-- iframe showing the search results (closed by default) -->
-<div id="MSearchResultsWindow">
-<iframe src="javascript:void(0)" frameborder="0" 
-        name="MSearchResults" id="MSearchResults">
-</iframe>
-</div>
-
-<div id="nav-path" class="navpath">
-  <ul>
-<li class="navelem"><a class="el" href="dir_3a581ba30d25676e4b797b1f96d53b45.html">F:</a></li><li class="navelem"><a class="el" href="dir_9e5fe034a00e89334fd5186c3e7db156.html">G-Truc</a></li><li class="navelem"><a class="el" href="dir_d9496f0844b48bc7e53b5af8c99b9ab2.html">Source</a></li><li class="navelem"><a class="el" href="dir_a8bee7be44182a33f3820393ae0b105d.html">G-Truc</a></li><li class="navelem"><a class="el" href="dir_44e5e654415abd9ca6fdeaddaff8565e.html">glm</a></li><li class="navelem"><a class="el" href="dir_cef2d71d502cb69a9252bca2297d9549.html">glm</a></li><li class="navelem"><a class="el" href="dir_f35778ec600a1b9bbc4524e62e226aa2.html">gtx</a></li>  </ul>
-</div>
-</div><!-- top -->
-<div class="header">
-  <div class="headertitle">
-<div class="title">dual_quaternion.hpp</div>  </div>
-</div><!--header-->
-<div class="contents">
-<a href="a00022.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span>&#160;</div>
-<div class="line"><a name="l00016"></a><span class="lineno">   16</span>&#160;<span class="preprocessor">#pragma once</span></div>
-<div class="line"><a name="l00017"></a><span class="lineno">   17</span>&#160;</div>
-<div class="line"><a name="l00018"></a><span class="lineno">   18</span>&#160;<span class="comment">// Dependency:</span></div>
-<div class="line"><a name="l00019"></a><span class="lineno">   19</span>&#160;<span class="preprocessor">#include &quot;../glm.hpp&quot;</span></div>
-<div class="line"><a name="l00020"></a><span class="lineno">   20</span>&#160;<span class="preprocessor">#include &quot;../gtc/constants.hpp&quot;</span></div>
-<div class="line"><a name="l00021"></a><span class="lineno">   21</span>&#160;<span class="preprocessor">#include &quot;../gtc/quaternion.hpp&quot;</span></div>
-<div class="line"><a name="l00022"></a><span class="lineno">   22</span>&#160;</div>
-<div class="line"><a name="l00023"></a><span class="lineno">   23</span>&#160;<span class="preprocessor">#if GLM_MESSAGES == GLM_ENABLE &amp;&amp; !defined(GLM_EXT_INCLUDED)</span></div>
-<div class="line"><a name="l00024"></a><span class="lineno">   24</span>&#160;<span class="preprocessor">#       ifndef GLM_ENABLE_EXPERIMENTAL</span></div>
-<div class="line"><a name="l00025"></a><span class="lineno">   25</span>&#160;<span class="preprocessor">#               pragma message(&quot;GLM: GLM_GTX_dual_quaternion is an experimental extension and may change in the future. Use #define GLM_ENABLE_EXPERIMENTAL before including it, if you really want to use it.&quot;)</span></div>
-<div class="line"><a name="l00026"></a><span class="lineno">   26</span>&#160;<span class="preprocessor">#       else</span></div>
-<div class="line"><a name="l00027"></a><span class="lineno">   27</span>&#160;<span class="preprocessor">#               pragma message(&quot;GLM: GLM_GTX_dual_quaternion extension included&quot;)</span></div>
-<div class="line"><a name="l00028"></a><span class="lineno">   28</span>&#160;<span class="preprocessor">#       endif</span></div>
-<div class="line"><a name="l00029"></a><span class="lineno">   29</span>&#160;<span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00030"></a><span class="lineno">   30</span>&#160;</div>
-<div class="line"><a name="l00031"></a><span class="lineno">   31</span>&#160;<span class="keyword">namespace </span><a class="code" href="a00236.html">glm</a></div>
-<div class="line"><a name="l00032"></a><span class="lineno">   32</span>&#160;{</div>
-<div class="line"><a name="l00035"></a><span class="lineno">   35</span>&#160;</div>
-<div class="line"><a name="l00036"></a><span class="lineno">   36</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T, qualifier Q = defaultp&gt;</div>
-<div class="line"><a name="l00037"></a><span class="lineno">   37</span>&#160;        <span class="keyword">struct </span>tdualquat</div>
-<div class="line"><a name="l00038"></a><span class="lineno">   38</span>&#160;        {</div>
-<div class="line"><a name="l00039"></a><span class="lineno">   39</span>&#160;                <span class="comment">// -- Implementation detail --</span></div>
-<div class="line"><a name="l00040"></a><span class="lineno">   40</span>&#160;</div>
-<div class="line"><a name="l00041"></a><span class="lineno">   41</span>&#160;                <span class="keyword">typedef</span> T value_type;</div>
-<div class="line"><a name="l00042"></a><span class="lineno">   42</span>&#160;                <span class="keyword">typedef</span> qua&lt;T, Q&gt; part_type;</div>
-<div class="line"><a name="l00043"></a><span class="lineno">   43</span>&#160;</div>
-<div class="line"><a name="l00044"></a><span class="lineno">   44</span>&#160;                <span class="comment">// -- Data --</span></div>
-<div class="line"><a name="l00045"></a><span class="lineno">   45</span>&#160;</div>
-<div class="line"><a name="l00046"></a><span class="lineno">   46</span>&#160;                qua&lt;T, Q&gt; real, dual;</div>
-<div class="line"><a name="l00047"></a><span class="lineno">   47</span>&#160;</div>
-<div class="line"><a name="l00048"></a><span class="lineno">   48</span>&#160;                <span class="comment">// -- Component accesses --</span></div>
-<div class="line"><a name="l00049"></a><span class="lineno">   49</span>&#160;</div>
-<div class="line"><a name="l00050"></a><span class="lineno">   50</span>&#160;                <span class="keyword">typedef</span> length_t length_type;</div>
-<div class="line"><a name="l00052"></a><span class="lineno">   52</span>&#160;                GLM_FUNC_DECL <span class="keyword">static</span> GLM_CONSTEXPR length_type <a class="code" href="a00254.html#gab703732449be6c7199369b3f9a91ed38">length</a>(){<span class="keywordflow">return</span> 2;}</div>
-<div class="line"><a name="l00053"></a><span class="lineno">   53</span>&#160;</div>
-<div class="line"><a name="l00054"></a><span class="lineno">   54</span>&#160;                GLM_FUNC_DECL part_type &amp; operator[](length_type i);</div>
-<div class="line"><a name="l00055"></a><span class="lineno">   55</span>&#160;                GLM_FUNC_DECL part_type <span class="keyword">const</span>&amp; operator[](length_type i) <span class="keyword">const</span>;</div>
-<div class="line"><a name="l00056"></a><span class="lineno">   56</span>&#160;</div>
-<div class="line"><a name="l00057"></a><span class="lineno">   57</span>&#160;                <span class="comment">// -- Implicit basic constructors --</span></div>
-<div class="line"><a name="l00058"></a><span class="lineno">   58</span>&#160;</div>
-<div class="line"><a name="l00059"></a><span class="lineno">   59</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR tdualquat() GLM_DEFAULT;</div>
-<div class="line"><a name="l00060"></a><span class="lineno">   60</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR tdualquat(tdualquat&lt;T, Q&gt; const&amp; d) GLM_DEFAULT;</div>
-<div class="line"><a name="l00061"></a><span class="lineno">   61</span>&#160;                template&lt;qualifier P&gt;</div>
-<div class="line"><a name="l00062"></a><span class="lineno">   62</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR tdualquat(tdualquat&lt;T, P&gt; const&amp; d);</div>
-<div class="line"><a name="l00063"></a><span class="lineno">   63</span>&#160;</div>
-<div class="line"><a name="l00064"></a><span class="lineno">   64</span>&#160;                <span class="comment">// -- Explicit basic constructors --</span></div>
-<div class="line"><a name="l00065"></a><span class="lineno">   65</span>&#160;</div>
-<div class="line"><a name="l00066"></a><span class="lineno">   66</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR tdualquat(qua&lt;T, Q&gt; const&amp; real);</div>
-<div class="line"><a name="l00067"></a><span class="lineno">   67</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR tdualquat(qua&lt;T, Q&gt; const&amp; <a class="code" href="a00356.html#ga1a32fceb71962e6160e8af295c91930a">orientation</a>, vec&lt;3, T, Q&gt; const&amp; translation);</div>
-<div class="line"><a name="l00068"></a><span class="lineno">   68</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR tdualquat(qua&lt;T, Q&gt; const&amp; real, qua&lt;T, Q&gt; const&amp; dual);</div>
-<div class="line"><a name="l00069"></a><span class="lineno">   69</span>&#160;</div>
-<div class="line"><a name="l00070"></a><span class="lineno">   70</span>&#160;                <span class="comment">// -- Conversion constructors --</span></div>
-<div class="line"><a name="l00071"></a><span class="lineno">   71</span>&#160;</div>
-<div class="line"><a name="l00072"></a><span class="lineno">   72</span>&#160;                template&lt;typename U, qualifier P&gt;</div>
-<div class="line"><a name="l00073"></a><span class="lineno">   73</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR GLM_EXPLICIT tdualquat(tdualquat&lt;U, P&gt; const&amp; q);</div>
-<div class="line"><a name="l00074"></a><span class="lineno">   74</span>&#160;</div>
-<div class="line"><a name="l00075"></a><span class="lineno">   75</span>&#160;                GLM_FUNC_DECL GLM_EXPLICIT GLM_CONSTEXPR tdualquat(mat&lt;2, 4, T, Q&gt; const&amp; holder_mat);</div>
-<div class="line"><a name="l00076"></a><span class="lineno">   76</span>&#160;                GLM_FUNC_DECL GLM_EXPLICIT GLM_CONSTEXPR tdualquat(mat&lt;3, 4, T, Q&gt; const&amp; aug_mat);</div>
-<div class="line"><a name="l00077"></a><span class="lineno">   77</span>&#160;</div>
-<div class="line"><a name="l00078"></a><span class="lineno">   78</span>&#160;                <span class="comment">// -- Unary arithmetic operators --</span></div>
-<div class="line"><a name="l00079"></a><span class="lineno">   79</span>&#160;</div>
-<div class="line"><a name="l00080"></a><span class="lineno">   80</span>&#160;                GLM_FUNC_DECL tdualquat&lt;T, Q&gt; &amp; operator=(tdualquat&lt;T, Q&gt; const&amp; m) GLM_DEFAULT;</div>
-<div class="line"><a name="l00081"></a><span class="lineno">   81</span>&#160;</div>
-<div class="line"><a name="l00082"></a><span class="lineno">   82</span>&#160;                template&lt;typename U&gt;</div>
-<div class="line"><a name="l00083"></a><span class="lineno">   83</span>&#160;                GLM_FUNC_DECL tdualquat&lt;T, Q&gt; &amp; operator=(tdualquat&lt;U, Q&gt; const&amp; m);</div>
-<div class="line"><a name="l00084"></a><span class="lineno">   84</span>&#160;                template&lt;typename U&gt;</div>
-<div class="line"><a name="l00085"></a><span class="lineno">   85</span>&#160;                GLM_FUNC_DECL tdualquat&lt;T, Q&gt; &amp; operator*=(U s);</div>
-<div class="line"><a name="l00086"></a><span class="lineno">   86</span>&#160;                template&lt;typename U&gt;</div>
-<div class="line"><a name="l00087"></a><span class="lineno">   87</span>&#160;                GLM_FUNC_DECL tdualquat&lt;T, Q&gt; &amp; operator/=(U s);</div>
-<div class="line"><a name="l00088"></a><span class="lineno">   88</span>&#160;        };</div>
-<div class="line"><a name="l00089"></a><span class="lineno">   89</span>&#160;</div>
-<div class="line"><a name="l00090"></a><span class="lineno">   90</span>&#160;        <span class="comment">// -- Unary bit operators --</span></div>
-<div class="line"><a name="l00091"></a><span class="lineno">   91</span>&#160;</div>
-<div class="line"><a name="l00092"></a><span class="lineno">   92</span>&#160;        template&lt;typename T, qualifier Q&gt;</div>
-<div class="line"><a name="l00093"></a><span class="lineno">   93</span>&#160;        GLM_FUNC_DECL tdualquat&lt;T, Q&gt; operator+(tdualquat&lt;T, Q&gt; const&amp; q);</div>
-<div class="line"><a name="l00094"></a><span class="lineno">   94</span>&#160;</div>
-<div class="line"><a name="l00095"></a><span class="lineno">   95</span>&#160;        template&lt;typename T, qualifier Q&gt;</div>
-<div class="line"><a name="l00096"></a><span class="lineno">   96</span>&#160;        GLM_FUNC_DECL tdualquat&lt;T, Q&gt; operator-(tdualquat&lt;T, Q&gt; const&amp; q);</div>
-<div class="line"><a name="l00097"></a><span class="lineno">   97</span>&#160;</div>
-<div class="line"><a name="l00098"></a><span class="lineno">   98</span>&#160;        <span class="comment">// -- Binary operators --</span></div>
-<div class="line"><a name="l00099"></a><span class="lineno">   99</span>&#160;</div>
-<div class="line"><a name="l00100"></a><span class="lineno">  100</span>&#160;        template&lt;typename T, qualifier Q&gt;</div>
-<div class="line"><a name="l00101"></a><span class="lineno">  101</span>&#160;        GLM_FUNC_DECL tdualquat&lt;T, Q&gt; operator+(tdualquat&lt;T, Q&gt; const&amp; q, tdualquat&lt;T, Q&gt; const&amp; p);</div>
-<div class="line"><a name="l00102"></a><span class="lineno">  102</span>&#160;</div>
-<div class="line"><a name="l00103"></a><span class="lineno">  103</span>&#160;        template&lt;typename T, qualifier Q&gt;</div>
-<div class="line"><a name="l00104"></a><span class="lineno">  104</span>&#160;        GLM_FUNC_DECL tdualquat&lt;T, Q&gt; operator*(tdualquat&lt;T, Q&gt; const&amp; q, tdualquat&lt;T, Q&gt; const&amp; p);</div>
-<div class="line"><a name="l00105"></a><span class="lineno">  105</span>&#160;</div>
-<div class="line"><a name="l00106"></a><span class="lineno">  106</span>&#160;        template&lt;typename T, qualifier Q&gt;</div>
-<div class="line"><a name="l00107"></a><span class="lineno">  107</span>&#160;        GLM_FUNC_DECL vec&lt;3, T, Q&gt; operator*(tdualquat&lt;T, Q&gt; const&amp; q, vec&lt;3, T, Q&gt; const&amp; v);</div>
-<div class="line"><a name="l00108"></a><span class="lineno">  108</span>&#160;</div>
-<div class="line"><a name="l00109"></a><span class="lineno">  109</span>&#160;        template&lt;typename T, qualifier Q&gt;</div>
-<div class="line"><a name="l00110"></a><span class="lineno">  110</span>&#160;        GLM_FUNC_DECL vec&lt;3, T, Q&gt; operator*(vec&lt;3, T, Q&gt; const&amp; v, tdualquat&lt;T, Q&gt; const&amp; q);</div>
-<div class="line"><a name="l00111"></a><span class="lineno">  111</span>&#160;</div>
-<div class="line"><a name="l00112"></a><span class="lineno">  112</span>&#160;        template&lt;typename T, qualifier Q&gt;</div>
-<div class="line"><a name="l00113"></a><span class="lineno">  113</span>&#160;        GLM_FUNC_DECL vec&lt;4, T, Q&gt; operator*(tdualquat&lt;T, Q&gt; const&amp; q, vec&lt;4, T, Q&gt; const&amp; v);</div>
-<div class="line"><a name="l00114"></a><span class="lineno">  114</span>&#160;</div>
-<div class="line"><a name="l00115"></a><span class="lineno">  115</span>&#160;        template&lt;typename T, qualifier Q&gt;</div>
-<div class="line"><a name="l00116"></a><span class="lineno">  116</span>&#160;        GLM_FUNC_DECL vec&lt;4, T, Q&gt; operator*(vec&lt;4, T, Q&gt; const&amp; v, tdualquat&lt;T, Q&gt; const&amp; q);</div>
-<div class="line"><a name="l00117"></a><span class="lineno">  117</span>&#160;</div>
-<div class="line"><a name="l00118"></a><span class="lineno">  118</span>&#160;        template&lt;typename T, qualifier Q&gt;</div>
-<div class="line"><a name="l00119"></a><span class="lineno">  119</span>&#160;        GLM_FUNC_DECL tdualquat&lt;T, Q&gt; operator*(tdualquat&lt;T, Q&gt; const&amp; q, T const&amp; s);</div>
-<div class="line"><a name="l00120"></a><span class="lineno">  120</span>&#160;</div>
-<div class="line"><a name="l00121"></a><span class="lineno">  121</span>&#160;        template&lt;typename T, qualifier Q&gt;</div>
-<div class="line"><a name="l00122"></a><span class="lineno">  122</span>&#160;        GLM_FUNC_DECL tdualquat&lt;T, Q&gt; operator*(T const&amp; s, tdualquat&lt;T, Q&gt; const&amp; q);</div>
-<div class="line"><a name="l00123"></a><span class="lineno">  123</span>&#160;</div>
-<div class="line"><a name="l00124"></a><span class="lineno">  124</span>&#160;        template&lt;typename T, qualifier Q&gt;</div>
-<div class="line"><a name="l00125"></a><span class="lineno">  125</span>&#160;        GLM_FUNC_DECL tdualquat&lt;T, Q&gt; operator/(tdualquat&lt;T, Q&gt; const&amp; q, T const&amp; s);</div>
-<div class="line"><a name="l00126"></a><span class="lineno">  126</span>&#160;</div>
-<div class="line"><a name="l00127"></a><span class="lineno">  127</span>&#160;        <span class="comment">// -- Boolean operators --</span></div>
-<div class="line"><a name="l00128"></a><span class="lineno">  128</span>&#160;</div>
-<div class="line"><a name="l00129"></a><span class="lineno">  129</span>&#160;        template&lt;typename T, qualifier Q&gt;</div>
-<div class="line"><a name="l00130"></a><span class="lineno">  130</span>&#160;        GLM_FUNC_DECL <span class="keywordtype">bool</span> operator==(tdualquat&lt;T, Q&gt; const&amp; q1, tdualquat&lt;T, Q&gt; const&amp; q2);</div>
-<div class="line"><a name="l00131"></a><span class="lineno">  131</span>&#160;</div>
-<div class="line"><a name="l00132"></a><span class="lineno">  132</span>&#160;        template&lt;typename T, qualifier Q&gt;</div>
-<div class="line"><a name="l00133"></a><span class="lineno">  133</span>&#160;        GLM_FUNC_DECL <span class="keywordtype">bool</span> operator!=(tdualquat&lt;T, Q&gt; const&amp; q1, tdualquat&lt;T, Q&gt; const&amp; q2);</div>
-<div class="line"><a name="l00134"></a><span class="lineno">  134</span>&#160;</div>
-<div class="line"><a name="l00138"></a><span class="lineno">  138</span>&#160;        template &lt;typename T, qualifier Q&gt;</div>
-<div class="line"><a name="l00139"></a><span class="lineno">  139</span>&#160;        GLM_FUNC_DECL tdualquat&lt;T, Q&gt; <a class="code" href="a00317.html#ga0b35c0e30df8a875dbaa751e0bd800e0">dual_quat_identity</a>();</div>
-<div class="line"><a name="l00140"></a><span class="lineno">  140</span>&#160;</div>
-<div class="line"><a name="l00144"></a><span class="lineno">  144</span>&#160;        template&lt;typename T, qualifier Q&gt;</div>
-<div class="line"><a name="l00145"></a><span class="lineno">  145</span>&#160;        GLM_FUNC_DECL tdualquat&lt;T, Q&gt; <a class="code" href="a00317.html#ga299b8641509606b1958ffa104a162cfe">normalize</a>(tdualquat&lt;T, Q&gt; const&amp; q);</div>
-<div class="line"><a name="l00146"></a><span class="lineno">  146</span>&#160;</div>
-<div class="line"><a name="l00150"></a><span class="lineno">  150</span>&#160;        template&lt;typename T, qualifier Q&gt;</div>
-<div class="line"><a name="l00151"></a><span class="lineno">  151</span>&#160;        GLM_FUNC_DECL tdualquat&lt;T, Q&gt; <a class="code" href="a00317.html#gace8380112d16d33f520839cb35a4d173">lerp</a>(tdualquat&lt;T, Q&gt; const&amp; x, tdualquat&lt;T, Q&gt; const&amp; y, T const&amp; a);</div>
-<div class="line"><a name="l00152"></a><span class="lineno">  152</span>&#160;</div>
-<div class="line"><a name="l00156"></a><span class="lineno">  156</span>&#160;        template&lt;typename T, qualifier Q&gt;</div>
-<div class="line"><a name="l00157"></a><span class="lineno">  157</span>&#160;        GLM_FUNC_DECL tdualquat&lt;T, Q&gt; <a class="code" href="a00317.html#ga070f521a953f6461af4ab4cf8ccbf27e">inverse</a>(tdualquat&lt;T, Q&gt; const&amp; q);</div>
-<div class="line"><a name="l00158"></a><span class="lineno">  158</span>&#160;</div>
-<div class="line"><a name="l00162"></a><span class="lineno">  162</span>&#160;        template&lt;typename T, qualifier Q&gt;</div>
-<div class="line"><a name="l00163"></a><span class="lineno">  163</span>&#160;        GLM_FUNC_DECL mat&lt;2, 4, T, Q&gt; <a class="code" href="a00317.html#gae99d143b37f9cad4cd9285571aab685a">mat2x4_cast</a>(tdualquat&lt;T, Q&gt; const&amp; x);</div>
-<div class="line"><a name="l00164"></a><span class="lineno">  164</span>&#160;</div>
-<div class="line"><a name="l00168"></a><span class="lineno">  168</span>&#160;        template&lt;typename T, qualifier Q&gt;</div>
-<div class="line"><a name="l00169"></a><span class="lineno">  169</span>&#160;        GLM_FUNC_DECL mat&lt;3, 4, T, Q&gt; <a class="code" href="a00317.html#gaf59f5bb69620d2891c3795c6f2639179">mat3x4_cast</a>(tdualquat&lt;T, Q&gt; const&amp; x);</div>
-<div class="line"><a name="l00170"></a><span class="lineno">  170</span>&#160;</div>
-<div class="line"><a name="l00174"></a><span class="lineno">  174</span>&#160;        template&lt;typename T, qualifier Q&gt;</div>
-<div class="line"><a name="l00175"></a><span class="lineno">  175</span>&#160;        GLM_FUNC_DECL tdualquat&lt;T, Q&gt; <a class="code" href="a00317.html#ga91025ebdca0f4ea54da08497b00e8c84">dualquat_cast</a>(mat&lt;2, 4, T, Q&gt; const&amp; x);</div>
-<div class="line"><a name="l00176"></a><span class="lineno">  176</span>&#160;</div>
-<div class="line"><a name="l00180"></a><span class="lineno">  180</span>&#160;        template&lt;typename T, qualifier Q&gt;</div>
-<div class="line"><a name="l00181"></a><span class="lineno">  181</span>&#160;        GLM_FUNC_DECL tdualquat&lt;T, Q&gt; <a class="code" href="a00317.html#ga91025ebdca0f4ea54da08497b00e8c84">dualquat_cast</a>(mat&lt;3, 4, T, Q&gt; const&amp; x);</div>
-<div class="line"><a name="l00182"></a><span class="lineno">  182</span>&#160;</div>
-<div class="line"><a name="l00183"></a><span class="lineno">  183</span>&#160;</div>
-<div class="line"><a name="l00187"></a><span class="lineno"><a class="line" href="a00317.html#gade05d29ebd4deea0f883d0e1bb4169aa">  187</a></span>&#160;        typedef tdualquat&lt;<span class="keywordtype">float</span>, lowp&gt;          <a class="code" href="a00317.html#gade05d29ebd4deea0f883d0e1bb4169aa">lowp_dualquat</a>;</div>
-<div class="line"><a name="l00188"></a><span class="lineno">  188</span>&#160;</div>
-<div class="line"><a name="l00192"></a><span class="lineno"><a class="line" href="a00317.html#gaa7aeb54c167712b38f2178a1be2360ad">  192</a></span>&#160;        typedef tdualquat&lt;<span class="keywordtype">float</span>, mediump&gt;       <a class="code" href="a00317.html#gaa7aeb54c167712b38f2178a1be2360ad">mediump_dualquat</a>;</div>
-<div class="line"><a name="l00193"></a><span class="lineno">  193</span>&#160;</div>
-<div class="line"><a name="l00197"></a><span class="lineno"><a class="line" href="a00317.html#ga9ef5bf1da52a9d4932335a517086ceaf">  197</a></span>&#160;        typedef tdualquat&lt;<span class="keywordtype">float</span>, highp&gt;         <a class="code" href="a00317.html#ga9ef5bf1da52a9d4932335a517086ceaf">highp_dualquat</a>;</div>
-<div class="line"><a name="l00198"></a><span class="lineno">  198</span>&#160;</div>
-<div class="line"><a name="l00199"></a><span class="lineno">  199</span>&#160;</div>
-<div class="line"><a name="l00203"></a><span class="lineno"><a class="line" href="a00317.html#gaa38f671be25a7f3b136a452a8bb42860">  203</a></span>&#160;        typedef tdualquat&lt;<span class="keywordtype">float</span>, lowp&gt;          <a class="code" href="a00317.html#gaa38f671be25a7f3b136a452a8bb42860">lowp_fdualquat</a>;</div>
-<div class="line"><a name="l00204"></a><span class="lineno">  204</span>&#160;</div>
-<div class="line"><a name="l00208"></a><span class="lineno"><a class="line" href="a00317.html#ga4a6b594ff7e81150d8143001367a9431">  208</a></span>&#160;        typedef tdualquat&lt;<span class="keywordtype">float</span>, mediump&gt;       <a class="code" href="a00317.html#ga4a6b594ff7e81150d8143001367a9431">mediump_fdualquat</a>;</div>
-<div class="line"><a name="l00209"></a><span class="lineno">  209</span>&#160;</div>
-<div class="line"><a name="l00213"></a><span class="lineno"><a class="line" href="a00317.html#ga4c4e55e9c99dc57b299ed590968da564">  213</a></span>&#160;        typedef tdualquat&lt;<span class="keywordtype">float</span>, highp&gt;         <a class="code" href="a00317.html#ga4c4e55e9c99dc57b299ed590968da564">highp_fdualquat</a>;</div>
-<div class="line"><a name="l00214"></a><span class="lineno">  214</span>&#160;</div>
-<div class="line"><a name="l00215"></a><span class="lineno">  215</span>&#160;</div>
-<div class="line"><a name="l00219"></a><span class="lineno"><a class="line" href="a00317.html#gab4c5103338af3dac7e0fbc86895a3f1a">  219</a></span>&#160;        typedef tdualquat&lt;<span class="keywordtype">double</span>, lowp&gt;         <a class="code" href="a00317.html#gab4c5103338af3dac7e0fbc86895a3f1a">lowp_ddualquat</a>;</div>
-<div class="line"><a name="l00220"></a><span class="lineno">  220</span>&#160;</div>
-<div class="line"><a name="l00224"></a><span class="lineno"><a class="line" href="a00317.html#ga0fb11e48e2d16348ccb06a25213641b4">  224</a></span>&#160;        typedef tdualquat&lt;<span class="keywordtype">double</span>, mediump&gt;      <a class="code" href="a00317.html#ga0fb11e48e2d16348ccb06a25213641b4">mediump_ddualquat</a>;</div>
-<div class="line"><a name="l00225"></a><span class="lineno">  225</span>&#160;</div>
-<div class="line"><a name="l00229"></a><span class="lineno"><a class="line" href="a00317.html#ga8f67eafa7197d7a668dad5105a463d2a">  229</a></span>&#160;        typedef tdualquat&lt;<span class="keywordtype">double</span>, highp&gt;        <a class="code" href="a00317.html#ga8f67eafa7197d7a668dad5105a463d2a">highp_ddualquat</a>;</div>
-<div class="line"><a name="l00230"></a><span class="lineno">  230</span>&#160;</div>
-<div class="line"><a name="l00231"></a><span class="lineno">  231</span>&#160;</div>
-<div class="line"><a name="l00232"></a><span class="lineno">  232</span>&#160;<span class="preprocessor">#if(!defined(GLM_PRECISION_HIGHP_FLOAT) &amp;&amp; !defined(GLM_PRECISION_MEDIUMP_FLOAT) &amp;&amp; !defined(GLM_PRECISION_LOWP_FLOAT))</span></div>
-<div class="line"><a name="l00233"></a><span class="lineno">  233</span>&#160;        <span class="keyword">typedef</span> highp_fdualquat                 <a class="code" href="a00317.html#gae93abee0c979902fbec6a7bee0f6fae1">dualquat</a>;</div>
-<div class="line"><a name="l00237"></a><span class="lineno">  237</span>&#160;</div>
-<div class="line"><a name="l00241"></a><span class="lineno"><a class="line" href="a00317.html#ga237c2b9b42c9a930e49de5840ae0f930">  241</a></span>&#160;        <span class="keyword">typedef</span> highp_fdualquat                 <a class="code" href="a00317.html#ga237c2b9b42c9a930e49de5840ae0f930">fdualquat</a>;</div>
-<div class="line"><a name="l00242"></a><span class="lineno">  242</span>&#160;<span class="preprocessor">#elif(defined(GLM_PRECISION_HIGHP_FLOAT) &amp;&amp; !defined(GLM_PRECISION_MEDIUMP_FLOAT) &amp;&amp; !defined(GLM_PRECISION_LOWP_FLOAT))</span></div>
-<div class="line"><a name="l00243"></a><span class="lineno">  243</span>&#160;        <span class="keyword">typedef</span> highp_fdualquat                 <a class="code" href="a00317.html#gae93abee0c979902fbec6a7bee0f6fae1">dualquat</a>;</div>
-<div class="line"><a name="l00244"></a><span class="lineno">  244</span>&#160;        <span class="keyword">typedef</span> highp_fdualquat                 <a class="code" href="a00317.html#ga237c2b9b42c9a930e49de5840ae0f930">fdualquat</a>;</div>
-<div class="line"><a name="l00245"></a><span class="lineno">  245</span>&#160;<span class="preprocessor">#elif(!defined(GLM_PRECISION_HIGHP_FLOAT) &amp;&amp; defined(GLM_PRECISION_MEDIUMP_FLOAT) &amp;&amp; !defined(GLM_PRECISION_LOWP_FLOAT))</span></div>
-<div class="line"><a name="l00246"></a><span class="lineno">  246</span>&#160;        <span class="keyword">typedef</span> mediump_fdualquat               <a class="code" href="a00317.html#gae93abee0c979902fbec6a7bee0f6fae1">dualquat</a>;</div>
-<div class="line"><a name="l00247"></a><span class="lineno">  247</span>&#160;        <span class="keyword">typedef</span> mediump_fdualquat               <a class="code" href="a00317.html#ga237c2b9b42c9a930e49de5840ae0f930">fdualquat</a>;</div>
-<div class="line"><a name="l00248"></a><span class="lineno">  248</span>&#160;<span class="preprocessor">#elif(!defined(GLM_PRECISION_HIGHP_FLOAT) &amp;&amp; !defined(GLM_PRECISION_MEDIUMP_FLOAT) &amp;&amp; defined(GLM_PRECISION_LOWP_FLOAT))</span></div>
-<div class="line"><a name="l00249"></a><span class="lineno">  249</span>&#160;        <span class="keyword">typedef</span> lowp_fdualquat                  <a class="code" href="a00317.html#gae93abee0c979902fbec6a7bee0f6fae1">dualquat</a>;</div>
-<div class="line"><a name="l00250"></a><span class="lineno">  250</span>&#160;        <span class="keyword">typedef</span> lowp_fdualquat                  <a class="code" href="a00317.html#ga237c2b9b42c9a930e49de5840ae0f930">fdualquat</a>;</div>
-<div class="line"><a name="l00251"></a><span class="lineno">  251</span>&#160;<span class="preprocessor">#else</span></div>
-<div class="line"><a name="l00252"></a><span class="lineno">  252</span>&#160;<span class="preprocessor">#       error &quot;GLM error: multiple default precision requested for single-precision floating-point types&quot;</span></div>
-<div class="line"><a name="l00253"></a><span class="lineno">  253</span>&#160;<span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00254"></a><span class="lineno">  254</span>&#160;</div>
-<div class="line"><a name="l00255"></a><span class="lineno">  255</span>&#160;</div>
-<div class="line"><a name="l00256"></a><span class="lineno">  256</span>&#160;<span class="preprocessor">#if(!defined(GLM_PRECISION_HIGHP_DOUBLE) &amp;&amp; !defined(GLM_PRECISION_MEDIUMP_DOUBLE) &amp;&amp; !defined(GLM_PRECISION_LOWP_DOUBLE))</span></div>
-<div class="line"><a name="l00257"></a><span class="lineno">  257</span>&#160;        <span class="keyword">typedef</span> highp_ddualquat                 <a class="code" href="a00317.html#ga3d71f98d84ba59dfe4e369fde4714cd6">ddualquat</a>;</div>
-<div class="line"><a name="l00261"></a><span class="lineno">  261</span>&#160;<span class="preprocessor">#elif(defined(GLM_PRECISION_HIGHP_DOUBLE) &amp;&amp; !defined(GLM_PRECISION_MEDIUMP_DOUBLE) &amp;&amp; !defined(GLM_PRECISION_LOWP_DOUBLE))</span></div>
-<div class="line"><a name="l00262"></a><span class="lineno">  262</span>&#160;        <span class="keyword">typedef</span> highp_ddualquat                 <a class="code" href="a00317.html#ga3d71f98d84ba59dfe4e369fde4714cd6">ddualquat</a>;</div>
-<div class="line"><a name="l00263"></a><span class="lineno">  263</span>&#160;<span class="preprocessor">#elif(!defined(GLM_PRECISION_HIGHP_DOUBLE) &amp;&amp; defined(GLM_PRECISION_MEDIUMP_DOUBLE) &amp;&amp; !defined(GLM_PRECISION_LOWP_DOUBLE))</span></div>
-<div class="line"><a name="l00264"></a><span class="lineno">  264</span>&#160;        <span class="keyword">typedef</span> mediump_ddualquat               <a class="code" href="a00317.html#ga3d71f98d84ba59dfe4e369fde4714cd6">ddualquat</a>;</div>
-<div class="line"><a name="l00265"></a><span class="lineno">  265</span>&#160;<span class="preprocessor">#elif(!defined(GLM_PRECISION_HIGHP_DOUBLE) &amp;&amp; !defined(GLM_PRECISION_MEDIUMP_DOUBLE) &amp;&amp; defined(GLM_PRECISION_LOWP_DOUBLE))</span></div>
-<div class="line"><a name="l00266"></a><span class="lineno">  266</span>&#160;        <span class="keyword">typedef</span> lowp_ddualquat                  <a class="code" href="a00317.html#ga3d71f98d84ba59dfe4e369fde4714cd6">ddualquat</a>;</div>
-<div class="line"><a name="l00267"></a><span class="lineno">  267</span>&#160;<span class="preprocessor">#else</span></div>
-<div class="line"><a name="l00268"></a><span class="lineno">  268</span>&#160;<span class="preprocessor">#       error &quot;GLM error: Multiple default precision requested for double-precision floating-point types&quot;</span></div>
-<div class="line"><a name="l00269"></a><span class="lineno">  269</span>&#160;<span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00270"></a><span class="lineno">  270</span>&#160;</div>
-<div class="line"><a name="l00272"></a><span class="lineno">  272</span>&#160;} <span class="comment">//namespace glm</span></div>
-<div class="line"><a name="l00273"></a><span class="lineno">  273</span>&#160;</div>
-<div class="line"><a name="l00274"></a><span class="lineno">  274</span>&#160;<span class="preprocessor">#include &quot;dual_quaternion.inl&quot;</span></div>
-<div class="ttc" id="a00317_html_ga3d71f98d84ba59dfe4e369fde4714cd6"><div class="ttname"><a href="a00317.html#ga3d71f98d84ba59dfe4e369fde4714cd6">glm::ddualquat</a></div><div class="ttdeci">highp_ddualquat ddualquat</div><div class="ttdoc">Dual-quaternion of default double-qualifier floating-point numbers. </div><div class="ttdef"><b>Definition:</b> <a href="a00022_source.html#l00260">dual_quaternion.hpp:260</a></div></div>
-<div class="ttc" id="a00317_html_ga237c2b9b42c9a930e49de5840ae0f930"><div class="ttname"><a href="a00317.html#ga237c2b9b42c9a930e49de5840ae0f930">glm::fdualquat</a></div><div class="ttdeci">highp_fdualquat fdualquat</div><div class="ttdoc">Dual-quaternion of single-qualifier floating-point numbers. </div><div class="ttdef"><b>Definition:</b> <a href="a00022_source.html#l00241">dual_quaternion.hpp:241</a></div></div>
-<div class="ttc" id="a00317_html_gae99d143b37f9cad4cd9285571aab685a"><div class="ttname"><a href="a00317.html#gae99d143b37f9cad4cd9285571aab685a">glm::mat2x4_cast</a></div><div class="ttdeci">GLM_FUNC_DECL mat&lt; 2, 4, T, Q &gt; mat2x4_cast(tdualquat&lt; T, Q &gt; const &amp;x)</div><div class="ttdoc">Converts a quaternion to a 2 * 4 matrix. </div></div>
-<div class="ttc" id="a00317_html_ga8f67eafa7197d7a668dad5105a463d2a"><div class="ttname"><a href="a00317.html#ga8f67eafa7197d7a668dad5105a463d2a">glm::highp_ddualquat</a></div><div class="ttdeci">tdualquat&lt; double, highp &gt; highp_ddualquat</div><div class="ttdoc">Dual-quaternion of high double-qualifier floating-point numbers. </div><div class="ttdef"><b>Definition:</b> <a href="a00022_source.html#l00229">dual_quaternion.hpp:229</a></div></div>
-<div class="ttc" id="a00317_html_ga299b8641509606b1958ffa104a162cfe"><div class="ttname"><a href="a00317.html#ga299b8641509606b1958ffa104a162cfe">glm::normalize</a></div><div class="ttdeci">GLM_FUNC_DECL tdualquat&lt; T, Q &gt; normalize(tdualquat&lt; T, Q &gt; const &amp;q)</div><div class="ttdoc">Returns the normalized quaternion. </div></div>
-<div class="ttc" id="a00317_html_ga0b35c0e30df8a875dbaa751e0bd800e0"><div class="ttname"><a href="a00317.html#ga0b35c0e30df8a875dbaa751e0bd800e0">glm::dual_quat_identity</a></div><div class="ttdeci">GLM_FUNC_DECL tdualquat&lt; T, Q &gt; dual_quat_identity()</div><div class="ttdoc">Creates an identity dual quaternion. </div></div>
-<div class="ttc" id="a00317_html_ga070f521a953f6461af4ab4cf8ccbf27e"><div class="ttname"><a href="a00317.html#ga070f521a953f6461af4ab4cf8ccbf27e">glm::inverse</a></div><div class="ttdeci">GLM_FUNC_DECL tdualquat&lt; T, Q &gt; inverse(tdualquat&lt; T, Q &gt; const &amp;q)</div><div class="ttdoc">Returns the q inverse. </div></div>
-<div class="ttc" id="a00317_html_gace8380112d16d33f520839cb35a4d173"><div class="ttname"><a href="a00317.html#gace8380112d16d33f520839cb35a4d173">glm::lerp</a></div><div class="ttdeci">GLM_FUNC_DECL tdualquat&lt; T, Q &gt; lerp(tdualquat&lt; T, Q &gt; const &amp;x, tdualquat&lt; T, Q &gt; const &amp;y, T const &amp;a)</div><div class="ttdoc">Returns the linear interpolation of two dual quaternion. </div></div>
-<div class="ttc" id="a00317_html_gade05d29ebd4deea0f883d0e1bb4169aa"><div class="ttname"><a href="a00317.html#gade05d29ebd4deea0f883d0e1bb4169aa">glm::lowp_dualquat</a></div><div class="ttdeci">tdualquat&lt; float, lowp &gt; lowp_dualquat</div><div class="ttdoc">Dual-quaternion of low single-qualifier floating-point numbers. </div><div class="ttdef"><b>Definition:</b> <a href="a00022_source.html#l00187">dual_quaternion.hpp:187</a></div></div>
-<div class="ttc" id="a00317_html_gaa38f671be25a7f3b136a452a8bb42860"><div class="ttname"><a href="a00317.html#gaa38f671be25a7f3b136a452a8bb42860">glm::lowp_fdualquat</a></div><div class="ttdeci">tdualquat&lt; float, lowp &gt; lowp_fdualquat</div><div class="ttdoc">Dual-quaternion of low single-qualifier floating-point numbers. </div><div class="ttdef"><b>Definition:</b> <a href="a00022_source.html#l00203">dual_quaternion.hpp:203</a></div></div>
-<div class="ttc" id="a00254_html_gab703732449be6c7199369b3f9a91ed38"><div class="ttname"><a href="a00254.html#gab703732449be6c7199369b3f9a91ed38">glm::length</a></div><div class="ttdeci">GLM_FUNC_DECL T length(qua&lt; T, Q &gt; const &amp;q)</div><div class="ttdoc">Returns the norm of a quaternions. </div></div>
-<div class="ttc" id="a00317_html_gab4c5103338af3dac7e0fbc86895a3f1a"><div class="ttname"><a href="a00317.html#gab4c5103338af3dac7e0fbc86895a3f1a">glm::lowp_ddualquat</a></div><div class="ttdeci">tdualquat&lt; double, lowp &gt; lowp_ddualquat</div><div class="ttdoc">Dual-quaternion of low double-qualifier floating-point numbers. </div><div class="ttdef"><b>Definition:</b> <a href="a00022_source.html#l00219">dual_quaternion.hpp:219</a></div></div>
-<div class="ttc" id="a00317_html_gaf59f5bb69620d2891c3795c6f2639179"><div class="ttname"><a href="a00317.html#gaf59f5bb69620d2891c3795c6f2639179">glm::mat3x4_cast</a></div><div class="ttdeci">GLM_FUNC_DECL mat&lt; 3, 4, T, Q &gt; mat3x4_cast(tdualquat&lt; T, Q &gt; const &amp;x)</div><div class="ttdoc">Converts a quaternion to a 3 * 4 matrix. </div></div>
-<div class="ttc" id="a00317_html_gae93abee0c979902fbec6a7bee0f6fae1"><div class="ttname"><a href="a00317.html#gae93abee0c979902fbec6a7bee0f6fae1">glm::dualquat</a></div><div class="ttdeci">highp_fdualquat dualquat</div><div class="ttdoc">Dual-quaternion of floating-point numbers. </div><div class="ttdef"><b>Definition:</b> <a href="a00022_source.html#l00236">dual_quaternion.hpp:236</a></div></div>
-<div class="ttc" id="a00317_html_ga4c4e55e9c99dc57b299ed590968da564"><div class="ttname"><a href="a00317.html#ga4c4e55e9c99dc57b299ed590968da564">glm::highp_fdualquat</a></div><div class="ttdeci">tdualquat&lt; float, highp &gt; highp_fdualquat</div><div class="ttdoc">Dual-quaternion of high single-qualifier floating-point numbers. </div><div class="ttdef"><b>Definition:</b> <a href="a00022_source.html#l00213">dual_quaternion.hpp:213</a></div></div>
-<div class="ttc" id="a00356_html_ga1a32fceb71962e6160e8af295c91930a"><div class="ttname"><a href="a00356.html#ga1a32fceb71962e6160e8af295c91930a">glm::orientation</a></div><div class="ttdeci">GLM_FUNC_DECL mat&lt; 4, 4, T, Q &gt; orientation(vec&lt; 3, T, Q &gt; const &amp;Normal, vec&lt; 3, T, Q &gt; const &amp;Up)</div><div class="ttdoc">Build a rotation matrix from a normal and a up vector. </div></div>
-<div class="ttc" id="a00317_html_gaa7aeb54c167712b38f2178a1be2360ad"><div class="ttname"><a href="a00317.html#gaa7aeb54c167712b38f2178a1be2360ad">glm::mediump_dualquat</a></div><div class="ttdeci">tdualquat&lt; float, mediump &gt; mediump_dualquat</div><div class="ttdoc">Dual-quaternion of medium single-qualifier floating-point numbers. </div><div class="ttdef"><b>Definition:</b> <a href="a00022_source.html#l00192">dual_quaternion.hpp:192</a></div></div>
-<div class="ttc" id="a00317_html_ga4a6b594ff7e81150d8143001367a9431"><div class="ttname"><a href="a00317.html#ga4a6b594ff7e81150d8143001367a9431">glm::mediump_fdualquat</a></div><div class="ttdeci">tdualquat&lt; float, mediump &gt; mediump_fdualquat</div><div class="ttdoc">Dual-quaternion of medium single-qualifier floating-point numbers. </div><div class="ttdef"><b>Definition:</b> <a href="a00022_source.html#l00208">dual_quaternion.hpp:208</a></div></div>
-<div class="ttc" id="a00317_html_ga0fb11e48e2d16348ccb06a25213641b4"><div class="ttname"><a href="a00317.html#ga0fb11e48e2d16348ccb06a25213641b4">glm::mediump_ddualquat</a></div><div class="ttdeci">tdualquat&lt; double, mediump &gt; mediump_ddualquat</div><div class="ttdoc">Dual-quaternion of medium double-qualifier floating-point numbers. </div><div class="ttdef"><b>Definition:</b> <a href="a00022_source.html#l00224">dual_quaternion.hpp:224</a></div></div>
-<div class="ttc" id="a00317_html_ga91025ebdca0f4ea54da08497b00e8c84"><div class="ttname"><a href="a00317.html#ga91025ebdca0f4ea54da08497b00e8c84">glm::dualquat_cast</a></div><div class="ttdeci">GLM_FUNC_DECL tdualquat&lt; T, Q &gt; dualquat_cast(mat&lt; 3, 4, T, Q &gt; const &amp;x)</div><div class="ttdoc">Converts a 3 * 4 matrix (augmented matrix rotation + translation) to a quaternion. </div></div>
-<div class="ttc" id="a00317_html_ga9ef5bf1da52a9d4932335a517086ceaf"><div class="ttname"><a href="a00317.html#ga9ef5bf1da52a9d4932335a517086ceaf">glm::highp_dualquat</a></div><div class="ttdeci">tdualquat&lt; float, highp &gt; highp_dualquat</div><div class="ttdoc">Dual-quaternion of high single-qualifier floating-point numbers. </div><div class="ttdef"><b>Definition:</b> <a href="a00022_source.html#l00197">dual_quaternion.hpp:197</a></div></div>
-<div class="ttc" id="a00236_html"><div class="ttname"><a href="a00236.html">glm</a></div><div class="ttdef"><b>Definition:</b> <a href="a00015_source.html#l00020">common.hpp:20</a></div></div>
-</div><!-- fragment --></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.10
-</small></address>
-</body>
-</html>

+ 71 - 194
doc/api/a00023_source.html

@@ -1,19 +1,17 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://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.10"/>
-<title>0.9.9 API documentation: easing.hpp Source File</title>
+<meta name="generator" content="Doxygen 1.8.18"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>1.0.0 API documentation: compute_common.hpp Source File</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="search/search.css" rel="stylesheet" type="text/css"/>
 <script type="text/javascript" src="search/searchdata.js"></script>
 <script type="text/javascript" src="search/search.js"></script>
-<script type="text/javascript">
-  $(document).ready(function() { init_search(); });
-</script>
 <link href="doxygen.css" rel="stylesheet" type="text/css" />
 </head>
 <body>
@@ -24,7 +22,7 @@
  <tr style="height: 56px;">
   <td id="projectlogo"><img alt="Logo" src="logo-mini.png"/></td>
   <td id="projectalign" style="padding-left: 0.5em;">
-   <div id="projectname">0.9.9 API documentation
+   <div id="projectname">1.0.0 API documentation
    </div>
   </td>
  </tr>
@@ -32,38 +30,22 @@
 </table>
 </div>
 <!-- end header part -->
-<!-- Generated by Doxygen 1.8.10 -->
+<!-- Generated by Doxygen 1.8.18 -->
 <script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
 var searchBox = new SearchBox("searchBox", "search",false,'Search');
+/* @license-end */
 </script>
-  <div id="navrow1" class="tabs">
-    <ul class="tablist">
-      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
-      <li><a href="modules.html"><span>Modules</span></a></li>
-      <li class="current"><a href="files.html"><span>Files</span></a></li>
-      <li>
-        <div id="MSearchBox" class="MSearchBoxInactive">
-        <span class="left">
-          <img id="MSearchSelect" src="search/mag_sel.png"
-               onmouseover="return searchBox.OnSearchSelectShow()"
-               onmouseout="return searchBox.OnSearchSelectHide()"
-               alt=""/>
-          <input type="text" id="MSearchField" value="Search" accesskey="S"
-               onfocus="searchBox.OnSearchFieldFocus(true)" 
-               onblur="searchBox.OnSearchFieldFocus(false)" 
-               onkeyup="searchBox.OnSearchFieldChange(event)"/>
-          </span><span class="right">
-            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
-          </span>
-        </div>
-      </li>
-    </ul>
-  </div>
-  <div id="navrow2" class="tabs2">
-    <ul class="tablist">
-      <li><a href="files.html"><span>File&#160;List</span></a></li>
-    </ul>
-  </div>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
 <!-- window showing the filter options -->
 <div id="MSearchSelectWindow"
      onmouseover="return searchBox.OnSearchSelectShow()"
@@ -80,175 +62,70 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 
 <div id="nav-path" class="navpath">
   <ul>
-<li class="navelem"><a class="el" href="dir_3a581ba30d25676e4b797b1f96d53b45.html">F:</a></li><li class="navelem"><a class="el" href="dir_9e5fe034a00e89334fd5186c3e7db156.html">G-Truc</a></li><li class="navelem"><a class="el" href="dir_d9496f0844b48bc7e53b5af8c99b9ab2.html">Source</a></li><li class="navelem"><a class="el" href="dir_a8bee7be44182a33f3820393ae0b105d.html">G-Truc</a></li><li class="navelem"><a class="el" href="dir_44e5e654415abd9ca6fdeaddaff8565e.html">glm</a></li><li class="navelem"><a class="el" href="dir_cef2d71d502cb69a9252bca2297d9549.html">glm</a></li><li class="navelem"><a class="el" href="dir_f35778ec600a1b9bbc4524e62e226aa2.html">gtx</a></li>  </ul>
+<li class="navelem"><a class="el" href="dir_885cc87fac2d91e269af0a5a959fa5f6.html">E:</a></li><li class="navelem"><a class="el" href="dir_63ed049134a778d525e06b63afc2c979.html">Github</a></li><li class="navelem"><a class="el" href="dir_c98a9ac98258ab9f831b188d66361a70.html">g-truc</a></li><li class="navelem"><a class="el" href="dir_50f12b6ceb23d7f6adfb377a1ae8b006.html">glm</a></li><li class="navelem"><a class="el" href="dir_fca33f1b5115d46f42c670590789c0d2.html">glm</a></li><li class="navelem"><a class="el" href="dir_382f4fd018b81be8753cb53c0a41a09a.html">detail</a></li>  </ul>
 </div>
 </div><!-- top -->
 <div class="header">
   <div class="headertitle">
-<div class="title">easing.hpp</div>  </div>
+<div class="title">compute_common.hpp</div>  </div>
 </div><!--header-->
 <div class="contents">
-<a href="a00023.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span>&#160;</div>
-<div class="line"><a name="l00017"></a><span class="lineno">   17</span>&#160;<span class="preprocessor">#pragma once</span></div>
-<div class="line"><a name="l00018"></a><span class="lineno">   18</span>&#160;</div>
-<div class="line"><a name="l00019"></a><span class="lineno">   19</span>&#160;<span class="comment">// Dependency:</span></div>
-<div class="line"><a name="l00020"></a><span class="lineno">   20</span>&#160;<span class="preprocessor">#include &quot;../glm.hpp&quot;</span></div>
-<div class="line"><a name="l00021"></a><span class="lineno">   21</span>&#160;<span class="preprocessor">#include &quot;../gtc/constants.hpp&quot;</span></div>
-<div class="line"><a name="l00022"></a><span class="lineno">   22</span>&#160;<span class="preprocessor">#include &quot;../detail/qualifier.hpp&quot;</span></div>
-<div class="line"><a name="l00023"></a><span class="lineno">   23</span>&#160;</div>
-<div class="line"><a name="l00024"></a><span class="lineno">   24</span>&#160;<span class="preprocessor">#if GLM_MESSAGES == GLM_ENABLE &amp;&amp; !defined(GLM_EXT_INCLUDED)</span></div>
-<div class="line"><a name="l00025"></a><span class="lineno">   25</span>&#160;<span class="preprocessor">#       ifndef GLM_ENABLE_EXPERIMENTAL</span></div>
-<div class="line"><a name="l00026"></a><span class="lineno">   26</span>&#160;<span class="preprocessor">#               pragma message(&quot;GLM: GLM_GTX_easing is an experimental extension and may change in the future. Use #define GLM_ENABLE_EXPERIMENTAL before including it, if you really want to use it.&quot;)</span></div>
-<div class="line"><a name="l00027"></a><span class="lineno">   27</span>&#160;<span class="preprocessor">#       else</span></div>
-<div class="line"><a name="l00028"></a><span class="lineno">   28</span>&#160;<span class="preprocessor">#               pragma message(&quot;GLM: GLM_GTX_easing extension included&quot;)</span></div>
-<div class="line"><a name="l00029"></a><span class="lineno">   29</span>&#160;<span class="preprocessor">#       endif</span></div>
-<div class="line"><a name="l00030"></a><span class="lineno">   30</span>&#160;<span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00031"></a><span class="lineno">   31</span>&#160;</div>
-<div class="line"><a name="l00032"></a><span class="lineno">   32</span>&#160;<span class="keyword">namespace </span><a class="code" href="a00236.html">glm</a>{</div>
-<div class="line"><a name="l00035"></a><span class="lineno">   35</span>&#160;</div>
-<div class="line"><a name="l00038"></a><span class="lineno">   38</span>&#160;        <span class="keyword">template</span> &lt;<span class="keyword">typename</span> genType&gt;</div>
-<div class="line"><a name="l00039"></a><span class="lineno">   39</span>&#160;        GLM_FUNC_DECL genType <a class="code" href="a00318.html#ga290c3e47cb0a49f2e8abe90b1872b649">linearInterpolation</a>(genType <span class="keyword">const</span> &amp; a);</div>
-<div class="line"><a name="l00040"></a><span class="lineno">   40</span>&#160;</div>
-<div class="line"><a name="l00043"></a><span class="lineno">   43</span>&#160;        <span class="keyword">template</span> &lt;<span class="keyword">typename</span> genType&gt;</div>
-<div class="line"><a name="l00044"></a><span class="lineno">   44</span>&#160;        GLM_FUNC_DECL genType <a class="code" href="a00318.html#gaf42089d35855695132d217cd902304a0">quadraticEaseIn</a>(genType <span class="keyword">const</span> &amp; a);</div>
-<div class="line"><a name="l00045"></a><span class="lineno">   45</span>&#160;</div>
-<div class="line"><a name="l00048"></a><span class="lineno">   48</span>&#160;        <span class="keyword">template</span> &lt;<span class="keyword">typename</span> genType&gt;</div>
-<div class="line"><a name="l00049"></a><span class="lineno">   49</span>&#160;        GLM_FUNC_DECL genType <a class="code" href="a00318.html#ga283717bc2d937547ad34ec0472234ee3">quadraticEaseOut</a>(genType <span class="keyword">const</span> &amp; a);</div>
-<div class="line"><a name="l00050"></a><span class="lineno">   50</span>&#160;</div>
-<div class="line"><a name="l00055"></a><span class="lineno">   55</span>&#160;        <span class="keyword">template</span> &lt;<span class="keyword">typename</span> genType&gt;</div>
-<div class="line"><a name="l00056"></a><span class="lineno">   56</span>&#160;        GLM_FUNC_DECL genType <a class="code" href="a00318.html#ga03e8fc2d7945a4e63ee33b2159c14cea">quadraticEaseInOut</a>(genType <span class="keyword">const</span> &amp; a);</div>
-<div class="line"><a name="l00057"></a><span class="lineno">   57</span>&#160;</div>
-<div class="line"><a name="l00059"></a><span class="lineno">   59</span>&#160;        <span class="keyword">template</span> &lt;<span class="keyword">typename</span> genType&gt;</div>
-<div class="line"><a name="l00060"></a><span class="lineno">   60</span>&#160;        GLM_FUNC_DECL genType <a class="code" href="a00318.html#gaff52f746102b94864d105563ba8895ae">cubicEaseIn</a>(genType <span class="keyword">const</span> &amp; a);</div>
-<div class="line"><a name="l00061"></a><span class="lineno">   61</span>&#160;</div>
-<div class="line"><a name="l00064"></a><span class="lineno">   64</span>&#160;        <span class="keyword">template</span> &lt;<span class="keyword">typename</span> genType&gt;</div>
-<div class="line"><a name="l00065"></a><span class="lineno">   65</span>&#160;        GLM_FUNC_DECL genType <a class="code" href="a00318.html#ga40d746385d8bcc5973f5bc6a2340ca91">cubicEaseOut</a>(genType <span class="keyword">const</span> &amp; a);</div>
-<div class="line"><a name="l00066"></a><span class="lineno">   66</span>&#160;</div>
-<div class="line"><a name="l00071"></a><span class="lineno">   71</span>&#160;        <span class="keyword">template</span> &lt;<span class="keyword">typename</span> genType&gt;</div>
-<div class="line"><a name="l00072"></a><span class="lineno">   72</span>&#160;        GLM_FUNC_DECL genType <a class="code" href="a00318.html#ga55134072b42d75452189321d4a2ad91c">cubicEaseInOut</a>(genType <span class="keyword">const</span> &amp; a);</div>
-<div class="line"><a name="l00073"></a><span class="lineno">   73</span>&#160;</div>
-<div class="line"><a name="l00076"></a><span class="lineno">   76</span>&#160;        <span class="keyword">template</span> &lt;<span class="keyword">typename</span> genType&gt;</div>
-<div class="line"><a name="l00077"></a><span class="lineno">   77</span>&#160;        GLM_FUNC_DECL genType <a class="code" href="a00318.html#ga808b41f14514f47dad5dcc69eb924afd">quarticEaseIn</a>(genType <span class="keyword">const</span> &amp; a);</div>
-<div class="line"><a name="l00078"></a><span class="lineno">   78</span>&#160;</div>
-<div class="line"><a name="l00081"></a><span class="lineno">   81</span>&#160;        <span class="keyword">template</span> &lt;<span class="keyword">typename</span> genType&gt;</div>
-<div class="line"><a name="l00082"></a><span class="lineno">   82</span>&#160;        GLM_FUNC_DECL genType <a class="code" href="a00318.html#ga4dfb33fa7664aa888eb647999d329b98">quarticEaseOut</a>(genType <span class="keyword">const</span> &amp; a);</div>
-<div class="line"><a name="l00083"></a><span class="lineno">   83</span>&#160;</div>
-<div class="line"><a name="l00088"></a><span class="lineno">   88</span>&#160;        <span class="keyword">template</span> &lt;<span class="keyword">typename</span> genType&gt;</div>
-<div class="line"><a name="l00089"></a><span class="lineno">   89</span>&#160;        GLM_FUNC_DECL genType <a class="code" href="a00318.html#ga6d000f852de12b197e154f234b20c505">quarticEaseInOut</a>(genType <span class="keyword">const</span> &amp; a);</div>
-<div class="line"><a name="l00090"></a><span class="lineno">   90</span>&#160;</div>
-<div class="line"><a name="l00093"></a><span class="lineno">   93</span>&#160;        <span class="keyword">template</span> &lt;<span class="keyword">typename</span> genType&gt;</div>
-<div class="line"><a name="l00094"></a><span class="lineno">   94</span>&#160;        GLM_FUNC_DECL genType <a class="code" href="a00318.html#ga097579d8e087dcf48037588140a21640">quinticEaseIn</a>(genType <span class="keyword">const</span> &amp; a);</div>
-<div class="line"><a name="l00095"></a><span class="lineno">   95</span>&#160;</div>
-<div class="line"><a name="l00098"></a><span class="lineno">   98</span>&#160;        <span class="keyword">template</span> &lt;<span class="keyword">typename</span> genType&gt;</div>
-<div class="line"><a name="l00099"></a><span class="lineno">   99</span>&#160;        GLM_FUNC_DECL genType <a class="code" href="a00318.html#ga7dbd4d5c8da3f5353121f615e7b591d7">quinticEaseOut</a>(genType <span class="keyword">const</span> &amp; a);</div>
-<div class="line"><a name="l00100"></a><span class="lineno">  100</span>&#160;</div>
-<div class="line"><a name="l00105"></a><span class="lineno">  105</span>&#160;        <span class="keyword">template</span> &lt;<span class="keyword">typename</span> genType&gt;</div>
-<div class="line"><a name="l00106"></a><span class="lineno">  106</span>&#160;        GLM_FUNC_DECL genType <a class="code" href="a00318.html#ga2a82d5c46df7e2d21cc0108eb7b83934">quinticEaseInOut</a>(genType <span class="keyword">const</span> &amp; a);</div>
-<div class="line"><a name="l00107"></a><span class="lineno">  107</span>&#160;</div>
-<div class="line"><a name="l00110"></a><span class="lineno">  110</span>&#160;        <span class="keyword">template</span> &lt;<span class="keyword">typename</span> genType&gt;</div>
-<div class="line"><a name="l00111"></a><span class="lineno">  111</span>&#160;        GLM_FUNC_DECL genType <a class="code" href="a00318.html#gafb338ac6f6b2bcafee50e3dca5201dbf">sineEaseIn</a>(genType <span class="keyword">const</span> &amp; a);</div>
-<div class="line"><a name="l00112"></a><span class="lineno">  112</span>&#160;</div>
-<div class="line"><a name="l00115"></a><span class="lineno">  115</span>&#160;        <span class="keyword">template</span> &lt;<span class="keyword">typename</span> genType&gt;</div>
-<div class="line"><a name="l00116"></a><span class="lineno">  116</span>&#160;        GLM_FUNC_DECL genType <a class="code" href="a00318.html#gab3e454f883afc1606ef91363881bf5a3">sineEaseOut</a>(genType <span class="keyword">const</span> &amp; a);</div>
-<div class="line"><a name="l00117"></a><span class="lineno">  117</span>&#160;</div>
-<div class="line"><a name="l00120"></a><span class="lineno">  120</span>&#160;        <span class="keyword">template</span> &lt;<span class="keyword">typename</span> genType&gt;</div>
-<div class="line"><a name="l00121"></a><span class="lineno">  121</span>&#160;        GLM_FUNC_DECL genType <a class="code" href="a00318.html#gaa46e3d5fbf7a15caa28eff9ef192d7c7">sineEaseInOut</a>(genType <span class="keyword">const</span> &amp; a);</div>
-<div class="line"><a name="l00122"></a><span class="lineno">  122</span>&#160;</div>
-<div class="line"><a name="l00125"></a><span class="lineno">  125</span>&#160;        <span class="keyword">template</span> &lt;<span class="keyword">typename</span> genType&gt;</div>
-<div class="line"><a name="l00126"></a><span class="lineno">  126</span>&#160;        GLM_FUNC_DECL genType <a class="code" href="a00318.html#ga34508d4b204a321ec26d6086aa047997">circularEaseIn</a>(genType <span class="keyword">const</span> &amp; a);</div>
-<div class="line"><a name="l00127"></a><span class="lineno">  127</span>&#160;</div>
-<div class="line"><a name="l00130"></a><span class="lineno">  130</span>&#160;        <span class="keyword">template</span> &lt;<span class="keyword">typename</span> genType&gt;</div>
-<div class="line"><a name="l00131"></a><span class="lineno">  131</span>&#160;        GLM_FUNC_DECL genType <a class="code" href="a00318.html#ga26fefde9ced9b72745fe21f1a3fe8da7">circularEaseOut</a>(genType <span class="keyword">const</span> &amp; a);</div>
-<div class="line"><a name="l00132"></a><span class="lineno">  132</span>&#160;</div>
-<div class="line"><a name="l00137"></a><span class="lineno">  137</span>&#160;        <span class="keyword">template</span> &lt;<span class="keyword">typename</span> genType&gt;</div>
-<div class="line"><a name="l00138"></a><span class="lineno">  138</span>&#160;        GLM_FUNC_DECL genType <a class="code" href="a00318.html#ga0c1027637a5b02d4bb3612aa12599d69">circularEaseInOut</a>(genType <span class="keyword">const</span> &amp; a);</div>
-<div class="line"><a name="l00139"></a><span class="lineno">  139</span>&#160;</div>
-<div class="line"><a name="l00142"></a><span class="lineno">  142</span>&#160;        <span class="keyword">template</span> &lt;<span class="keyword">typename</span> genType&gt;</div>
-<div class="line"><a name="l00143"></a><span class="lineno">  143</span>&#160;        GLM_FUNC_DECL genType <a class="code" href="a00318.html#ga7f24ee9219ab4c84dc8de24be84c1e3c">exponentialEaseIn</a>(genType <span class="keyword">const</span> &amp; a);</div>
-<div class="line"><a name="l00144"></a><span class="lineno">  144</span>&#160;</div>
-<div class="line"><a name="l00147"></a><span class="lineno">  147</span>&#160;        <span class="keyword">template</span> &lt;<span class="keyword">typename</span> genType&gt;</div>
-<div class="line"><a name="l00148"></a><span class="lineno">  148</span>&#160;        GLM_FUNC_DECL genType <a class="code" href="a00318.html#ga517f2bcfd15bc2c25c466ae50808efc3">exponentialEaseOut</a>(genType <span class="keyword">const</span> &amp; a);</div>
-<div class="line"><a name="l00149"></a><span class="lineno">  149</span>&#160;</div>
-<div class="line"><a name="l00154"></a><span class="lineno">  154</span>&#160;        <span class="keyword">template</span> &lt;<span class="keyword">typename</span> genType&gt;</div>
-<div class="line"><a name="l00155"></a><span class="lineno">  155</span>&#160;        GLM_FUNC_DECL genType <a class="code" href="a00318.html#ga232fb6dc093c5ce94bee105ff2947501">exponentialEaseInOut</a>(genType <span class="keyword">const</span> &amp; a);</div>
-<div class="line"><a name="l00156"></a><span class="lineno">  156</span>&#160;</div>
-<div class="line"><a name="l00159"></a><span class="lineno">  159</span>&#160;        <span class="keyword">template</span> &lt;<span class="keyword">typename</span> genType&gt;</div>
-<div class="line"><a name="l00160"></a><span class="lineno">  160</span>&#160;        GLM_FUNC_DECL genType <a class="code" href="a00318.html#ga230918eccee4e113d10ec5b8cdc58695">elasticEaseIn</a>(genType <span class="keyword">const</span> &amp; a);</div>
-<div class="line"><a name="l00161"></a><span class="lineno">  161</span>&#160;</div>
-<div class="line"><a name="l00164"></a><span class="lineno">  164</span>&#160;        <span class="keyword">template</span> &lt;<span class="keyword">typename</span> genType&gt;</div>
-<div class="line"><a name="l00165"></a><span class="lineno">  165</span>&#160;        GLM_FUNC_DECL genType <a class="code" href="a00318.html#gace9c9d1bdf88bf2ab1e7cdefa54c7365">elasticEaseOut</a>(genType <span class="keyword">const</span> &amp; a);</div>
-<div class="line"><a name="l00166"></a><span class="lineno">  166</span>&#160;</div>
-<div class="line"><a name="l00171"></a><span class="lineno">  171</span>&#160;        <span class="keyword">template</span> &lt;<span class="keyword">typename</span> genType&gt;</div>
-<div class="line"><a name="l00172"></a><span class="lineno">  172</span>&#160;        GLM_FUNC_DECL genType <a class="code" href="a00318.html#ga2db4ac8959559b11b4029e54812908d6">elasticEaseInOut</a>(genType <span class="keyword">const</span> &amp; a);</div>
-<div class="line"><a name="l00173"></a><span class="lineno">  173</span>&#160;</div>
-<div class="line"><a name="l00175"></a><span class="lineno">  175</span>&#160;        <span class="keyword">template</span> &lt;<span class="keyword">typename</span> genType&gt;</div>
-<div class="line"><a name="l00176"></a><span class="lineno">  176</span>&#160;        GLM_FUNC_DECL genType <a class="code" href="a00318.html#ga33777c9dd98f61d9472f96aafdf2bd36">backEaseIn</a>(genType <span class="keyword">const</span>&amp; a);</div>
-<div class="line"><a name="l00177"></a><span class="lineno">  177</span>&#160;</div>
-<div class="line"><a name="l00179"></a><span class="lineno">  179</span>&#160;        <span class="keyword">template</span> &lt;<span class="keyword">typename</span> genType&gt;</div>
-<div class="line"><a name="l00180"></a><span class="lineno">  180</span>&#160;        GLM_FUNC_DECL genType <a class="code" href="a00318.html#ga640c1ac6fe9d277a197da69daf60ee4f">backEaseOut</a>(genType <span class="keyword">const</span>&amp; a);</div>
-<div class="line"><a name="l00181"></a><span class="lineno">  181</span>&#160;</div>
-<div class="line"><a name="l00183"></a><span class="lineno">  183</span>&#160;        <span class="keyword">template</span> &lt;<span class="keyword">typename</span> genType&gt;</div>
-<div class="line"><a name="l00184"></a><span class="lineno">  184</span>&#160;        GLM_FUNC_DECL genType <a class="code" href="a00318.html#ga68a7b760f2afdfab298d5cd6d7611fb1">backEaseInOut</a>(genType <span class="keyword">const</span>&amp; a);</div>
-<div class="line"><a name="l00185"></a><span class="lineno">  185</span>&#160;</div>
-<div class="line"><a name="l00189"></a><span class="lineno">  189</span>&#160;        <span class="keyword">template</span> &lt;<span class="keyword">typename</span> genType&gt;</div>
-<div class="line"><a name="l00190"></a><span class="lineno">  190</span>&#160;        GLM_FUNC_DECL genType <a class="code" href="a00318.html#ga33777c9dd98f61d9472f96aafdf2bd36">backEaseIn</a>(genType <span class="keyword">const</span>&amp; a, genType <span class="keyword">const</span>&amp; o);</div>
-<div class="line"><a name="l00191"></a><span class="lineno">  191</span>&#160;</div>
-<div class="line"><a name="l00195"></a><span class="lineno">  195</span>&#160;        <span class="keyword">template</span> &lt;<span class="keyword">typename</span> genType&gt;</div>
-<div class="line"><a name="l00196"></a><span class="lineno">  196</span>&#160;        GLM_FUNC_DECL genType <a class="code" href="a00318.html#ga640c1ac6fe9d277a197da69daf60ee4f">backEaseOut</a>(genType <span class="keyword">const</span>&amp; a, genType <span class="keyword">const</span>&amp; o);</div>
-<div class="line"><a name="l00197"></a><span class="lineno">  197</span>&#160;</div>
-<div class="line"><a name="l00201"></a><span class="lineno">  201</span>&#160;        <span class="keyword">template</span> &lt;<span class="keyword">typename</span> genType&gt;</div>
-<div class="line"><a name="l00202"></a><span class="lineno">  202</span>&#160;        GLM_FUNC_DECL genType <a class="code" href="a00318.html#ga68a7b760f2afdfab298d5cd6d7611fb1">backEaseInOut</a>(genType <span class="keyword">const</span>&amp; a, genType <span class="keyword">const</span>&amp; o);</div>
-<div class="line"><a name="l00203"></a><span class="lineno">  203</span>&#160;</div>
-<div class="line"><a name="l00205"></a><span class="lineno">  205</span>&#160;        <span class="keyword">template</span> &lt;<span class="keyword">typename</span> genType&gt;</div>
-<div class="line"><a name="l00206"></a><span class="lineno">  206</span>&#160;        GLM_FUNC_DECL genType <a class="code" href="a00318.html#gaac30767f2e430b0c3fc859a4d59c7b5b">bounceEaseIn</a>(genType <span class="keyword">const</span>&amp; a);</div>
-<div class="line"><a name="l00207"></a><span class="lineno">  207</span>&#160;</div>
-<div class="line"><a name="l00209"></a><span class="lineno">  209</span>&#160;        <span class="keyword">template</span> &lt;<span class="keyword">typename</span> genType&gt;</div>
-<div class="line"><a name="l00210"></a><span class="lineno">  210</span>&#160;        GLM_FUNC_DECL genType <a class="code" href="a00318.html#ga94007005ff0dcfa0749ebfa2aec540b2">bounceEaseOut</a>(genType <span class="keyword">const</span>&amp; a);</div>
-<div class="line"><a name="l00211"></a><span class="lineno">  211</span>&#160;</div>
-<div class="line"><a name="l00213"></a><span class="lineno">  213</span>&#160;        <span class="keyword">template</span> &lt;<span class="keyword">typename</span> genType&gt;</div>
-<div class="line"><a name="l00214"></a><span class="lineno">  214</span>&#160;        GLM_FUNC_DECL genType <a class="code" href="a00318.html#gadf9f38eff1e5f4c2fa5b629a25ae413e">bounceEaseInOut</a>(genType <span class="keyword">const</span>&amp; a);</div>
-<div class="line"><a name="l00215"></a><span class="lineno">  215</span>&#160;</div>
-<div class="line"><a name="l00217"></a><span class="lineno">  217</span>&#160;}<span class="comment">//namespace glm</span></div>
-<div class="line"><a name="l00218"></a><span class="lineno">  218</span>&#160;</div>
-<div class="line"><a name="l00219"></a><span class="lineno">  219</span>&#160;<span class="preprocessor">#include &quot;easing.inl&quot;</span></div>
-<div class="ttc" id="a00318_html_gaac30767f2e430b0c3fc859a4d59c7b5b"><div class="ttname"><a href="a00318.html#gaac30767f2e430b0c3fc859a4d59c7b5b">glm::bounceEaseIn</a></div><div class="ttdeci">GLM_FUNC_DECL genType bounceEaseIn(genType const &amp;a)</div></div>
-<div class="ttc" id="a00318_html_ga0c1027637a5b02d4bb3612aa12599d69"><div class="ttname"><a href="a00318.html#ga0c1027637a5b02d4bb3612aa12599d69">glm::circularEaseInOut</a></div><div class="ttdeci">GLM_FUNC_DECL genType circularEaseInOut(genType const &amp;a)</div><div class="ttdoc">Modelled after the piecewise circular function y = (1/2)(1 - sqrt(1 - 4x^2)) ; [0, 0.5) y = (1/2)(sqrt(-(2x - 3)*(2x - 1)) + 1) ; [0.5, 1]. </div></div>
-<div class="ttc" id="a00318_html_gaff52f746102b94864d105563ba8895ae"><div class="ttname"><a href="a00318.html#gaff52f746102b94864d105563ba8895ae">glm::cubicEaseIn</a></div><div class="ttdeci">GLM_FUNC_DECL genType cubicEaseIn(genType const &amp;a)</div><div class="ttdoc">Modelled after the cubic y = x^3. </div></div>
-<div class="ttc" id="a00318_html_ga230918eccee4e113d10ec5b8cdc58695"><div class="ttname"><a href="a00318.html#ga230918eccee4e113d10ec5b8cdc58695">glm::elasticEaseIn</a></div><div class="ttdeci">GLM_FUNC_DECL genType elasticEaseIn(genType const &amp;a)</div><div class="ttdoc">Modelled after the damped sine wave y = sin(13pi/2*x)*pow(2, 10 * (x - 1)) </div></div>
-<div class="ttc" id="a00318_html_ga097579d8e087dcf48037588140a21640"><div class="ttname"><a href="a00318.html#ga097579d8e087dcf48037588140a21640">glm::quinticEaseIn</a></div><div class="ttdeci">GLM_FUNC_DECL genType quinticEaseIn(genType const &amp;a)</div><div class="ttdoc">Modelled after the quintic y = x^5. </div></div>
-<div class="ttc" id="a00318_html_gaa46e3d5fbf7a15caa28eff9ef192d7c7"><div class="ttname"><a href="a00318.html#gaa46e3d5fbf7a15caa28eff9ef192d7c7">glm::sineEaseInOut</a></div><div class="ttdeci">GLM_FUNC_DECL genType sineEaseInOut(genType const &amp;a)</div><div class="ttdoc">Modelled after half sine wave. </div></div>
-<div class="ttc" id="a00318_html_ga26fefde9ced9b72745fe21f1a3fe8da7"><div class="ttname"><a href="a00318.html#ga26fefde9ced9b72745fe21f1a3fe8da7">glm::circularEaseOut</a></div><div class="ttdeci">GLM_FUNC_DECL genType circularEaseOut(genType const &amp;a)</div><div class="ttdoc">Modelled after shifted quadrant II of unit circle. </div></div>
-<div class="ttc" id="a00318_html_gace9c9d1bdf88bf2ab1e7cdefa54c7365"><div class="ttname"><a href="a00318.html#gace9c9d1bdf88bf2ab1e7cdefa54c7365">glm::elasticEaseOut</a></div><div class="ttdeci">GLM_FUNC_DECL genType elasticEaseOut(genType const &amp;a)</div><div class="ttdoc">Modelled after the damped sine wave y = sin(-13pi/2*(x + 1))*pow(2, -10x) + 1. </div></div>
-<div class="ttc" id="a00318_html_ga2db4ac8959559b11b4029e54812908d6"><div class="ttname"><a href="a00318.html#ga2db4ac8959559b11b4029e54812908d6">glm::elasticEaseInOut</a></div><div class="ttdeci">GLM_FUNC_DECL genType elasticEaseInOut(genType const &amp;a)</div><div class="ttdoc">Modelled after the piecewise exponentially-damped sine wave: y = (1/2)*sin(13pi/2*(2*x))*pow(2, 10 * ((2*x) - 1)) ; [0,0.5) y = (1/2)*(sin(-13pi/2*((2x-1)+1))*pow(2,-10(2*x-1)) + 2) ; [0.5, 1]. </div></div>
-<div class="ttc" id="a00318_html_gafb338ac6f6b2bcafee50e3dca5201dbf"><div class="ttname"><a href="a00318.html#gafb338ac6f6b2bcafee50e3dca5201dbf">glm::sineEaseIn</a></div><div class="ttdeci">GLM_FUNC_DECL genType sineEaseIn(genType const &amp;a)</div><div class="ttdoc">Modelled after quarter-cycle of sine wave. </div></div>
-<div class="ttc" id="a00318_html_ga290c3e47cb0a49f2e8abe90b1872b649"><div class="ttname"><a href="a00318.html#ga290c3e47cb0a49f2e8abe90b1872b649">glm::linearInterpolation</a></div><div class="ttdeci">GLM_FUNC_DECL genType linearInterpolation(genType const &amp;a)</div><div class="ttdoc">Modelled after the line y = x. </div></div>
-<div class="ttc" id="a00318_html_ga808b41f14514f47dad5dcc69eb924afd"><div class="ttname"><a href="a00318.html#ga808b41f14514f47dad5dcc69eb924afd">glm::quarticEaseIn</a></div><div class="ttdeci">GLM_FUNC_DECL genType quarticEaseIn(genType const &amp;a)</div><div class="ttdoc">Modelled after the quartic x^4. </div></div>
-<div class="ttc" id="a00318_html_ga4dfb33fa7664aa888eb647999d329b98"><div class="ttname"><a href="a00318.html#ga4dfb33fa7664aa888eb647999d329b98">glm::quarticEaseOut</a></div><div class="ttdeci">GLM_FUNC_DECL genType quarticEaseOut(genType const &amp;a)</div><div class="ttdoc">Modelled after the quartic y = 1 - (x - 1)^4. </div></div>
-<div class="ttc" id="a00318_html_gab3e454f883afc1606ef91363881bf5a3"><div class="ttname"><a href="a00318.html#gab3e454f883afc1606ef91363881bf5a3">glm::sineEaseOut</a></div><div class="ttdeci">GLM_FUNC_DECL genType sineEaseOut(genType const &amp;a)</div><div class="ttdoc">Modelled after quarter-cycle of sine wave (different phase) </div></div>
-<div class="ttc" id="a00318_html_ga03e8fc2d7945a4e63ee33b2159c14cea"><div class="ttname"><a href="a00318.html#ga03e8fc2d7945a4e63ee33b2159c14cea">glm::quadraticEaseInOut</a></div><div class="ttdeci">GLM_FUNC_DECL genType quadraticEaseInOut(genType const &amp;a)</div><div class="ttdoc">Modelled after the piecewise quadratic y = (1/2)((2x)^2) ; [0, 0.5) y = -(1/2)((2x-1)*(2x-3) - 1) ; [...</div></div>
-<div class="ttc" id="a00318_html_ga34508d4b204a321ec26d6086aa047997"><div class="ttname"><a href="a00318.html#ga34508d4b204a321ec26d6086aa047997">glm::circularEaseIn</a></div><div class="ttdeci">GLM_FUNC_DECL genType circularEaseIn(genType const &amp;a)</div><div class="ttdoc">Modelled after shifted quadrant IV of unit circle. </div></div>
-<div class="ttc" id="a00318_html_ga283717bc2d937547ad34ec0472234ee3"><div class="ttname"><a href="a00318.html#ga283717bc2d937547ad34ec0472234ee3">glm::quadraticEaseOut</a></div><div class="ttdeci">GLM_FUNC_DECL genType quadraticEaseOut(genType const &amp;a)</div><div class="ttdoc">Modelled after the parabola y = -x^2 + 2x. </div></div>
-<div class="ttc" id="a00318_html_ga517f2bcfd15bc2c25c466ae50808efc3"><div class="ttname"><a href="a00318.html#ga517f2bcfd15bc2c25c466ae50808efc3">glm::exponentialEaseOut</a></div><div class="ttdeci">GLM_FUNC_DECL genType exponentialEaseOut(genType const &amp;a)</div><div class="ttdoc">Modelled after the exponential function y = -2^(-10x) + 1. </div></div>
-<div class="ttc" id="a00318_html_ga7dbd4d5c8da3f5353121f615e7b591d7"><div class="ttname"><a href="a00318.html#ga7dbd4d5c8da3f5353121f615e7b591d7">glm::quinticEaseOut</a></div><div class="ttdeci">GLM_FUNC_DECL genType quinticEaseOut(genType const &amp;a)</div><div class="ttdoc">Modelled after the quintic y = (x - 1)^5 + 1. </div></div>
-<div class="ttc" id="a00318_html_ga40d746385d8bcc5973f5bc6a2340ca91"><div class="ttname"><a href="a00318.html#ga40d746385d8bcc5973f5bc6a2340ca91">glm::cubicEaseOut</a></div><div class="ttdeci">GLM_FUNC_DECL genType cubicEaseOut(genType const &amp;a)</div><div class="ttdoc">Modelled after the cubic y = (x - 1)^3 + 1. </div></div>
-<div class="ttc" id="a00318_html_ga232fb6dc093c5ce94bee105ff2947501"><div class="ttname"><a href="a00318.html#ga232fb6dc093c5ce94bee105ff2947501">glm::exponentialEaseInOut</a></div><div class="ttdeci">GLM_FUNC_DECL genType exponentialEaseInOut(genType const &amp;a)</div><div class="ttdoc">Modelled after the piecewise exponential y = (1/2)2^(10(2x - 1)) ; [0,0.5) y = -(1/2)*2^(-10(2x - 1))...</div></div>
-<div class="ttc" id="a00318_html_ga94007005ff0dcfa0749ebfa2aec540b2"><div class="ttname"><a href="a00318.html#ga94007005ff0dcfa0749ebfa2aec540b2">glm::bounceEaseOut</a></div><div class="ttdeci">GLM_FUNC_DECL genType bounceEaseOut(genType const &amp;a)</div></div>
-<div class="ttc" id="a00318_html_ga2a82d5c46df7e2d21cc0108eb7b83934"><div class="ttname"><a href="a00318.html#ga2a82d5c46df7e2d21cc0108eb7b83934">glm::quinticEaseInOut</a></div><div class="ttdeci">GLM_FUNC_DECL genType quinticEaseInOut(genType const &amp;a)</div><div class="ttdoc">Modelled after the piecewise quintic y = (1/2)((2x)^5) ; [0, 0.5) y = (1/2)((2x-2)^5 + 2) ; [0...</div></div>
-<div class="ttc" id="a00318_html_ga33777c9dd98f61d9472f96aafdf2bd36"><div class="ttname"><a href="a00318.html#ga33777c9dd98f61d9472f96aafdf2bd36">glm::backEaseIn</a></div><div class="ttdeci">GLM_FUNC_DECL genType backEaseIn(genType const &amp;a, genType const &amp;o)</div></div>
-<div class="ttc" id="a00318_html_ga7f24ee9219ab4c84dc8de24be84c1e3c"><div class="ttname"><a href="a00318.html#ga7f24ee9219ab4c84dc8de24be84c1e3c">glm::exponentialEaseIn</a></div><div class="ttdeci">GLM_FUNC_DECL genType exponentialEaseIn(genType const &amp;a)</div><div class="ttdoc">Modelled after the exponential function y = 2^(10(x - 1)) </div></div>
-<div class="ttc" id="a00318_html_gaf42089d35855695132d217cd902304a0"><div class="ttname"><a href="a00318.html#gaf42089d35855695132d217cd902304a0">glm::quadraticEaseIn</a></div><div class="ttdeci">GLM_FUNC_DECL genType quadraticEaseIn(genType const &amp;a)</div><div class="ttdoc">Modelled after the parabola y = x^2. </div></div>
-<div class="ttc" id="a00318_html_ga6d000f852de12b197e154f234b20c505"><div class="ttname"><a href="a00318.html#ga6d000f852de12b197e154f234b20c505">glm::quarticEaseInOut</a></div><div class="ttdeci">GLM_FUNC_DECL genType quarticEaseInOut(genType const &amp;a)</div><div class="ttdoc">Modelled after the piecewise quartic y = (1/2)((2x)^4) ; [0, 0.5) y = -(1/2)((2x-2)^4 - 2) ; [0...</div></div>
-<div class="ttc" id="a00318_html_ga55134072b42d75452189321d4a2ad91c"><div class="ttname"><a href="a00318.html#ga55134072b42d75452189321d4a2ad91c">glm::cubicEaseInOut</a></div><div class="ttdeci">GLM_FUNC_DECL genType cubicEaseInOut(genType const &amp;a)</div><div class="ttdoc">Modelled after the piecewise cubic y = (1/2)((2x)^3) ; [0, 0.5) y = (1/2)((2x-2)^3 + 2) ; [0...</div></div>
-<div class="ttc" id="a00318_html_gadf9f38eff1e5f4c2fa5b629a25ae413e"><div class="ttname"><a href="a00318.html#gadf9f38eff1e5f4c2fa5b629a25ae413e">glm::bounceEaseInOut</a></div><div class="ttdeci">GLM_FUNC_DECL genType bounceEaseInOut(genType const &amp;a)</div></div>
-<div class="ttc" id="a00318_html_ga68a7b760f2afdfab298d5cd6d7611fb1"><div class="ttname"><a href="a00318.html#ga68a7b760f2afdfab298d5cd6d7611fb1">glm::backEaseInOut</a></div><div class="ttdeci">GLM_FUNC_DECL genType backEaseInOut(genType const &amp;a, genType const &amp;o)</div></div>
-<div class="ttc" id="a00318_html_ga640c1ac6fe9d277a197da69daf60ee4f"><div class="ttname"><a href="a00318.html#ga640c1ac6fe9d277a197da69daf60ee4f">glm::backEaseOut</a></div><div class="ttdeci">GLM_FUNC_DECL genType backEaseOut(genType const &amp;a, genType const &amp;o)</div></div>
-<div class="ttc" id="a00236_html"><div class="ttname"><a href="a00236.html">glm</a></div><div class="ttdef"><b>Definition:</b> <a href="a00015_source.html#l00020">common.hpp:20</a></div></div>
+<div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span>&#160;<span class="preprocessor">#pragma once</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno">    2</span>&#160; </div>
+<div class="line"><a name="l00003"></a><span class="lineno">    3</span>&#160;<span class="preprocessor">#include &quot;setup.hpp&quot;</span></div>
+<div class="line"><a name="l00004"></a><span class="lineno">    4</span>&#160;<span class="preprocessor">#include &lt;limits&gt;</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno">    5</span>&#160; </div>
+<div class="line"><a name="l00006"></a><span class="lineno">    6</span>&#160;<span class="keyword">namespace </span>glm{</div>
+<div class="line"><a name="l00007"></a><span class="lineno">    7</span>&#160;<span class="keyword">namespace </span>detail</div>
+<div class="line"><a name="l00008"></a><span class="lineno">    8</span>&#160;{</div>
+<div class="line"><a name="l00009"></a><span class="lineno">    9</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> genFIType, <span class="keywordtype">bool</span> <span class="comment">/*signed*/</span>&gt;</div>
+<div class="line"><a name="l00010"></a><span class="lineno">   10</span>&#160;        <span class="keyword">struct </span>compute_abs</div>
+<div class="line"><a name="l00011"></a><span class="lineno">   11</span>&#160;        {};</div>
+<div class="line"><a name="l00012"></a><span class="lineno">   12</span>&#160; </div>
+<div class="line"><a name="l00013"></a><span class="lineno">   13</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> genFIType&gt;</div>
+<div class="line"><a name="l00014"></a><span class="lineno">   14</span>&#160;        <span class="keyword">struct </span>compute_abs&lt;genFIType, true&gt;</div>
+<div class="line"><a name="l00015"></a><span class="lineno">   15</span>&#160;        {</div>
+<div class="line"><a name="l00016"></a><span class="lineno">   16</span>&#160;                GLM_FUNC_QUALIFIER GLM_CONSTEXPR <span class="keyword">static</span> genFIType call(genFIType x)</div>
+<div class="line"><a name="l00017"></a><span class="lineno">   17</span>&#160;                {</div>
+<div class="line"><a name="l00018"></a><span class="lineno">   18</span>&#160;                        GLM_STATIC_ASSERT(</div>
+<div class="line"><a name="l00019"></a><span class="lineno">   19</span>&#160;                                std::numeric_limits&lt;genFIType&gt;::is_iec559 || GLM_CONFIG_UNRESTRICTED_FLOAT || std::numeric_limits&lt;genFIType&gt;::is_signed,</div>
+<div class="line"><a name="l00020"></a><span class="lineno">   20</span>&#160;                                <span class="stringliteral">&quot;&#39;abs&#39; only accept floating-point and integer scalar or vector inputs&quot;</span>);</div>
+<div class="line"><a name="l00021"></a><span class="lineno">   21</span>&#160; </div>
+<div class="line"><a name="l00022"></a><span class="lineno">   22</span>&#160;                        <span class="keywordflow">return</span> x &gt;= genFIType(0) ? x : -x;</div>
+<div class="line"><a name="l00023"></a><span class="lineno">   23</span>&#160;                        <span class="comment">// TODO, perf comp with: *(((int *) &amp;x) + 1) &amp;= 0x7fffffff;</span></div>
+<div class="line"><a name="l00024"></a><span class="lineno">   24</span>&#160;                }</div>
+<div class="line"><a name="l00025"></a><span class="lineno">   25</span>&#160;        };</div>
+<div class="line"><a name="l00026"></a><span class="lineno">   26</span>&#160; </div>
+<div class="line"><a name="l00027"></a><span class="lineno">   27</span>&#160;<span class="preprocessor">#if (GLM_COMPILER &amp; GLM_COMPILER_CUDA) || (GLM_COMPILER &amp; GLM_COMPILER_HIP)</span></div>
+<div class="line"><a name="l00028"></a><span class="lineno">   28</span>&#160;        <span class="keyword">template</span>&lt;&gt;</div>
+<div class="line"><a name="l00029"></a><span class="lineno">   29</span>&#160;        <span class="keyword">struct </span>compute_abs&lt;float, true&gt;</div>
+<div class="line"><a name="l00030"></a><span class="lineno">   30</span>&#160;        {</div>
+<div class="line"><a name="l00031"></a><span class="lineno">   31</span>&#160;                GLM_FUNC_QUALIFIER <span class="keyword">static</span> <span class="keywordtype">float</span> call(<span class="keywordtype">float</span> x)</div>
+<div class="line"><a name="l00032"></a><span class="lineno">   32</span>&#160;                {</div>
+<div class="line"><a name="l00033"></a><span class="lineno">   33</span>&#160;                        <span class="keywordflow">return</span> fabsf(x);</div>
+<div class="line"><a name="l00034"></a><span class="lineno">   34</span>&#160;                }</div>
+<div class="line"><a name="l00035"></a><span class="lineno">   35</span>&#160;        };</div>
+<div class="line"><a name="l00036"></a><span class="lineno">   36</span>&#160;<span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l00037"></a><span class="lineno">   37</span>&#160; </div>
+<div class="line"><a name="l00038"></a><span class="lineno">   38</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> genFIType&gt;</div>
+<div class="line"><a name="l00039"></a><span class="lineno">   39</span>&#160;        <span class="keyword">struct </span>compute_abs&lt;genFIType, false&gt;</div>
+<div class="line"><a name="l00040"></a><span class="lineno">   40</span>&#160;        {</div>
+<div class="line"><a name="l00041"></a><span class="lineno">   41</span>&#160;                GLM_FUNC_QUALIFIER GLM_CONSTEXPR <span class="keyword">static</span> genFIType call(genFIType x)</div>
+<div class="line"><a name="l00042"></a><span class="lineno">   42</span>&#160;                {</div>
+<div class="line"><a name="l00043"></a><span class="lineno">   43</span>&#160;                        GLM_STATIC_ASSERT(</div>
+<div class="line"><a name="l00044"></a><span class="lineno">   44</span>&#160;                                (!std::numeric_limits&lt;genFIType&gt;::is_signed &amp;&amp; std::numeric_limits&lt;genFIType&gt;::is_integer),</div>
+<div class="line"><a name="l00045"></a><span class="lineno">   45</span>&#160;                                <span class="stringliteral">&quot;&#39;abs&#39; only accept floating-point and integer scalar or vector inputs&quot;</span>);</div>
+<div class="line"><a name="l00046"></a><span class="lineno">   46</span>&#160;                        <span class="keywordflow">return</span> x;</div>
+<div class="line"><a name="l00047"></a><span class="lineno">   47</span>&#160;                }</div>
+<div class="line"><a name="l00048"></a><span class="lineno">   48</span>&#160;        };</div>
+<div class="line"><a name="l00049"></a><span class="lineno">   49</span>&#160;}<span class="comment">//namespace detail</span></div>
+<div class="line"><a name="l00050"></a><span class="lineno">   50</span>&#160;}<span class="comment">//namespace glm</span></div>
 </div><!-- fragment --></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.10
+</a> 1.8.18
 </small></address>
 </body>
 </html>

+ 0 - 132
doc/api/a00024_source.html

@@ -1,132 +0,0 @@
-<!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.10"/>
-<title>0.9.9 API documentation: epsilon.hpp Source File</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="search/search.css" rel="stylesheet" type="text/css"/>
-<script type="text/javascript" src="search/searchdata.js"></script>
-<script type="text/javascript" src="search/search.js"></script>
-<script type="text/javascript">
-  $(document).ready(function() { init_search(); });
-</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 id="projectlogo"><img alt="Logo" src="logo-mini.png"/></td>
-  <td id="projectalign" style="padding-left: 0.5em;">
-   <div id="projectname">0.9.9 API documentation
-   </div>
-  </td>
- </tr>
- </tbody>
-</table>
-</div>
-<!-- end header part -->
-<!-- Generated by Doxygen 1.8.10 -->
-<script type="text/javascript">
-var searchBox = new SearchBox("searchBox", "search",false,'Search');
-</script>
-  <div id="navrow1" class="tabs">
-    <ul class="tablist">
-      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
-      <li><a href="modules.html"><span>Modules</span></a></li>
-      <li class="current"><a href="files.html"><span>Files</span></a></li>
-      <li>
-        <div id="MSearchBox" class="MSearchBoxInactive">
-        <span class="left">
-          <img id="MSearchSelect" src="search/mag_sel.png"
-               onmouseover="return searchBox.OnSearchSelectShow()"
-               onmouseout="return searchBox.OnSearchSelectHide()"
-               alt=""/>
-          <input type="text" id="MSearchField" value="Search" accesskey="S"
-               onfocus="searchBox.OnSearchFieldFocus(true)" 
-               onblur="searchBox.OnSearchFieldFocus(false)" 
-               onkeyup="searchBox.OnSearchFieldChange(event)"/>
-          </span><span class="right">
-            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
-          </span>
-        </div>
-      </li>
-    </ul>
-  </div>
-  <div id="navrow2" class="tabs2">
-    <ul class="tablist">
-      <li><a href="files.html"><span>File&#160;List</span></a></li>
-    </ul>
-  </div>
-<!-- window showing the filter options -->
-<div id="MSearchSelectWindow"
-     onmouseover="return searchBox.OnSearchSelectShow()"
-     onmouseout="return searchBox.OnSearchSelectHide()"
-     onkeydown="return searchBox.OnSearchSelectKey(event)">
-</div>
-
-<!-- iframe showing the search results (closed by default) -->
-<div id="MSearchResultsWindow">
-<iframe src="javascript:void(0)" frameborder="0" 
-        name="MSearchResults" id="MSearchResults">
-</iframe>
-</div>
-
-<div id="nav-path" class="navpath">
-  <ul>
-<li class="navelem"><a class="el" href="dir_3a581ba30d25676e4b797b1f96d53b45.html">F:</a></li><li class="navelem"><a class="el" href="dir_9e5fe034a00e89334fd5186c3e7db156.html">G-Truc</a></li><li class="navelem"><a class="el" href="dir_d9496f0844b48bc7e53b5af8c99b9ab2.html">Source</a></li><li class="navelem"><a class="el" href="dir_a8bee7be44182a33f3820393ae0b105d.html">G-Truc</a></li><li class="navelem"><a class="el" href="dir_44e5e654415abd9ca6fdeaddaff8565e.html">glm</a></li><li class="navelem"><a class="el" href="dir_cef2d71d502cb69a9252bca2297d9549.html">glm</a></li><li class="navelem"><a class="el" href="dir_4c6bd29c73fa4e5a2509e1c15f846751.html">gtc</a></li>  </ul>
-</div>
-</div><!-- top -->
-<div class="header">
-  <div class="headertitle">
-<div class="title">epsilon.hpp</div>  </div>
-</div><!--header-->
-<div class="contents">
-<a href="a00024.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span>&#160;</div>
-<div class="line"><a name="l00014"></a><span class="lineno">   14</span>&#160;<span class="preprocessor">#pragma once</span></div>
-<div class="line"><a name="l00015"></a><span class="lineno">   15</span>&#160;</div>
-<div class="line"><a name="l00016"></a><span class="lineno">   16</span>&#160;<span class="comment">// Dependencies</span></div>
-<div class="line"><a name="l00017"></a><span class="lineno">   17</span>&#160;<span class="preprocessor">#include &quot;../detail/setup.hpp&quot;</span></div>
-<div class="line"><a name="l00018"></a><span class="lineno">   18</span>&#160;<span class="preprocessor">#include &quot;../detail/qualifier.hpp&quot;</span></div>
-<div class="line"><a name="l00019"></a><span class="lineno">   19</span>&#160;</div>
-<div class="line"><a name="l00020"></a><span class="lineno">   20</span>&#160;<span class="preprocessor">#if GLM_MESSAGES == GLM_ENABLE &amp;&amp; !defined(GLM_EXT_INCLUDED)</span></div>
-<div class="line"><a name="l00021"></a><span class="lineno">   21</span>&#160;<span class="preprocessor">#       pragma message(&quot;GLM: GLM_GTC_epsilon extension included&quot;)</span></div>
-<div class="line"><a name="l00022"></a><span class="lineno">   22</span>&#160;<span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00023"></a><span class="lineno">   23</span>&#160;</div>
-<div class="line"><a name="l00024"></a><span class="lineno">   24</span>&#160;<span class="keyword">namespace </span><a class="code" href="a00236.html">glm</a></div>
-<div class="line"><a name="l00025"></a><span class="lineno">   25</span>&#160;{</div>
-<div class="line"><a name="l00028"></a><span class="lineno">   28</span>&#160;</div>
-<div class="line"><a name="l00033"></a><span class="lineno">   33</span>&#160;        <span class="keyword">template</span>&lt;length_t L, <span class="keyword">typename</span> T, qualifier Q&gt;</div>
-<div class="line"><a name="l00034"></a><span class="lineno">   34</span>&#160;        GLM_FUNC_DECL vec&lt;L, bool, Q&gt; <a class="code" href="a00291.html#gaa7f227999ca09e7ca994e8b35aba47bb">epsilonEqual</a>(vec&lt;L, T, Q&gt; <span class="keyword">const</span>&amp; x, vec&lt;L, T, Q&gt; <span class="keyword">const</span>&amp; y, T <span class="keyword">const</span>&amp; <a class="code" href="a00259.html#ga2a1e57fc5592b69cfae84174cbfc9429">epsilon</a>);</div>
-<div class="line"><a name="l00035"></a><span class="lineno">   35</span>&#160;</div>
-<div class="line"><a name="l00040"></a><span class="lineno">   40</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> genType&gt;</div>
-<div class="line"><a name="l00041"></a><span class="lineno">   41</span>&#160;        GLM_FUNC_DECL <span class="keywordtype">bool</span> <a class="code" href="a00291.html#gaa7f227999ca09e7ca994e8b35aba47bb">epsilonEqual</a>(genType <span class="keyword">const</span>&amp; x, genType <span class="keyword">const</span>&amp; y, genType <span class="keyword">const</span>&amp; <a class="code" href="a00259.html#ga2a1e57fc5592b69cfae84174cbfc9429">epsilon</a>);</div>
-<div class="line"><a name="l00042"></a><span class="lineno">   42</span>&#160;</div>
-<div class="line"><a name="l00047"></a><span class="lineno">   47</span>&#160;        <span class="keyword">template</span>&lt;length_t L, <span class="keyword">typename</span> T, qualifier Q&gt;</div>
-<div class="line"><a name="l00048"></a><span class="lineno">   48</span>&#160;        GLM_FUNC_DECL vec&lt;L, bool, Q&gt; <a class="code" href="a00291.html#ga50a92103fb0cbd796908e1bf20c79aaf">epsilonNotEqual</a>(vec&lt;L, T, Q&gt; <span class="keyword">const</span>&amp; x, vec&lt;L, T, Q&gt; <span class="keyword">const</span>&amp; y, T <span class="keyword">const</span>&amp; <a class="code" href="a00259.html#ga2a1e57fc5592b69cfae84174cbfc9429">epsilon</a>);</div>
-<div class="line"><a name="l00049"></a><span class="lineno">   49</span>&#160;</div>
-<div class="line"><a name="l00054"></a><span class="lineno">   54</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> genType&gt;</div>
-<div class="line"><a name="l00055"></a><span class="lineno">   55</span>&#160;        GLM_FUNC_DECL <span class="keywordtype">bool</span> <a class="code" href="a00291.html#ga50a92103fb0cbd796908e1bf20c79aaf">epsilonNotEqual</a>(genType <span class="keyword">const</span>&amp; x, genType <span class="keyword">const</span>&amp; y, genType <span class="keyword">const</span>&amp; <a class="code" href="a00259.html#ga2a1e57fc5592b69cfae84174cbfc9429">epsilon</a>);</div>
-<div class="line"><a name="l00056"></a><span class="lineno">   56</span>&#160;</div>
-<div class="line"><a name="l00058"></a><span class="lineno">   58</span>&#160;}<span class="comment">//namespace glm</span></div>
-<div class="line"><a name="l00059"></a><span class="lineno">   59</span>&#160;</div>
-<div class="line"><a name="l00060"></a><span class="lineno">   60</span>&#160;<span class="preprocessor">#include &quot;epsilon.inl&quot;</span></div>
-<div class="ttc" id="a00291_html_gaa7f227999ca09e7ca994e8b35aba47bb"><div class="ttname"><a href="a00291.html#gaa7f227999ca09e7ca994e8b35aba47bb">glm::epsilonEqual</a></div><div class="ttdeci">GLM_FUNC_DECL bool epsilonEqual(genType const &amp;x, genType const &amp;y, genType const &amp;epsilon)</div><div class="ttdoc">Returns the component-wise comparison of |x - y| < epsilon. </div></div>
-<div class="ttc" id="a00291_html_ga50a92103fb0cbd796908e1bf20c79aaf"><div class="ttname"><a href="a00291.html#ga50a92103fb0cbd796908e1bf20c79aaf">glm::epsilonNotEqual</a></div><div class="ttdeci">GLM_FUNC_DECL bool epsilonNotEqual(genType const &amp;x, genType const &amp;y, genType const &amp;epsilon)</div><div class="ttdoc">Returns the component-wise comparison of |x - y| >= epsilon. </div></div>
-<div class="ttc" id="a00259_html_ga2a1e57fc5592b69cfae84174cbfc9429"><div class="ttname"><a href="a00259.html#ga2a1e57fc5592b69cfae84174cbfc9429">glm::epsilon</a></div><div class="ttdeci">GLM_FUNC_DECL GLM_CONSTEXPR genType epsilon()</div><div class="ttdoc">Return the epsilon constant for floating point types. </div></div>
-<div class="ttc" id="a00236_html"><div class="ttname"><a href="a00236.html">glm</a></div><div class="ttdef"><b>Definition:</b> <a href="a00015_source.html#l00020">common.hpp:20</a></div></div>
-</div><!-- fragment --></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.10
-</small></address>
-</body>
-</html>

+ 0 - 380
doc/api/a00025_source.html

@@ -1,380 +0,0 @@
-<!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.10"/>
-<title>0.9.9 API documentation: euler_angles.hpp Source File</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="search/search.css" rel="stylesheet" type="text/css"/>
-<script type="text/javascript" src="search/searchdata.js"></script>
-<script type="text/javascript" src="search/search.js"></script>
-<script type="text/javascript">
-  $(document).ready(function() { init_search(); });
-</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 id="projectlogo"><img alt="Logo" src="logo-mini.png"/></td>
-  <td id="projectalign" style="padding-left: 0.5em;">
-   <div id="projectname">0.9.9 API documentation
-   </div>
-  </td>
- </tr>
- </tbody>
-</table>
-</div>
-<!-- end header part -->
-<!-- Generated by Doxygen 1.8.10 -->
-<script type="text/javascript">
-var searchBox = new SearchBox("searchBox", "search",false,'Search');
-</script>
-  <div id="navrow1" class="tabs">
-    <ul class="tablist">
-      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
-      <li><a href="modules.html"><span>Modules</span></a></li>
-      <li class="current"><a href="files.html"><span>Files</span></a></li>
-      <li>
-        <div id="MSearchBox" class="MSearchBoxInactive">
-        <span class="left">
-          <img id="MSearchSelect" src="search/mag_sel.png"
-               onmouseover="return searchBox.OnSearchSelectShow()"
-               onmouseout="return searchBox.OnSearchSelectHide()"
-               alt=""/>
-          <input type="text" id="MSearchField" value="Search" accesskey="S"
-               onfocus="searchBox.OnSearchFieldFocus(true)" 
-               onblur="searchBox.OnSearchFieldFocus(false)" 
-               onkeyup="searchBox.OnSearchFieldChange(event)"/>
-          </span><span class="right">
-            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
-          </span>
-        </div>
-      </li>
-    </ul>
-  </div>
-  <div id="navrow2" class="tabs2">
-    <ul class="tablist">
-      <li><a href="files.html"><span>File&#160;List</span></a></li>
-    </ul>
-  </div>
-<!-- window showing the filter options -->
-<div id="MSearchSelectWindow"
-     onmouseover="return searchBox.OnSearchSelectShow()"
-     onmouseout="return searchBox.OnSearchSelectHide()"
-     onkeydown="return searchBox.OnSearchSelectKey(event)">
-</div>
-
-<!-- iframe showing the search results (closed by default) -->
-<div id="MSearchResultsWindow">
-<iframe src="javascript:void(0)" frameborder="0" 
-        name="MSearchResults" id="MSearchResults">
-</iframe>
-</div>
-
-<div id="nav-path" class="navpath">
-  <ul>
-<li class="navelem"><a class="el" href="dir_3a581ba30d25676e4b797b1f96d53b45.html">F:</a></li><li class="navelem"><a class="el" href="dir_9e5fe034a00e89334fd5186c3e7db156.html">G-Truc</a></li><li class="navelem"><a class="el" href="dir_d9496f0844b48bc7e53b5af8c99b9ab2.html">Source</a></li><li class="navelem"><a class="el" href="dir_a8bee7be44182a33f3820393ae0b105d.html">G-Truc</a></li><li class="navelem"><a class="el" href="dir_44e5e654415abd9ca6fdeaddaff8565e.html">glm</a></li><li class="navelem"><a class="el" href="dir_cef2d71d502cb69a9252bca2297d9549.html">glm</a></li><li class="navelem"><a class="el" href="dir_f35778ec600a1b9bbc4524e62e226aa2.html">gtx</a></li>  </ul>
-</div>
-</div><!-- top -->
-<div class="header">
-  <div class="headertitle">
-<div class="title">euler_angles.hpp</div>  </div>
-</div><!--header-->
-<div class="contents">
-<a href="a00025.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span>&#160;</div>
-<div class="line"><a name="l00016"></a><span class="lineno">   16</span>&#160;<span class="preprocessor">#pragma once</span></div>
-<div class="line"><a name="l00017"></a><span class="lineno">   17</span>&#160;</div>
-<div class="line"><a name="l00018"></a><span class="lineno">   18</span>&#160;<span class="comment">// Dependency:</span></div>
-<div class="line"><a name="l00019"></a><span class="lineno">   19</span>&#160;<span class="preprocessor">#include &quot;../glm.hpp&quot;</span></div>
-<div class="line"><a name="l00020"></a><span class="lineno">   20</span>&#160;</div>
-<div class="line"><a name="l00021"></a><span class="lineno">   21</span>&#160;<span class="preprocessor">#if GLM_MESSAGES == GLM_ENABLE &amp;&amp; !defined(GLM_EXT_INCLUDED)</span></div>
-<div class="line"><a name="l00022"></a><span class="lineno">   22</span>&#160;<span class="preprocessor">#       ifndef GLM_ENABLE_EXPERIMENTAL</span></div>
-<div class="line"><a name="l00023"></a><span class="lineno">   23</span>&#160;<span class="preprocessor">#               pragma message(&quot;GLM: GLM_GTX_euler_angles is an experimental extension and may change in the future. Use #define GLM_ENABLE_EXPERIMENTAL before including it, if you really want to use it.&quot;)</span></div>
-<div class="line"><a name="l00024"></a><span class="lineno">   24</span>&#160;<span class="preprocessor">#       else</span></div>
-<div class="line"><a name="l00025"></a><span class="lineno">   25</span>&#160;<span class="preprocessor">#               pragma message(&quot;GLM: GLM_GTX_euler_angles extension included&quot;)</span></div>
-<div class="line"><a name="l00026"></a><span class="lineno">   26</span>&#160;<span class="preprocessor">#       endif</span></div>
-<div class="line"><a name="l00027"></a><span class="lineno">   27</span>&#160;<span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00028"></a><span class="lineno">   28</span>&#160;</div>
-<div class="line"><a name="l00029"></a><span class="lineno">   29</span>&#160;<span class="keyword">namespace </span><a class="code" href="a00236.html">glm</a></div>
-<div class="line"><a name="l00030"></a><span class="lineno">   30</span>&#160;{</div>
-<div class="line"><a name="l00033"></a><span class="lineno">   33</span>&#160;</div>
-<div class="line"><a name="l00036"></a><span class="lineno">   36</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T&gt;</div>
-<div class="line"><a name="l00037"></a><span class="lineno">   37</span>&#160;        GLM_FUNC_DECL mat&lt;4, 4, T, defaultp&gt; <a class="code" href="a00319.html#gafba6282e4ed3ff8b5c75331abfba3489">eulerAngleX</a>(</div>
-<div class="line"><a name="l00038"></a><span class="lineno">   38</span>&#160;                T <span class="keyword">const</span>&amp; angleX);</div>
-<div class="line"><a name="l00039"></a><span class="lineno">   39</span>&#160;</div>
-<div class="line"><a name="l00042"></a><span class="lineno">   42</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T&gt;</div>
-<div class="line"><a name="l00043"></a><span class="lineno">   43</span>&#160;        GLM_FUNC_DECL mat&lt;4, 4, T, defaultp&gt; <a class="code" href="a00319.html#gab84bf4746805fd69b8ecbb230e3974c5">eulerAngleY</a>(</div>
-<div class="line"><a name="l00044"></a><span class="lineno">   44</span>&#160;                T <span class="keyword">const</span>&amp; angleY);</div>
-<div class="line"><a name="l00045"></a><span class="lineno">   45</span>&#160;</div>
-<div class="line"><a name="l00048"></a><span class="lineno">   48</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T&gt;</div>
-<div class="line"><a name="l00049"></a><span class="lineno">   49</span>&#160;        GLM_FUNC_DECL mat&lt;4, 4, T, defaultp&gt; <a class="code" href="a00319.html#ga5b3935248bb6c3ec6b0d9297d406e251">eulerAngleZ</a>(</div>
-<div class="line"><a name="l00050"></a><span class="lineno">   50</span>&#160;                T <span class="keyword">const</span>&amp; angleZ);</div>
-<div class="line"><a name="l00051"></a><span class="lineno">   51</span>&#160;</div>
-<div class="line"><a name="l00054"></a><span class="lineno">   54</span>&#160;        <span class="keyword">template</span> &lt;<span class="keyword">typename</span> T&gt;</div>
-<div class="line"><a name="l00055"></a><span class="lineno">   55</span>&#160;        GLM_FUNC_DECL mat&lt;4, 4, T, defaultp&gt; <a class="code" href="a00319.html#ga994b8186b3b80d91cf90bc403164692f">derivedEulerAngleX</a>(</div>
-<div class="line"><a name="l00056"></a><span class="lineno">   56</span>&#160;                T <span class="keyword">const</span> &amp; angleX, T <span class="keyword">const</span> &amp; angularVelocityX);</div>
-<div class="line"><a name="l00057"></a><span class="lineno">   57</span>&#160;</div>
-<div class="line"><a name="l00060"></a><span class="lineno">   60</span>&#160;        <span class="keyword">template</span> &lt;<span class="keyword">typename</span> T&gt;</div>
-<div class="line"><a name="l00061"></a><span class="lineno">   61</span>&#160;        GLM_FUNC_DECL mat&lt;4, 4, T, defaultp&gt; <a class="code" href="a00319.html#ga0a4c56ecce7abcb69508ebe6313e9d10">derivedEulerAngleY</a>(</div>
-<div class="line"><a name="l00062"></a><span class="lineno">   62</span>&#160;                T <span class="keyword">const</span> &amp; angleY, T <span class="keyword">const</span> &amp; angularVelocityY);</div>
-<div class="line"><a name="l00063"></a><span class="lineno">   63</span>&#160;</div>
-<div class="line"><a name="l00066"></a><span class="lineno">   66</span>&#160;        <span class="keyword">template</span> &lt;<span class="keyword">typename</span> T&gt;</div>
-<div class="line"><a name="l00067"></a><span class="lineno">   67</span>&#160;        GLM_FUNC_DECL mat&lt;4, 4, T, defaultp&gt; <a class="code" href="a00319.html#gae8b397348201c42667be983ba3f344df">derivedEulerAngleZ</a>(</div>
-<div class="line"><a name="l00068"></a><span class="lineno">   68</span>&#160;                T <span class="keyword">const</span> &amp; angleZ, T <span class="keyword">const</span> &amp; angularVelocityZ);</div>
-<div class="line"><a name="l00069"></a><span class="lineno">   69</span>&#160;</div>
-<div class="line"><a name="l00072"></a><span class="lineno">   72</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T&gt;</div>
-<div class="line"><a name="l00073"></a><span class="lineno">   73</span>&#160;        GLM_FUNC_DECL mat&lt;4, 4, T, defaultp&gt; <a class="code" href="a00319.html#ga64036577ee17a2d24be0dbc05881d4e2">eulerAngleXY</a>(</div>
-<div class="line"><a name="l00074"></a><span class="lineno">   74</span>&#160;                T <span class="keyword">const</span>&amp; angleX,</div>
-<div class="line"><a name="l00075"></a><span class="lineno">   75</span>&#160;                T <span class="keyword">const</span>&amp; angleY);</div>
-<div class="line"><a name="l00076"></a><span class="lineno">   76</span>&#160;</div>
-<div class="line"><a name="l00079"></a><span class="lineno">   79</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T&gt;</div>
-<div class="line"><a name="l00080"></a><span class="lineno">   80</span>&#160;        GLM_FUNC_DECL mat&lt;4, 4, T, defaultp&gt; <a class="code" href="a00319.html#ga4f57e6dd25c3cffbbd4daa6ef3f4486d">eulerAngleYX</a>(</div>
-<div class="line"><a name="l00081"></a><span class="lineno">   81</span>&#160;                T <span class="keyword">const</span>&amp; angleY,</div>
-<div class="line"><a name="l00082"></a><span class="lineno">   82</span>&#160;                T <span class="keyword">const</span>&amp; angleX);</div>
-<div class="line"><a name="l00083"></a><span class="lineno">   83</span>&#160;</div>
-<div class="line"><a name="l00086"></a><span class="lineno">   86</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T&gt;</div>
-<div class="line"><a name="l00087"></a><span class="lineno">   87</span>&#160;        GLM_FUNC_DECL mat&lt;4, 4, T, defaultp&gt; <a class="code" href="a00319.html#gaa39bd323c65c2fc0a1508be33a237ce9">eulerAngleXZ</a>(</div>
-<div class="line"><a name="l00088"></a><span class="lineno">   88</span>&#160;                T <span class="keyword">const</span>&amp; angleX,</div>
-<div class="line"><a name="l00089"></a><span class="lineno">   89</span>&#160;                T <span class="keyword">const</span>&amp; angleZ);</div>
-<div class="line"><a name="l00090"></a><span class="lineno">   90</span>&#160;</div>
-<div class="line"><a name="l00093"></a><span class="lineno">   93</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T&gt;</div>
-<div class="line"><a name="l00094"></a><span class="lineno">   94</span>&#160;        GLM_FUNC_DECL mat&lt;4, 4, T, defaultp&gt; <a class="code" href="a00319.html#ga483903115cd4059228961046a28d69b5">eulerAngleZX</a>(</div>
-<div class="line"><a name="l00095"></a><span class="lineno">   95</span>&#160;                T <span class="keyword">const</span>&amp; <a class="code" href="a00257.html#ga8aa248b31d5ade470c87304df5eb7bd8">angle</a>,</div>
-<div class="line"><a name="l00096"></a><span class="lineno">   96</span>&#160;                T <span class="keyword">const</span>&amp; angleX);</div>
-<div class="line"><a name="l00097"></a><span class="lineno">   97</span>&#160;</div>
-<div class="line"><a name="l00100"></a><span class="lineno">  100</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T&gt;</div>
-<div class="line"><a name="l00101"></a><span class="lineno">  101</span>&#160;        GLM_FUNC_DECL mat&lt;4, 4, T, defaultp&gt; <a class="code" href="a00319.html#ga220379e10ac8cca55e275f0c9018fed9">eulerAngleYZ</a>(</div>
-<div class="line"><a name="l00102"></a><span class="lineno">  102</span>&#160;                T <span class="keyword">const</span>&amp; angleY,</div>
-<div class="line"><a name="l00103"></a><span class="lineno">  103</span>&#160;                T <span class="keyword">const</span>&amp; angleZ);</div>
-<div class="line"><a name="l00104"></a><span class="lineno">  104</span>&#160;</div>
-<div class="line"><a name="l00107"></a><span class="lineno">  107</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T&gt;</div>
-<div class="line"><a name="l00108"></a><span class="lineno">  108</span>&#160;        GLM_FUNC_DECL mat&lt;4, 4, T, defaultp&gt; <a class="code" href="a00319.html#ga400b2bd5984999efab663f3a68e1d020">eulerAngleZY</a>(</div>
-<div class="line"><a name="l00109"></a><span class="lineno">  109</span>&#160;                T <span class="keyword">const</span>&amp; angleZ,</div>
-<div class="line"><a name="l00110"></a><span class="lineno">  110</span>&#160;                T <span class="keyword">const</span>&amp; angleY);</div>
-<div class="line"><a name="l00111"></a><span class="lineno">  111</span>&#160;</div>
-<div class="line"><a name="l00114"></a><span class="lineno">  114</span>&#160;    <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T&gt;</div>
-<div class="line"><a name="l00115"></a><span class="lineno">  115</span>&#160;    GLM_FUNC_DECL mat&lt;4, 4, T, defaultp&gt; <a class="code" href="a00319.html#ga1975e0f0e9bed7f716dc9946da2ab645">eulerAngleXYZ</a>(</div>
-<div class="line"><a name="l00116"></a><span class="lineno">  116</span>&#160;        T <span class="keyword">const</span>&amp; t1,</div>
-<div class="line"><a name="l00117"></a><span class="lineno">  117</span>&#160;        T <span class="keyword">const</span>&amp; t2,</div>
-<div class="line"><a name="l00118"></a><span class="lineno">  118</span>&#160;        T <span class="keyword">const</span>&amp; t3);</div>
-<div class="line"><a name="l00119"></a><span class="lineno">  119</span>&#160;</div>
-<div class="line"><a name="l00122"></a><span class="lineno">  122</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T&gt;</div>
-<div class="line"><a name="l00123"></a><span class="lineno">  123</span>&#160;        GLM_FUNC_DECL mat&lt;4, 4, T, defaultp&gt; <a class="code" href="a00319.html#gab8ba99a9814f6d9edf417b6c6d5b0c10">eulerAngleYXZ</a>(</div>
-<div class="line"><a name="l00124"></a><span class="lineno">  124</span>&#160;                T <span class="keyword">const</span>&amp; <a class="code" href="a00299.html#ga8da38cdfdc452dafa660c2f46506bad5">yaw</a>,</div>
-<div class="line"><a name="l00125"></a><span class="lineno">  125</span>&#160;                T <span class="keyword">const</span>&amp; <a class="code" href="a00299.html#ga7603e81477b46ddb448896909bc04928">pitch</a>,</div>
-<div class="line"><a name="l00126"></a><span class="lineno">  126</span>&#160;                T <span class="keyword">const</span>&amp; <a class="code" href="a00299.html#ga0cc5ad970d0b00829b139fe0fe5a1e13">roll</a>);</div>
-<div class="line"><a name="l00127"></a><span class="lineno">  127</span>&#160;</div>
-<div class="line"><a name="l00130"></a><span class="lineno">  130</span>&#160;        <span class="keyword">template</span> &lt;<span class="keyword">typename</span> T&gt;</div>
-<div class="line"><a name="l00131"></a><span class="lineno">  131</span>&#160;        GLM_FUNC_DECL mat&lt;4, 4, T, defaultp&gt; <a class="code" href="a00319.html#ga60171c79a17aec85d7891ae1d1533ec9">eulerAngleXZX</a>(</div>
-<div class="line"><a name="l00132"></a><span class="lineno">  132</span>&#160;                T <span class="keyword">const</span> &amp; t1,</div>
-<div class="line"><a name="l00133"></a><span class="lineno">  133</span>&#160;                T <span class="keyword">const</span> &amp; t2,</div>
-<div class="line"><a name="l00134"></a><span class="lineno">  134</span>&#160;                T <span class="keyword">const</span> &amp; t3);</div>
-<div class="line"><a name="l00135"></a><span class="lineno">  135</span>&#160;</div>
-<div class="line"><a name="l00138"></a><span class="lineno">  138</span>&#160;        <span class="keyword">template</span> &lt;<span class="keyword">typename</span> T&gt;</div>
-<div class="line"><a name="l00139"></a><span class="lineno">  139</span>&#160;        GLM_FUNC_DECL mat&lt;4, 4, T, defaultp&gt; <a class="code" href="a00319.html#ga29bd0787a28a6648159c0d6e69706066">eulerAngleXYX</a>(</div>
-<div class="line"><a name="l00140"></a><span class="lineno">  140</span>&#160;                T <span class="keyword">const</span> &amp; t1,</div>
-<div class="line"><a name="l00141"></a><span class="lineno">  141</span>&#160;                T <span class="keyword">const</span> &amp; t2,</div>
-<div class="line"><a name="l00142"></a><span class="lineno">  142</span>&#160;                T <span class="keyword">const</span> &amp; t3);</div>
-<div class="line"><a name="l00143"></a><span class="lineno">  143</span>&#160;</div>
-<div class="line"><a name="l00146"></a><span class="lineno">  146</span>&#160;        <span class="keyword">template</span> &lt;<span class="keyword">typename</span> T&gt;</div>
-<div class="line"><a name="l00147"></a><span class="lineno">  147</span>&#160;        GLM_FUNC_DECL mat&lt;4, 4, T, defaultp&gt; <a class="code" href="a00319.html#ga750fba9894117f87bcc529d7349d11de">eulerAngleYXY</a>(</div>
-<div class="line"><a name="l00148"></a><span class="lineno">  148</span>&#160;                T <span class="keyword">const</span> &amp; t1,</div>
-<div class="line"><a name="l00149"></a><span class="lineno">  149</span>&#160;                T <span class="keyword">const</span> &amp; t2,</div>
-<div class="line"><a name="l00150"></a><span class="lineno">  150</span>&#160;                T <span class="keyword">const</span> &amp; t3);</div>
-<div class="line"><a name="l00151"></a><span class="lineno">  151</span>&#160;</div>
-<div class="line"><a name="l00154"></a><span class="lineno">  154</span>&#160;        <span class="keyword">template</span> &lt;<span class="keyword">typename</span> T&gt;</div>
-<div class="line"><a name="l00155"></a><span class="lineno">  155</span>&#160;        GLM_FUNC_DECL mat&lt;4, 4, T, defaultp&gt; <a class="code" href="a00319.html#ga5e5e40abc27630749b42b3327c76d6e4">eulerAngleYZY</a>(</div>
-<div class="line"><a name="l00156"></a><span class="lineno">  156</span>&#160;                T <span class="keyword">const</span> &amp; t1,</div>
-<div class="line"><a name="l00157"></a><span class="lineno">  157</span>&#160;                T <span class="keyword">const</span> &amp; t2,</div>
-<div class="line"><a name="l00158"></a><span class="lineno">  158</span>&#160;                T <span class="keyword">const</span> &amp; t3);</div>
-<div class="line"><a name="l00159"></a><span class="lineno">  159</span>&#160;</div>
-<div class="line"><a name="l00162"></a><span class="lineno">  162</span>&#160;        <span class="keyword">template</span> &lt;<span class="keyword">typename</span> T&gt;</div>
-<div class="line"><a name="l00163"></a><span class="lineno">  163</span>&#160;        GLM_FUNC_DECL mat&lt;4, 4, T, defaultp&gt; <a class="code" href="a00319.html#gacd795f1dbecaf74974f9c76bbcca6830">eulerAngleZYZ</a>(</div>
-<div class="line"><a name="l00164"></a><span class="lineno">  164</span>&#160;                T <span class="keyword">const</span> &amp; t1,</div>
-<div class="line"><a name="l00165"></a><span class="lineno">  165</span>&#160;                T <span class="keyword">const</span> &amp; t2,</div>
-<div class="line"><a name="l00166"></a><span class="lineno">  166</span>&#160;                T <span class="keyword">const</span> &amp; t3);</div>
-<div class="line"><a name="l00167"></a><span class="lineno">  167</span>&#160;</div>
-<div class="line"><a name="l00170"></a><span class="lineno">  170</span>&#160;        <span class="keyword">template</span> &lt;<span class="keyword">typename</span> T&gt;</div>
-<div class="line"><a name="l00171"></a><span class="lineno">  171</span>&#160;        GLM_FUNC_DECL mat&lt;4, 4, T, defaultp&gt; <a class="code" href="a00319.html#ga178f966c52b01e4d65e31ebd007e3247">eulerAngleZXZ</a>(</div>
-<div class="line"><a name="l00172"></a><span class="lineno">  172</span>&#160;                T <span class="keyword">const</span> &amp; t1,</div>
-<div class="line"><a name="l00173"></a><span class="lineno">  173</span>&#160;                T <span class="keyword">const</span> &amp; t2,</div>
-<div class="line"><a name="l00174"></a><span class="lineno">  174</span>&#160;                T <span class="keyword">const</span> &amp; t3);</div>
-<div class="line"><a name="l00175"></a><span class="lineno">  175</span>&#160;</div>
-<div class="line"><a name="l00178"></a><span class="lineno">  178</span>&#160;        <span class="keyword">template</span> &lt;<span class="keyword">typename</span> T&gt;</div>
-<div class="line"><a name="l00179"></a><span class="lineno">  179</span>&#160;        GLM_FUNC_DECL mat&lt;4, 4, T, defaultp&gt; <a class="code" href="a00319.html#ga996dce12a60d8a674ba6737a535fa910">eulerAngleXZY</a>(</div>
-<div class="line"><a name="l00180"></a><span class="lineno">  180</span>&#160;                T <span class="keyword">const</span> &amp; t1,</div>
-<div class="line"><a name="l00181"></a><span class="lineno">  181</span>&#160;                T <span class="keyword">const</span> &amp; t2,</div>
-<div class="line"><a name="l00182"></a><span class="lineno">  182</span>&#160;                T <span class="keyword">const</span> &amp; t3);</div>
-<div class="line"><a name="l00183"></a><span class="lineno">  183</span>&#160;</div>
-<div class="line"><a name="l00186"></a><span class="lineno">  186</span>&#160;        <span class="keyword">template</span> &lt;<span class="keyword">typename</span> T&gt;</div>
-<div class="line"><a name="l00187"></a><span class="lineno">  187</span>&#160;        GLM_FUNC_DECL mat&lt;4, 4, T, defaultp&gt; <a class="code" href="a00319.html#ga08bef16357b8f9b3051b3dcaec4b7848">eulerAngleYZX</a>(</div>
-<div class="line"><a name="l00188"></a><span class="lineno">  188</span>&#160;                T <span class="keyword">const</span> &amp; t1,</div>
-<div class="line"><a name="l00189"></a><span class="lineno">  189</span>&#160;                T <span class="keyword">const</span> &amp; t2,</div>
-<div class="line"><a name="l00190"></a><span class="lineno">  190</span>&#160;                T <span class="keyword">const</span> &amp; t3);</div>
-<div class="line"><a name="l00191"></a><span class="lineno">  191</span>&#160;</div>
-<div class="line"><a name="l00194"></a><span class="lineno">  194</span>&#160;        <span class="keyword">template</span> &lt;<span class="keyword">typename</span> T&gt;</div>
-<div class="line"><a name="l00195"></a><span class="lineno">  195</span>&#160;        GLM_FUNC_DECL mat&lt;4, 4, T, defaultp&gt; <a class="code" href="a00319.html#ga2e61f1e39069c47530acab9167852dd6">eulerAngleZYX</a>(</div>
-<div class="line"><a name="l00196"></a><span class="lineno">  196</span>&#160;                T <span class="keyword">const</span> &amp; t1,</div>
-<div class="line"><a name="l00197"></a><span class="lineno">  197</span>&#160;                T <span class="keyword">const</span> &amp; t2,</div>
-<div class="line"><a name="l00198"></a><span class="lineno">  198</span>&#160;                T <span class="keyword">const</span> &amp; t3);</div>
-<div class="line"><a name="l00199"></a><span class="lineno">  199</span>&#160;</div>
-<div class="line"><a name="l00202"></a><span class="lineno">  202</span>&#160;        <span class="keyword">template</span> &lt;<span class="keyword">typename</span> T&gt;</div>
-<div class="line"><a name="l00203"></a><span class="lineno">  203</span>&#160;        GLM_FUNC_DECL mat&lt;4, 4, T, defaultp&gt; <a class="code" href="a00319.html#gab4505c54d2dd654df4569fd1f04c43aa">eulerAngleZXY</a>(</div>
-<div class="line"><a name="l00204"></a><span class="lineno">  204</span>&#160;                T <span class="keyword">const</span> &amp; t1,</div>
-<div class="line"><a name="l00205"></a><span class="lineno">  205</span>&#160;                T <span class="keyword">const</span> &amp; t2,</div>
-<div class="line"><a name="l00206"></a><span class="lineno">  206</span>&#160;                T <span class="keyword">const</span> &amp; t3);</div>
-<div class="line"><a name="l00207"></a><span class="lineno">  207</span>&#160;</div>
-<div class="line"><a name="l00210"></a><span class="lineno">  210</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T&gt;</div>
-<div class="line"><a name="l00211"></a><span class="lineno">  211</span>&#160;        GLM_FUNC_DECL mat&lt;4, 4, T, defaultp&gt; <a class="code" href="a00319.html#gae6aa26ccb020d281b449619e419a609e">yawPitchRoll</a>(</div>
-<div class="line"><a name="l00212"></a><span class="lineno">  212</span>&#160;                T <span class="keyword">const</span>&amp; <a class="code" href="a00299.html#ga8da38cdfdc452dafa660c2f46506bad5">yaw</a>,</div>
-<div class="line"><a name="l00213"></a><span class="lineno">  213</span>&#160;                T <span class="keyword">const</span>&amp; <a class="code" href="a00299.html#ga7603e81477b46ddb448896909bc04928">pitch</a>,</div>
-<div class="line"><a name="l00214"></a><span class="lineno">  214</span>&#160;                T <span class="keyword">const</span>&amp; <a class="code" href="a00299.html#ga0cc5ad970d0b00829b139fe0fe5a1e13">roll</a>);</div>
-<div class="line"><a name="l00215"></a><span class="lineno">  215</span>&#160;</div>
-<div class="line"><a name="l00218"></a><span class="lineno">  218</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T&gt;</div>
-<div class="line"><a name="l00219"></a><span class="lineno">  219</span>&#160;        GLM_FUNC_DECL mat&lt;2, 2, T, defaultp&gt; <a class="code" href="a00319.html#gae16738a9f1887cf4e4db6a124637608d">orientate2</a>(T <span class="keyword">const</span>&amp; <a class="code" href="a00257.html#ga8aa248b31d5ade470c87304df5eb7bd8">angle</a>);</div>
-<div class="line"><a name="l00220"></a><span class="lineno">  220</span>&#160;</div>
-<div class="line"><a name="l00223"></a><span class="lineno">  223</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T&gt;</div>
-<div class="line"><a name="l00224"></a><span class="lineno">  224</span>&#160;        GLM_FUNC_DECL mat&lt;3, 3, T, defaultp&gt; <a class="code" href="a00319.html#ga7238c8e15c7720e3ca6a45ab151eeabb">orientate3</a>(T <span class="keyword">const</span>&amp; <a class="code" href="a00257.html#ga8aa248b31d5ade470c87304df5eb7bd8">angle</a>);</div>
-<div class="line"><a name="l00225"></a><span class="lineno">  225</span>&#160;</div>
-<div class="line"><a name="l00228"></a><span class="lineno">  228</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T, qualifier Q&gt;</div>
-<div class="line"><a name="l00229"></a><span class="lineno">  229</span>&#160;        GLM_FUNC_DECL mat&lt;3, 3, T, Q&gt; <a class="code" href="a00319.html#ga7238c8e15c7720e3ca6a45ab151eeabb">orientate3</a>(vec&lt;3, T, Q&gt; <span class="keyword">const</span>&amp; angles);</div>
-<div class="line"><a name="l00230"></a><span class="lineno">  230</span>&#160;</div>
-<div class="line"><a name="l00233"></a><span class="lineno">  233</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T, qualifier Q&gt;</div>
-<div class="line"><a name="l00234"></a><span class="lineno">  234</span>&#160;        GLM_FUNC_DECL mat&lt;4, 4, T, Q&gt; <a class="code" href="a00319.html#ga4a044653f71a4ecec68e0b623382b48a">orientate4</a>(vec&lt;3, T, Q&gt; <span class="keyword">const</span>&amp; angles);</div>
-<div class="line"><a name="l00235"></a><span class="lineno">  235</span>&#160;</div>
-<div class="line"><a name="l00238"></a><span class="lineno">  238</span>&#160;    <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T&gt;</div>
-<div class="line"><a name="l00239"></a><span class="lineno">  239</span>&#160;    GLM_FUNC_DECL <span class="keywordtype">void</span> <a class="code" href="a00319.html#gacea701562f778c1da4d3a0a1cf091000">extractEulerAngleXYZ</a>(mat&lt;4, 4, T, defaultp&gt; <span class="keyword">const</span>&amp; M,</div>
-<div class="line"><a name="l00240"></a><span class="lineno">  240</span>&#160;                                            T &amp; t1,</div>
-<div class="line"><a name="l00241"></a><span class="lineno">  241</span>&#160;                                            T &amp; t2,</div>
-<div class="line"><a name="l00242"></a><span class="lineno">  242</span>&#160;                                            T &amp; t3);</div>
-<div class="line"><a name="l00243"></a><span class="lineno">  243</span>&#160;</div>
-<div class="line"><a name="l00246"></a><span class="lineno">  246</span>&#160;        <span class="keyword">template</span> &lt;<span class="keyword">typename</span> T&gt;</div>
-<div class="line"><a name="l00247"></a><span class="lineno">  247</span>&#160;        GLM_FUNC_DECL <span class="keywordtype">void</span> <a class="code" href="a00319.html#gaf0937518e63037335a0e8358b6f053c5">extractEulerAngleYXZ</a>(mat&lt;4, 4, T, defaultp&gt; <span class="keyword">const</span> &amp; M,</div>
-<div class="line"><a name="l00248"></a><span class="lineno">  248</span>&#160;                                                                                        T &amp; t1,</div>
-<div class="line"><a name="l00249"></a><span class="lineno">  249</span>&#160;                                                                                        T &amp; t2,</div>
-<div class="line"><a name="l00250"></a><span class="lineno">  250</span>&#160;                                                                                        T &amp; t3);</div>
-<div class="line"><a name="l00251"></a><span class="lineno">  251</span>&#160;</div>
-<div class="line"><a name="l00254"></a><span class="lineno">  254</span>&#160;        <span class="keyword">template</span> &lt;<span class="keyword">typename</span> T&gt;</div>
-<div class="line"><a name="l00255"></a><span class="lineno">  255</span>&#160;        GLM_FUNC_DECL <span class="keywordtype">void</span> <a class="code" href="a00319.html#gacf0bc6c031f25fa3ee0055b62c8260d0">extractEulerAngleXZX</a>(mat&lt;4, 4, T, defaultp&gt; <span class="keyword">const</span> &amp; M,</div>
-<div class="line"><a name="l00256"></a><span class="lineno">  256</span>&#160;                                                                                        T &amp; t1,</div>
-<div class="line"><a name="l00257"></a><span class="lineno">  257</span>&#160;                                                                                        T &amp; t2,</div>
-<div class="line"><a name="l00258"></a><span class="lineno">  258</span>&#160;                                                                                        T &amp; t3);</div>
-<div class="line"><a name="l00259"></a><span class="lineno">  259</span>&#160;</div>
-<div class="line"><a name="l00262"></a><span class="lineno">  262</span>&#160;        <span class="keyword">template</span> &lt;<span class="keyword">typename</span> T&gt;</div>
-<div class="line"><a name="l00263"></a><span class="lineno">  263</span>&#160;        GLM_FUNC_DECL <span class="keywordtype">void</span> <a class="code" href="a00319.html#gaf1077a72171d0f3b08f022ab5ff88af7">extractEulerAngleXYX</a>(mat&lt;4, 4, T, defaultp&gt; <span class="keyword">const</span> &amp; M,</div>
-<div class="line"><a name="l00264"></a><span class="lineno">  264</span>&#160;                                                                                        T &amp; t1,</div>
-<div class="line"><a name="l00265"></a><span class="lineno">  265</span>&#160;                                                                                        T &amp; t2,</div>
-<div class="line"><a name="l00266"></a><span class="lineno">  266</span>&#160;                                                                                        T &amp; t3);</div>
-<div class="line"><a name="l00267"></a><span class="lineno">  267</span>&#160;</div>
-<div class="line"><a name="l00270"></a><span class="lineno">  270</span>&#160;        <span class="keyword">template</span> &lt;<span class="keyword">typename</span> T&gt;</div>
-<div class="line"><a name="l00271"></a><span class="lineno">  271</span>&#160;        GLM_FUNC_DECL <span class="keywordtype">void</span> <a class="code" href="a00319.html#gaab8868556361a190db94374e9983ed39">extractEulerAngleYXY</a>(mat&lt;4, 4, T, defaultp&gt; <span class="keyword">const</span> &amp; M,</div>
-<div class="line"><a name="l00272"></a><span class="lineno">  272</span>&#160;                                                                                        T &amp; t1,</div>
-<div class="line"><a name="l00273"></a><span class="lineno">  273</span>&#160;                                                                                        T &amp; t2,</div>
-<div class="line"><a name="l00274"></a><span class="lineno">  274</span>&#160;                                                                                        T &amp; t3);</div>
-<div class="line"><a name="l00275"></a><span class="lineno">  275</span>&#160;</div>
-<div class="line"><a name="l00278"></a><span class="lineno">  278</span>&#160;        <span class="keyword">template</span> &lt;<span class="keyword">typename</span> T&gt;</div>
-<div class="line"><a name="l00279"></a><span class="lineno">  279</span>&#160;        GLM_FUNC_DECL <span class="keywordtype">void</span> <a class="code" href="a00319.html#ga11dad972c109e4bf8694c915017c44a6">extractEulerAngleYZY</a>(mat&lt;4, 4, T, defaultp&gt; <span class="keyword">const</span> &amp; M,</div>
-<div class="line"><a name="l00280"></a><span class="lineno">  280</span>&#160;                                                                                        T &amp; t1,</div>
-<div class="line"><a name="l00281"></a><span class="lineno">  281</span>&#160;                                                                                        T &amp; t2,</div>
-<div class="line"><a name="l00282"></a><span class="lineno">  282</span>&#160;                                                                                        T &amp; t3);</div>
-<div class="line"><a name="l00283"></a><span class="lineno">  283</span>&#160;</div>
-<div class="line"><a name="l00286"></a><span class="lineno">  286</span>&#160;        <span class="keyword">template</span> &lt;<span class="keyword">typename</span> T&gt;</div>
-<div class="line"><a name="l00287"></a><span class="lineno">  287</span>&#160;        GLM_FUNC_DECL <span class="keywordtype">void</span> <a class="code" href="a00319.html#gafdfa880a64b565223550c2d3938b1aeb">extractEulerAngleZYZ</a>(mat&lt;4, 4, T, defaultp&gt; <span class="keyword">const</span> &amp; M,</div>
-<div class="line"><a name="l00288"></a><span class="lineno">  288</span>&#160;                                                                                        T &amp; t1,</div>
-<div class="line"><a name="l00289"></a><span class="lineno">  289</span>&#160;                                                                                        T &amp; t2,</div>
-<div class="line"><a name="l00290"></a><span class="lineno">  290</span>&#160;                                                                                        T &amp; t3);</div>
-<div class="line"><a name="l00291"></a><span class="lineno">  291</span>&#160;</div>
-<div class="line"><a name="l00294"></a><span class="lineno">  294</span>&#160;        <span class="keyword">template</span> &lt;<span class="keyword">typename</span> T&gt;</div>
-<div class="line"><a name="l00295"></a><span class="lineno">  295</span>&#160;        GLM_FUNC_DECL <span class="keywordtype">void</span> <a class="code" href="a00319.html#ga59359fef9bad92afaca55e193f91e702">extractEulerAngleZXZ</a>(mat&lt;4, 4, T, defaultp&gt; <span class="keyword">const</span> &amp; M,</div>
-<div class="line"><a name="l00296"></a><span class="lineno">  296</span>&#160;                                                                                        T &amp; t1,</div>
-<div class="line"><a name="l00297"></a><span class="lineno">  297</span>&#160;                                                                                        T &amp; t2,</div>
-<div class="line"><a name="l00298"></a><span class="lineno">  298</span>&#160;                                                                                        T &amp; t3);</div>
-<div class="line"><a name="l00299"></a><span class="lineno">  299</span>&#160;</div>
-<div class="line"><a name="l00302"></a><span class="lineno">  302</span>&#160;        <span class="keyword">template</span> &lt;<span class="keyword">typename</span> T&gt;</div>
-<div class="line"><a name="l00303"></a><span class="lineno">  303</span>&#160;        GLM_FUNC_DECL <span class="keywordtype">void</span> <a class="code" href="a00319.html#gabe5a65d8eb1cd873c8de121cce1a15ed">extractEulerAngleXZY</a>(mat&lt;4, 4, T, defaultp&gt; <span class="keyword">const</span> &amp; M,</div>
-<div class="line"><a name="l00304"></a><span class="lineno">  304</span>&#160;                                                                                        T &amp; t1,</div>
-<div class="line"><a name="l00305"></a><span class="lineno">  305</span>&#160;                                                                                        T &amp; t2,</div>
-<div class="line"><a name="l00306"></a><span class="lineno">  306</span>&#160;                                                                                        T &amp; t3);</div>
-<div class="line"><a name="l00307"></a><span class="lineno">  307</span>&#160;</div>
-<div class="line"><a name="l00310"></a><span class="lineno">  310</span>&#160;        <span class="keyword">template</span> &lt;<span class="keyword">typename</span> T&gt;</div>
-<div class="line"><a name="l00311"></a><span class="lineno">  311</span>&#160;        GLM_FUNC_DECL <span class="keywordtype">void</span> <a class="code" href="a00319.html#ga9049b78466796c0de2971756e25b93d3">extractEulerAngleYZX</a>(mat&lt;4, 4, T, defaultp&gt; <span class="keyword">const</span> &amp; M,</div>
-<div class="line"><a name="l00312"></a><span class="lineno">  312</span>&#160;                                                                                        T &amp; t1,</div>
-<div class="line"><a name="l00313"></a><span class="lineno">  313</span>&#160;                                                                                        T &amp; t2,</div>
-<div class="line"><a name="l00314"></a><span class="lineno">  314</span>&#160;                                                                                        T &amp; t3);</div>
-<div class="line"><a name="l00315"></a><span class="lineno">  315</span>&#160;</div>
-<div class="line"><a name="l00318"></a><span class="lineno">  318</span>&#160;        <span class="keyword">template</span> &lt;<span class="keyword">typename</span> T&gt;</div>
-<div class="line"><a name="l00319"></a><span class="lineno">  319</span>&#160;        GLM_FUNC_DECL <span class="keywordtype">void</span> <a class="code" href="a00319.html#ga2d6c11a4abfa60c565483cee2d3f7665">extractEulerAngleZYX</a>(mat&lt;4, 4, T, defaultp&gt; <span class="keyword">const</span> &amp; M,</div>
-<div class="line"><a name="l00320"></a><span class="lineno">  320</span>&#160;                                                                                        T &amp; t1,</div>
-<div class="line"><a name="l00321"></a><span class="lineno">  321</span>&#160;                                                                                        T &amp; t2,</div>
-<div class="line"><a name="l00322"></a><span class="lineno">  322</span>&#160;                                                                                        T &amp; t3);</div>
-<div class="line"><a name="l00323"></a><span class="lineno">  323</span>&#160;</div>
-<div class="line"><a name="l00326"></a><span class="lineno">  326</span>&#160;        <span class="keyword">template</span> &lt;<span class="keyword">typename</span> T&gt;</div>
-<div class="line"><a name="l00327"></a><span class="lineno">  327</span>&#160;        GLM_FUNC_DECL <span class="keywordtype">void</span> <a class="code" href="a00319.html#ga81fbbca2ba0c778b9662d5355b4e2363">extractEulerAngleZXY</a>(mat&lt;4, 4, T, defaultp&gt; <span class="keyword">const</span> &amp; M,</div>
-<div class="line"><a name="l00328"></a><span class="lineno">  328</span>&#160;                                                                                        T &amp; t1,</div>
-<div class="line"><a name="l00329"></a><span class="lineno">  329</span>&#160;                                                                                        T &amp; t2,</div>
-<div class="line"><a name="l00330"></a><span class="lineno">  330</span>&#160;                                                                                        T &amp; t3);</div>
-<div class="line"><a name="l00331"></a><span class="lineno">  331</span>&#160;</div>
-<div class="line"><a name="l00333"></a><span class="lineno">  333</span>&#160;}<span class="comment">//namespace glm</span></div>
-<div class="line"><a name="l00334"></a><span class="lineno">  334</span>&#160;</div>
-<div class="line"><a name="l00335"></a><span class="lineno">  335</span>&#160;<span class="preprocessor">#include &quot;euler_angles.inl&quot;</span></div>
-<div class="ttc" id="a00319_html_ga64036577ee17a2d24be0dbc05881d4e2"><div class="ttname"><a href="a00319.html#ga64036577ee17a2d24be0dbc05881d4e2">glm::eulerAngleXY</a></div><div class="ttdeci">GLM_FUNC_DECL mat&lt; 4, 4, T, defaultp &gt; eulerAngleXY(T const &amp;angleX, T const &amp;angleY)</div><div class="ttdoc">Creates a 3D 4 * 4 homogeneous rotation matrix from euler angles (X * Y). </div></div>
-<div class="ttc" id="a00319_html_ga5e5e40abc27630749b42b3327c76d6e4"><div class="ttname"><a href="a00319.html#ga5e5e40abc27630749b42b3327c76d6e4">glm::eulerAngleYZY</a></div><div class="ttdeci">GLM_FUNC_DECL mat&lt; 4, 4, T, defaultp &gt; eulerAngleYZY(T const &amp;t1, T const &amp;t2, T const &amp;t3)</div><div class="ttdoc">Creates a 3D 4 * 4 homogeneous rotation matrix from euler angles (Y * Z * Y). </div></div>
-<div class="ttc" id="a00319_html_gaf0937518e63037335a0e8358b6f053c5"><div class="ttname"><a href="a00319.html#gaf0937518e63037335a0e8358b6f053c5">glm::extractEulerAngleYXZ</a></div><div class="ttdeci">GLM_FUNC_DECL void extractEulerAngleYXZ(mat&lt; 4, 4, T, defaultp &gt; const &amp;M, T &amp;t1, T &amp;t2, T &amp;t3)</div><div class="ttdoc">Extracts the (Y * X * Z) Euler angles from the rotation matrix M. </div></div>
-<div class="ttc" id="a00319_html_ga1975e0f0e9bed7f716dc9946da2ab645"><div class="ttname"><a href="a00319.html#ga1975e0f0e9bed7f716dc9946da2ab645">glm::eulerAngleXYZ</a></div><div class="ttdeci">GLM_FUNC_DECL mat&lt; 4, 4, T, defaultp &gt; eulerAngleXYZ(T const &amp;t1, T const &amp;t2, T const &amp;t3)</div><div class="ttdoc">Creates a 3D 4 * 4 homogeneous rotation matrix from euler angles (X * Y * Z). </div></div>
-<div class="ttc" id="a00319_html_ga996dce12a60d8a674ba6737a535fa910"><div class="ttname"><a href="a00319.html#ga996dce12a60d8a674ba6737a535fa910">glm::eulerAngleXZY</a></div><div class="ttdeci">GLM_FUNC_DECL mat&lt; 4, 4, T, defaultp &gt; eulerAngleXZY(T const &amp;t1, T const &amp;t2, T const &amp;t3)</div><div class="ttdoc">Creates a 3D 4 * 4 homogeneous rotation matrix from euler angles (X * Z * Y). </div></div>
-<div class="ttc" id="a00319_html_gae8b397348201c42667be983ba3f344df"><div class="ttname"><a href="a00319.html#gae8b397348201c42667be983ba3f344df">glm::derivedEulerAngleZ</a></div><div class="ttdeci">GLM_FUNC_DECL mat&lt; 4, 4, T, defaultp &gt; derivedEulerAngleZ(T const &amp;angleZ, T const &amp;angularVelocityZ)</div><div class="ttdoc">Creates a 3D 4 * 4 homogeneous derived matrix from the rotation matrix about Z-axis. </div></div>
-<div class="ttc" id="a00319_html_ga4f57e6dd25c3cffbbd4daa6ef3f4486d"><div class="ttname"><a href="a00319.html#ga4f57e6dd25c3cffbbd4daa6ef3f4486d">glm::eulerAngleYX</a></div><div class="ttdeci">GLM_FUNC_DECL mat&lt; 4, 4, T, defaultp &gt; eulerAngleYX(T const &amp;angleY, T const &amp;angleX)</div><div class="ttdoc">Creates a 3D 4 * 4 homogeneous rotation matrix from euler angles (Y * X). </div></div>
-<div class="ttc" id="a00319_html_gab84bf4746805fd69b8ecbb230e3974c5"><div class="ttname"><a href="a00319.html#gab84bf4746805fd69b8ecbb230e3974c5">glm::eulerAngleY</a></div><div class="ttdeci">GLM_FUNC_DECL mat&lt; 4, 4, T, defaultp &gt; eulerAngleY(T const &amp;angleY)</div><div class="ttdoc">Creates a 3D 4 * 4 homogeneous rotation matrix from an euler angle Y. </div></div>
-<div class="ttc" id="a00257_html_ga8aa248b31d5ade470c87304df5eb7bd8"><div class="ttname"><a href="a00257.html#ga8aa248b31d5ade470c87304df5eb7bd8">glm::angle</a></div><div class="ttdeci">GLM_FUNC_DECL T angle(qua&lt; T, Q &gt; const &amp;x)</div><div class="ttdoc">Returns the quaternion rotation angle. </div></div>
-<div class="ttc" id="a00319_html_gafdfa880a64b565223550c2d3938b1aeb"><div class="ttname"><a href="a00319.html#gafdfa880a64b565223550c2d3938b1aeb">glm::extractEulerAngleZYZ</a></div><div class="ttdeci">GLM_FUNC_DECL void extractEulerAngleZYZ(mat&lt; 4, 4, T, defaultp &gt; const &amp;M, T &amp;t1, T &amp;t2, T &amp;t3)</div><div class="ttdoc">Extracts the (Z * Y * Z) Euler angles from the rotation matrix M. </div></div>
-<div class="ttc" id="a00319_html_ga994b8186b3b80d91cf90bc403164692f"><div class="ttname"><a href="a00319.html#ga994b8186b3b80d91cf90bc403164692f">glm::derivedEulerAngleX</a></div><div class="ttdeci">GLM_FUNC_DECL mat&lt; 4, 4, T, defaultp &gt; derivedEulerAngleX(T const &amp;angleX, T const &amp;angularVelocityX)</div><div class="ttdoc">Creates a 3D 4 * 4 homogeneous derived matrix from the rotation matrix about X-axis. </div></div>
-<div class="ttc" id="a00319_html_gaf1077a72171d0f3b08f022ab5ff88af7"><div class="ttname"><a href="a00319.html#gaf1077a72171d0f3b08f022ab5ff88af7">glm::extractEulerAngleXYX</a></div><div class="ttdeci">GLM_FUNC_DECL void extractEulerAngleXYX(mat&lt; 4, 4, T, defaultp &gt; const &amp;M, T &amp;t1, T &amp;t2, T &amp;t3)</div><div class="ttdoc">Extracts the (X * Y * X) Euler angles from the rotation matrix M. </div></div>
-<div class="ttc" id="a00319_html_gab4505c54d2dd654df4569fd1f04c43aa"><div class="ttname"><a href="a00319.html#gab4505c54d2dd654df4569fd1f04c43aa">glm::eulerAngleZXY</a></div><div class="ttdeci">GLM_FUNC_DECL mat&lt; 4, 4, T, defaultp &gt; eulerAngleZXY(T const &amp;t1, T const &amp;t2, T const &amp;t3)</div><div class="ttdoc">Creates a 3D 4 * 4 homogeneous rotation matrix from euler angles (Z * X * Y). </div></div>
-<div class="ttc" id="a00299_html_ga0cc5ad970d0b00829b139fe0fe5a1e13"><div class="ttname"><a href="a00299.html#ga0cc5ad970d0b00829b139fe0fe5a1e13">glm::roll</a></div><div class="ttdeci">GLM_FUNC_DECL T roll(qua&lt; T, Q &gt; const &amp;x)</div><div class="ttdoc">Returns roll value of euler angles expressed in radians. </div></div>
-<div class="ttc" id="a00319_html_gafba6282e4ed3ff8b5c75331abfba3489"><div class="ttname"><a href="a00319.html#gafba6282e4ed3ff8b5c75331abfba3489">glm::eulerAngleX</a></div><div class="ttdeci">GLM_FUNC_DECL mat&lt; 4, 4, T, defaultp &gt; eulerAngleX(T const &amp;angleX)</div><div class="ttdoc">Creates a 3D 4 * 4 homogeneous rotation matrix from an euler angle X. </div></div>
-<div class="ttc" id="a00319_html_gae16738a9f1887cf4e4db6a124637608d"><div class="ttname"><a href="a00319.html#gae16738a9f1887cf4e4db6a124637608d">glm::orientate2</a></div><div class="ttdeci">GLM_FUNC_DECL mat&lt; 2, 2, T, defaultp &gt; orientate2(T const &amp;angle)</div><div class="ttdoc">Creates a 2D 2 * 2 rotation matrix from an euler angle. </div></div>
-<div class="ttc" id="a00319_html_ga29bd0787a28a6648159c0d6e69706066"><div class="ttname"><a href="a00319.html#ga29bd0787a28a6648159c0d6e69706066">glm::eulerAngleXYX</a></div><div class="ttdeci">GLM_FUNC_DECL mat&lt; 4, 4, T, defaultp &gt; eulerAngleXYX(T const &amp;t1, T const &amp;t2, T const &amp;t3)</div><div class="ttdoc">Creates a 3D 4 * 4 homogeneous rotation matrix from euler angles (X * Y * X). </div></div>
-<div class="ttc" id="a00319_html_gab8ba99a9814f6d9edf417b6c6d5b0c10"><div class="ttname"><a href="a00319.html#gab8ba99a9814f6d9edf417b6c6d5b0c10">glm::eulerAngleYXZ</a></div><div class="ttdeci">GLM_FUNC_DECL mat&lt; 4, 4, T, defaultp &gt; eulerAngleYXZ(T const &amp;yaw, T const &amp;pitch, T const &amp;roll)</div><div class="ttdoc">Creates a 3D 4 * 4 homogeneous rotation matrix from euler angles (Y * X * Z). </div></div>
-<div class="ttc" id="a00319_html_gacf0bc6c031f25fa3ee0055b62c8260d0"><div class="ttname"><a href="a00319.html#gacf0bc6c031f25fa3ee0055b62c8260d0">glm::extractEulerAngleXZX</a></div><div class="ttdeci">GLM_FUNC_DECL void extractEulerAngleXZX(mat&lt; 4, 4, T, defaultp &gt; const &amp;M, T &amp;t1, T &amp;t2, T &amp;t3)</div><div class="ttdoc">Extracts the (X * Z * X) Euler angles from the rotation matrix M. </div></div>
-<div class="ttc" id="a00299_html_ga8da38cdfdc452dafa660c2f46506bad5"><div class="ttname"><a href="a00299.html#ga8da38cdfdc452dafa660c2f46506bad5">glm::yaw</a></div><div class="ttdeci">GLM_FUNC_DECL T yaw(qua&lt; T, Q &gt; const &amp;x)</div><div class="ttdoc">Returns yaw value of euler angles expressed in radians. </div></div>
-<div class="ttc" id="a00319_html_gaab8868556361a190db94374e9983ed39"><div class="ttname"><a href="a00319.html#gaab8868556361a190db94374e9983ed39">glm::extractEulerAngleYXY</a></div><div class="ttdeci">GLM_FUNC_DECL void extractEulerAngleYXY(mat&lt; 4, 4, T, defaultp &gt; const &amp;M, T &amp;t1, T &amp;t2, T &amp;t3)</div><div class="ttdoc">Extracts the (Y * X * Y) Euler angles from the rotation matrix M. </div></div>
-<div class="ttc" id="a00319_html_ga81fbbca2ba0c778b9662d5355b4e2363"><div class="ttname"><a href="a00319.html#ga81fbbca2ba0c778b9662d5355b4e2363">glm::extractEulerAngleZXY</a></div><div class="ttdeci">GLM_FUNC_DECL void extractEulerAngleZXY(mat&lt; 4, 4, T, defaultp &gt; const &amp;M, T &amp;t1, T &amp;t2, T &amp;t3)</div><div class="ttdoc">Extracts the (Z * X * Y) Euler angles from the rotation matrix M. </div></div>
-<div class="ttc" id="a00319_html_gabe5a65d8eb1cd873c8de121cce1a15ed"><div class="ttname"><a href="a00319.html#gabe5a65d8eb1cd873c8de121cce1a15ed">glm::extractEulerAngleXZY</a></div><div class="ttdeci">GLM_FUNC_DECL void extractEulerAngleXZY(mat&lt; 4, 4, T, defaultp &gt; const &amp;M, T &amp;t1, T &amp;t2, T &amp;t3)</div><div class="ttdoc">Extracts the (X * Z * Y) Euler angles from the rotation matrix M. </div></div>
-<div class="ttc" id="a00319_html_ga9049b78466796c0de2971756e25b93d3"><div class="ttname"><a href="a00319.html#ga9049b78466796c0de2971756e25b93d3">glm::extractEulerAngleYZX</a></div><div class="ttdeci">GLM_FUNC_DECL void extractEulerAngleYZX(mat&lt; 4, 4, T, defaultp &gt; const &amp;M, T &amp;t1, T &amp;t2, T &amp;t3)</div><div class="ttdoc">Extracts the (Y * Z * X) Euler angles from the rotation matrix M. </div></div>
-<div class="ttc" id="a00319_html_ga60171c79a17aec85d7891ae1d1533ec9"><div class="ttname"><a href="a00319.html#ga60171c79a17aec85d7891ae1d1533ec9">glm::eulerAngleXZX</a></div><div class="ttdeci">GLM_FUNC_DECL mat&lt; 4, 4, T, defaultp &gt; eulerAngleXZX(T const &amp;t1, T const &amp;t2, T const &amp;t3)</div><div class="ttdoc">Creates a 3D 4 * 4 homogeneous rotation matrix from euler angles (X * Z * X). </div></div>
-<div class="ttc" id="a00319_html_ga2e61f1e39069c47530acab9167852dd6"><div class="ttname"><a href="a00319.html#ga2e61f1e39069c47530acab9167852dd6">glm::eulerAngleZYX</a></div><div class="ttdeci">GLM_FUNC_DECL mat&lt; 4, 4, T, defaultp &gt; eulerAngleZYX(T const &amp;t1, T const &amp;t2, T const &amp;t3)</div><div class="ttdoc">Creates a 3D 4 * 4 homogeneous rotation matrix from euler angles (Z * Y * X). </div></div>
-<div class="ttc" id="a00319_html_ga4a044653f71a4ecec68e0b623382b48a"><div class="ttname"><a href="a00319.html#ga4a044653f71a4ecec68e0b623382b48a">glm::orientate4</a></div><div class="ttdeci">GLM_FUNC_DECL mat&lt; 4, 4, T, Q &gt; orientate4(vec&lt; 3, T, Q &gt; const &amp;angles)</div><div class="ttdoc">Creates a 3D 4 * 4 homogeneous rotation matrix from euler angles (Y * X * Z). </div></div>
-<div class="ttc" id="a00319_html_ga2d6c11a4abfa60c565483cee2d3f7665"><div class="ttname"><a href="a00319.html#ga2d6c11a4abfa60c565483cee2d3f7665">glm::extractEulerAngleZYX</a></div><div class="ttdeci">GLM_FUNC_DECL void extractEulerAngleZYX(mat&lt; 4, 4, T, defaultp &gt; const &amp;M, T &amp;t1, T &amp;t2, T &amp;t3)</div><div class="ttdoc">Extracts the (Z * Y * X) Euler angles from the rotation matrix M. </div></div>
-<div class="ttc" id="a00319_html_ga5b3935248bb6c3ec6b0d9297d406e251"><div class="ttname"><a href="a00319.html#ga5b3935248bb6c3ec6b0d9297d406e251">glm::eulerAngleZ</a></div><div class="ttdeci">GLM_FUNC_DECL mat&lt; 4, 4, T, defaultp &gt; eulerAngleZ(T const &amp;angleZ)</div><div class="ttdoc">Creates a 3D 4 * 4 homogeneous rotation matrix from an euler angle Z. </div></div>
-<div class="ttc" id="a00319_html_ga750fba9894117f87bcc529d7349d11de"><div class="ttname"><a href="a00319.html#ga750fba9894117f87bcc529d7349d11de">glm::eulerAngleYXY</a></div><div class="ttdeci">GLM_FUNC_DECL mat&lt; 4, 4, T, defaultp &gt; eulerAngleYXY(T const &amp;t1, T const &amp;t2, T const &amp;t3)</div><div class="ttdoc">Creates a 3D 4 * 4 homogeneous rotation matrix from euler angles (Y * X * Y). </div></div>
-<div class="ttc" id="a00319_html_ga11dad972c109e4bf8694c915017c44a6"><div class="ttname"><a href="a00319.html#ga11dad972c109e4bf8694c915017c44a6">glm::extractEulerAngleYZY</a></div><div class="ttdeci">GLM_FUNC_DECL void extractEulerAngleYZY(mat&lt; 4, 4, T, defaultp &gt; const &amp;M, T &amp;t1, T &amp;t2, T &amp;t3)</div><div class="ttdoc">Extracts the (Y * Z * Y) Euler angles from the rotation matrix M. </div></div>
-<div class="ttc" id="a00319_html_gae6aa26ccb020d281b449619e419a609e"><div class="ttname"><a href="a00319.html#gae6aa26ccb020d281b449619e419a609e">glm::yawPitchRoll</a></div><div class="ttdeci">GLM_FUNC_DECL mat&lt; 4, 4, T, defaultp &gt; yawPitchRoll(T const &amp;yaw, T const &amp;pitch, T const &amp;roll)</div><div class="ttdoc">Creates a 3D 4 * 4 homogeneous rotation matrix from euler angles (Y * X * Z). </div></div>
-<div class="ttc" id="a00319_html_gaa39bd323c65c2fc0a1508be33a237ce9"><div class="ttname"><a href="a00319.html#gaa39bd323c65c2fc0a1508be33a237ce9">glm::eulerAngleXZ</a></div><div class="ttdeci">GLM_FUNC_DECL mat&lt; 4, 4, T, defaultp &gt; eulerAngleXZ(T const &amp;angleX, T const &amp;angleZ)</div><div class="ttdoc">Creates a 3D 4 * 4 homogeneous rotation matrix from euler angles (X * Z). </div></div>
-<div class="ttc" id="a00319_html_gacea701562f778c1da4d3a0a1cf091000"><div class="ttname"><a href="a00319.html#gacea701562f778c1da4d3a0a1cf091000">glm::extractEulerAngleXYZ</a></div><div class="ttdeci">GLM_FUNC_DECL void extractEulerAngleXYZ(mat&lt; 4, 4, T, defaultp &gt; const &amp;M, T &amp;t1, T &amp;t2, T &amp;t3)</div><div class="ttdoc">Extracts the (X * Y * Z) Euler angles from the rotation matrix M. </div></div>
-<div class="ttc" id="a00319_html_ga178f966c52b01e4d65e31ebd007e3247"><div class="ttname"><a href="a00319.html#ga178f966c52b01e4d65e31ebd007e3247">glm::eulerAngleZXZ</a></div><div class="ttdeci">GLM_FUNC_DECL mat&lt; 4, 4, T, defaultp &gt; eulerAngleZXZ(T const &amp;t1, T const &amp;t2, T const &amp;t3)</div><div class="ttdoc">Creates a 3D 4 * 4 homogeneous rotation matrix from euler angles (Z * X * Z). </div></div>
-<div class="ttc" id="a00319_html_ga08bef16357b8f9b3051b3dcaec4b7848"><div class="ttname"><a href="a00319.html#ga08bef16357b8f9b3051b3dcaec4b7848">glm::eulerAngleYZX</a></div><div class="ttdeci">GLM_FUNC_DECL mat&lt; 4, 4, T, defaultp &gt; eulerAngleYZX(T const &amp;t1, T const &amp;t2, T const &amp;t3)</div><div class="ttdoc">Creates a 3D 4 * 4 homogeneous rotation matrix from euler angles (Y * Z * X). </div></div>
-<div class="ttc" id="a00319_html_ga400b2bd5984999efab663f3a68e1d020"><div class="ttname"><a href="a00319.html#ga400b2bd5984999efab663f3a68e1d020">glm::eulerAngleZY</a></div><div class="ttdeci">GLM_FUNC_DECL mat&lt; 4, 4, T, defaultp &gt; eulerAngleZY(T const &amp;angleZ, T const &amp;angleY)</div><div class="ttdoc">Creates a 3D 4 * 4 homogeneous rotation matrix from euler angles (Z * Y). </div></div>
-<div class="ttc" id="a00319_html_gacd795f1dbecaf74974f9c76bbcca6830"><div class="ttname"><a href="a00319.html#gacd795f1dbecaf74974f9c76bbcca6830">glm::eulerAngleZYZ</a></div><div class="ttdeci">GLM_FUNC_DECL mat&lt; 4, 4, T, defaultp &gt; eulerAngleZYZ(T const &amp;t1, T const &amp;t2, T const &amp;t3)</div><div class="ttdoc">Creates a 3D 4 * 4 homogeneous rotation matrix from euler angles (Z * Y * Z). </div></div>
-<div class="ttc" id="a00319_html_ga220379e10ac8cca55e275f0c9018fed9"><div class="ttname"><a href="a00319.html#ga220379e10ac8cca55e275f0c9018fed9">glm::eulerAngleYZ</a></div><div class="ttdeci">GLM_FUNC_DECL mat&lt; 4, 4, T, defaultp &gt; eulerAngleYZ(T const &amp;angleY, T const &amp;angleZ)</div><div class="ttdoc">Creates a 3D 4 * 4 homogeneous rotation matrix from euler angles (Y * Z). </div></div>
-<div class="ttc" id="a00319_html_ga7238c8e15c7720e3ca6a45ab151eeabb"><div class="ttname"><a href="a00319.html#ga7238c8e15c7720e3ca6a45ab151eeabb">glm::orientate3</a></div><div class="ttdeci">GLM_FUNC_DECL mat&lt; 3, 3, T, Q &gt; orientate3(vec&lt; 3, T, Q &gt; const &amp;angles)</div><div class="ttdoc">Creates a 3D 3 * 3 rotation matrix from euler angles (Y * X * Z). </div></div>
-<div class="ttc" id="a00319_html_ga59359fef9bad92afaca55e193f91e702"><div class="ttname"><a href="a00319.html#ga59359fef9bad92afaca55e193f91e702">glm::extractEulerAngleZXZ</a></div><div class="ttdeci">GLM_FUNC_DECL void extractEulerAngleZXZ(mat&lt; 4, 4, T, defaultp &gt; const &amp;M, T &amp;t1, T &amp;t2, T &amp;t3)</div><div class="ttdoc">Extracts the (Z * X * Z) Euler angles from the rotation matrix M. </div></div>
-<div class="ttc" id="a00319_html_ga0a4c56ecce7abcb69508ebe6313e9d10"><div class="ttname"><a href="a00319.html#ga0a4c56ecce7abcb69508ebe6313e9d10">glm::derivedEulerAngleY</a></div><div class="ttdeci">GLM_FUNC_DECL mat&lt; 4, 4, T, defaultp &gt; derivedEulerAngleY(T const &amp;angleY, T const &amp;angularVelocityY)</div><div class="ttdoc">Creates a 3D 4 * 4 homogeneous derived matrix from the rotation matrix about Y-axis. </div></div>
-<div class="ttc" id="a00299_html_ga7603e81477b46ddb448896909bc04928"><div class="ttname"><a href="a00299.html#ga7603e81477b46ddb448896909bc04928">glm::pitch</a></div><div class="ttdeci">GLM_FUNC_DECL T pitch(qua&lt; T, Q &gt; const &amp;x)</div><div class="ttdoc">Returns pitch value of euler angles expressed in radians. </div></div>
-<div class="ttc" id="a00319_html_ga483903115cd4059228961046a28d69b5"><div class="ttname"><a href="a00319.html#ga483903115cd4059228961046a28d69b5">glm::eulerAngleZX</a></div><div class="ttdeci">GLM_FUNC_DECL mat&lt; 4, 4, T, defaultp &gt; eulerAngleZX(T const &amp;angle, T const &amp;angleX)</div><div class="ttdoc">Creates a 3D 4 * 4 homogeneous rotation matrix from euler angles (Z * X). </div></div>
-<div class="ttc" id="a00236_html"><div class="ttname"><a href="a00236.html">glm</a></div><div class="ttdef"><b>Definition:</b> <a href="a00015_source.html#l00020">common.hpp:20</a></div></div>
-</div><!-- fragment --></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.10
-</small></address>
-</body>
-</html>

+ 0 - 143
doc/api/a00026.html

@@ -1,143 +0,0 @@
-<!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.10"/>
-<title>0.9.9 API documentation: exponential.hpp File Reference</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="search/search.css" rel="stylesheet" type="text/css"/>
-<script type="text/javascript" src="search/searchdata.js"></script>
-<script type="text/javascript" src="search/search.js"></script>
-<script type="text/javascript">
-  $(document).ready(function() { init_search(); });
-</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 id="projectlogo"><img alt="Logo" src="logo-mini.png"/></td>
-  <td id="projectalign" style="padding-left: 0.5em;">
-   <div id="projectname">0.9.9 API documentation
-   </div>
-  </td>
- </tr>
- </tbody>
-</table>
-</div>
-<!-- end header part -->
-<!-- Generated by Doxygen 1.8.10 -->
-<script type="text/javascript">
-var searchBox = new SearchBox("searchBox", "search",false,'Search');
-</script>
-  <div id="navrow1" class="tabs">
-    <ul class="tablist">
-      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
-      <li><a href="modules.html"><span>Modules</span></a></li>
-      <li class="current"><a href="files.html"><span>Files</span></a></li>
-      <li>
-        <div id="MSearchBox" class="MSearchBoxInactive">
-        <span class="left">
-          <img id="MSearchSelect" src="search/mag_sel.png"
-               onmouseover="return searchBox.OnSearchSelectShow()"
-               onmouseout="return searchBox.OnSearchSelectHide()"
-               alt=""/>
-          <input type="text" id="MSearchField" value="Search" accesskey="S"
-               onfocus="searchBox.OnSearchFieldFocus(true)" 
-               onblur="searchBox.OnSearchFieldFocus(false)" 
-               onkeyup="searchBox.OnSearchFieldChange(event)"/>
-          </span><span class="right">
-            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
-          </span>
-        </div>
-      </li>
-    </ul>
-  </div>
-  <div id="navrow2" class="tabs2">
-    <ul class="tablist">
-      <li><a href="files.html"><span>File&#160;List</span></a></li>
-    </ul>
-  </div>
-<!-- window showing the filter options -->
-<div id="MSearchSelectWindow"
-     onmouseover="return searchBox.OnSearchSelectShow()"
-     onmouseout="return searchBox.OnSearchSelectHide()"
-     onkeydown="return searchBox.OnSearchSelectKey(event)">
-</div>
-
-<!-- iframe showing the search results (closed by default) -->
-<div id="MSearchResultsWindow">
-<iframe src="javascript:void(0)" frameborder="0" 
-        name="MSearchResults" id="MSearchResults">
-</iframe>
-</div>
-
-<div id="nav-path" class="navpath">
-  <ul>
-<li class="navelem"><a class="el" href="dir_3a581ba30d25676e4b797b1f96d53b45.html">F:</a></li><li class="navelem"><a class="el" href="dir_9e5fe034a00e89334fd5186c3e7db156.html">G-Truc</a></li><li class="navelem"><a class="el" href="dir_d9496f0844b48bc7e53b5af8c99b9ab2.html">Source</a></li><li class="navelem"><a class="el" href="dir_a8bee7be44182a33f3820393ae0b105d.html">G-Truc</a></li><li class="navelem"><a class="el" href="dir_44e5e654415abd9ca6fdeaddaff8565e.html">glm</a></li><li class="navelem"><a class="el" href="dir_cef2d71d502cb69a9252bca2297d9549.html">glm</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">exponential.hpp File Reference</div>  </div>
-</div><!--header-->
-<div class="contents">
-
-<p><a class="el" href="a00280.html">Core features</a>  
-<a href="#details">More...</a></p>
-
-<p><a href="a00026_source.html">Go to the source code of this file.</a></p>
-<table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
-Functions</h2></td></tr>
-<tr class="memitem:ga071566cadc7505455e611f2a0353f4d4"><td class="memTemplParams" colspan="2">template&lt;length_t L, typename T , qualifier Q&gt; </td></tr>
-<tr class="memitem:ga071566cadc7505455e611f2a0353f4d4"><td class="memTemplItemLeft" align="right" valign="top">GLM_FUNC_DECL vec&lt; L, T, Q &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00242.html#ga071566cadc7505455e611f2a0353f4d4">exp</a> (vec&lt; L, T, Q &gt; const &amp;v)</td></tr>
-<tr class="memdesc:ga071566cadc7505455e611f2a0353f4d4"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the natural exponentiation of x, i.e., e^x.  <a href="a00242.html#ga071566cadc7505455e611f2a0353f4d4">More...</a><br /></td></tr>
-<tr class="separator:ga071566cadc7505455e611f2a0353f4d4"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:gaff17ace6b579a03bf223ed4d1ed2cd16"><td class="memTemplParams" colspan="2">template&lt;length_t L, typename T , qualifier Q&gt; </td></tr>
-<tr class="memitem:gaff17ace6b579a03bf223ed4d1ed2cd16"><td class="memTemplItemLeft" align="right" valign="top">GLM_FUNC_DECL vec&lt; L, T, Q &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00242.html#gaff17ace6b579a03bf223ed4d1ed2cd16">exp2</a> (vec&lt; L, T, Q &gt; const &amp;v)</td></tr>
-<tr class="memdesc:gaff17ace6b579a03bf223ed4d1ed2cd16"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns 2 raised to the v power.  <a href="a00242.html#gaff17ace6b579a03bf223ed4d1ed2cd16">More...</a><br /></td></tr>
-<tr class="separator:gaff17ace6b579a03bf223ed4d1ed2cd16"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:ga523dd6bd0ad9f75ae2d24c8e4b017b7a"><td class="memTemplParams" colspan="2">template&lt;length_t L, typename T , qualifier Q&gt; </td></tr>
-<tr class="memitem:ga523dd6bd0ad9f75ae2d24c8e4b017b7a"><td class="memTemplItemLeft" align="right" valign="top">GLM_FUNC_DECL vec&lt; L, T, Q &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00242.html#ga523dd6bd0ad9f75ae2d24c8e4b017b7a">inversesqrt</a> (vec&lt; L, T, Q &gt; const &amp;v)</td></tr>
-<tr class="memdesc:ga523dd6bd0ad9f75ae2d24c8e4b017b7a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the reciprocal of the positive square root of v.  <a href="a00242.html#ga523dd6bd0ad9f75ae2d24c8e4b017b7a">More...</a><br /></td></tr>
-<tr class="separator:ga523dd6bd0ad9f75ae2d24c8e4b017b7a"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:ga918c9f3fd086ce20e6760c903bd30fa9"><td class="memTemplParams" colspan="2">template&lt;length_t L, typename T , qualifier Q&gt; </td></tr>
-<tr class="memitem:ga918c9f3fd086ce20e6760c903bd30fa9"><td class="memTemplItemLeft" align="right" valign="top">GLM_FUNC_DECL vec&lt; L, T, Q &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00242.html#ga918c9f3fd086ce20e6760c903bd30fa9">log</a> (vec&lt; L, T, Q &gt; const &amp;v)</td></tr>
-<tr class="memdesc:ga918c9f3fd086ce20e6760c903bd30fa9"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the natural logarithm of v, i.e., returns the value y which satisfies the equation x = e^y.  <a href="a00242.html#ga918c9f3fd086ce20e6760c903bd30fa9">More...</a><br /></td></tr>
-<tr class="separator:ga918c9f3fd086ce20e6760c903bd30fa9"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:ga82831c7d9cca777cebedfe03a19c8d75"><td class="memTemplParams" colspan="2">template&lt;length_t L, typename T , qualifier Q&gt; </td></tr>
-<tr class="memitem:ga82831c7d9cca777cebedfe03a19c8d75"><td class="memTemplItemLeft" align="right" valign="top">GLM_FUNC_DECL vec&lt; L, T, Q &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00242.html#ga82831c7d9cca777cebedfe03a19c8d75">log2</a> (vec&lt; L, T, Q &gt; const &amp;v)</td></tr>
-<tr class="memdesc:ga82831c7d9cca777cebedfe03a19c8d75"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the base 2 log of x, i.e., returns the value y, which satisfies the equation x = 2 ^ y.  <a href="a00242.html#ga82831c7d9cca777cebedfe03a19c8d75">More...</a><br /></td></tr>
-<tr class="separator:ga82831c7d9cca777cebedfe03a19c8d75"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:ga2254981952d4f333b900a6bf5167a6c4"><td class="memTemplParams" colspan="2">template&lt;length_t L, typename T , qualifier Q&gt; </td></tr>
-<tr class="memitem:ga2254981952d4f333b900a6bf5167a6c4"><td class="memTemplItemLeft" align="right" valign="top">GLM_FUNC_DECL vec&lt; L, T, Q &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00242.html#ga2254981952d4f333b900a6bf5167a6c4">pow</a> (vec&lt; L, T, Q &gt; const &amp;base, vec&lt; L, T, Q &gt; const &amp;exponent)</td></tr>
-<tr class="memdesc:ga2254981952d4f333b900a6bf5167a6c4"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns 'base' raised to the power 'exponent'.  <a href="a00242.html#ga2254981952d4f333b900a6bf5167a6c4">More...</a><br /></td></tr>
-<tr class="separator:ga2254981952d4f333b900a6bf5167a6c4"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:gaa83e5f1648b7ccdf33b87c07c76cb77c"><td class="memTemplParams" colspan="2">template&lt;length_t L, typename T , qualifier Q&gt; </td></tr>
-<tr class="memitem:gaa83e5f1648b7ccdf33b87c07c76cb77c"><td class="memTemplItemLeft" align="right" valign="top">GLM_FUNC_DECL vec&lt; L, T, Q &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00242.html#gaa83e5f1648b7ccdf33b87c07c76cb77c">sqrt</a> (vec&lt; L, T, Q &gt; const &amp;v)</td></tr>
-<tr class="memdesc:gaa83e5f1648b7ccdf33b87c07c76cb77c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the positive square root of v.  <a href="a00242.html#gaa83e5f1648b7ccdf33b87c07c76cb77c">More...</a><br /></td></tr>
-<tr class="separator:gaa83e5f1648b7ccdf33b87c07c76cb77c"><td class="memSeparator" colspan="2">&#160;</td></tr>
-</table>
-<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
-<div class="textblock"><p><a class="el" href="a00280.html">Core features</a> </p>
-<dl class="section see"><dt>See also</dt><dd><a href="http://www.opengl.org/registry/doc/GLSLangSpec.4.20.8.pdf">GLSL 4.20.8 specification, section 8.2 Exponential Functions</a> </dd></dl>
-
-<p>Definition in file <a class="el" href="a00026_source.html">exponential.hpp</a>.</p>
-</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.10
-</small></address>
-</body>
-</html>

+ 51 - 87
doc/api/a00026_source.html

@@ -1,19 +1,17 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://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.10"/>
-<title>0.9.9 API documentation: exponential.hpp Source File</title>
+<meta name="generator" content="Doxygen 1.8.18"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>1.0.0 API documentation: compute_vector_relational.hpp Source File</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="search/search.css" rel="stylesheet" type="text/css"/>
 <script type="text/javascript" src="search/searchdata.js"></script>
 <script type="text/javascript" src="search/search.js"></script>
-<script type="text/javascript">
-  $(document).ready(function() { init_search(); });
-</script>
 <link href="doxygen.css" rel="stylesheet" type="text/css" />
 </head>
 <body>
@@ -24,7 +22,7 @@
  <tr style="height: 56px;">
   <td id="projectlogo"><img alt="Logo" src="logo-mini.png"/></td>
   <td id="projectalign" style="padding-left: 0.5em;">
-   <div id="projectname">0.9.9 API documentation
+   <div id="projectname">1.0.0 API documentation
    </div>
   </td>
  </tr>
@@ -32,38 +30,22 @@
 </table>
 </div>
 <!-- end header part -->
-<!-- Generated by Doxygen 1.8.10 -->
+<!-- Generated by Doxygen 1.8.18 -->
 <script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
 var searchBox = new SearchBox("searchBox", "search",false,'Search');
+/* @license-end */
 </script>
-  <div id="navrow1" class="tabs">
-    <ul class="tablist">
-      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
-      <li><a href="modules.html"><span>Modules</span></a></li>
-      <li class="current"><a href="files.html"><span>Files</span></a></li>
-      <li>
-        <div id="MSearchBox" class="MSearchBoxInactive">
-        <span class="left">
-          <img id="MSearchSelect" src="search/mag_sel.png"
-               onmouseover="return searchBox.OnSearchSelectShow()"
-               onmouseout="return searchBox.OnSearchSelectHide()"
-               alt=""/>
-          <input type="text" id="MSearchField" value="Search" accesskey="S"
-               onfocus="searchBox.OnSearchFieldFocus(true)" 
-               onblur="searchBox.OnSearchFieldFocus(false)" 
-               onkeyup="searchBox.OnSearchFieldChange(event)"/>
-          </span><span class="right">
-            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
-          </span>
-        </div>
-      </li>
-    </ul>
-  </div>
-  <div id="navrow2" class="tabs2">
-    <ul class="tablist">
-      <li><a href="files.html"><span>File&#160;List</span></a></li>
-    </ul>
-  </div>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
 <!-- window showing the filter options -->
 <div id="MSearchSelectWindow"
      onmouseover="return searchBox.OnSearchSelectShow()"
@@ -80,68 +62,50 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 
 <div id="nav-path" class="navpath">
   <ul>
-<li class="navelem"><a class="el" href="dir_3a581ba30d25676e4b797b1f96d53b45.html">F:</a></li><li class="navelem"><a class="el" href="dir_9e5fe034a00e89334fd5186c3e7db156.html">G-Truc</a></li><li class="navelem"><a class="el" href="dir_d9496f0844b48bc7e53b5af8c99b9ab2.html">Source</a></li><li class="navelem"><a class="el" href="dir_a8bee7be44182a33f3820393ae0b105d.html">G-Truc</a></li><li class="navelem"><a class="el" href="dir_44e5e654415abd9ca6fdeaddaff8565e.html">glm</a></li><li class="navelem"><a class="el" href="dir_cef2d71d502cb69a9252bca2297d9549.html">glm</a></li>  </ul>
+<li class="navelem"><a class="el" href="dir_885cc87fac2d91e269af0a5a959fa5f6.html">E:</a></li><li class="navelem"><a class="el" href="dir_63ed049134a778d525e06b63afc2c979.html">Github</a></li><li class="navelem"><a class="el" href="dir_c98a9ac98258ab9f831b188d66361a70.html">g-truc</a></li><li class="navelem"><a class="el" href="dir_50f12b6ceb23d7f6adfb377a1ae8b006.html">glm</a></li><li class="navelem"><a class="el" href="dir_fca33f1b5115d46f42c670590789c0d2.html">glm</a></li><li class="navelem"><a class="el" href="dir_382f4fd018b81be8753cb53c0a41a09a.html">detail</a></li>  </ul>
 </div>
 </div><!-- top -->
 <div class="header">
   <div class="headertitle">
-<div class="title">exponential.hpp</div>  </div>
+<div class="title">compute_vector_relational.hpp</div>  </div>
 </div><!--header-->
 <div class="contents">
-<a href="a00026.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span>&#160;</div>
-<div class="line"><a name="l00015"></a><span class="lineno">   15</span>&#160;<span class="preprocessor">#pragma once</span></div>
-<div class="line"><a name="l00016"></a><span class="lineno">   16</span>&#160;</div>
-<div class="line"><a name="l00017"></a><span class="lineno">   17</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="a00178.html">detail/type_vec1.hpp</a>&quot;</span></div>
-<div class="line"><a name="l00018"></a><span class="lineno">   18</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="a00179.html">detail/type_vec2.hpp</a>&quot;</span></div>
-<div class="line"><a name="l00019"></a><span class="lineno">   19</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="a00180.html">detail/type_vec3.hpp</a>&quot;</span></div>
-<div class="line"><a name="l00020"></a><span class="lineno">   20</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="a00181.html">detail/type_vec4.hpp</a>&quot;</span></div>
-<div class="line"><a name="l00021"></a><span class="lineno">   21</span>&#160;<span class="preprocessor">#include &lt;cmath&gt;</span></div>
-<div class="line"><a name="l00022"></a><span class="lineno">   22</span>&#160;</div>
-<div class="line"><a name="l00023"></a><span class="lineno">   23</span>&#160;<span class="keyword">namespace </span><a class="code" href="a00236.html">glm</a></div>
-<div class="line"><a name="l00024"></a><span class="lineno">   24</span>&#160;{</div>
-<div class="line"><a name="l00027"></a><span class="lineno">   27</span>&#160;</div>
-<div class="line"><a name="l00035"></a><span class="lineno">   35</span>&#160;        <span class="keyword">template</span>&lt;length_t L, <span class="keyword">typename</span> T, qualifier Q&gt;</div>
-<div class="line"><a name="l00036"></a><span class="lineno">   36</span>&#160;        GLM_FUNC_DECL vec&lt;L, T, Q&gt; <a class="code" href="a00242.html#ga2254981952d4f333b900a6bf5167a6c4">pow</a>(vec&lt;L, T, Q&gt; <span class="keyword">const</span>&amp; base, vec&lt;L, T, Q&gt; <span class="keyword">const</span>&amp; exponent);</div>
-<div class="line"><a name="l00037"></a><span class="lineno">   37</span>&#160;</div>
-<div class="line"><a name="l00046"></a><span class="lineno">   46</span>&#160;        <span class="keyword">template</span>&lt;length_t L, <span class="keyword">typename</span> T, qualifier Q&gt;</div>
-<div class="line"><a name="l00047"></a><span class="lineno">   47</span>&#160;        GLM_FUNC_DECL vec&lt;L, T, Q&gt; <a class="code" href="a00242.html#ga071566cadc7505455e611f2a0353f4d4">exp</a>(vec&lt;L, T, Q&gt; <span class="keyword">const</span>&amp; v);</div>
-<div class="line"><a name="l00048"></a><span class="lineno">   48</span>&#160;</div>
-<div class="line"><a name="l00059"></a><span class="lineno">   59</span>&#160;        <span class="keyword">template</span>&lt;length_t L, <span class="keyword">typename</span> T, qualifier Q&gt;</div>
-<div class="line"><a name="l00060"></a><span class="lineno">   60</span>&#160;        GLM_FUNC_DECL vec&lt;L, T, Q&gt; <a class="code" href="a00242.html#ga918c9f3fd086ce20e6760c903bd30fa9">log</a>(vec&lt;L, T, Q&gt; <span class="keyword">const</span>&amp; v);</div>
-<div class="line"><a name="l00061"></a><span class="lineno">   61</span>&#160;</div>
-<div class="line"><a name="l00070"></a><span class="lineno">   70</span>&#160;        <span class="keyword">template</span>&lt;length_t L, <span class="keyword">typename</span> T, qualifier Q&gt;</div>
-<div class="line"><a name="l00071"></a><span class="lineno">   71</span>&#160;        GLM_FUNC_DECL vec&lt;L, T, Q&gt; <a class="code" href="a00242.html#gaff17ace6b579a03bf223ed4d1ed2cd16">exp2</a>(vec&lt;L, T, Q&gt; <span class="keyword">const</span>&amp; v);</div>
-<div class="line"><a name="l00072"></a><span class="lineno">   72</span>&#160;</div>
-<div class="line"><a name="l00082"></a><span class="lineno">   82</span>&#160;        <span class="keyword">template</span>&lt;length_t L, <span class="keyword">typename</span> T, qualifier Q&gt;</div>
-<div class="line"><a name="l00083"></a><span class="lineno">   83</span>&#160;        GLM_FUNC_DECL vec&lt;L, T, Q&gt; <a class="code" href="a00242.html#ga82831c7d9cca777cebedfe03a19c8d75">log2</a>(vec&lt;L, T, Q&gt; <span class="keyword">const</span>&amp; v);</div>
-<div class="line"><a name="l00084"></a><span class="lineno">   84</span>&#160;</div>
-<div class="line"><a name="l00093"></a><span class="lineno">   93</span>&#160;        <span class="keyword">template</span>&lt;length_t L, <span class="keyword">typename</span> T, qualifier Q&gt;</div>
-<div class="line"><a name="l00094"></a><span class="lineno">   94</span>&#160;        GLM_FUNC_DECL vec&lt;L, T, Q&gt; <a class="code" href="a00242.html#gaa83e5f1648b7ccdf33b87c07c76cb77c">sqrt</a>(vec&lt;L, T, Q&gt; <span class="keyword">const</span>&amp; v);</div>
-<div class="line"><a name="l00095"></a><span class="lineno">   95</span>&#160;</div>
-<div class="line"><a name="l00104"></a><span class="lineno">  104</span>&#160;        <span class="keyword">template</span>&lt;length_t L, <span class="keyword">typename</span> T, qualifier Q&gt;</div>
-<div class="line"><a name="l00105"></a><span class="lineno">  105</span>&#160;        GLM_FUNC_DECL vec&lt;L, T, Q&gt; <a class="code" href="a00242.html#ga523dd6bd0ad9f75ae2d24c8e4b017b7a">inversesqrt</a>(vec&lt;L, T, Q&gt; <span class="keyword">const</span>&amp; v);</div>
-<div class="line"><a name="l00106"></a><span class="lineno">  106</span>&#160;</div>
-<div class="line"><a name="l00108"></a><span class="lineno">  108</span>&#160;}<span class="comment">//namespace glm</span></div>
-<div class="line"><a name="l00109"></a><span class="lineno">  109</span>&#160;</div>
-<div class="line"><a name="l00110"></a><span class="lineno">  110</span>&#160;<span class="preprocessor">#include &quot;detail/func_exponential.inl&quot;</span></div>
-<div class="ttc" id="a00179_html"><div class="ttname"><a href="a00179.html">type_vec2.hpp</a></div><div class="ttdoc">Core features </div></div>
-<div class="ttc" id="a00242_html_gaa83e5f1648b7ccdf33b87c07c76cb77c"><div class="ttname"><a href="a00242.html#gaa83e5f1648b7ccdf33b87c07c76cb77c">glm::sqrt</a></div><div class="ttdeci">GLM_FUNC_DECL vec&lt; L, T, Q &gt; sqrt(vec&lt; L, T, Q &gt; const &amp;v)</div><div class="ttdoc">Returns the positive square root of v. </div></div>
-<div class="ttc" id="a00242_html_gaff17ace6b579a03bf223ed4d1ed2cd16"><div class="ttname"><a href="a00242.html#gaff17ace6b579a03bf223ed4d1ed2cd16">glm::exp2</a></div><div class="ttdeci">GLM_FUNC_DECL vec&lt; L, T, Q &gt; exp2(vec&lt; L, T, Q &gt; const &amp;v)</div><div class="ttdoc">Returns 2 raised to the v power. </div></div>
-<div class="ttc" id="a00242_html_ga523dd6bd0ad9f75ae2d24c8e4b017b7a"><div class="ttname"><a href="a00242.html#ga523dd6bd0ad9f75ae2d24c8e4b017b7a">glm::inversesqrt</a></div><div class="ttdeci">GLM_FUNC_DECL vec&lt; L, T, Q &gt; inversesqrt(vec&lt; L, T, Q &gt; const &amp;v)</div><div class="ttdoc">Returns the reciprocal of the positive square root of v. </div></div>
-<div class="ttc" id="a00181_html"><div class="ttname"><a href="a00181.html">type_vec4.hpp</a></div><div class="ttdoc">Core features </div></div>
-<div class="ttc" id="a00178_html"><div class="ttname"><a href="a00178.html">type_vec1.hpp</a></div><div class="ttdoc">Core features </div></div>
-<div class="ttc" id="a00242_html_ga2254981952d4f333b900a6bf5167a6c4"><div class="ttname"><a href="a00242.html#ga2254981952d4f333b900a6bf5167a6c4">glm::pow</a></div><div class="ttdeci">GLM_FUNC_DECL vec&lt; L, T, Q &gt; pow(vec&lt; L, T, Q &gt; const &amp;base, vec&lt; L, T, Q &gt; const &amp;exponent)</div><div class="ttdoc">Returns &#39;base&#39; raised to the power &#39;exponent&#39;. </div></div>
-<div class="ttc" id="a00242_html_ga071566cadc7505455e611f2a0353f4d4"><div class="ttname"><a href="a00242.html#ga071566cadc7505455e611f2a0353f4d4">glm::exp</a></div><div class="ttdeci">GLM_FUNC_DECL vec&lt; L, T, Q &gt; exp(vec&lt; L, T, Q &gt; const &amp;v)</div><div class="ttdoc">Returns the natural exponentiation of x, i.e., e^x. </div></div>
-<div class="ttc" id="a00242_html_ga918c9f3fd086ce20e6760c903bd30fa9"><div class="ttname"><a href="a00242.html#ga918c9f3fd086ce20e6760c903bd30fa9">glm::log</a></div><div class="ttdeci">GLM_FUNC_DECL vec&lt; L, T, Q &gt; log(vec&lt; L, T, Q &gt; const &amp;v)</div><div class="ttdoc">Returns the natural logarithm of v, i.e., returns the value y which satisfies the equation x = e^y...</div></div>
-<div class="ttc" id="a00180_html"><div class="ttname"><a href="a00180.html">type_vec3.hpp</a></div><div class="ttdoc">Core features </div></div>
-<div class="ttc" id="a00242_html_ga82831c7d9cca777cebedfe03a19c8d75"><div class="ttname"><a href="a00242.html#ga82831c7d9cca777cebedfe03a19c8d75">glm::log2</a></div><div class="ttdeci">GLM_FUNC_DECL vec&lt; L, T, Q &gt; log2(vec&lt; L, T, Q &gt; const &amp;v)</div><div class="ttdoc">Returns the base 2 log of x, i.e., returns the value y, which satisfies the equation x = 2 ^ y...</div></div>
-<div class="ttc" id="a00236_html"><div class="ttname"><a href="a00236.html">glm</a></div><div class="ttdef"><b>Definition:</b> <a href="a00015_source.html#l00020">common.hpp:20</a></div></div>
+<div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span>&#160;<span class="preprocessor">#pragma once</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno">    2</span>&#160; </div>
+<div class="line"><a name="l00003"></a><span class="lineno">    3</span>&#160;<span class="comment">//#include &quot;compute_common.hpp&quot;</span></div>
+<div class="line"><a name="l00004"></a><span class="lineno">    4</span>&#160;<span class="preprocessor">#include &quot;setup.hpp&quot;</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno">    5</span>&#160;<span class="preprocessor">#include &lt;limits&gt;</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno">    6</span>&#160; </div>
+<div class="line"><a name="l00007"></a><span class="lineno">    7</span>&#160;<span class="keyword">namespace </span>glm{</div>
+<div class="line"><a name="l00008"></a><span class="lineno">    8</span>&#160;<span class="keyword">namespace </span>detail</div>
+<div class="line"><a name="l00009"></a><span class="lineno">    9</span>&#160;{</div>
+<div class="line"><a name="l00010"></a><span class="lineno">   10</span>&#160;        <span class="keyword">template</span> &lt;<span class="keyword">typename</span> T, <span class="keywordtype">bool</span> isFloat&gt;</div>
+<div class="line"><a name="l00011"></a><span class="lineno">   11</span>&#160;        <span class="keyword">struct </span>compute_equal</div>
+<div class="line"><a name="l00012"></a><span class="lineno">   12</span>&#160;        {</div>
+<div class="line"><a name="l00013"></a><span class="lineno">   13</span>&#160;                GLM_FUNC_QUALIFIER GLM_CONSTEXPR <span class="keyword">static</span> <span class="keywordtype">bool</span> call(T a, T b)</div>
+<div class="line"><a name="l00014"></a><span class="lineno">   14</span>&#160;                {</div>
+<div class="line"><a name="l00015"></a><span class="lineno">   15</span>&#160;                        <span class="keywordflow">return</span> a == b;</div>
+<div class="line"><a name="l00016"></a><span class="lineno">   16</span>&#160;                }</div>
+<div class="line"><a name="l00017"></a><span class="lineno">   17</span>&#160;        };</div>
+<div class="line"><a name="l00018"></a><span class="lineno">   18</span>&#160;<span class="comment">/*</span></div>
+<div class="line"><a name="l00019"></a><span class="lineno">   19</span>&#160;<span class="comment">        template &lt;typename T&gt;</span></div>
+<div class="line"><a name="l00020"></a><span class="lineno">   20</span>&#160;<span class="comment">        struct compute_equal&lt;T, true&gt;</span></div>
+<div class="line"><a name="l00021"></a><span class="lineno">   21</span>&#160;<span class="comment">        {</span></div>
+<div class="line"><a name="l00022"></a><span class="lineno">   22</span>&#160;<span class="comment">                GLM_FUNC_QUALIFIER GLM_CONSTEXPR static bool call(T a, T b)</span></div>
+<div class="line"><a name="l00023"></a><span class="lineno">   23</span>&#160;<span class="comment">                {</span></div>
+<div class="line"><a name="l00024"></a><span class="lineno">   24</span>&#160;<span class="comment">                        return detail::compute_abs&lt;T, std::numeric_limits&lt;T&gt;::is_signed&gt;::call(b - a) &lt;= static_cast&lt;T&gt;(0);</span></div>
+<div class="line"><a name="l00025"></a><span class="lineno">   25</span>&#160;<span class="comment">                        //return std::memcmp(&amp;a, &amp;b, sizeof(T)) == 0;</span></div>
+<div class="line"><a name="l00026"></a><span class="lineno">   26</span>&#160;<span class="comment">                }</span></div>
+<div class="line"><a name="l00027"></a><span class="lineno">   27</span>&#160;<span class="comment">        };</span></div>
+<div class="line"><a name="l00028"></a><span class="lineno">   28</span>&#160;<span class="comment">*/</span></div>
+<div class="line"><a name="l00029"></a><span class="lineno">   29</span>&#160;}<span class="comment">//namespace detail</span></div>
+<div class="line"><a name="l00030"></a><span class="lineno">   30</span>&#160;}<span class="comment">//namespace glm</span></div>
 </div><!-- fragment --></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.10
+</a> 1.8.18
 </small></address>
 </body>
 </html>

+ 0 - 108
doc/api/a00027.html

@@ -1,108 +0,0 @@
-<!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.10"/>
-<title>0.9.9 API documentation: ext.hpp File Reference</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="search/search.css" rel="stylesheet" type="text/css"/>
-<script type="text/javascript" src="search/searchdata.js"></script>
-<script type="text/javascript" src="search/search.js"></script>
-<script type="text/javascript">
-  $(document).ready(function() { init_search(); });
-</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 id="projectlogo"><img alt="Logo" src="logo-mini.png"/></td>
-  <td id="projectalign" style="padding-left: 0.5em;">
-   <div id="projectname">0.9.9 API documentation
-   </div>
-  </td>
- </tr>
- </tbody>
-</table>
-</div>
-<!-- end header part -->
-<!-- Generated by Doxygen 1.8.10 -->
-<script type="text/javascript">
-var searchBox = new SearchBox("searchBox", "search",false,'Search');
-</script>
-  <div id="navrow1" class="tabs">
-    <ul class="tablist">
-      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
-      <li><a href="modules.html"><span>Modules</span></a></li>
-      <li class="current"><a href="files.html"><span>Files</span></a></li>
-      <li>
-        <div id="MSearchBox" class="MSearchBoxInactive">
-        <span class="left">
-          <img id="MSearchSelect" src="search/mag_sel.png"
-               onmouseover="return searchBox.OnSearchSelectShow()"
-               onmouseout="return searchBox.OnSearchSelectHide()"
-               alt=""/>
-          <input type="text" id="MSearchField" value="Search" accesskey="S"
-               onfocus="searchBox.OnSearchFieldFocus(true)" 
-               onblur="searchBox.OnSearchFieldFocus(false)" 
-               onkeyup="searchBox.OnSearchFieldChange(event)"/>
-          </span><span class="right">
-            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
-          </span>
-        </div>
-      </li>
-    </ul>
-  </div>
-  <div id="navrow2" class="tabs2">
-    <ul class="tablist">
-      <li><a href="files.html"><span>File&#160;List</span></a></li>
-    </ul>
-  </div>
-<!-- window showing the filter options -->
-<div id="MSearchSelectWindow"
-     onmouseover="return searchBox.OnSearchSelectShow()"
-     onmouseout="return searchBox.OnSearchSelectHide()"
-     onkeydown="return searchBox.OnSearchSelectKey(event)">
-</div>
-
-<!-- iframe showing the search results (closed by default) -->
-<div id="MSearchResultsWindow">
-<iframe src="javascript:void(0)" frameborder="0" 
-        name="MSearchResults" id="MSearchResults">
-</iframe>
-</div>
-
-<div id="nav-path" class="navpath">
-  <ul>
-<li class="navelem"><a class="el" href="dir_3a581ba30d25676e4b797b1f96d53b45.html">F:</a></li><li class="navelem"><a class="el" href="dir_9e5fe034a00e89334fd5186c3e7db156.html">G-Truc</a></li><li class="navelem"><a class="el" href="dir_d9496f0844b48bc7e53b5af8c99b9ab2.html">Source</a></li><li class="navelem"><a class="el" href="dir_a8bee7be44182a33f3820393ae0b105d.html">G-Truc</a></li><li class="navelem"><a class="el" href="dir_44e5e654415abd9ca6fdeaddaff8565e.html">glm</a></li><li class="navelem"><a class="el" href="dir_cef2d71d502cb69a9252bca2297d9549.html">glm</a></li>  </ul>
-</div>
-</div><!-- top -->
-<div class="header">
-  <div class="headertitle">
-<div class="title">ext.hpp File Reference</div>  </div>
-</div><!--header-->
-<div class="contents">
-
-<p><a class="el" href="a00280.html">Core features</a> (Dependence)  
-<a href="#details">More...</a></p>
-
-<p><a href="a00027_source.html">Go to the source code of this file.</a></p>
-<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
-<div class="textblock"><p><a class="el" href="a00280.html">Core features</a> (Dependence) </p>
-
-<p>Definition in file <a class="el" href="a00027_source.html">ext.hpp</a>.</p>
-</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.10
-</small></address>
-</body>
-</html>

+ 0 - 449
doc/api/a00027_source.html

@@ -1,449 +0,0 @@
-<!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.10"/>
-<title>0.9.9 API documentation: ext.hpp Source File</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="search/search.css" rel="stylesheet" type="text/css"/>
-<script type="text/javascript" src="search/searchdata.js"></script>
-<script type="text/javascript" src="search/search.js"></script>
-<script type="text/javascript">
-  $(document).ready(function() { init_search(); });
-</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 id="projectlogo"><img alt="Logo" src="logo-mini.png"/></td>
-  <td id="projectalign" style="padding-left: 0.5em;">
-   <div id="projectname">0.9.9 API documentation
-   </div>
-  </td>
- </tr>
- </tbody>
-</table>
-</div>
-<!-- end header part -->
-<!-- Generated by Doxygen 1.8.10 -->
-<script type="text/javascript">
-var searchBox = new SearchBox("searchBox", "search",false,'Search');
-</script>
-  <div id="navrow1" class="tabs">
-    <ul class="tablist">
-      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
-      <li><a href="modules.html"><span>Modules</span></a></li>
-      <li class="current"><a href="files.html"><span>Files</span></a></li>
-      <li>
-        <div id="MSearchBox" class="MSearchBoxInactive">
-        <span class="left">
-          <img id="MSearchSelect" src="search/mag_sel.png"
-               onmouseover="return searchBox.OnSearchSelectShow()"
-               onmouseout="return searchBox.OnSearchSelectHide()"
-               alt=""/>
-          <input type="text" id="MSearchField" value="Search" accesskey="S"
-               onfocus="searchBox.OnSearchFieldFocus(true)" 
-               onblur="searchBox.OnSearchFieldFocus(false)" 
-               onkeyup="searchBox.OnSearchFieldChange(event)"/>
-          </span><span class="right">
-            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
-          </span>
-        </div>
-      </li>
-    </ul>
-  </div>
-  <div id="navrow2" class="tabs2">
-    <ul class="tablist">
-      <li><a href="files.html"><span>File&#160;List</span></a></li>
-    </ul>
-  </div>
-<!-- window showing the filter options -->
-<div id="MSearchSelectWindow"
-     onmouseover="return searchBox.OnSearchSelectShow()"
-     onmouseout="return searchBox.OnSearchSelectHide()"
-     onkeydown="return searchBox.OnSearchSelectKey(event)">
-</div>
-
-<!-- iframe showing the search results (closed by default) -->
-<div id="MSearchResultsWindow">
-<iframe src="javascript:void(0)" frameborder="0" 
-        name="MSearchResults" id="MSearchResults">
-</iframe>
-</div>
-
-<div id="nav-path" class="navpath">
-  <ul>
-<li class="navelem"><a class="el" href="dir_3a581ba30d25676e4b797b1f96d53b45.html">F:</a></li><li class="navelem"><a class="el" href="dir_9e5fe034a00e89334fd5186c3e7db156.html">G-Truc</a></li><li class="navelem"><a class="el" href="dir_d9496f0844b48bc7e53b5af8c99b9ab2.html">Source</a></li><li class="navelem"><a class="el" href="dir_a8bee7be44182a33f3820393ae0b105d.html">G-Truc</a></li><li class="navelem"><a class="el" href="dir_44e5e654415abd9ca6fdeaddaff8565e.html">glm</a></li><li class="navelem"><a class="el" href="dir_cef2d71d502cb69a9252bca2297d9549.html">glm</a></li>  </ul>
-</div>
-</div><!-- top -->
-<div class="header">
-  <div class="headertitle">
-<div class="title">ext.hpp</div>  </div>
-</div><!--header-->
-<div class="contents">
-<a href="a00027.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span>&#160;</div>
-<div class="line"><a name="l00005"></a><span class="lineno">    5</span>&#160;<span class="preprocessor">#include &quot;detail/setup.hpp&quot;</span></div>
-<div class="line"><a name="l00006"></a><span class="lineno">    6</span>&#160;</div>
-<div class="line"><a name="l00007"></a><span class="lineno">    7</span>&#160;<span class="preprocessor">#pragma once</span></div>
-<div class="line"><a name="l00008"></a><span class="lineno">    8</span>&#160;</div>
-<div class="line"><a name="l00009"></a><span class="lineno">    9</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="a00037.html">glm.hpp</a>&quot;</span></div>
-<div class="line"><a name="l00010"></a><span class="lineno">   10</span>&#160;</div>
-<div class="line"><a name="l00011"></a><span class="lineno">   11</span>&#160;<span class="preprocessor">#if GLM_MESSAGES == GLM_ENABLE &amp;&amp; !defined(GLM_MESSAGE_EXT_INCLUDED_DISPLAYED)</span></div>
-<div class="line"><a name="l00012"></a><span class="lineno">   12</span>&#160;<span class="preprocessor">#       define GLM_MESSAGE_EXT_INCLUDED_DISPLAYED</span></div>
-<div class="line"><a name="l00013"></a><span class="lineno">   13</span>&#160;<span class="preprocessor">#       pragma message(&quot;GLM: All extensions included (not recommended)&quot;)</span></div>
-<div class="line"><a name="l00014"></a><span class="lineno">   14</span>&#160;<span class="preprocessor">#endif//GLM_MESSAGES</span></div>
-<div class="line"><a name="l00015"></a><span class="lineno">   15</span>&#160;</div>
-<div class="line"><a name="l00016"></a><span class="lineno">   16</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="a00063.html">./ext/matrix_double2x2.hpp</a>&quot;</span></div>
-<div class="line"><a name="l00017"></a><span class="lineno">   17</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="a00064.html">./ext/matrix_double2x2_precision.hpp</a>&quot;</span></div>
-<div class="line"><a name="l00018"></a><span class="lineno">   18</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="a00065.html">./ext/matrix_double2x3.hpp</a>&quot;</span></div>
-<div class="line"><a name="l00019"></a><span class="lineno">   19</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="a00066.html">./ext/matrix_double2x3_precision.hpp</a>&quot;</span></div>
-<div class="line"><a name="l00020"></a><span class="lineno">   20</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="a00067.html">./ext/matrix_double2x4.hpp</a>&quot;</span></div>
-<div class="line"><a name="l00021"></a><span class="lineno">   21</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="a00068.html">./ext/matrix_double2x4_precision.hpp</a>&quot;</span></div>
-<div class="line"><a name="l00022"></a><span class="lineno">   22</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="a00069.html">./ext/matrix_double3x2.hpp</a>&quot;</span></div>
-<div class="line"><a name="l00023"></a><span class="lineno">   23</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="a00070.html">./ext/matrix_double3x2_precision.hpp</a>&quot;</span></div>
-<div class="line"><a name="l00024"></a><span class="lineno">   24</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="a00071.html">./ext/matrix_double3x3.hpp</a>&quot;</span></div>
-<div class="line"><a name="l00025"></a><span class="lineno">   25</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="a00072.html">./ext/matrix_double3x3_precision.hpp</a>&quot;</span></div>
-<div class="line"><a name="l00026"></a><span class="lineno">   26</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="a00073.html">./ext/matrix_double3x4.hpp</a>&quot;</span></div>
-<div class="line"><a name="l00027"></a><span class="lineno">   27</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="a00074.html">./ext/matrix_double3x4_precision.hpp</a>&quot;</span></div>
-<div class="line"><a name="l00028"></a><span class="lineno">   28</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="a00075.html">./ext/matrix_double4x2.hpp</a>&quot;</span></div>
-<div class="line"><a name="l00029"></a><span class="lineno">   29</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="a00076.html">./ext/matrix_double4x2_precision.hpp</a>&quot;</span></div>
-<div class="line"><a name="l00030"></a><span class="lineno">   30</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="a00077.html">./ext/matrix_double4x3.hpp</a>&quot;</span></div>
-<div class="line"><a name="l00031"></a><span class="lineno">   31</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="a00078.html">./ext/matrix_double4x3_precision.hpp</a>&quot;</span></div>
-<div class="line"><a name="l00032"></a><span class="lineno">   32</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="a00079.html">./ext/matrix_double4x4.hpp</a>&quot;</span></div>
-<div class="line"><a name="l00033"></a><span class="lineno">   33</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="a00080.html">./ext/matrix_double4x4_precision.hpp</a>&quot;</span></div>
-<div class="line"><a name="l00034"></a><span class="lineno">   34</span>&#160;</div>
-<div class="line"><a name="l00035"></a><span class="lineno">   35</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="a00082.html">./ext/matrix_float2x2.hpp</a>&quot;</span></div>
-<div class="line"><a name="l00036"></a><span class="lineno">   36</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="a00083.html">./ext/matrix_float2x2_precision.hpp</a>&quot;</span></div>
-<div class="line"><a name="l00037"></a><span class="lineno">   37</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="a00084.html">./ext/matrix_float2x3.hpp</a>&quot;</span></div>
-<div class="line"><a name="l00038"></a><span class="lineno">   38</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="a00085.html">./ext/matrix_float2x3_precision.hpp</a>&quot;</span></div>
-<div class="line"><a name="l00039"></a><span class="lineno">   39</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="a00086.html">./ext/matrix_float2x4.hpp</a>&quot;</span></div>
-<div class="line"><a name="l00040"></a><span class="lineno">   40</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="a00087.html">./ext/matrix_float2x4_precision.hpp</a>&quot;</span></div>
-<div class="line"><a name="l00041"></a><span class="lineno">   41</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="a00088.html">./ext/matrix_float3x2.hpp</a>&quot;</span></div>
-<div class="line"><a name="l00042"></a><span class="lineno">   42</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="a00089.html">./ext/matrix_float3x2_precision.hpp</a>&quot;</span></div>
-<div class="line"><a name="l00043"></a><span class="lineno">   43</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="a00090.html">./ext/matrix_float3x3.hpp</a>&quot;</span></div>
-<div class="line"><a name="l00044"></a><span class="lineno">   44</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="a00091.html">./ext/matrix_float3x3_precision.hpp</a>&quot;</span></div>
-<div class="line"><a name="l00045"></a><span class="lineno">   45</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="a00092.html">./ext/matrix_float3x4.hpp</a>&quot;</span></div>
-<div class="line"><a name="l00046"></a><span class="lineno">   46</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="a00093.html">./ext/matrix_float3x4_precision.hpp</a>&quot;</span></div>
-<div class="line"><a name="l00047"></a><span class="lineno">   47</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="a00094.html">./ext/matrix_float4x2.hpp</a>&quot;</span></div>
-<div class="line"><a name="l00048"></a><span class="lineno">   48</span>&#160;<span class="preprocessor">#include &quot;./ext/matrix_float4x2_precision.hpp&quot;</span></div>
-<div class="line"><a name="l00049"></a><span class="lineno">   49</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="a00096.html">./ext/matrix_float4x3.hpp</a>&quot;</span></div>
-<div class="line"><a name="l00050"></a><span class="lineno">   50</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="a00097.html">./ext/matrix_float4x3_precision.hpp</a>&quot;</span></div>
-<div class="line"><a name="l00051"></a><span class="lineno">   51</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="a00098.html">./ext/matrix_float4x4.hpp</a>&quot;</span></div>
-<div class="line"><a name="l00052"></a><span class="lineno">   52</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="a00099.html">./ext/matrix_float4x4_precision.hpp</a>&quot;</span></div>
-<div class="line"><a name="l00053"></a><span class="lineno">   53</span>&#160;</div>
-<div class="line"><a name="l00054"></a><span class="lineno">   54</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="a00107.html">./ext/matrix_relational.hpp</a>&quot;</span></div>
-<div class="line"><a name="l00055"></a><span class="lineno">   55</span>&#160;</div>
-<div class="line"><a name="l00056"></a><span class="lineno">   56</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="a00128.html">./ext/quaternion_double.hpp</a>&quot;</span></div>
-<div class="line"><a name="l00057"></a><span class="lineno">   57</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="a00129.html">./ext/quaternion_double_precision.hpp</a>&quot;</span></div>
-<div class="line"><a name="l00058"></a><span class="lineno">   58</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="a00131.html">./ext/quaternion_float.hpp</a>&quot;</span></div>
-<div class="line"><a name="l00059"></a><span class="lineno">   59</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="a00132.html">./ext/quaternion_float_precision.hpp</a>&quot;</span></div>
-<div class="line"><a name="l00060"></a><span class="lineno">   60</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="a00133.html">./ext/quaternion_geometric.hpp</a>&quot;</span></div>
-<div class="line"><a name="l00061"></a><span class="lineno">   61</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="a00134.html">./ext/quaternion_relational.hpp</a>&quot;</span></div>
-<div class="line"><a name="l00062"></a><span class="lineno">   62</span>&#160;</div>
-<div class="line"><a name="l00063"></a><span class="lineno">   63</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="a00145.html">./ext/scalar_constants.hpp</a>&quot;</span></div>
-<div class="line"><a name="l00064"></a><span class="lineno">   64</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="a00146.html">./ext/scalar_int_sized.hpp</a>&quot;</span></div>
-<div class="line"><a name="l00065"></a><span class="lineno">   65</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="a00149.html">./ext/scalar_relational.hpp</a>&quot;</span></div>
-<div class="line"><a name="l00066"></a><span class="lineno">   66</span>&#160;</div>
-<div class="line"><a name="l00067"></a><span class="lineno">   67</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="a00189.html">./ext/vector_bool1.hpp</a>&quot;</span></div>
-<div class="line"><a name="l00068"></a><span class="lineno">   68</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="a00190.html">./ext/vector_bool1_precision.hpp</a>&quot;</span></div>
-<div class="line"><a name="l00069"></a><span class="lineno">   69</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="a00191.html">./ext/vector_bool2.hpp</a>&quot;</span></div>
-<div class="line"><a name="l00070"></a><span class="lineno">   70</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="a00192.html">./ext/vector_bool2_precision.hpp</a>&quot;</span></div>
-<div class="line"><a name="l00071"></a><span class="lineno">   71</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="a00193.html">./ext/vector_bool3.hpp</a>&quot;</span></div>
-<div class="line"><a name="l00072"></a><span class="lineno">   72</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="a00194.html">./ext/vector_bool3_precision.hpp</a>&quot;</span></div>
-<div class="line"><a name="l00073"></a><span class="lineno">   73</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="a00195.html">./ext/vector_bool4.hpp</a>&quot;</span></div>
-<div class="line"><a name="l00074"></a><span class="lineno">   74</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="a00196.html">./ext/vector_bool4_precision.hpp</a>&quot;</span></div>
-<div class="line"><a name="l00075"></a><span class="lineno">   75</span>&#160;</div>
-<div class="line"><a name="l00076"></a><span class="lineno">   76</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="a00198.html">./ext/vector_double1.hpp</a>&quot;</span></div>
-<div class="line"><a name="l00077"></a><span class="lineno">   77</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="a00199.html">./ext/vector_double1_precision.hpp</a>&quot;</span></div>
-<div class="line"><a name="l00078"></a><span class="lineno">   78</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="a00200.html">./ext/vector_double2.hpp</a>&quot;</span></div>
-<div class="line"><a name="l00079"></a><span class="lineno">   79</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="a00201.html">./ext/vector_double2_precision.hpp</a>&quot;</span></div>
-<div class="line"><a name="l00080"></a><span class="lineno">   80</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="a00202.html">./ext/vector_double3.hpp</a>&quot;</span></div>
-<div class="line"><a name="l00081"></a><span class="lineno">   81</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="a00203.html">./ext/vector_double3_precision.hpp</a>&quot;</span></div>
-<div class="line"><a name="l00082"></a><span class="lineno">   82</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="a00204.html">./ext/vector_double4.hpp</a>&quot;</span></div>
-<div class="line"><a name="l00083"></a><span class="lineno">   83</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="a00205.html">./ext/vector_double4_precision.hpp</a>&quot;</span></div>
-<div class="line"><a name="l00084"></a><span class="lineno">   84</span>&#160;</div>
-<div class="line"><a name="l00085"></a><span class="lineno">   85</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="a00206.html">./ext/vector_float1.hpp</a>&quot;</span></div>
-<div class="line"><a name="l00086"></a><span class="lineno">   86</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="a00207.html">./ext/vector_float1_precision.hpp</a>&quot;</span></div>
-<div class="line"><a name="l00087"></a><span class="lineno">   87</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="a00208.html">./ext/vector_float2.hpp</a>&quot;</span></div>
-<div class="line"><a name="l00088"></a><span class="lineno">   88</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="a00209.html">./ext/vector_float2_precision.hpp</a>&quot;</span></div>
-<div class="line"><a name="l00089"></a><span class="lineno">   89</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="a00210.html">./ext/vector_float3.hpp</a>&quot;</span></div>
-<div class="line"><a name="l00090"></a><span class="lineno">   90</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="a00211.html">./ext/vector_float3_precision.hpp</a>&quot;</span></div>
-<div class="line"><a name="l00091"></a><span class="lineno">   91</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="a00212.html">./ext/vector_float4.hpp</a>&quot;</span></div>
-<div class="line"><a name="l00092"></a><span class="lineno">   92</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="a00213.html">./ext/vector_float4_precision.hpp</a>&quot;</span></div>
-<div class="line"><a name="l00093"></a><span class="lineno">   93</span>&#160;</div>
-<div class="line"><a name="l00094"></a><span class="lineno">   94</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="a00214.html">./ext/vector_int1.hpp</a>&quot;</span></div>
-<div class="line"><a name="l00095"></a><span class="lineno">   95</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="a00215.html">./ext/vector_int1_precision.hpp</a>&quot;</span></div>
-<div class="line"><a name="l00096"></a><span class="lineno">   96</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="a00216.html">./ext/vector_int2.hpp</a>&quot;</span></div>
-<div class="line"><a name="l00097"></a><span class="lineno">   97</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="a00217.html">./ext/vector_int2_precision.hpp</a>&quot;</span></div>
-<div class="line"><a name="l00098"></a><span class="lineno">   98</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="a00218.html">./ext/vector_int3.hpp</a>&quot;</span></div>
-<div class="line"><a name="l00099"></a><span class="lineno">   99</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="a00219.html">./ext/vector_int3_precision.hpp</a>&quot;</span></div>
-<div class="line"><a name="l00100"></a><span class="lineno">  100</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="a00220.html">./ext/vector_int4.hpp</a>&quot;</span></div>
-<div class="line"><a name="l00101"></a><span class="lineno">  101</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="a00221.html">./ext/vector_int4_precision.hpp</a>&quot;</span></div>
-<div class="line"><a name="l00102"></a><span class="lineno">  102</span>&#160;</div>
-<div class="line"><a name="l00103"></a><span class="lineno">  103</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="a00224.html">./ext/vector_relational.hpp</a>&quot;</span></div>
-<div class="line"><a name="l00104"></a><span class="lineno">  104</span>&#160;</div>
-<div class="line"><a name="l00105"></a><span class="lineno">  105</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="a00226.html">./ext/vector_uint1.hpp</a>&quot;</span></div>
-<div class="line"><a name="l00106"></a><span class="lineno">  106</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="a00227.html">./ext/vector_uint1_precision.hpp</a>&quot;</span></div>
-<div class="line"><a name="l00107"></a><span class="lineno">  107</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="a00228.html">./ext/vector_uint2.hpp</a>&quot;</span></div>
-<div class="line"><a name="l00108"></a><span class="lineno">  108</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="a00229.html">./ext/vector_uint2_precision.hpp</a>&quot;</span></div>
-<div class="line"><a name="l00109"></a><span class="lineno">  109</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="a00230.html">./ext/vector_uint3.hpp</a>&quot;</span></div>
-<div class="line"><a name="l00110"></a><span class="lineno">  110</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="a00231.html">./ext/vector_uint3_precision.hpp</a>&quot;</span></div>
-<div class="line"><a name="l00111"></a><span class="lineno">  111</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="a00232.html">./ext/vector_uint4.hpp</a>&quot;</span></div>
-<div class="line"><a name="l00112"></a><span class="lineno">  112</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="a00233.html">./ext/vector_uint4_precision.hpp</a>&quot;</span></div>
-<div class="line"><a name="l00113"></a><span class="lineno">  113</span>&#160;</div>
-<div class="line"><a name="l00114"></a><span class="lineno">  114</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="a00009.html">./gtc/bitfield.hpp</a>&quot;</span></div>
-<div class="line"><a name="l00115"></a><span class="lineno">  115</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="a00012.html">./gtc/color_space.hpp</a>&quot;</span></div>
-<div class="line"><a name="l00116"></a><span class="lineno">  116</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="a00021.html">./gtc/constants.hpp</a>&quot;</span></div>
-<div class="line"><a name="l00117"></a><span class="lineno">  117</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="a00024.html">./gtc/epsilon.hpp</a>&quot;</span></div>
-<div class="line"><a name="l00118"></a><span class="lineno">  118</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="a00041.html">./gtc/integer.hpp</a>&quot;</span></div>
-<div class="line"><a name="l00119"></a><span class="lineno">  119</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="a00058.html">./gtc/matrix_access.hpp</a>&quot;</span></div>
-<div class="line"><a name="l00120"></a><span class="lineno">  120</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="a00100.html">./gtc/matrix_integer.hpp</a>&quot;</span></div>
-<div class="line"><a name="l00121"></a><span class="lineno">  121</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="a00102.html">./gtc/matrix_inverse.hpp</a>&quot;</span></div>
-<div class="line"><a name="l00122"></a><span class="lineno">  122</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="a00109.html">./gtc/matrix_transform.hpp</a>&quot;</span></div>
-<div class="line"><a name="l00123"></a><span class="lineno">  123</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="a00112.html">./gtc/noise.hpp</a>&quot;</span></div>
-<div class="line"><a name="l00124"></a><span class="lineno">  124</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="a00119.html">./gtc/packing.hpp</a>&quot;</span></div>
-<div class="line"><a name="l00125"></a><span class="lineno">  125</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="a00125.html">./gtc/quaternion.hpp</a>&quot;</span></div>
-<div class="line"><a name="l00126"></a><span class="lineno">  126</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="a00137.html">./gtc/random.hpp</a>&quot;</span></div>
-<div class="line"><a name="l00127"></a><span class="lineno">  127</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="a00140.html">./gtc/reciprocal.hpp</a>&quot;</span></div>
-<div class="line"><a name="l00128"></a><span class="lineno">  128</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="a00143.html">./gtc/round.hpp</a>&quot;</span></div>
-<div class="line"><a name="l00129"></a><span class="lineno">  129</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="a00174.html">./gtc/type_precision.hpp</a>&quot;</span></div>
-<div class="line"><a name="l00130"></a><span class="lineno">  130</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="a00175.html">./gtc/type_ptr.hpp</a>&quot;</span></div>
-<div class="line"><a name="l00131"></a><span class="lineno">  131</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="a00182.html">./gtc/ulp.hpp</a>&quot;</span></div>
-<div class="line"><a name="l00132"></a><span class="lineno">  132</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="a00183.html">./gtc/vec1.hpp</a>&quot;</span></div>
-<div class="line"><a name="l00133"></a><span class="lineno">  133</span>&#160;<span class="preprocessor">#if GLM_CONFIG_ALIGNED_GENTYPES == GLM_ENABLE</span></div>
-<div class="line"><a name="l00134"></a><span class="lineno">  134</span>&#160;<span class="preprocessor">#       include &quot;<a class="code" href="a00161.html">./gtc/type_aligned.hpp</a>&quot;</span></div>
-<div class="line"><a name="l00135"></a><span class="lineno">  135</span>&#160;<span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00136"></a><span class="lineno">  136</span>&#160;</div>
-<div class="line"><a name="l00137"></a><span class="lineno">  137</span>&#160;<span class="preprocessor">#ifdef GLM_ENABLE_EXPERIMENTAL</span></div>
-<div class="line"><a name="l00138"></a><span class="lineno">  138</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="a00007.html">./gtx/associated_min_max.hpp</a>&quot;</span></div>
-<div class="line"><a name="l00139"></a><span class="lineno">  139</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="a00008.html">./gtx/bit.hpp</a>&quot;</span></div>
-<div class="line"><a name="l00140"></a><span class="lineno">  140</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="a00010.html">./gtx/closest_point.hpp</a>&quot;</span></div>
-<div class="line"><a name="l00141"></a><span class="lineno">  141</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="a00011.html">./gtx/color_encoding.hpp</a>&quot;</span></div>
-<div class="line"><a name="l00142"></a><span class="lineno">  142</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="a00013.html">./gtx/color_space.hpp</a>&quot;</span></div>
-<div class="line"><a name="l00143"></a><span class="lineno">  143</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="a00014.html">./gtx/color_space_YCoCg.hpp</a>&quot;</span></div>
-<div class="line"><a name="l00144"></a><span class="lineno">  144</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="a00017.html">./gtx/compatibility.hpp</a>&quot;</span></div>
-<div class="line"><a name="l00145"></a><span class="lineno">  145</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="a00018.html">./gtx/component_wise.hpp</a>&quot;</span></div>
-<div class="line"><a name="l00146"></a><span class="lineno">  146</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="a00022.html">./gtx/dual_quaternion.hpp</a>&quot;</span></div>
-<div class="line"><a name="l00147"></a><span class="lineno">  147</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="a00025.html">./gtx/euler_angles.hpp</a>&quot;</span></div>
-<div class="line"><a name="l00148"></a><span class="lineno">  148</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="a00028.html">./gtx/extend.hpp</a>&quot;</span></div>
-<div class="line"><a name="l00149"></a><span class="lineno">  149</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="a00029.html">./gtx/extended_min_max.hpp</a>&quot;</span></div>
-<div class="line"><a name="l00150"></a><span class="lineno">  150</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="a00031.html">./gtx/fast_exponential.hpp</a>&quot;</span></div>
-<div class="line"><a name="l00151"></a><span class="lineno">  151</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="a00032.html">./gtx/fast_square_root.hpp</a>&quot;</span></div>
-<div class="line"><a name="l00152"></a><span class="lineno">  152</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="a00033.html">./gtx/fast_trigonometry.hpp</a>&quot;</span></div>
-<div class="line"><a name="l00153"></a><span class="lineno">  153</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="a00034.html">./gtx/functions.hpp</a>&quot;</span></div>
-<div class="line"><a name="l00154"></a><span class="lineno">  154</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="a00038.html">./gtx/gradient_paint.hpp</a>&quot;</span></div>
-<div class="line"><a name="l00155"></a><span class="lineno">  155</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="a00039.html">./gtx/handed_coordinate_space.hpp</a>&quot;</span></div>
-<div class="line"><a name="l00156"></a><span class="lineno">  156</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="a00042.html">./gtx/integer.hpp</a>&quot;</span></div>
-<div class="line"><a name="l00157"></a><span class="lineno">  157</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="a00044.html">./gtx/intersect.hpp</a>&quot;</span></div>
-<div class="line"><a name="l00158"></a><span class="lineno">  158</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="a00046.html">./gtx/log_base.hpp</a>&quot;</span></div>
-<div class="line"><a name="l00159"></a><span class="lineno">  159</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="a00061.html">./gtx/matrix_cross_product.hpp</a>&quot;</span></div>
-<div class="line"><a name="l00160"></a><span class="lineno">  160</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="a00101.html">./gtx/matrix_interpolation.hpp</a>&quot;</span></div>
-<div class="line"><a name="l00161"></a><span class="lineno">  161</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="a00103.html">./gtx/matrix_major_storage.hpp</a>&quot;</span></div>
-<div class="line"><a name="l00162"></a><span class="lineno">  162</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="a00104.html">./gtx/matrix_operation.hpp</a>&quot;</span></div>
-<div class="line"><a name="l00163"></a><span class="lineno">  163</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="a00106.html">./gtx/matrix_query.hpp</a>&quot;</span></div>
-<div class="line"><a name="l00164"></a><span class="lineno">  164</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="a00111.html">./gtx/mixed_product.hpp</a>&quot;</span></div>
-<div class="line"><a name="l00165"></a><span class="lineno">  165</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="a00113.html">./gtx/norm.hpp</a>&quot;</span></div>
-<div class="line"><a name="l00166"></a><span class="lineno">  166</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="a00114.html">./gtx/normal.hpp</a>&quot;</span></div>
-<div class="line"><a name="l00167"></a><span class="lineno">  167</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="a00115.html">./gtx/normalize_dot.hpp</a>&quot;</span></div>
-<div class="line"><a name="l00168"></a><span class="lineno">  168</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="a00116.html">./gtx/number_precision.hpp</a>&quot;</span></div>
-<div class="line"><a name="l00169"></a><span class="lineno">  169</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="a00117.html">./gtx/optimum_pow.hpp</a>&quot;</span></div>
-<div class="line"><a name="l00170"></a><span class="lineno">  170</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="a00118.html">./gtx/orthonormalize.hpp</a>&quot;</span></div>
-<div class="line"><a name="l00171"></a><span class="lineno">  171</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="a00121.html">./gtx/perpendicular.hpp</a>&quot;</span></div>
-<div class="line"><a name="l00172"></a><span class="lineno">  172</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="a00122.html">./gtx/polar_coordinates.hpp</a>&quot;</span></div>
-<div class="line"><a name="l00173"></a><span class="lineno">  173</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="a00123.html">./gtx/projection.hpp</a>&quot;</span></div>
-<div class="line"><a name="l00174"></a><span class="lineno">  174</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="a00126.html">./gtx/quaternion.hpp</a>&quot;</span></div>
-<div class="line"><a name="l00175"></a><span class="lineno">  175</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="a00139.html">./gtx/raw_data.hpp</a>&quot;</span></div>
-<div class="line"><a name="l00176"></a><span class="lineno">  176</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="a00142.html">./gtx/rotate_vector.hpp</a>&quot;</span></div>
-<div class="line"><a name="l00177"></a><span class="lineno">  177</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="a00154.html">./gtx/spline.hpp</a>&quot;</span></div>
-<div class="line"><a name="l00178"></a><span class="lineno">  178</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="a00155.html">./gtx/std_based_type.hpp</a>&quot;</span></div>
-<div class="line"><a name="l00179"></a><span class="lineno">  179</span>&#160;<span class="preprocessor">#if !(GLM_COMPILER &amp; GLM_COMPILER_CUDA)</span></div>
-<div class="line"><a name="l00180"></a><span class="lineno">  180</span>&#160;<span class="preprocessor">#       include &quot;<a class="code" href="a00156.html">./gtx/string_cast.hpp</a>&quot;</span></div>
-<div class="line"><a name="l00181"></a><span class="lineno">  181</span>&#160;<span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00182"></a><span class="lineno">  182</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="a00158.html">./gtx/transform.hpp</a>&quot;</span></div>
-<div class="line"><a name="l00183"></a><span class="lineno">  183</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="a00159.html">./gtx/transform2.hpp</a>&quot;</span></div>
-<div class="line"><a name="l00184"></a><span class="lineno">  184</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="a00187.html">./gtx/vec_swizzle.hpp</a>&quot;</span></div>
-<div class="line"><a name="l00185"></a><span class="lineno">  185</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="a00188.html">./gtx/vector_angle.hpp</a>&quot;</span></div>
-<div class="line"><a name="l00186"></a><span class="lineno">  186</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="a00223.html">./gtx/vector_query.hpp</a>&quot;</span></div>
-<div class="line"><a name="l00187"></a><span class="lineno">  187</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="a00235.html">./gtx/wrap.hpp</a>&quot;</span></div>
-<div class="line"><a name="l00188"></a><span class="lineno">  188</span>&#160;</div>
-<div class="line"><a name="l00189"></a><span class="lineno">  189</span>&#160;<span class="preprocessor">#if GLM_HAS_TEMPLATE_ALIASES</span></div>
-<div class="line"><a name="l00190"></a><span class="lineno">  190</span>&#160;<span class="preprocessor">#       include &quot;<a class="code" href="a00148.html">./gtx/scalar_multiplication.hpp</a>&quot;</span></div>
-<div class="line"><a name="l00191"></a><span class="lineno">  191</span>&#160;<span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00192"></a><span class="lineno">  192</span>&#160;</div>
-<div class="line"><a name="l00193"></a><span class="lineno">  193</span>&#160;<span class="preprocessor">#if GLM_HAS_RANGE_FOR</span></div>
-<div class="line"><a name="l00194"></a><span class="lineno">  194</span>&#160;<span class="preprocessor">#       include &quot;<a class="code" href="a00138.html">./gtx/range.hpp</a>&quot;</span></div>
-<div class="line"><a name="l00195"></a><span class="lineno">  195</span>&#160;<span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00196"></a><span class="lineno">  196</span>&#160;<span class="preprocessor">#endif//GLM_ENABLE_EXPERIMENTAL</span></div>
-<div class="ttc" id="a00024_html"><div class="ttname"><a href="a00024.html">epsilon.hpp</a></div><div class="ttdoc">GLM_GTC_epsilon </div></div>
-<div class="ttc" id="a00224_html"><div class="ttname"><a href="a00224.html">vector_relational.hpp</a></div><div class="ttdoc">GLM_EXT_vector_relational </div></div>
-<div class="ttc" id="a00022_html"><div class="ttname"><a href="a00022.html">dual_quaternion.hpp</a></div><div class="ttdoc">GLM_GTX_dual_quaternion </div></div>
-<div class="ttc" id="a00122_html"><div class="ttname"><a href="a00122.html">polar_coordinates.hpp</a></div><div class="ttdoc">GLM_GTX_polar_coordinates </div></div>
-<div class="ttc" id="a00010_html"><div class="ttname"><a href="a00010.html">closest_point.hpp</a></div><div class="ttdoc">GLM_GTX_closest_point </div></div>
-<div class="ttc" id="a00210_html"><div class="ttname"><a href="a00210.html">vector_float3.hpp</a></div><div class="ttdoc">Core features </div></div>
-<div class="ttc" id="a00093_html"><div class="ttname"><a href="a00093.html">matrix_float3x4_precision.hpp</a></div><div class="ttdoc">Core features </div></div>
-<div class="ttc" id="a00068_html"><div class="ttname"><a href="a00068.html">matrix_double2x4_precision.hpp</a></div><div class="ttdoc">Core features </div></div>
-<div class="ttc" id="a00039_html"><div class="ttname"><a href="a00039.html">handed_coordinate_space.hpp</a></div><div class="ttdoc">GLM_GTX_handed_coordinate_space </div></div>
-<div class="ttc" id="a00193_html"><div class="ttname"><a href="a00193.html">vector_bool3.hpp</a></div><div class="ttdoc">Core features </div></div>
-<div class="ttc" id="a00139_html"><div class="ttname"><a href="a00139.html">raw_data.hpp</a></div><div class="ttdoc">GLM_GTX_raw_data </div></div>
-<div class="ttc" id="a00091_html"><div class="ttname"><a href="a00091.html">matrix_float3x3_precision.hpp</a></div><div class="ttdoc">Core features </div></div>
-<div class="ttc" id="a00191_html"><div class="ttname"><a href="a00191.html">vector_bool2.hpp</a></div><div class="ttdoc">Core features </div></div>
-<div class="ttc" id="a00156_html"><div class="ttname"><a href="a00156.html">string_cast.hpp</a></div><div class="ttdoc">GLM_GTX_string_cast </div></div>
-<div class="ttc" id="a00227_html"><div class="ttname"><a href="a00227.html">vector_uint1_precision.hpp</a></div><div class="ttdoc">GLM_EXT_vector_uint1_precision </div></div>
-<div class="ttc" id="a00044_html"><div class="ttname"><a href="a00044.html">intersect.hpp</a></div><div class="ttdoc">GLM_GTX_intersect </div></div>
-<div class="ttc" id="a00215_html"><div class="ttname"><a href="a00215.html">vector_int1_precision.hpp</a></div><div class="ttdoc">GLM_EXT_vector_int1_precision </div></div>
-<div class="ttc" id="a00115_html"><div class="ttname"><a href="a00115.html">normalize_dot.hpp</a></div><div class="ttdoc">GLM_GTX_normalize_dot </div></div>
-<div class="ttc" id="a00042_html"><div class="ttname"><a href="a00042.html">integer.hpp</a></div><div class="ttdoc">GLM_GTX_integer </div></div>
-<div class="ttc" id="a00142_html"><div class="ttname"><a href="a00142.html">rotate_vector.hpp</a></div><div class="ttdoc">GLM_GTX_rotate_vector </div></div>
-<div class="ttc" id="a00203_html"><div class="ttname"><a href="a00203.html">vector_double3_precision.hpp</a></div><div class="ttdoc">Core features </div></div>
-<div class="ttc" id="a00103_html"><div class="ttname"><a href="a00103.html">matrix_major_storage.hpp</a></div><div class="ttdoc">GLM_GTX_matrix_major_storage </div></div>
-<div class="ttc" id="a00230_html"><div class="ttname"><a href="a00230.html">vector_uint3.hpp</a></div><div class="ttdoc">Core features </div></div>
-<div class="ttc" id="a00201_html"><div class="ttname"><a href="a00201.html">vector_double2_precision.hpp</a></div><div class="ttdoc">Core features </div></div>
-<div class="ttc" id="a00088_html"><div class="ttname"><a href="a00088.html">matrix_float3x2.hpp</a></div><div class="ttdoc">Core features </div></div>
-<div class="ttc" id="a00101_html"><div class="ttname"><a href="a00101.html">matrix_interpolation.hpp</a></div><div class="ttdoc">GLM_GTX_matrix_interpolation </div></div>
-<div class="ttc" id="a00188_html"><div class="ttname"><a href="a00188.html">vector_angle.hpp</a></div><div class="ttdoc">GLM_GTX_vector_angle </div></div>
-<div class="ttc" id="a00159_html"><div class="ttname"><a href="a00159.html">transform2.hpp</a></div><div class="ttdoc">GLM_GTX_transform2 </div></div>
-<div class="ttc" id="a00076_html"><div class="ttname"><a href="a00076.html">matrix_double4x2_precision.hpp</a></div><div class="ttdoc">Core features </div></div>
-<div class="ttc" id="a00064_html"><div class="ttname"><a href="a00064.html">matrix_double2x2_precision.hpp</a></div><div class="ttdoc">Core features </div></div>
-<div class="ttc" id="a00235_html"><div class="ttname"><a href="a00235.html">wrap.hpp</a></div><div class="ttdoc">GLM_GTX_wrap </div></div>
-<div class="ttc" id="a00223_html"><div class="ttname"><a href="a00223.html">vector_query.hpp</a></div><div class="ttdoc">GLM_GTX_vector_query </div></div>
-<div class="ttc" id="a00123_html"><div class="ttname"><a href="a00123.html">projection.hpp</a></div><div class="ttdoc">GLM_GTX_projection </div></div>
-<div class="ttc" id="a00021_html"><div class="ttname"><a href="a00021.html">constants.hpp</a></div><div class="ttdoc">GLM_GTC_constants </div></div>
-<div class="ttc" id="a00221_html"><div class="ttname"><a href="a00221.html">vector_int4_precision.hpp</a></div><div class="ttdoc">Core features </div></div>
-<div class="ttc" id="a00121_html"><div class="ttname"><a href="a00121.html">perpendicular.hpp</a></div><div class="ttdoc">GLM_GTX_perpendicular </div></div>
-<div class="ttc" id="a00079_html"><div class="ttname"><a href="a00079.html">matrix_double4x4.hpp</a></div><div class="ttdoc">Core features </div></div>
-<div class="ttc" id="a00096_html"><div class="ttname"><a href="a00096.html">matrix_float4x3.hpp</a></div><div class="ttdoc">Core features </div></div>
-<div class="ttc" id="a00067_html"><div class="ttname"><a href="a00067.html">matrix_double2x4.hpp</a></div><div class="ttdoc">Core features </div></div>
-<div class="ttc" id="a00196_html"><div class="ttname"><a href="a00196.html">vector_bool4_precision.hpp</a></div><div class="ttdoc">Core features </div></div>
-<div class="ttc" id="a00084_html"><div class="ttname"><a href="a00084.html">matrix_float2x3.hpp</a></div><div class="ttdoc">Core features </div></div>
-<div class="ttc" id="a00155_html"><div class="ttname"><a href="a00155.html">std_based_type.hpp</a></div><div class="ttdoc">GLM_GTX_std_based_type </div></div>
-<div class="ttc" id="a00082_html"><div class="ttname"><a href="a00082.html">matrix_float2x2.hpp</a></div><div class="ttdoc">Core features </div></div>
-<div class="ttc" id="a00018_html"><div class="ttname"><a href="a00018.html">component_wise.hpp</a></div><div class="ttdoc">GLM_GTX_component_wise </div></div>
-<div class="ttc" id="a00182_html"><div class="ttname"><a href="a00182.html">ulp.hpp</a></div><div class="ttdoc">GLM_GTC_ulp </div></div>
-<div class="ttc" id="a00143_html"><div class="ttname"><a href="a00143.html">round.hpp</a></div><div class="ttdoc">GLM_GTC_round </div></div>
-<div class="ttc" id="a00218_html"><div class="ttname"><a href="a00218.html">vector_int3.hpp</a></div><div class="ttdoc">Core features </div></div>
-<div class="ttc" id="a00118_html"><div class="ttname"><a href="a00118.html">orthonormalize.hpp</a></div><div class="ttdoc">GLM_GTX_orthonormalize </div></div>
-<div class="ttc" id="a00070_html"><div class="ttname"><a href="a00070.html">matrix_double3x2_precision.hpp</a></div><div class="ttdoc">Core features </div></div>
-<div class="ttc" id="a00041_html"><div class="ttname"><a href="a00041.html">integer.hpp</a></div><div class="ttdoc">GLM_GTC_integer </div></div>
-<div class="ttc" id="a00206_html"><div class="ttname"><a href="a00206.html">vector_float1.hpp</a></div><div class="ttdoc">GLM_EXT_vector_float1 </div></div>
-<div class="ttc" id="a00099_html"><div class="ttname"><a href="a00099.html">matrix_float4x4_precision.hpp</a></div><div class="ttdoc">Core features </div></div>
-<div class="ttc" id="a00106_html"><div class="ttname"><a href="a00106.html">matrix_query.hpp</a></div><div class="ttdoc">GLM_GTX_matrix_query </div></div>
-<div class="ttc" id="a00199_html"><div class="ttname"><a href="a00199.html">vector_double1_precision.hpp</a></div><div class="ttdoc">GLM_EXT_vector_double1_precision </div></div>
-<div class="ttc" id="a00087_html"><div class="ttname"><a href="a00087.html">matrix_float2x4_precision.hpp</a></div><div class="ttdoc">Core features </div></div>
-<div class="ttc" id="a00187_html"><div class="ttname"><a href="a00187.html">vec_swizzle.hpp</a></div><div class="ttdoc">GLM_GTX_vec_swizzle </div></div>
-<div class="ttc" id="a00075_html"><div class="ttname"><a href="a00075.html">matrix_double4x2.hpp</a></div><div class="ttdoc">Core features </div></div>
-<div class="ttc" id="a00175_html"><div class="ttname"><a href="a00175.html">type_ptr.hpp</a></div><div class="ttdoc">GLM_GTC_type_ptr </div></div>
-<div class="ttc" id="a00063_html"><div class="ttname"><a href="a00063.html">matrix_double2x2.hpp</a></div><div class="ttdoc">Core features </div></div>
-<div class="ttc" id="a00038_html"><div class="ttname"><a href="a00038.html">gradient_paint.hpp</a></div><div class="ttdoc">GLM_GTX_gradient_paint </div></div>
-<div class="ttc" id="a00009_html"><div class="ttname"><a href="a00009.html">bitfield.hpp</a></div><div class="ttdoc">GLM_GTC_bitfield </div></div>
-<div class="ttc" id="a00138_html"><div class="ttname"><a href="a00138.html">range.hpp</a></div><div class="ttdoc">GLM_GTX_range </div></div>
-<div class="ttc" id="a00209_html"><div class="ttname"><a href="a00209.html">vector_float2_precision.hpp</a></div><div class="ttdoc">Core features </div></div>
-<div class="ttc" id="a00090_html"><div class="ttname"><a href="a00090.html">matrix_float3x3.hpp</a></div><div class="ttdoc">Core features </div></div>
-<div class="ttc" id="a00109_html"><div class="ttname"><a href="a00109.html">matrix_transform.hpp</a></div><div class="ttdoc">GLM_GTC_matrix_transform </div></div>
-<div class="ttc" id="a00061_html"><div class="ttname"><a href="a00061.html">matrix_cross_product.hpp</a></div><div class="ttdoc">GLM_GTX_matrix_cross_product </div></div>
-<div class="ttc" id="a00190_html"><div class="ttname"><a href="a00190.html">vector_bool1_precision.hpp</a></div><div class="ttdoc">GLM_EXT_vector_bool1_precision </div></div>
-<div class="ttc" id="a00161_html"><div class="ttname"><a href="a00161.html">type_aligned.hpp</a></div><div class="ttdoc">GLM_GTC_type_aligned </div></div>
-<div class="ttc" id="a00226_html"><div class="ttname"><a href="a00226.html">vector_uint1.hpp</a></div><div class="ttdoc">GLM_EXT_vector_uint1 </div></div>
-<div class="ttc" id="a00126_html"><div class="ttname"><a href="a00126.html">quaternion.hpp</a></div><div class="ttdoc">GLM_GTX_quaternion </div></div>
-<div class="ttc" id="a00014_html"><div class="ttname"><a href="a00014.html">color_space_YCoCg.hpp</a></div><div class="ttdoc">GLM_GTX_color_space_YCoCg </div></div>
-<div class="ttc" id="a00214_html"><div class="ttname"><a href="a00214.html">vector_int1.hpp</a></div><div class="ttdoc">GLM_EXT_vector_int1 </div></div>
-<div class="ttc" id="a00114_html"><div class="ttname"><a href="a00114.html">normal.hpp</a></div><div class="ttdoc">GLM_GTX_normal </div></div>
-<div class="ttc" id="a00012_html"><div class="ttname"><a href="a00012.html">color_space.hpp</a></div><div class="ttdoc">GLM_GTC_color_space </div></div>
-<div class="ttc" id="a00212_html"><div class="ttname"><a href="a00212.html">vector_float4.hpp</a></div><div class="ttdoc">Core features </div></div>
-<div class="ttc" id="a00112_html"><div class="ttname"><a href="a00112.html">noise.hpp</a></div><div class="ttdoc">GLM_GTC_noise </div></div>
-<div class="ttc" id="a00195_html"><div class="ttname"><a href="a00195.html">vector_bool4.hpp</a></div><div class="ttdoc">Core features </div></div>
-<div class="ttc" id="a00200_html"><div class="ttname"><a href="a00200.html">vector_double2.hpp</a></div><div class="ttdoc">Core features </div></div>
-<div class="ttc" id="a00083_html"><div class="ttname"><a href="a00083.html">matrix_float2x2_precision.hpp</a></div><div class="ttdoc">Core features </div></div>
-<div class="ttc" id="a00100_html"><div class="ttname"><a href="a00100.html">matrix_integer.hpp</a></div><div class="ttdoc">GLM_GTC_matrix_integer </div></div>
-<div class="ttc" id="a00058_html"><div class="ttname"><a href="a00058.html">matrix_access.hpp</a></div><div class="ttdoc">GLM_GTC_matrix_access </div></div>
-<div class="ttc" id="a00029_html"><div class="ttname"><a href="a00029.html">extended_min_max.hpp</a></div><div class="ttdoc">GLM_GTX_extented_min_max </div></div>
-<div class="ttc" id="a00183_html"><div class="ttname"><a href="a00183.html">vec1.hpp</a></div><div class="ttdoc">GLM_GTC_vec1 </div></div>
-<div class="ttc" id="a00158_html"><div class="ttname"><a href="a00158.html">transform.hpp</a></div><div class="ttdoc">GLM_GTX_transform </div></div>
-<div class="ttc" id="a00229_html"><div class="ttname"><a href="a00229.html">vector_uint2_precision.hpp</a></div><div class="ttdoc">Core features </div></div>
-<div class="ttc" id="a00129_html"><div class="ttname"><a href="a00129.html">quaternion_double_precision.hpp</a></div><div class="ttdoc">GLM_EXT_quaternion_double_precision </div></div>
-<div class="ttc" id="a00046_html"><div class="ttname"><a href="a00046.html">log_base.hpp</a></div><div class="ttdoc">GLM_GTX_log_base </div></div>
-<div class="ttc" id="a00017_html"><div class="ttname"><a href="a00017.html">compatibility.hpp</a></div><div class="ttdoc">GLM_GTX_compatibility </div></div>
-<div class="ttc" id="a00146_html"><div class="ttname"><a href="a00146.html">scalar_int_sized.hpp</a></div><div class="ttdoc">GLM_EXT_scalar_int_sized </div></div>
-<div class="ttc" id="a00217_html"><div class="ttname"><a href="a00217.html">vector_int2_precision.hpp</a></div><div class="ttdoc">Core features </div></div>
-<div class="ttc" id="a00117_html"><div class="ttname"><a href="a00117.html">optimum_pow.hpp</a></div><div class="ttdoc">GLM_GTX_optimum_pow </div></div>
-<div class="ttc" id="a00034_html"><div class="ttname"><a href="a00034.html">functions.hpp</a></div><div class="ttdoc">GLM_GTX_functions </div></div>
-<div class="ttc" id="a00134_html"><div class="ttname"><a href="a00134.html">quaternion_relational.hpp</a></div><div class="ttdoc">GLM_EXT_quaternion_relational </div></div>
-<div class="ttc" id="a00205_html"><div class="ttname"><a href="a00205.html">vector_double4_precision.hpp</a></div><div class="ttdoc">Core features </div></div>
-<div class="ttc" id="a00032_html"><div class="ttname"><a href="a00032.html">fast_square_root.hpp</a></div><div class="ttdoc">GLM_GTX_fast_square_root </div></div>
-<div class="ttc" id="a00232_html"><div class="ttname"><a href="a00232.html">vector_uint4.hpp</a></div><div class="ttdoc">Core features </div></div>
-<div class="ttc" id="a00132_html"><div class="ttname"><a href="a00132.html">quaternion_float_precision.hpp</a></div><div class="ttdoc">GLM_EXT_quaternion_float_precision </div></div>
-<div class="ttc" id="a00220_html"><div class="ttname"><a href="a00220.html">vector_int4.hpp</a></div><div class="ttdoc">Core features </div></div>
-<div class="ttc" id="a00078_html"><div class="ttname"><a href="a00078.html">matrix_double4x3_precision.hpp</a></div><div class="ttdoc">Core features </div></div>
-<div class="ttc" id="a00149_html"><div class="ttname"><a href="a00149.html">scalar_relational.hpp</a></div><div class="ttdoc">GLM_EXT_scalar_relational </div></div>
-<div class="ttc" id="a00066_html"><div class="ttname"><a href="a00066.html">matrix_double2x3_precision.hpp</a></div><div class="ttdoc">Core features </div></div>
-<div class="ttc" id="a00037_html"><div class="ttname"><a href="a00037.html">glm.hpp</a></div><div class="ttdoc">Core features </div></div>
-<div class="ttc" id="a00137_html"><div class="ttname"><a href="a00137.html">random.hpp</a></div><div class="ttdoc">GLM_GTC_random </div></div>
-<div class="ttc" id="a00025_html"><div class="ttname"><a href="a00025.html">euler_angles.hpp</a></div><div class="ttdoc">GLM_GTX_euler_angles </div></div>
-<div class="ttc" id="a00154_html"><div class="ttname"><a href="a00154.html">spline.hpp</a></div><div class="ttdoc">GLM_GTX_spline </div></div>
-<div class="ttc" id="a00125_html"><div class="ttname"><a href="a00125.html">quaternion.hpp</a></div><div class="ttdoc">GLM_GTC_quaternion </div></div>
-<div class="ttc" id="a00013_html"><div class="ttname"><a href="a00013.html">color_space.hpp</a></div><div class="ttdoc">GLM_GTX_color_space </div></div>
-<div class="ttc" id="a00213_html"><div class="ttname"><a href="a00213.html">vector_float4_precision.hpp</a></div><div class="ttdoc">Core features </div></div>
-<div class="ttc" id="a00113_html"><div class="ttname"><a href="a00113.html">norm.hpp</a></div><div class="ttdoc">GLM_GTX_norm </div></div>
-<div class="ttc" id="a00011_html"><div class="ttname"><a href="a00011.html">color_encoding.hpp</a></div><div class="ttdoc">GLM_GTX_color_encoding </div></div>
-<div class="ttc" id="a00140_html"><div class="ttname"><a href="a00140.html">reciprocal.hpp</a></div><div class="ttdoc">GLM_GTC_reciprocal </div></div>
-<div class="ttc" id="a00211_html"><div class="ttname"><a href="a00211.html">vector_float3_precision.hpp</a></div><div class="ttdoc">Core features </div></div>
-<div class="ttc" id="a00098_html"><div class="ttname"><a href="a00098.html">matrix_float4x4.hpp</a></div><div class="ttdoc">Core features </div></div>
-<div class="ttc" id="a00111_html"><div class="ttname"><a href="a00111.html">mixed_product.hpp</a></div><div class="ttdoc">GLM_GTX_mixed_producte </div></div>
-<div class="ttc" id="a00069_html"><div class="ttname"><a href="a00069.html">matrix_double3x2.hpp</a></div><div class="ttdoc">Core features </div></div>
-<div class="ttc" id="a00198_html"><div class="ttname"><a href="a00198.html">vector_double1.hpp</a></div><div class="ttdoc">GLM_EXT_vector_double1 </div></div>
-<div class="ttc" id="a00086_html"><div class="ttname"><a href="a00086.html">matrix_float2x4.hpp</a></div><div class="ttdoc">Core features </div></div>
-<div class="ttc" id="a00074_html"><div class="ttname"><a href="a00074.html">matrix_double3x4_precision.hpp</a></div><div class="ttdoc">Core features </div></div>
-<div class="ttc" id="a00174_html"><div class="ttname"><a href="a00174.html">type_precision.hpp</a></div><div class="ttdoc">GLM_GTC_type_precision </div></div>
-<div class="ttc" id="a00145_html"><div class="ttname"><a href="a00145.html">scalar_constants.hpp</a></div><div class="ttdoc">GLM_EXT_scalar_constants </div></div>
-<div class="ttc" id="a00072_html"><div class="ttname"><a href="a00072.html">matrix_double3x3_precision.hpp</a></div><div class="ttdoc">Core features </div></div>
-<div class="ttc" id="a00033_html"><div class="ttname"><a href="a00033.html">fast_trigonometry.hpp</a></div><div class="ttdoc">GLM_GTX_fast_trigonometry </div></div>
-<div class="ttc" id="a00008_html"><div class="ttname"><a href="a00008.html">bit.hpp</a></div><div class="ttdoc">GLM_GTX_bit </div></div>
-<div class="ttc" id="a00233_html"><div class="ttname"><a href="a00233.html">vector_uint4_precision.hpp</a></div><div class="ttdoc">Core features </div></div>
-<div class="ttc" id="a00133_html"><div class="ttname"><a href="a00133.html">quaternion_geometric.hpp</a></div><div class="ttdoc">GLM_EXT_quaternion_geometric </div></div>
-<div class="ttc" id="a00208_html"><div class="ttname"><a href="a00208.html">vector_float2.hpp</a></div><div class="ttdoc">Core features </div></div>
-<div class="ttc" id="a00031_html"><div class="ttname"><a href="a00031.html">fast_exponential.hpp</a></div><div class="ttdoc">GLM_GTX_fast_exponential </div></div>
-<div class="ttc" id="a00231_html"><div class="ttname"><a href="a00231.html">vector_uint3_precision.hpp</a></div><div class="ttdoc">Core features </div></div>
-<div class="ttc" id="a00131_html"><div class="ttname"><a href="a00131.html">quaternion_float.hpp</a></div><div class="ttdoc">GLM_EXT_quaternion_float </div></div>
-<div class="ttc" id="a00089_html"><div class="ttname"><a href="a00089.html">matrix_float3x2_precision.hpp</a></div><div class="ttdoc">Core features </div></div>
-<div class="ttc" id="a00189_html"><div class="ttname"><a href="a00189.html">vector_bool1.hpp</a></div><div class="ttdoc">GLM_EXT_vector_bool1 </div></div>
-<div class="ttc" id="a00077_html"><div class="ttname"><a href="a00077.html">matrix_double4x3.hpp</a></div><div class="ttdoc">Core features </div></div>
-<div class="ttc" id="a00094_html"><div class="ttname"><a href="a00094.html">matrix_float4x2.hpp</a></div><div class="ttdoc">Core features </div></div>
-<div class="ttc" id="a00065_html"><div class="ttname"><a href="a00065.html">matrix_double2x3.hpp</a></div><div class="ttdoc">Core features </div></div>
-<div class="ttc" id="a00194_html"><div class="ttname"><a href="a00194.html">vector_bool3_precision.hpp</a></div><div class="ttdoc">Core features </div></div>
-<div class="ttc" id="a00092_html"><div class="ttname"><a href="a00092.html">matrix_float3x4.hpp</a></div><div class="ttdoc">Core features </div></div>
-<div class="ttc" id="a00028_html"><div class="ttname"><a href="a00028.html">extend.hpp</a></div><div class="ttdoc">GLM_GTX_extend </div></div>
-<div class="ttc" id="a00192_html"><div class="ttname"><a href="a00192.html">vector_bool2_precision.hpp</a></div><div class="ttdoc">Core features </div></div>
-<div class="ttc" id="a00228_html"><div class="ttname"><a href="a00228.html">vector_uint2.hpp</a></div><div class="ttdoc">Core features </div></div>
-<div class="ttc" id="a00128_html"><div class="ttname"><a href="a00128.html">quaternion_double.hpp</a></div><div class="ttdoc">GLM_EXT_quaternion_double </div></div>
-<div class="ttc" id="a00080_html"><div class="ttname"><a href="a00080.html">matrix_double4x4_precision.hpp</a></div><div class="ttdoc">Core features </div></div>
-<div class="ttc" id="a00216_html"><div class="ttname"><a href="a00216.html">vector_int2.hpp</a></div><div class="ttdoc">Core features </div></div>
-<div class="ttc" id="a00116_html"><div class="ttname"><a href="a00116.html">number_precision.hpp</a></div><div class="ttdoc">GLM_GTX_number_precision </div></div>
-<div class="ttc" id="a00204_html"><div class="ttname"><a href="a00204.html">vector_double4.hpp</a></div><div class="ttdoc">Core features </div></div>
-<div class="ttc" id="a00097_html"><div class="ttname"><a href="a00097.html">matrix_float4x3_precision.hpp</a></div><div class="ttdoc">Core features </div></div>
-<div class="ttc" id="a00104_html"><div class="ttname"><a href="a00104.html">matrix_operation.hpp</a></div><div class="ttdoc">GLM_GTX_matrix_operation </div></div>
-<div class="ttc" id="a00202_html"><div class="ttname"><a href="a00202.html">vector_double3.hpp</a></div><div class="ttdoc">Core features </div></div>
-<div class="ttc" id="a00085_html"><div class="ttname"><a href="a00085.html">matrix_float2x3_precision.hpp</a></div><div class="ttdoc">Core features </div></div>
-<div class="ttc" id="a00102_html"><div class="ttname"><a href="a00102.html">matrix_inverse.hpp</a></div><div class="ttdoc">GLM_GTC_matrix_inverse </div></div>
-<div class="ttc" id="a00073_html"><div class="ttname"><a href="a00073.html">matrix_double3x4.hpp</a></div><div class="ttdoc">Core features </div></div>
-<div class="ttc" id="a00148_html"><div class="ttname"><a href="a00148.html">scalar_multiplication.hpp</a></div><div class="ttdoc">Experimental extensions </div></div>
-<div class="ttc" id="a00219_html"><div class="ttname"><a href="a00219.html">vector_int3_precision.hpp</a></div><div class="ttdoc">Core features </div></div>
-<div class="ttc" id="a00119_html"><div class="ttname"><a href="a00119.html">packing.hpp</a></div><div class="ttdoc">GLM_GTC_packing </div></div>
-<div class="ttc" id="a00071_html"><div class="ttname"><a href="a00071.html">matrix_double3x3.hpp</a></div><div class="ttdoc">Core features </div></div>
-<div class="ttc" id="a00007_html"><div class="ttname"><a href="a00007.html">associated_min_max.hpp</a></div><div class="ttdoc">GLM_GTX_associated_min_max </div></div>
-<div class="ttc" id="a00207_html"><div class="ttname"><a href="a00207.html">vector_float1_precision.hpp</a></div><div class="ttdoc">GLM_EXT_vector_float1_precision </div></div>
-<div class="ttc" id="a00107_html"><div class="ttname"><a href="a00107.html">matrix_relational.hpp</a></div><div class="ttdoc">GLM_EXT_matrix_relational </div></div>
-</div><!-- fragment --></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.10
-</small></address>
-</body>
-</html>

+ 0 - 127
doc/api/a00028_source.html

@@ -1,127 +0,0 @@
-<!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.10"/>
-<title>0.9.9 API documentation: extend.hpp Source File</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="search/search.css" rel="stylesheet" type="text/css"/>
-<script type="text/javascript" src="search/searchdata.js"></script>
-<script type="text/javascript" src="search/search.js"></script>
-<script type="text/javascript">
-  $(document).ready(function() { init_search(); });
-</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 id="projectlogo"><img alt="Logo" src="logo-mini.png"/></td>
-  <td id="projectalign" style="padding-left: 0.5em;">
-   <div id="projectname">0.9.9 API documentation
-   </div>
-  </td>
- </tr>
- </tbody>
-</table>
-</div>
-<!-- end header part -->
-<!-- Generated by Doxygen 1.8.10 -->
-<script type="text/javascript">
-var searchBox = new SearchBox("searchBox", "search",false,'Search');
-</script>
-  <div id="navrow1" class="tabs">
-    <ul class="tablist">
-      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
-      <li><a href="modules.html"><span>Modules</span></a></li>
-      <li class="current"><a href="files.html"><span>Files</span></a></li>
-      <li>
-        <div id="MSearchBox" class="MSearchBoxInactive">
-        <span class="left">
-          <img id="MSearchSelect" src="search/mag_sel.png"
-               onmouseover="return searchBox.OnSearchSelectShow()"
-               onmouseout="return searchBox.OnSearchSelectHide()"
-               alt=""/>
-          <input type="text" id="MSearchField" value="Search" accesskey="S"
-               onfocus="searchBox.OnSearchFieldFocus(true)" 
-               onblur="searchBox.OnSearchFieldFocus(false)" 
-               onkeyup="searchBox.OnSearchFieldChange(event)"/>
-          </span><span class="right">
-            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
-          </span>
-        </div>
-      </li>
-    </ul>
-  </div>
-  <div id="navrow2" class="tabs2">
-    <ul class="tablist">
-      <li><a href="files.html"><span>File&#160;List</span></a></li>
-    </ul>
-  </div>
-<!-- window showing the filter options -->
-<div id="MSearchSelectWindow"
-     onmouseover="return searchBox.OnSearchSelectShow()"
-     onmouseout="return searchBox.OnSearchSelectHide()"
-     onkeydown="return searchBox.OnSearchSelectKey(event)">
-</div>
-
-<!-- iframe showing the search results (closed by default) -->
-<div id="MSearchResultsWindow">
-<iframe src="javascript:void(0)" frameborder="0" 
-        name="MSearchResults" id="MSearchResults">
-</iframe>
-</div>
-
-<div id="nav-path" class="navpath">
-  <ul>
-<li class="navelem"><a class="el" href="dir_3a581ba30d25676e4b797b1f96d53b45.html">F:</a></li><li class="navelem"><a class="el" href="dir_9e5fe034a00e89334fd5186c3e7db156.html">G-Truc</a></li><li class="navelem"><a class="el" href="dir_d9496f0844b48bc7e53b5af8c99b9ab2.html">Source</a></li><li class="navelem"><a class="el" href="dir_a8bee7be44182a33f3820393ae0b105d.html">G-Truc</a></li><li class="navelem"><a class="el" href="dir_44e5e654415abd9ca6fdeaddaff8565e.html">glm</a></li><li class="navelem"><a class="el" href="dir_cef2d71d502cb69a9252bca2297d9549.html">glm</a></li><li class="navelem"><a class="el" href="dir_f35778ec600a1b9bbc4524e62e226aa2.html">gtx</a></li>  </ul>
-</div>
-</div><!-- top -->
-<div class="header">
-  <div class="headertitle">
-<div class="title">extend.hpp</div>  </div>
-</div><!--header-->
-<div class="contents">
-<a href="a00028.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span>&#160;</div>
-<div class="line"><a name="l00013"></a><span class="lineno">   13</span>&#160;<span class="preprocessor">#pragma once</span></div>
-<div class="line"><a name="l00014"></a><span class="lineno">   14</span>&#160;</div>
-<div class="line"><a name="l00015"></a><span class="lineno">   15</span>&#160;<span class="comment">// Dependency:</span></div>
-<div class="line"><a name="l00016"></a><span class="lineno">   16</span>&#160;<span class="preprocessor">#include &quot;../glm.hpp&quot;</span></div>
-<div class="line"><a name="l00017"></a><span class="lineno">   17</span>&#160;</div>
-<div class="line"><a name="l00018"></a><span class="lineno">   18</span>&#160;<span class="preprocessor">#if GLM_MESSAGES == GLM_ENABLE &amp;&amp; !defined(GLM_EXT_INCLUDED)</span></div>
-<div class="line"><a name="l00019"></a><span class="lineno">   19</span>&#160;<span class="preprocessor">#       ifndef GLM_ENABLE_EXPERIMENTAL</span></div>
-<div class="line"><a name="l00020"></a><span class="lineno">   20</span>&#160;<span class="preprocessor">#               pragma message(&quot;GLM: GLM_GTX_extend is an experimental extension and may change in the future. Use #define GLM_ENABLE_EXPERIMENTAL before including it, if you really want to use it.&quot;)</span></div>
-<div class="line"><a name="l00021"></a><span class="lineno">   21</span>&#160;<span class="preprocessor">#       else</span></div>
-<div class="line"><a name="l00022"></a><span class="lineno">   22</span>&#160;<span class="preprocessor">#               pragma message(&quot;GLM: GLM_GTX_extend extension included&quot;)</span></div>
-<div class="line"><a name="l00023"></a><span class="lineno">   23</span>&#160;<span class="preprocessor">#       endif</span></div>
-<div class="line"><a name="l00024"></a><span class="lineno">   24</span>&#160;<span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00025"></a><span class="lineno">   25</span>&#160;</div>
-<div class="line"><a name="l00026"></a><span class="lineno">   26</span>&#160;<span class="keyword">namespace </span><a class="code" href="a00236.html">glm</a></div>
-<div class="line"><a name="l00027"></a><span class="lineno">   27</span>&#160;{</div>
-<div class="line"><a name="l00030"></a><span class="lineno">   30</span>&#160;</div>
-<div class="line"><a name="l00033"></a><span class="lineno">   33</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> genType&gt;</div>
-<div class="line"><a name="l00034"></a><span class="lineno">   34</span>&#160;        GLM_FUNC_DECL genType <a class="code" href="a00320.html#ga8140caae613b0f847ab0d7175dc03a37">extend</a>(</div>
-<div class="line"><a name="l00035"></a><span class="lineno">   35</span>&#160;                genType <span class="keyword">const</span>&amp; Origin,</div>
-<div class="line"><a name="l00036"></a><span class="lineno">   36</span>&#160;                genType <span class="keyword">const</span>&amp; Source,</div>
-<div class="line"><a name="l00037"></a><span class="lineno">   37</span>&#160;                <span class="keyword">typename</span> genType::value_type <span class="keyword">const</span> Length);</div>
-<div class="line"><a name="l00038"></a><span class="lineno">   38</span>&#160;</div>
-<div class="line"><a name="l00040"></a><span class="lineno">   40</span>&#160;}<span class="comment">//namespace glm</span></div>
-<div class="line"><a name="l00041"></a><span class="lineno">   41</span>&#160;</div>
-<div class="line"><a name="l00042"></a><span class="lineno">   42</span>&#160;<span class="preprocessor">#include &quot;extend.inl&quot;</span></div>
-<div class="ttc" id="a00320_html_ga8140caae613b0f847ab0d7175dc03a37"><div class="ttname"><a href="a00320.html#ga8140caae613b0f847ab0d7175dc03a37">glm::extend</a></div><div class="ttdeci">GLM_FUNC_DECL genType extend(genType const &amp;Origin, genType const &amp;Source, typename genType::value_type const Length)</div><div class="ttdoc">Extends of Length the Origin position using the (Source - Origin) direction. </div></div>
-<div class="ttc" id="a00236_html"><div class="ttname"><a href="a00236.html">glm</a></div><div class="ttdef"><b>Definition:</b> <a href="a00015_source.html#l00020">common.hpp:20</a></div></div>
-</div><!-- fragment --></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.10
-</small></address>
-</body>
-</html>

+ 252 - 159
doc/api/a00029_source.html

@@ -1,19 +1,17 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://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.10"/>
-<title>0.9.9 API documentation: extended_min_max.hpp Source File</title>
+<meta name="generator" content="Doxygen 1.8.18"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>1.0.0 API documentation: qualifier.hpp Source File</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="search/search.css" rel="stylesheet" type="text/css"/>
 <script type="text/javascript" src="search/searchdata.js"></script>
 <script type="text/javascript" src="search/search.js"></script>
-<script type="text/javascript">
-  $(document).ready(function() { init_search(); });
-</script>
 <link href="doxygen.css" rel="stylesheet" type="text/css" />
 </head>
 <body>
@@ -24,7 +22,7 @@
  <tr style="height: 56px;">
   <td id="projectlogo"><img alt="Logo" src="logo-mini.png"/></td>
   <td id="projectalign" style="padding-left: 0.5em;">
-   <div id="projectname">0.9.9 API documentation
+   <div id="projectname">1.0.0 API documentation
    </div>
   </td>
  </tr>
@@ -32,38 +30,22 @@
 </table>
 </div>
 <!-- end header part -->
-<!-- Generated by Doxygen 1.8.10 -->
+<!-- Generated by Doxygen 1.8.18 -->
 <script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
 var searchBox = new SearchBox("searchBox", "search",false,'Search');
+/* @license-end */
 </script>
-  <div id="navrow1" class="tabs">
-    <ul class="tablist">
-      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
-      <li><a href="modules.html"><span>Modules</span></a></li>
-      <li class="current"><a href="files.html"><span>Files</span></a></li>
-      <li>
-        <div id="MSearchBox" class="MSearchBoxInactive">
-        <span class="left">
-          <img id="MSearchSelect" src="search/mag_sel.png"
-               onmouseover="return searchBox.OnSearchSelectShow()"
-               onmouseout="return searchBox.OnSearchSelectHide()"
-               alt=""/>
-          <input type="text" id="MSearchField" value="Search" accesskey="S"
-               onfocus="searchBox.OnSearchFieldFocus(true)" 
-               onblur="searchBox.OnSearchFieldFocus(false)" 
-               onkeyup="searchBox.OnSearchFieldChange(event)"/>
-          </span><span class="right">
-            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
-          </span>
-        </div>
-      </li>
-    </ul>
-  </div>
-  <div id="navrow2" class="tabs2">
-    <ul class="tablist">
-      <li><a href="files.html"><span>File&#160;List</span></a></li>
-    </ul>
-  </div>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
 <!-- window showing the filter options -->
 <div id="MSearchSelectWindow"
      onmouseover="return searchBox.OnSearchSelectShow()"
@@ -80,140 +62,251 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 
 <div id="nav-path" class="navpath">
   <ul>
-<li class="navelem"><a class="el" href="dir_3a581ba30d25676e4b797b1f96d53b45.html">F:</a></li><li class="navelem"><a class="el" href="dir_9e5fe034a00e89334fd5186c3e7db156.html">G-Truc</a></li><li class="navelem"><a class="el" href="dir_d9496f0844b48bc7e53b5af8c99b9ab2.html">Source</a></li><li class="navelem"><a class="el" href="dir_a8bee7be44182a33f3820393ae0b105d.html">G-Truc</a></li><li class="navelem"><a class="el" href="dir_44e5e654415abd9ca6fdeaddaff8565e.html">glm</a></li><li class="navelem"><a class="el" href="dir_cef2d71d502cb69a9252bca2297d9549.html">glm</a></li><li class="navelem"><a class="el" href="dir_f35778ec600a1b9bbc4524e62e226aa2.html">gtx</a></li>  </ul>
+<li class="navelem"><a class="el" href="dir_885cc87fac2d91e269af0a5a959fa5f6.html">E:</a></li><li class="navelem"><a class="el" href="dir_63ed049134a778d525e06b63afc2c979.html">Github</a></li><li class="navelem"><a class="el" href="dir_c98a9ac98258ab9f831b188d66361a70.html">g-truc</a></li><li class="navelem"><a class="el" href="dir_50f12b6ceb23d7f6adfb377a1ae8b006.html">glm</a></li><li class="navelem"><a class="el" href="dir_fca33f1b5115d46f42c670590789c0d2.html">glm</a></li><li class="navelem"><a class="el" href="dir_382f4fd018b81be8753cb53c0a41a09a.html">detail</a></li>  </ul>
 </div>
 </div><!-- top -->
 <div class="header">
   <div class="headertitle">
-<div class="title">extended_min_max.hpp</div>  </div>
+<div class="title">qualifier.hpp</div>  </div>
 </div><!--header-->
 <div class="contents">
-<a href="a00029.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span>&#160;</div>
-<div class="line"><a name="l00013"></a><span class="lineno">   13</span>&#160;<span class="preprocessor">#pragma once</span></div>
-<div class="line"><a name="l00014"></a><span class="lineno">   14</span>&#160;</div>
-<div class="line"><a name="l00015"></a><span class="lineno">   15</span>&#160;<span class="comment">// Dependency:</span></div>
-<div class="line"><a name="l00016"></a><span class="lineno">   16</span>&#160;<span class="preprocessor">#include &quot;../glm.hpp&quot;</span></div>
-<div class="line"><a name="l00017"></a><span class="lineno">   17</span>&#160;</div>
-<div class="line"><a name="l00018"></a><span class="lineno">   18</span>&#160;<span class="preprocessor">#if GLM_MESSAGES == GLM_ENABLE &amp;&amp; !defined(GLM_EXT_INCLUDED)</span></div>
-<div class="line"><a name="l00019"></a><span class="lineno">   19</span>&#160;<span class="preprocessor">#       ifndef GLM_ENABLE_EXPERIMENTAL</span></div>
-<div class="line"><a name="l00020"></a><span class="lineno">   20</span>&#160;<span class="preprocessor">#               pragma message(&quot;GLM: GLM_GTX_extented_min_max is an experimental extension and may change in the future. Use #define GLM_ENABLE_EXPERIMENTAL before including it, if you really want to use it.&quot;)</span></div>
-<div class="line"><a name="l00021"></a><span class="lineno">   21</span>&#160;<span class="preprocessor">#       else</span></div>
-<div class="line"><a name="l00022"></a><span class="lineno">   22</span>&#160;<span class="preprocessor">#               pragma message(&quot;GLM: GLM_GTX_extented_min_max extension included&quot;)</span></div>
-<div class="line"><a name="l00023"></a><span class="lineno">   23</span>&#160;<span class="preprocessor">#       endif</span></div>
-<div class="line"><a name="l00024"></a><span class="lineno">   24</span>&#160;<span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00025"></a><span class="lineno">   25</span>&#160;</div>
-<div class="line"><a name="l00026"></a><span class="lineno">   26</span>&#160;<span class="keyword">namespace </span><a class="code" href="a00236.html">glm</a></div>
-<div class="line"><a name="l00027"></a><span class="lineno">   27</span>&#160;{</div>
-<div class="line"><a name="l00030"></a><span class="lineno">   30</span>&#160;</div>
-<div class="line"><a name="l00033"></a><span class="lineno">   33</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T&gt;</div>
-<div class="line"><a name="l00034"></a><span class="lineno">   34</span>&#160;        GLM_FUNC_DECL T <a class="code" href="a00321.html#ga7471ea4159eed8dd9ea4ac5d46c2fead">min</a>(</div>
-<div class="line"><a name="l00035"></a><span class="lineno">   35</span>&#160;                T <span class="keyword">const</span>&amp; x,</div>
-<div class="line"><a name="l00036"></a><span class="lineno">   36</span>&#160;                T <span class="keyword">const</span>&amp; y,</div>
-<div class="line"><a name="l00037"></a><span class="lineno">   37</span>&#160;                T <span class="keyword">const</span>&amp; z);</div>
-<div class="line"><a name="l00038"></a><span class="lineno">   38</span>&#160;</div>
-<div class="line"><a name="l00041"></a><span class="lineno">   41</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T, <span class="keyword">template</span>&lt;<span class="keyword">typename</span>&gt; <span class="keyword">class </span>C&gt;</div>
-<div class="line"><a name="l00042"></a><span class="lineno">   42</span>&#160;        GLM_FUNC_DECL C&lt;T&gt; <a class="code" href="a00321.html#ga7471ea4159eed8dd9ea4ac5d46c2fead">min</a>(</div>
-<div class="line"><a name="l00043"></a><span class="lineno">   43</span>&#160;                C&lt;T&gt; <span class="keyword">const</span>&amp; x,</div>
-<div class="line"><a name="l00044"></a><span class="lineno">   44</span>&#160;                <span class="keyword">typename</span> C&lt;T&gt;::T <span class="keyword">const</span>&amp; y,</div>
-<div class="line"><a name="l00045"></a><span class="lineno">   45</span>&#160;                <span class="keyword">typename</span> C&lt;T&gt;::T <span class="keyword">const</span>&amp; z);</div>
-<div class="line"><a name="l00046"></a><span class="lineno">   46</span>&#160;</div>
-<div class="line"><a name="l00049"></a><span class="lineno">   49</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T, <span class="keyword">template</span>&lt;<span class="keyword">typename</span>&gt; <span class="keyword">class </span>C&gt;</div>
-<div class="line"><a name="l00050"></a><span class="lineno">   50</span>&#160;        GLM_FUNC_DECL C&lt;T&gt; <a class="code" href="a00321.html#ga7471ea4159eed8dd9ea4ac5d46c2fead">min</a>(</div>
-<div class="line"><a name="l00051"></a><span class="lineno">   51</span>&#160;                C&lt;T&gt; <span class="keyword">const</span>&amp; x,</div>
-<div class="line"><a name="l00052"></a><span class="lineno">   52</span>&#160;                C&lt;T&gt; <span class="keyword">const</span>&amp; y,</div>
-<div class="line"><a name="l00053"></a><span class="lineno">   53</span>&#160;                C&lt;T&gt; <span class="keyword">const</span>&amp; z);</div>
-<div class="line"><a name="l00054"></a><span class="lineno">   54</span>&#160;</div>
-<div class="line"><a name="l00057"></a><span class="lineno">   57</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T&gt;</div>
-<div class="line"><a name="l00058"></a><span class="lineno">   58</span>&#160;        GLM_FUNC_DECL T <a class="code" href="a00321.html#ga7471ea4159eed8dd9ea4ac5d46c2fead">min</a>(</div>
-<div class="line"><a name="l00059"></a><span class="lineno">   59</span>&#160;                T <span class="keyword">const</span>&amp; x,</div>
-<div class="line"><a name="l00060"></a><span class="lineno">   60</span>&#160;                T <span class="keyword">const</span>&amp; y,</div>
-<div class="line"><a name="l00061"></a><span class="lineno">   61</span>&#160;                T <span class="keyword">const</span>&amp; z,</div>
-<div class="line"><a name="l00062"></a><span class="lineno">   62</span>&#160;                T <span class="keyword">const</span>&amp; w);</div>
-<div class="line"><a name="l00063"></a><span class="lineno">   63</span>&#160;</div>
-<div class="line"><a name="l00066"></a><span class="lineno">   66</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T, <span class="keyword">template</span>&lt;<span class="keyword">typename</span>&gt; <span class="keyword">class </span>C&gt;</div>
-<div class="line"><a name="l00067"></a><span class="lineno">   67</span>&#160;        GLM_FUNC_DECL C&lt;T&gt; <a class="code" href="a00321.html#ga7471ea4159eed8dd9ea4ac5d46c2fead">min</a>(</div>
-<div class="line"><a name="l00068"></a><span class="lineno">   68</span>&#160;                C&lt;T&gt; <span class="keyword">const</span>&amp; x,</div>
-<div class="line"><a name="l00069"></a><span class="lineno">   69</span>&#160;                <span class="keyword">typename</span> C&lt;T&gt;::T <span class="keyword">const</span>&amp; y,</div>
-<div class="line"><a name="l00070"></a><span class="lineno">   70</span>&#160;                <span class="keyword">typename</span> C&lt;T&gt;::T <span class="keyword">const</span>&amp; z,</div>
-<div class="line"><a name="l00071"></a><span class="lineno">   71</span>&#160;                <span class="keyword">typename</span> C&lt;T&gt;::T <span class="keyword">const</span>&amp; w);</div>
-<div class="line"><a name="l00072"></a><span class="lineno">   72</span>&#160;</div>
-<div class="line"><a name="l00075"></a><span class="lineno">   75</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T, <span class="keyword">template</span>&lt;<span class="keyword">typename</span>&gt; <span class="keyword">class </span>C&gt;</div>
-<div class="line"><a name="l00076"></a><span class="lineno">   76</span>&#160;        GLM_FUNC_DECL C&lt;T&gt; <a class="code" href="a00321.html#ga7471ea4159eed8dd9ea4ac5d46c2fead">min</a>(</div>
-<div class="line"><a name="l00077"></a><span class="lineno">   77</span>&#160;                C&lt;T&gt; <span class="keyword">const</span>&amp; x,</div>
-<div class="line"><a name="l00078"></a><span class="lineno">   78</span>&#160;                C&lt;T&gt; <span class="keyword">const</span>&amp; y,</div>
-<div class="line"><a name="l00079"></a><span class="lineno">   79</span>&#160;                C&lt;T&gt; <span class="keyword">const</span>&amp; z,</div>
-<div class="line"><a name="l00080"></a><span class="lineno">   80</span>&#160;                C&lt;T&gt; <span class="keyword">const</span>&amp; w);</div>
-<div class="line"><a name="l00081"></a><span class="lineno">   81</span>&#160;</div>
-<div class="line"><a name="l00084"></a><span class="lineno">   84</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T&gt;</div>
-<div class="line"><a name="l00085"></a><span class="lineno">   85</span>&#160;        GLM_FUNC_DECL T <a class="code" href="a00321.html#gaacffbc466c2d08c140b181e7fd8a4858">max</a>(</div>
-<div class="line"><a name="l00086"></a><span class="lineno">   86</span>&#160;                T <span class="keyword">const</span>&amp; x,</div>
-<div class="line"><a name="l00087"></a><span class="lineno">   87</span>&#160;                T <span class="keyword">const</span>&amp; y,</div>
-<div class="line"><a name="l00088"></a><span class="lineno">   88</span>&#160;                T <span class="keyword">const</span>&amp; z);</div>
-<div class="line"><a name="l00089"></a><span class="lineno">   89</span>&#160;</div>
-<div class="line"><a name="l00092"></a><span class="lineno">   92</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T, <span class="keyword">template</span>&lt;<span class="keyword">typename</span>&gt; <span class="keyword">class </span>C&gt;</div>
-<div class="line"><a name="l00093"></a><span class="lineno">   93</span>&#160;        GLM_FUNC_DECL C&lt;T&gt; <a class="code" href="a00321.html#gaacffbc466c2d08c140b181e7fd8a4858">max</a>(</div>
-<div class="line"><a name="l00094"></a><span class="lineno">   94</span>&#160;                C&lt;T&gt; <span class="keyword">const</span>&amp; x,</div>
-<div class="line"><a name="l00095"></a><span class="lineno">   95</span>&#160;                <span class="keyword">typename</span> C&lt;T&gt;::T <span class="keyword">const</span>&amp; y,</div>
-<div class="line"><a name="l00096"></a><span class="lineno">   96</span>&#160;                <span class="keyword">typename</span> C&lt;T&gt;::T <span class="keyword">const</span>&amp; z);</div>
-<div class="line"><a name="l00097"></a><span class="lineno">   97</span>&#160;</div>
-<div class="line"><a name="l00100"></a><span class="lineno">  100</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T, <span class="keyword">template</span>&lt;<span class="keyword">typename</span>&gt; <span class="keyword">class </span>C&gt;</div>
-<div class="line"><a name="l00101"></a><span class="lineno">  101</span>&#160;        GLM_FUNC_DECL C&lt;T&gt; <a class="code" href="a00321.html#gaacffbc466c2d08c140b181e7fd8a4858">max</a>(</div>
-<div class="line"><a name="l00102"></a><span class="lineno">  102</span>&#160;                C&lt;T&gt; <span class="keyword">const</span>&amp; x,</div>
-<div class="line"><a name="l00103"></a><span class="lineno">  103</span>&#160;                C&lt;T&gt; <span class="keyword">const</span>&amp; y,</div>
-<div class="line"><a name="l00104"></a><span class="lineno">  104</span>&#160;                C&lt;T&gt; <span class="keyword">const</span>&amp; z);</div>
-<div class="line"><a name="l00105"></a><span class="lineno">  105</span>&#160;</div>
-<div class="line"><a name="l00108"></a><span class="lineno">  108</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T&gt;</div>
-<div class="line"><a name="l00109"></a><span class="lineno">  109</span>&#160;        GLM_FUNC_DECL T <a class="code" href="a00321.html#gaacffbc466c2d08c140b181e7fd8a4858">max</a>(</div>
-<div class="line"><a name="l00110"></a><span class="lineno">  110</span>&#160;                T <span class="keyword">const</span>&amp; x,</div>
-<div class="line"><a name="l00111"></a><span class="lineno">  111</span>&#160;                T <span class="keyword">const</span>&amp; y,</div>
-<div class="line"><a name="l00112"></a><span class="lineno">  112</span>&#160;                T <span class="keyword">const</span>&amp; z,</div>
-<div class="line"><a name="l00113"></a><span class="lineno">  113</span>&#160;                T <span class="keyword">const</span>&amp; w);</div>
-<div class="line"><a name="l00114"></a><span class="lineno">  114</span>&#160;</div>
-<div class="line"><a name="l00117"></a><span class="lineno">  117</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T, <span class="keyword">template</span>&lt;<span class="keyword">typename</span>&gt; <span class="keyword">class </span>C&gt;</div>
-<div class="line"><a name="l00118"></a><span class="lineno">  118</span>&#160;        GLM_FUNC_DECL C&lt;T&gt; <a class="code" href="a00321.html#gaacffbc466c2d08c140b181e7fd8a4858">max</a>(</div>
-<div class="line"><a name="l00119"></a><span class="lineno">  119</span>&#160;                C&lt;T&gt; <span class="keyword">const</span>&amp; x,</div>
-<div class="line"><a name="l00120"></a><span class="lineno">  120</span>&#160;                <span class="keyword">typename</span> C&lt;T&gt;::T <span class="keyword">const</span>&amp; y,</div>
-<div class="line"><a name="l00121"></a><span class="lineno">  121</span>&#160;                <span class="keyword">typename</span> C&lt;T&gt;::T <span class="keyword">const</span>&amp; z,</div>
-<div class="line"><a name="l00122"></a><span class="lineno">  122</span>&#160;                <span class="keyword">typename</span> C&lt;T&gt;::T <span class="keyword">const</span>&amp; w);</div>
-<div class="line"><a name="l00123"></a><span class="lineno">  123</span>&#160;</div>
-<div class="line"><a name="l00126"></a><span class="lineno">  126</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T, <span class="keyword">template</span>&lt;<span class="keyword">typename</span>&gt; <span class="keyword">class </span>C&gt;</div>
-<div class="line"><a name="l00127"></a><span class="lineno">  127</span>&#160;        GLM_FUNC_DECL C&lt;T&gt; <a class="code" href="a00321.html#gaacffbc466c2d08c140b181e7fd8a4858">max</a>(</div>
-<div class="line"><a name="l00128"></a><span class="lineno">  128</span>&#160;                C&lt;T&gt; <span class="keyword">const</span>&amp; x,</div>
-<div class="line"><a name="l00129"></a><span class="lineno">  129</span>&#160;                C&lt;T&gt; <span class="keyword">const</span>&amp; y,</div>
-<div class="line"><a name="l00130"></a><span class="lineno">  130</span>&#160;                C&lt;T&gt; <span class="keyword">const</span>&amp; z,</div>
-<div class="line"><a name="l00131"></a><span class="lineno">  131</span>&#160;                C&lt;T&gt; <span class="keyword">const</span>&amp; w);</div>
-<div class="line"><a name="l00132"></a><span class="lineno">  132</span>&#160;</div>
-<div class="line"><a name="l00138"></a><span class="lineno">  138</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> genType&gt;</div>
-<div class="line"><a name="l00139"></a><span class="lineno">  139</span>&#160;        GLM_FUNC_DECL genType <a class="code" href="a00321.html#gaa3200559611ac5b9b9ae7283547916a7">fmin</a>(genType x, genType y);</div>
-<div class="line"><a name="l00140"></a><span class="lineno">  140</span>&#160;</div>
-<div class="line"><a name="l00147"></a><span class="lineno">  147</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> genType&gt;</div>
-<div class="line"><a name="l00148"></a><span class="lineno">  148</span>&#160;        GLM_FUNC_DECL genType <a class="code" href="a00321.html#gae5792cb2b51190057e4aea027eb56f81">fmax</a>(genType x, genType y);</div>
-<div class="line"><a name="l00149"></a><span class="lineno">  149</span>&#160;</div>
-<div class="line"><a name="l00155"></a><span class="lineno">  155</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> genType&gt;</div>
-<div class="line"><a name="l00156"></a><span class="lineno">  156</span>&#160;        GLM_FUNC_DECL genType <a class="code" href="a00321.html#ga5c15fa4709763c269c86c0b8b3aa2297">fclamp</a>(genType x, genType minVal, genType maxVal);</div>
-<div class="line"><a name="l00157"></a><span class="lineno">  157</span>&#160;</div>
-<div class="line"><a name="l00165"></a><span class="lineno">  165</span>&#160;        <span class="keyword">template</span>&lt;length_t L, <span class="keyword">typename</span> T, qualifier Q&gt;</div>
-<div class="line"><a name="l00166"></a><span class="lineno">  166</span>&#160;        GLM_FUNC_DECL vec&lt;L, T, Q&gt; <a class="code" href="a00321.html#ga5c15fa4709763c269c86c0b8b3aa2297">fclamp</a>(vec&lt;L, T, Q&gt; <span class="keyword">const</span>&amp; x, T minVal, T maxVal);</div>
-<div class="line"><a name="l00167"></a><span class="lineno">  167</span>&#160;</div>
-<div class="line"><a name="l00175"></a><span class="lineno">  175</span>&#160;        <span class="keyword">template</span>&lt;length_t L, <span class="keyword">typename</span> T, qualifier Q&gt;</div>
-<div class="line"><a name="l00176"></a><span class="lineno">  176</span>&#160;        GLM_FUNC_DECL vec&lt;L, T, Q&gt; <a class="code" href="a00321.html#ga5c15fa4709763c269c86c0b8b3aa2297">fclamp</a>(vec&lt;L, T, Q&gt; <span class="keyword">const</span>&amp; x, vec&lt;L, T, Q&gt; <span class="keyword">const</span>&amp; minVal, vec&lt;L, T, Q&gt; <span class="keyword">const</span>&amp; maxVal);</div>
-<div class="line"><a name="l00177"></a><span class="lineno">  177</span>&#160;</div>
-<div class="line"><a name="l00178"></a><span class="lineno">  178</span>&#160;</div>
-<div class="line"><a name="l00180"></a><span class="lineno">  180</span>&#160;}<span class="comment">//namespace glm</span></div>
-<div class="line"><a name="l00181"></a><span class="lineno">  181</span>&#160;</div>
-<div class="line"><a name="l00182"></a><span class="lineno">  182</span>&#160;<span class="preprocessor">#include &quot;extended_min_max.inl&quot;</span></div>
-<div class="ttc" id="a00321_html_ga5c15fa4709763c269c86c0b8b3aa2297"><div class="ttname"><a href="a00321.html#ga5c15fa4709763c269c86c0b8b3aa2297">glm::fclamp</a></div><div class="ttdeci">GLM_FUNC_DECL vec&lt; L, T, Q &gt; fclamp(vec&lt; L, T, Q &gt; const &amp;x, vec&lt; L, T, Q &gt; const &amp;minVal, vec&lt; L, T, Q &gt; const &amp;maxVal)</div><div class="ttdoc">Returns min(max(x, minVal), maxVal) for each component in x. </div></div>
-<div class="ttc" id="a00321_html_gaa3200559611ac5b9b9ae7283547916a7"><div class="ttname"><a href="a00321.html#gaa3200559611ac5b9b9ae7283547916a7">glm::fmin</a></div><div class="ttdeci">GLM_FUNC_DECL genType fmin(genType x, genType y)</div><div class="ttdoc">Returns y if y < x; otherwise, it returns x. </div></div>
-<div class="ttc" id="a00321_html_gae5792cb2b51190057e4aea027eb56f81"><div class="ttname"><a href="a00321.html#gae5792cb2b51190057e4aea027eb56f81">glm::fmax</a></div><div class="ttdeci">GLM_FUNC_DECL genType fmax(genType x, genType y)</div><div class="ttdoc">Returns y if x < y; otherwise, it returns x. </div></div>
-<div class="ttc" id="a00321_html_gaacffbc466c2d08c140b181e7fd8a4858"><div class="ttname"><a href="a00321.html#gaacffbc466c2d08c140b181e7fd8a4858">glm::max</a></div><div class="ttdeci">GLM_FUNC_DECL C&lt; T &gt; max(C&lt; T &gt; const &amp;x, C&lt; T &gt; const &amp;y, C&lt; T &gt; const &amp;z, C&lt; T &gt; const &amp;w)</div><div class="ttdoc">Return the maximum component-wise values of 4 inputs. </div></div>
-<div class="ttc" id="a00321_html_ga7471ea4159eed8dd9ea4ac5d46c2fead"><div class="ttname"><a href="a00321.html#ga7471ea4159eed8dd9ea4ac5d46c2fead">glm::min</a></div><div class="ttdeci">GLM_FUNC_DECL C&lt; T &gt; min(C&lt; T &gt; const &amp;x, C&lt; T &gt; const &amp;y, C&lt; T &gt; const &amp;z, C&lt; T &gt; const &amp;w)</div><div class="ttdoc">Return the minimum component-wise values of 4 inputs. </div></div>
-<div class="ttc" id="a00236_html"><div class="ttname"><a href="a00236.html">glm</a></div><div class="ttdef"><b>Definition:</b> <a href="a00015_source.html#l00020">common.hpp:20</a></div></div>
+<div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span>&#160;<span class="preprocessor">#pragma once</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno">    2</span>&#160; </div>
+<div class="line"><a name="l00003"></a><span class="lineno">    3</span>&#160;<span class="preprocessor">#include &quot;setup.hpp&quot;</span></div>
+<div class="line"><a name="l00004"></a><span class="lineno">    4</span>&#160; </div>
+<div class="line"><a name="l00005"></a><span class="lineno">    5</span>&#160;<span class="keyword">namespace </span>glm</div>
+<div class="line"><a name="l00006"></a><span class="lineno">    6</span>&#160;{</div>
+<div class="line"><a name="l00008"></a><span class="lineno">    8</span>&#160;        <span class="keyword">enum</span> qualifier</div>
+<div class="line"><a name="l00009"></a><span class="lineno">    9</span>&#160;        {</div>
+<div class="line"><a name="l00010"></a><span class="lineno">   10</span>&#160;                packed_highp, </div>
+<div class="line"><a name="l00011"></a><span class="lineno">   11</span>&#160;                packed_mediump, </div>
+<div class="line"><a name="l00012"></a><span class="lineno">   12</span>&#160;                packed_lowp, </div>
+<div class="line"><a name="l00013"></a><span class="lineno">   13</span>&#160; </div>
+<div class="line"><a name="l00014"></a><span class="lineno">   14</span>&#160;<span class="preprocessor">#               if GLM_CONFIG_ALIGNED_GENTYPES == GLM_ENABLE</span></div>
+<div class="line"><a name="l00015"></a><span class="lineno">   15</span>&#160;                        aligned_highp, </div>
+<div class="line"><a name="l00016"></a><span class="lineno">   16</span>&#160;                        aligned_mediump, </div>
+<div class="line"><a name="l00017"></a><span class="lineno">   17</span>&#160;                        aligned_lowp, <span class="comment">// ///&lt; Typed data is aligned in memory allowing SIMD optimizations and operations are executed with high precision in term of ULPs to maximize performance</span></div>
+<div class="line"><a name="l00018"></a><span class="lineno">   18</span>&#160;                        aligned = aligned_highp, </div>
+<div class="line"><a name="l00019"></a><span class="lineno">   19</span>&#160;<span class="preprocessor">#               endif</span></div>
+<div class="line"><a name="l00020"></a><span class="lineno">   20</span>&#160; </div>
+<div class="line"><a name="l00021"></a><span class="lineno">   21</span>&#160;                highp = packed_highp, </div>
+<div class="line"><a name="l00022"></a><span class="lineno">   22</span>&#160;                mediump = packed_mediump, </div>
+<div class="line"><a name="l00023"></a><span class="lineno">   23</span>&#160;                lowp = packed_lowp, </div>
+<div class="line"><a name="l00024"></a><span class="lineno">   24</span>&#160;                packed = packed_highp, </div>
+<div class="line"><a name="l00025"></a><span class="lineno">   25</span>&#160; </div>
+<div class="line"><a name="l00026"></a><span class="lineno">   26</span>&#160;<span class="preprocessor">#               if GLM_CONFIG_ALIGNED_GENTYPES == GLM_ENABLE &amp;&amp; defined(GLM_FORCE_DEFAULT_ALIGNED_GENTYPES)</span></div>
+<div class="line"><a name="l00027"></a><span class="lineno">   27</span>&#160;                        defaultp = aligned_highp</div>
+<div class="line"><a name="l00028"></a><span class="lineno">   28</span>&#160;<span class="preprocessor">#               else</span></div>
+<div class="line"><a name="l00029"></a><span class="lineno">   29</span>&#160;                        defaultp = highp</div>
+<div class="line"><a name="l00030"></a><span class="lineno">   30</span>&#160;<span class="preprocessor">#               endif</span></div>
+<div class="line"><a name="l00031"></a><span class="lineno">   31</span>&#160;        };</div>
+<div class="line"><a name="l00032"></a><span class="lineno">   32</span>&#160; </div>
+<div class="line"><a name="l00033"></a><span class="lineno">   33</span>&#160;        <span class="keyword">typedef</span> qualifier precision;</div>
+<div class="line"><a name="l00034"></a><span class="lineno">   34</span>&#160; </div>
+<div class="line"><a name="l00035"></a><span class="lineno">   35</span>&#160;        <span class="keyword">template</span>&lt;length_t L, <span class="keyword">typename</span> T, qualifier Q = defaultp&gt; <span class="keyword">struct </span>vec;</div>
+<div class="line"><a name="l00036"></a><span class="lineno">   36</span>&#160;        <span class="keyword">template</span>&lt;length_t C, length_t R, <span class="keyword">typename</span> T, qualifier Q = defaultp&gt; <span class="keyword">struct </span>mat;</div>
+<div class="line"><a name="l00037"></a><span class="lineno">   37</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T, qualifier Q = defaultp&gt; <span class="keyword">struct </span>qua;</div>
+<div class="line"><a name="l00038"></a><span class="lineno">   38</span>&#160; </div>
+<div class="line"><a name="l00039"></a><span class="lineno">   39</span>&#160;<span class="preprocessor">#       if GLM_HAS_TEMPLATE_ALIASES</span></div>
+<div class="line"><a name="l00040"></a><span class="lineno">   40</span>&#160;                <span class="keyword">template</span> &lt;<span class="keyword">typename</span> T, qualifier Q = defaultp&gt; <span class="keyword">using</span> tvec1 = vec&lt;1, T, Q&gt;;</div>
+<div class="line"><a name="l00041"></a><span class="lineno">   41</span>&#160;                <span class="keyword">template</span> &lt;<span class="keyword">typename</span> T, qualifier Q = defaultp&gt; <span class="keyword">using</span> tvec2 = vec&lt;2, T, Q&gt;;</div>
+<div class="line"><a name="l00042"></a><span class="lineno">   42</span>&#160;                <span class="keyword">template</span> &lt;<span class="keyword">typename</span> T, qualifier Q = defaultp&gt; <span class="keyword">using</span> tvec3 = vec&lt;3, T, Q&gt;;</div>
+<div class="line"><a name="l00043"></a><span class="lineno">   43</span>&#160;                <span class="keyword">template</span> &lt;<span class="keyword">typename</span> T, qualifier Q = defaultp&gt; <span class="keyword">using</span> tvec4 = vec&lt;4, T, Q&gt;;</div>
+<div class="line"><a name="l00044"></a><span class="lineno">   44</span>&#160;                <span class="keyword">template</span> &lt;<span class="keyword">typename</span> T, qualifier Q = defaultp&gt; <span class="keyword">using</span> tmat2x2 = mat&lt;2, 2, T, Q&gt;;</div>
+<div class="line"><a name="l00045"></a><span class="lineno">   45</span>&#160;                <span class="keyword">template</span> &lt;<span class="keyword">typename</span> T, qualifier Q = defaultp&gt; <span class="keyword">using</span> tmat2x3 = mat&lt;2, 3, T, Q&gt;;</div>
+<div class="line"><a name="l00046"></a><span class="lineno">   46</span>&#160;                <span class="keyword">template</span> &lt;<span class="keyword">typename</span> T, qualifier Q = defaultp&gt; <span class="keyword">using</span> tmat2x4 = mat&lt;2, 4, T, Q&gt;;</div>
+<div class="line"><a name="l00047"></a><span class="lineno">   47</span>&#160;                <span class="keyword">template</span> &lt;<span class="keyword">typename</span> T, qualifier Q = defaultp&gt; <span class="keyword">using</span> tmat3x2 = mat&lt;3, 2, T, Q&gt;;</div>
+<div class="line"><a name="l00048"></a><span class="lineno">   48</span>&#160;                <span class="keyword">template</span> &lt;<span class="keyword">typename</span> T, qualifier Q = defaultp&gt; <span class="keyword">using</span> tmat3x3 = mat&lt;3, 3, T, Q&gt;;</div>
+<div class="line"><a name="l00049"></a><span class="lineno">   49</span>&#160;                <span class="keyword">template</span> &lt;<span class="keyword">typename</span> T, qualifier Q = defaultp&gt; <span class="keyword">using</span> tmat3x4 = mat&lt;3, 4, T, Q&gt;;</div>
+<div class="line"><a name="l00050"></a><span class="lineno">   50</span>&#160;                <span class="keyword">template</span> &lt;<span class="keyword">typename</span> T, qualifier Q = defaultp&gt; <span class="keyword">using</span> tmat4x2 = mat&lt;4, 2, T, Q&gt;;</div>
+<div class="line"><a name="l00051"></a><span class="lineno">   51</span>&#160;                <span class="keyword">template</span> &lt;<span class="keyword">typename</span> T, qualifier Q = defaultp&gt; <span class="keyword">using</span> tmat4x3 = mat&lt;4, 3, T, Q&gt;;</div>
+<div class="line"><a name="l00052"></a><span class="lineno">   52</span>&#160;                <span class="keyword">template</span> &lt;<span class="keyword">typename</span> T, qualifier Q = defaultp&gt; <span class="keyword">using</span> tmat4x4 = mat&lt;4, 4, T, Q&gt;;</div>
+<div class="line"><a name="l00053"></a><span class="lineno">   53</span>&#160;                <span class="keyword">template</span> &lt;<span class="keyword">typename</span> T, qualifier Q = defaultp&gt; <span class="keyword">using</span> tquat = qua&lt;T, Q&gt;;</div>
+<div class="line"><a name="l00054"></a><span class="lineno">   54</span>&#160;<span class="preprocessor">#       endif</span></div>
+<div class="line"><a name="l00055"></a><span class="lineno">   55</span>&#160; </div>
+<div class="line"><a name="l00056"></a><span class="lineno">   56</span>&#160;<span class="keyword">namespace </span>detail</div>
+<div class="line"><a name="l00057"></a><span class="lineno">   57</span>&#160;{</div>
+<div class="line"><a name="l00058"></a><span class="lineno">   58</span>&#160;        <span class="keyword">template</span>&lt;glm::qualifier P&gt;</div>
+<div class="line"><a name="l00059"></a><span class="lineno">   59</span>&#160;        <span class="keyword">struct </span>is_aligned</div>
+<div class="line"><a name="l00060"></a><span class="lineno">   60</span>&#160;        {</div>
+<div class="line"><a name="l00061"></a><span class="lineno">   61</span>&#160;                <span class="keyword">static</span> <span class="keyword">const</span> <span class="keywordtype">bool</span> value = <span class="keyword">false</span>;</div>
+<div class="line"><a name="l00062"></a><span class="lineno">   62</span>&#160;        };</div>
+<div class="line"><a name="l00063"></a><span class="lineno">   63</span>&#160; </div>
+<div class="line"><a name="l00064"></a><span class="lineno">   64</span>&#160;<span class="preprocessor">#       if GLM_CONFIG_ALIGNED_GENTYPES == GLM_ENABLE</span></div>
+<div class="line"><a name="l00065"></a><span class="lineno">   65</span>&#160;                <span class="keyword">template</span>&lt;&gt;</div>
+<div class="line"><a name="l00066"></a><span class="lineno">   66</span>&#160;                <span class="keyword">struct </span>is_aligned&lt;glm::aligned_lowp&gt;</div>
+<div class="line"><a name="l00067"></a><span class="lineno">   67</span>&#160;                {</div>
+<div class="line"><a name="l00068"></a><span class="lineno">   68</span>&#160;                        <span class="keyword">static</span> <span class="keyword">const</span> <span class="keywordtype">bool</span> value = <span class="keyword">true</span>;</div>
+<div class="line"><a name="l00069"></a><span class="lineno">   69</span>&#160;                };</div>
+<div class="line"><a name="l00070"></a><span class="lineno">   70</span>&#160; </div>
+<div class="line"><a name="l00071"></a><span class="lineno">   71</span>&#160;                <span class="keyword">template</span>&lt;&gt;</div>
+<div class="line"><a name="l00072"></a><span class="lineno">   72</span>&#160;                <span class="keyword">struct </span>is_aligned&lt;glm::aligned_mediump&gt;</div>
+<div class="line"><a name="l00073"></a><span class="lineno">   73</span>&#160;                {</div>
+<div class="line"><a name="l00074"></a><span class="lineno">   74</span>&#160;                        <span class="keyword">static</span> <span class="keyword">const</span> <span class="keywordtype">bool</span> value = <span class="keyword">true</span>;</div>
+<div class="line"><a name="l00075"></a><span class="lineno">   75</span>&#160;                };</div>
+<div class="line"><a name="l00076"></a><span class="lineno">   76</span>&#160; </div>
+<div class="line"><a name="l00077"></a><span class="lineno">   77</span>&#160;                <span class="keyword">template</span>&lt;&gt;</div>
+<div class="line"><a name="l00078"></a><span class="lineno">   78</span>&#160;                <span class="keyword">struct </span>is_aligned&lt;glm::aligned_highp&gt;</div>
+<div class="line"><a name="l00079"></a><span class="lineno">   79</span>&#160;                {</div>
+<div class="line"><a name="l00080"></a><span class="lineno">   80</span>&#160;                        <span class="keyword">static</span> <span class="keyword">const</span> <span class="keywordtype">bool</span> value = <span class="keyword">true</span>;</div>
+<div class="line"><a name="l00081"></a><span class="lineno">   81</span>&#160;                };</div>
+<div class="line"><a name="l00082"></a><span class="lineno">   82</span>&#160;<span class="preprocessor">#       endif</span></div>
+<div class="line"><a name="l00083"></a><span class="lineno">   83</span>&#160; </div>
+<div class="line"><a name="l00084"></a><span class="lineno">   84</span>&#160;        <span class="keyword">template</span>&lt;length_t L, <span class="keyword">typename</span> T, <span class="keywordtype">bool</span> is_aligned&gt;</div>
+<div class="line"><a name="l00085"></a><span class="lineno">   85</span>&#160;        <span class="keyword">struct </span>storage</div>
+<div class="line"><a name="l00086"></a><span class="lineno">   86</span>&#160;        {</div>
+<div class="line"><a name="l00087"></a><span class="lineno">   87</span>&#160;                <span class="keyword">typedef</span> <span class="keyword">struct </span>type {</div>
+<div class="line"><a name="l00088"></a><span class="lineno">   88</span>&#160;                        T data[L];</div>
+<div class="line"><a name="l00089"></a><span class="lineno">   89</span>&#160;                } type;</div>
+<div class="line"><a name="l00090"></a><span class="lineno">   90</span>&#160;        };</div>
+<div class="line"><a name="l00091"></a><span class="lineno">   91</span>&#160; </div>
+<div class="line"><a name="l00092"></a><span class="lineno">   92</span>&#160;<span class="preprocessor">#       if GLM_HAS_ALIGNOF</span></div>
+<div class="line"><a name="l00093"></a><span class="lineno">   93</span>&#160;                <span class="keyword">template</span>&lt;length_t L, <span class="keyword">typename</span> T&gt;</div>
+<div class="line"><a name="l00094"></a><span class="lineno">   94</span>&#160;                <span class="keyword">struct </span>storage&lt;L, T, true&gt;</div>
+<div class="line"><a name="l00095"></a><span class="lineno">   95</span>&#160;                {</div>
+<div class="line"><a name="l00096"></a><span class="lineno">   96</span>&#160;                        <span class="keyword">typedef</span> <span class="keyword">struct </span><span class="keyword">alignas</span>(L * sizeof(T)) type {</div>
+<div class="line"><a name="l00097"></a><span class="lineno">   97</span>&#160;                                T data[L];</div>
+<div class="line"><a name="l00098"></a><span class="lineno">   98</span>&#160;                        } type;</div>
+<div class="line"><a name="l00099"></a><span class="lineno">   99</span>&#160;                };</div>
+<div class="line"><a name="l00100"></a><span class="lineno">  100</span>&#160; </div>
+<div class="line"><a name="l00101"></a><span class="lineno">  101</span>&#160;                <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T&gt;</div>
+<div class="line"><a name="l00102"></a><span class="lineno">  102</span>&#160;                <span class="keyword">struct </span>storage&lt;3, T, true&gt;</div>
+<div class="line"><a name="l00103"></a><span class="lineno">  103</span>&#160;                {</div>
+<div class="line"><a name="l00104"></a><span class="lineno">  104</span>&#160;                        <span class="keyword">typedef</span> <span class="keyword">struct </span><span class="keyword">alignas</span>(4 * sizeof(T)) type {</div>
+<div class="line"><a name="l00105"></a><span class="lineno">  105</span>&#160;                                T data[4];</div>
+<div class="line"><a name="l00106"></a><span class="lineno">  106</span>&#160;                        } type;</div>
+<div class="line"><a name="l00107"></a><span class="lineno">  107</span>&#160;                };</div>
+<div class="line"><a name="l00108"></a><span class="lineno">  108</span>&#160;<span class="preprocessor">#       endif</span></div>
+<div class="line"><a name="l00109"></a><span class="lineno">  109</span>&#160; </div>
+<div class="line"><a name="l00110"></a><span class="lineno">  110</span>&#160;<span class="preprocessor">#       if GLM_ARCH &amp; GLM_ARCH_SSE2_BIT</span></div>
+<div class="line"><a name="l00111"></a><span class="lineno">  111</span>&#160;        <span class="keyword">template</span>&lt;&gt;</div>
+<div class="line"><a name="l00112"></a><span class="lineno">  112</span>&#160;        <span class="keyword">struct </span>storage&lt;4, float, true&gt;</div>
+<div class="line"><a name="l00113"></a><span class="lineno">  113</span>&#160;        {</div>
+<div class="line"><a name="l00114"></a><span class="lineno">  114</span>&#160;                <span class="keyword">typedef</span> glm_f32vec4 type;</div>
+<div class="line"><a name="l00115"></a><span class="lineno">  115</span>&#160;        };</div>
+<div class="line"><a name="l00116"></a><span class="lineno">  116</span>&#160; </div>
+<div class="line"><a name="l00117"></a><span class="lineno">  117</span>&#160;        <span class="keyword">template</span>&lt;&gt;</div>
+<div class="line"><a name="l00118"></a><span class="lineno">  118</span>&#160;        <span class="keyword">struct </span>storage&lt;4, int, true&gt;</div>
+<div class="line"><a name="l00119"></a><span class="lineno">  119</span>&#160;        {</div>
+<div class="line"><a name="l00120"></a><span class="lineno">  120</span>&#160;                <span class="keyword">typedef</span> glm_i32vec4 type;</div>
+<div class="line"><a name="l00121"></a><span class="lineno">  121</span>&#160;        };</div>
+<div class="line"><a name="l00122"></a><span class="lineno">  122</span>&#160; </div>
+<div class="line"><a name="l00123"></a><span class="lineno">  123</span>&#160;        <span class="keyword">template</span>&lt;&gt;</div>
+<div class="line"><a name="l00124"></a><span class="lineno">  124</span>&#160;        <span class="keyword">struct </span>storage&lt;4, unsigned int, true&gt;</div>
+<div class="line"><a name="l00125"></a><span class="lineno">  125</span>&#160;        {</div>
+<div class="line"><a name="l00126"></a><span class="lineno">  126</span>&#160;                <span class="keyword">typedef</span> glm_u32vec4 type;</div>
+<div class="line"><a name="l00127"></a><span class="lineno">  127</span>&#160;        };</div>
+<div class="line"><a name="l00128"></a><span class="lineno">  128</span>&#160; </div>
+<div class="line"><a name="l00129"></a><span class="lineno">  129</span>&#160;        <span class="keyword">template</span>&lt;&gt;</div>
+<div class="line"><a name="l00130"></a><span class="lineno">  130</span>&#160;        <span class="keyword">struct </span>storage&lt;2, double, true&gt;</div>
+<div class="line"><a name="l00131"></a><span class="lineno">  131</span>&#160;        {</div>
+<div class="line"><a name="l00132"></a><span class="lineno">  132</span>&#160;                <span class="keyword">typedef</span> glm_f64vec2 type;</div>
+<div class="line"><a name="l00133"></a><span class="lineno">  133</span>&#160;        };</div>
+<div class="line"><a name="l00134"></a><span class="lineno">  134</span>&#160; </div>
+<div class="line"><a name="l00135"></a><span class="lineno">  135</span>&#160;        <span class="keyword">template</span>&lt;&gt;</div>
+<div class="line"><a name="l00136"></a><span class="lineno">  136</span>&#160;        <span class="keyword">struct </span>storage&lt;2, detail::<a class="code" href="a00859.html#gaff5189f97f9e842d9636a0f240001b2e">int64</a>, true&gt;</div>
+<div class="line"><a name="l00137"></a><span class="lineno">  137</span>&#160;        {</div>
+<div class="line"><a name="l00138"></a><span class="lineno">  138</span>&#160;                <span class="keyword">typedef</span> glm_i64vec2 type;</div>
+<div class="line"><a name="l00139"></a><span class="lineno">  139</span>&#160;        };</div>
+<div class="line"><a name="l00140"></a><span class="lineno">  140</span>&#160; </div>
+<div class="line"><a name="l00141"></a><span class="lineno">  141</span>&#160;        <span class="keyword">template</span>&lt;&gt;</div>
+<div class="line"><a name="l00142"></a><span class="lineno">  142</span>&#160;        <span class="keyword">struct </span>storage&lt;2, detail::<a class="code" href="a00864.html#gab630f76c26b50298187f7889104d4b9c">uint64</a>, true&gt;</div>
+<div class="line"><a name="l00143"></a><span class="lineno">  143</span>&#160;        {</div>
+<div class="line"><a name="l00144"></a><span class="lineno">  144</span>&#160;                <span class="keyword">typedef</span> glm_u64vec2 type;</div>
+<div class="line"><a name="l00145"></a><span class="lineno">  145</span>&#160;        };</div>
+<div class="line"><a name="l00146"></a><span class="lineno">  146</span>&#160;<span class="preprocessor">#       endif</span></div>
+<div class="line"><a name="l00147"></a><span class="lineno">  147</span>&#160;<span class="preprocessor">#       if (GLM_ARCH &amp; GLM_ARCH_AVX_BIT)</span></div>
+<div class="line"><a name="l00148"></a><span class="lineno">  148</span>&#160;        <span class="keyword">template</span>&lt;&gt;</div>
+<div class="line"><a name="l00149"></a><span class="lineno">  149</span>&#160;        <span class="keyword">struct </span>storage&lt;4, double, true&gt;</div>
+<div class="line"><a name="l00150"></a><span class="lineno">  150</span>&#160;        {</div>
+<div class="line"><a name="l00151"></a><span class="lineno">  151</span>&#160;                <span class="keyword">typedef</span> glm_f64vec4 type;</div>
+<div class="line"><a name="l00152"></a><span class="lineno">  152</span>&#160;        };</div>
+<div class="line"><a name="l00153"></a><span class="lineno">  153</span>&#160;<span class="preprocessor">#       endif</span></div>
+<div class="line"><a name="l00154"></a><span class="lineno">  154</span>&#160; </div>
+<div class="line"><a name="l00155"></a><span class="lineno">  155</span>&#160;<span class="preprocessor">#       if (GLM_ARCH &amp; GLM_ARCH_AVX2_BIT)</span></div>
+<div class="line"><a name="l00156"></a><span class="lineno">  156</span>&#160;        <span class="keyword">template</span>&lt;&gt;</div>
+<div class="line"><a name="l00157"></a><span class="lineno">  157</span>&#160;        <span class="keyword">struct </span>storage&lt;4, detail::<a class="code" href="a00859.html#gaff5189f97f9e842d9636a0f240001b2e">int64</a>, true&gt;</div>
+<div class="line"><a name="l00158"></a><span class="lineno">  158</span>&#160;        {</div>
+<div class="line"><a name="l00159"></a><span class="lineno">  159</span>&#160;                <span class="keyword">typedef</span> glm_i64vec4 type;</div>
+<div class="line"><a name="l00160"></a><span class="lineno">  160</span>&#160;        };</div>
+<div class="line"><a name="l00161"></a><span class="lineno">  161</span>&#160; </div>
+<div class="line"><a name="l00162"></a><span class="lineno">  162</span>&#160;        <span class="keyword">template</span>&lt;&gt;</div>
+<div class="line"><a name="l00163"></a><span class="lineno">  163</span>&#160;        <span class="keyword">struct </span>storage&lt;4, detail::<a class="code" href="a00864.html#gab630f76c26b50298187f7889104d4b9c">uint64</a>, true&gt;</div>
+<div class="line"><a name="l00164"></a><span class="lineno">  164</span>&#160;        {</div>
+<div class="line"><a name="l00165"></a><span class="lineno">  165</span>&#160;                <span class="keyword">typedef</span> glm_u64vec4 type;</div>
+<div class="line"><a name="l00166"></a><span class="lineno">  166</span>&#160;        };</div>
+<div class="line"><a name="l00167"></a><span class="lineno">  167</span>&#160;<span class="preprocessor">#       endif</span></div>
+<div class="line"><a name="l00168"></a><span class="lineno">  168</span>&#160; </div>
+<div class="line"><a name="l00169"></a><span class="lineno">  169</span>&#160;<span class="preprocessor">#       if GLM_ARCH &amp; GLM_ARCH_NEON_BIT</span></div>
+<div class="line"><a name="l00170"></a><span class="lineno">  170</span>&#160;        <span class="keyword">template</span>&lt;&gt;</div>
+<div class="line"><a name="l00171"></a><span class="lineno">  171</span>&#160;        <span class="keyword">struct </span>storage&lt;4, float, true&gt;</div>
+<div class="line"><a name="l00172"></a><span class="lineno">  172</span>&#160;        {</div>
+<div class="line"><a name="l00173"></a><span class="lineno">  173</span>&#160;                <span class="keyword">typedef</span> glm_f32vec4 type;</div>
+<div class="line"><a name="l00174"></a><span class="lineno">  174</span>&#160;        };</div>
+<div class="line"><a name="l00175"></a><span class="lineno">  175</span>&#160; </div>
+<div class="line"><a name="l00176"></a><span class="lineno">  176</span>&#160;        <span class="keyword">template</span>&lt;&gt;</div>
+<div class="line"><a name="l00177"></a><span class="lineno">  177</span>&#160;        <span class="keyword">struct </span>storage&lt;4, int, true&gt;</div>
+<div class="line"><a name="l00178"></a><span class="lineno">  178</span>&#160;        {</div>
+<div class="line"><a name="l00179"></a><span class="lineno">  179</span>&#160;                <span class="keyword">typedef</span> glm_i32vec4 type;</div>
+<div class="line"><a name="l00180"></a><span class="lineno">  180</span>&#160;        };</div>
+<div class="line"><a name="l00181"></a><span class="lineno">  181</span>&#160; </div>
+<div class="line"><a name="l00182"></a><span class="lineno">  182</span>&#160;        <span class="keyword">template</span>&lt;&gt;</div>
+<div class="line"><a name="l00183"></a><span class="lineno">  183</span>&#160;        <span class="keyword">struct </span>storage&lt;4, unsigned int, true&gt;</div>
+<div class="line"><a name="l00184"></a><span class="lineno">  184</span>&#160;        {</div>
+<div class="line"><a name="l00185"></a><span class="lineno">  185</span>&#160;                <span class="keyword">typedef</span> glm_u32vec4 type;</div>
+<div class="line"><a name="l00186"></a><span class="lineno">  186</span>&#160;        };</div>
+<div class="line"><a name="l00187"></a><span class="lineno">  187</span>&#160;<span class="preprocessor">#       endif</span></div>
+<div class="line"><a name="l00188"></a><span class="lineno">  188</span>&#160; </div>
+<div class="line"><a name="l00189"></a><span class="lineno">  189</span>&#160;        <span class="keyword">enum</span> genTypeEnum</div>
+<div class="line"><a name="l00190"></a><span class="lineno">  190</span>&#160;        {</div>
+<div class="line"><a name="l00191"></a><span class="lineno">  191</span>&#160;                GENTYPE_VEC,</div>
+<div class="line"><a name="l00192"></a><span class="lineno">  192</span>&#160;                GENTYPE_MAT,</div>
+<div class="line"><a name="l00193"></a><span class="lineno">  193</span>&#160;                GENTYPE_QUAT</div>
+<div class="line"><a name="l00194"></a><span class="lineno">  194</span>&#160;        };</div>
+<div class="line"><a name="l00195"></a><span class="lineno">  195</span>&#160; </div>
+<div class="line"><a name="l00196"></a><span class="lineno">  196</span>&#160;        <span class="keyword">template</span> &lt;<span class="keyword">typename</span> genType&gt;</div>
+<div class="line"><a name="l00197"></a><span class="lineno">  197</span>&#160;        <span class="keyword">struct </span>genTypeTrait</div>
+<div class="line"><a name="l00198"></a><span class="lineno">  198</span>&#160;        {};</div>
+<div class="line"><a name="l00199"></a><span class="lineno">  199</span>&#160; </div>
+<div class="line"><a name="l00200"></a><span class="lineno">  200</span>&#160;        <span class="keyword">template</span> &lt;length_t C, length_t R, <span class="keyword">typename</span> T&gt;</div>
+<div class="line"><a name="l00201"></a><span class="lineno">  201</span>&#160;        <span class="keyword">struct </span>genTypeTrait&lt;mat&lt;C, R, T&gt; &gt;</div>
+<div class="line"><a name="l00202"></a><span class="lineno">  202</span>&#160;        {</div>
+<div class="line"><a name="l00203"></a><span class="lineno">  203</span>&#160;                <span class="keyword">static</span> <span class="keyword">const</span> genTypeEnum GENTYPE = GENTYPE_MAT;</div>
+<div class="line"><a name="l00204"></a><span class="lineno">  204</span>&#160;        };</div>
+<div class="line"><a name="l00205"></a><span class="lineno">  205</span>&#160; </div>
+<div class="line"><a name="l00206"></a><span class="lineno">  206</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> genType, genTypeEnum type&gt;</div>
+<div class="line"><a name="l00207"></a><span class="lineno">  207</span>&#160;        <span class="keyword">struct </span>init_gentype</div>
+<div class="line"><a name="l00208"></a><span class="lineno">  208</span>&#160;        {</div>
+<div class="line"><a name="l00209"></a><span class="lineno">  209</span>&#160;        };</div>
+<div class="line"><a name="l00210"></a><span class="lineno">  210</span>&#160; </div>
+<div class="line"><a name="l00211"></a><span class="lineno">  211</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> genType&gt;</div>
+<div class="line"><a name="l00212"></a><span class="lineno">  212</span>&#160;        <span class="keyword">struct </span>init_gentype&lt;genType, GENTYPE_QUAT&gt;</div>
+<div class="line"><a name="l00213"></a><span class="lineno">  213</span>&#160;        {</div>
+<div class="line"><a name="l00214"></a><span class="lineno">  214</span>&#160;                GLM_FUNC_QUALIFIER GLM_CONSTEXPR <span class="keyword">static</span> genType <a class="code" href="a00828.html#ga81696f2b8d1db02ea1aff8da8f269314">identity</a>()</div>
+<div class="line"><a name="l00215"></a><span class="lineno">  215</span>&#160;                {</div>
+<div class="line"><a name="l00216"></a><span class="lineno">  216</span>&#160;                        <span class="keywordflow">return</span> genType(1, 0, 0, 0);</div>
+<div class="line"><a name="l00217"></a><span class="lineno">  217</span>&#160;                }</div>
+<div class="line"><a name="l00218"></a><span class="lineno">  218</span>&#160;        };</div>
+<div class="line"><a name="l00219"></a><span class="lineno">  219</span>&#160; </div>
+<div class="line"><a name="l00220"></a><span class="lineno">  220</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> genType&gt;</div>
+<div class="line"><a name="l00221"></a><span class="lineno">  221</span>&#160;        <span class="keyword">struct </span>init_gentype&lt;genType, GENTYPE_MAT&gt;</div>
+<div class="line"><a name="l00222"></a><span class="lineno">  222</span>&#160;        {</div>
+<div class="line"><a name="l00223"></a><span class="lineno">  223</span>&#160;                GLM_FUNC_QUALIFIER GLM_CONSTEXPR <span class="keyword">static</span> genType <a class="code" href="a00828.html#ga81696f2b8d1db02ea1aff8da8f269314">identity</a>()</div>
+<div class="line"><a name="l00224"></a><span class="lineno">  224</span>&#160;                {</div>
+<div class="line"><a name="l00225"></a><span class="lineno">  225</span>&#160;                        <span class="keywordflow">return</span> genType(1);</div>
+<div class="line"><a name="l00226"></a><span class="lineno">  226</span>&#160;                }</div>
+<div class="line"><a name="l00227"></a><span class="lineno">  227</span>&#160;        };</div>
+<div class="line"><a name="l00228"></a><span class="lineno">  228</span>&#160;}<span class="comment">//namespace detail</span></div>
+<div class="line"><a name="l00229"></a><span class="lineno">  229</span>&#160;}<span class="comment">//namespace glm</span></div>
 </div><!-- fragment --></div><!-- contents -->
+<div class="ttc" id="aa00828_html_ga81696f2b8d1db02ea1aff8da8f269314"><div class="ttname"><a href="a00828.html#ga81696f2b8d1db02ea1aff8da8f269314">glm::identity</a></div><div class="ttdeci">GLM_FUNC_DECL GLM_CONSTEXPR genType identity()</div><div class="ttdoc">Builds an identity matrix.</div></div>
+<div class="ttc" id="aa00864_html_gab630f76c26b50298187f7889104d4b9c"><div class="ttname"><a href="a00864.html#gab630f76c26b50298187f7889104d4b9c">glm::uint64</a></div><div class="ttdeci">detail::uint64 uint64</div><div class="ttdoc">64 bit unsigned integer type.</div><div class="ttdef"><b>Definition:</b> <a href="a00374_source.html#l00067">scalar_uint_sized.hpp:67</a></div></div>
+<div class="ttc" id="aa00859_html_gaff5189f97f9e842d9636a0f240001b2e"><div class="ttname"><a href="a00859.html#gaff5189f97f9e842d9636a0f240001b2e">glm::int64</a></div><div class="ttdeci">detail::int64 int64</div><div class="ttdoc">64 bit signed integer type.</div><div class="ttdef"><b>Definition:</b> <a href="a00359_source.html#l00067">scalar_int_sized.hpp:67</a></div></div>
 <!-- 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.10
+</a> 1.8.18
 </small></address>
 </body>
 </html>

+ 0 - 121
doc/api/a00030.html

@@ -1,121 +0,0 @@
-<!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.10"/>
-<title>0.9.9 API documentation: exterior_product.hpp File Reference</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="search/search.css" rel="stylesheet" type="text/css"/>
-<script type="text/javascript" src="search/searchdata.js"></script>
-<script type="text/javascript" src="search/search.js"></script>
-<script type="text/javascript">
-  $(document).ready(function() { init_search(); });
-</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 id="projectlogo"><img alt="Logo" src="logo-mini.png"/></td>
-  <td id="projectalign" style="padding-left: 0.5em;">
-   <div id="projectname">0.9.9 API documentation
-   </div>
-  </td>
- </tr>
- </tbody>
-</table>
-</div>
-<!-- end header part -->
-<!-- Generated by Doxygen 1.8.10 -->
-<script type="text/javascript">
-var searchBox = new SearchBox("searchBox", "search",false,'Search');
-</script>
-  <div id="navrow1" class="tabs">
-    <ul class="tablist">
-      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
-      <li><a href="modules.html"><span>Modules</span></a></li>
-      <li class="current"><a href="files.html"><span>Files</span></a></li>
-      <li>
-        <div id="MSearchBox" class="MSearchBoxInactive">
-        <span class="left">
-          <img id="MSearchSelect" src="search/mag_sel.png"
-               onmouseover="return searchBox.OnSearchSelectShow()"
-               onmouseout="return searchBox.OnSearchSelectHide()"
-               alt=""/>
-          <input type="text" id="MSearchField" value="Search" accesskey="S"
-               onfocus="searchBox.OnSearchFieldFocus(true)" 
-               onblur="searchBox.OnSearchFieldFocus(false)" 
-               onkeyup="searchBox.OnSearchFieldChange(event)"/>
-          </span><span class="right">
-            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
-          </span>
-        </div>
-      </li>
-    </ul>
-  </div>
-  <div id="navrow2" class="tabs2">
-    <ul class="tablist">
-      <li><a href="files.html"><span>File&#160;List</span></a></li>
-    </ul>
-  </div>
-<!-- window showing the filter options -->
-<div id="MSearchSelectWindow"
-     onmouseover="return searchBox.OnSearchSelectShow()"
-     onmouseout="return searchBox.OnSearchSelectHide()"
-     onkeydown="return searchBox.OnSearchSelectKey(event)">
-</div>
-
-<!-- iframe showing the search results (closed by default) -->
-<div id="MSearchResultsWindow">
-<iframe src="javascript:void(0)" frameborder="0" 
-        name="MSearchResults" id="MSearchResults">
-</iframe>
-</div>
-
-<div id="nav-path" class="navpath">
-  <ul>
-<li class="navelem"><a class="el" href="dir_3a581ba30d25676e4b797b1f96d53b45.html">F:</a></li><li class="navelem"><a class="el" href="dir_9e5fe034a00e89334fd5186c3e7db156.html">G-Truc</a></li><li class="navelem"><a class="el" href="dir_d9496f0844b48bc7e53b5af8c99b9ab2.html">Source</a></li><li class="navelem"><a class="el" href="dir_a8bee7be44182a33f3820393ae0b105d.html">G-Truc</a></li><li class="navelem"><a class="el" href="dir_44e5e654415abd9ca6fdeaddaff8565e.html">glm</a></li><li class="navelem"><a class="el" href="dir_cef2d71d502cb69a9252bca2297d9549.html">glm</a></li><li class="navelem"><a class="el" href="dir_f35778ec600a1b9bbc4524e62e226aa2.html">gtx</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">exterior_product.hpp File Reference</div>  </div>
-</div><!--header-->
-<div class="contents">
-
-<p><a class="el" href="a00322.html">GLM_GTX_exterior_product</a>  
-<a href="#details">More...</a></p>
-
-<p><a href="a00030_source.html">Go to the source code of this file.</a></p>
-<table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
-Functions</h2></td></tr>
-<tr class="memitem:gac36e72b934ea6a9dd313772d7e78fa93"><td class="memTemplParams" colspan="2">template&lt;typename T , qualifier Q&gt; </td></tr>
-<tr class="memitem:gac36e72b934ea6a9dd313772d7e78fa93"><td class="memTemplItemLeft" align="right" valign="top">GLM_FUNC_DECL T&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00322.html#gac36e72b934ea6a9dd313772d7e78fa93">cross</a> (vec&lt; 2, T, Q &gt; const &amp;v, vec&lt; 2, T, Q &gt; const &amp;u)</td></tr>
-<tr class="memdesc:gac36e72b934ea6a9dd313772d7e78fa93"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the cross product of x and y.  <a href="a00322.html#gac36e72b934ea6a9dd313772d7e78fa93">More...</a><br /></td></tr>
-<tr class="separator:gac36e72b934ea6a9dd313772d7e78fa93"><td class="memSeparator" colspan="2">&#160;</td></tr>
-</table>
-<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
-<div class="textblock"><p><a class="el" href="a00322.html">GLM_GTX_exterior_product</a> </p>
-<dl class="section see"><dt>See also</dt><dd><a class="el" href="a00280.html" title="Features that implement in C++ the GLSL specification as closely as possible. ">Core features</a> (dependence) </dd>
-<dd>
-<a class="el" href="a00322.html" title="Include <glm/gtx/exterior_product.hpp> to use the features of this extension. ">GLM_GTX_exterior_product</a> (dependence) </dd></dl>
-
-<p>Definition in file <a class="el" href="a00030_source.html">exterior_product.hpp</a>.</p>
-</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.10
-</small></address>
-</body>
-</html>

+ 0 - 125
doc/api/a00030_source.html

@@ -1,125 +0,0 @@
-<!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.10"/>
-<title>0.9.9 API documentation: exterior_product.hpp Source File</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="search/search.css" rel="stylesheet" type="text/css"/>
-<script type="text/javascript" src="search/searchdata.js"></script>
-<script type="text/javascript" src="search/search.js"></script>
-<script type="text/javascript">
-  $(document).ready(function() { init_search(); });
-</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 id="projectlogo"><img alt="Logo" src="logo-mini.png"/></td>
-  <td id="projectalign" style="padding-left: 0.5em;">
-   <div id="projectname">0.9.9 API documentation
-   </div>
-  </td>
- </tr>
- </tbody>
-</table>
-</div>
-<!-- end header part -->
-<!-- Generated by Doxygen 1.8.10 -->
-<script type="text/javascript">
-var searchBox = new SearchBox("searchBox", "search",false,'Search');
-</script>
-  <div id="navrow1" class="tabs">
-    <ul class="tablist">
-      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
-      <li><a href="modules.html"><span>Modules</span></a></li>
-      <li class="current"><a href="files.html"><span>Files</span></a></li>
-      <li>
-        <div id="MSearchBox" class="MSearchBoxInactive">
-        <span class="left">
-          <img id="MSearchSelect" src="search/mag_sel.png"
-               onmouseover="return searchBox.OnSearchSelectShow()"
-               onmouseout="return searchBox.OnSearchSelectHide()"
-               alt=""/>
-          <input type="text" id="MSearchField" value="Search" accesskey="S"
-               onfocus="searchBox.OnSearchFieldFocus(true)" 
-               onblur="searchBox.OnSearchFieldFocus(false)" 
-               onkeyup="searchBox.OnSearchFieldChange(event)"/>
-          </span><span class="right">
-            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
-          </span>
-        </div>
-      </li>
-    </ul>
-  </div>
-  <div id="navrow2" class="tabs2">
-    <ul class="tablist">
-      <li><a href="files.html"><span>File&#160;List</span></a></li>
-    </ul>
-  </div>
-<!-- window showing the filter options -->
-<div id="MSearchSelectWindow"
-     onmouseover="return searchBox.OnSearchSelectShow()"
-     onmouseout="return searchBox.OnSearchSelectHide()"
-     onkeydown="return searchBox.OnSearchSelectKey(event)">
-</div>
-
-<!-- iframe showing the search results (closed by default) -->
-<div id="MSearchResultsWindow">
-<iframe src="javascript:void(0)" frameborder="0" 
-        name="MSearchResults" id="MSearchResults">
-</iframe>
-</div>
-
-<div id="nav-path" class="navpath">
-  <ul>
-<li class="navelem"><a class="el" href="dir_3a581ba30d25676e4b797b1f96d53b45.html">F:</a></li><li class="navelem"><a class="el" href="dir_9e5fe034a00e89334fd5186c3e7db156.html">G-Truc</a></li><li class="navelem"><a class="el" href="dir_d9496f0844b48bc7e53b5af8c99b9ab2.html">Source</a></li><li class="navelem"><a class="el" href="dir_a8bee7be44182a33f3820393ae0b105d.html">G-Truc</a></li><li class="navelem"><a class="el" href="dir_44e5e654415abd9ca6fdeaddaff8565e.html">glm</a></li><li class="navelem"><a class="el" href="dir_cef2d71d502cb69a9252bca2297d9549.html">glm</a></li><li class="navelem"><a class="el" href="dir_f35778ec600a1b9bbc4524e62e226aa2.html">gtx</a></li>  </ul>
-</div>
-</div><!-- top -->
-<div class="header">
-  <div class="headertitle">
-<div class="title">exterior_product.hpp</div>  </div>
-</div><!--header-->
-<div class="contents">
-<a href="a00030.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span>&#160;</div>
-<div class="line"><a name="l00014"></a><span class="lineno">   14</span>&#160;<span class="preprocessor">#pragma once</span></div>
-<div class="line"><a name="l00015"></a><span class="lineno">   15</span>&#160;</div>
-<div class="line"><a name="l00016"></a><span class="lineno">   16</span>&#160;<span class="comment">// Dependencies</span></div>
-<div class="line"><a name="l00017"></a><span class="lineno">   17</span>&#160;<span class="preprocessor">#include &quot;../detail/setup.hpp&quot;</span></div>
-<div class="line"><a name="l00018"></a><span class="lineno">   18</span>&#160;<span class="preprocessor">#include &quot;../detail/qualifier.hpp&quot;</span></div>
-<div class="line"><a name="l00019"></a><span class="lineno">   19</span>&#160;</div>
-<div class="line"><a name="l00020"></a><span class="lineno">   20</span>&#160;<span class="preprocessor">#if GLM_MESSAGES == GLM_ENABLE &amp;&amp; !defined(GLM_EXT_INCLUDED)</span></div>
-<div class="line"><a name="l00021"></a><span class="lineno">   21</span>&#160;<span class="preprocessor">#       ifndef GLM_ENABLE_EXPERIMENTAL</span></div>
-<div class="line"><a name="l00022"></a><span class="lineno">   22</span>&#160;<span class="preprocessor">#               pragma message(&quot;GLM: GLM_GTX_exterior_product is an experimental extension and may change in the future. Use #define GLM_ENABLE_EXPERIMENTAL before including it, if you really want to use it.&quot;)</span></div>
-<div class="line"><a name="l00023"></a><span class="lineno">   23</span>&#160;<span class="preprocessor">#       else</span></div>
-<div class="line"><a name="l00024"></a><span class="lineno">   24</span>&#160;<span class="preprocessor">#               pragma message(&quot;GLM: GLM_GTX_exterior_product extension included&quot;)</span></div>
-<div class="line"><a name="l00025"></a><span class="lineno">   25</span>&#160;<span class="preprocessor">#       endif</span></div>
-<div class="line"><a name="l00026"></a><span class="lineno">   26</span>&#160;<span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00027"></a><span class="lineno">   27</span>&#160;</div>
-<div class="line"><a name="l00028"></a><span class="lineno">   28</span>&#160;<span class="keyword">namespace </span><a class="code" href="a00236.html">glm</a></div>
-<div class="line"><a name="l00029"></a><span class="lineno">   29</span>&#160;{</div>
-<div class="line"><a name="l00032"></a><span class="lineno">   32</span>&#160;</div>
-<div class="line"><a name="l00039"></a><span class="lineno">   39</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T, qualifier Q&gt;</div>
-<div class="line"><a name="l00040"></a><span class="lineno">   40</span>&#160;        GLM_FUNC_DECL T <a class="code" href="a00322.html#gac36e72b934ea6a9dd313772d7e78fa93">cross</a>(vec&lt;2, T, Q&gt; <span class="keyword">const</span>&amp; v, vec&lt;2, T, Q&gt; <span class="keyword">const</span>&amp; u);</div>
-<div class="line"><a name="l00041"></a><span class="lineno">   41</span>&#160;</div>
-<div class="line"><a name="l00043"></a><span class="lineno">   43</span>&#160;} <span class="comment">//namespace glm</span></div>
-<div class="line"><a name="l00044"></a><span class="lineno">   44</span>&#160;</div>
-<div class="line"><a name="l00045"></a><span class="lineno">   45</span>&#160;<span class="preprocessor">#include &quot;exterior_product.inl&quot;</span></div>
-<div class="ttc" id="a00322_html_gac36e72b934ea6a9dd313772d7e78fa93"><div class="ttname"><a href="a00322.html#gac36e72b934ea6a9dd313772d7e78fa93">glm::cross</a></div><div class="ttdeci">GLM_FUNC_DECL T cross(vec&lt; 2, T, Q &gt; const &amp;v, vec&lt; 2, T, Q &gt; const &amp;u)</div><div class="ttdoc">Returns the cross product of x and y. </div></div>
-<div class="ttc" id="a00236_html"><div class="ttname"><a href="a00236.html">glm</a></div><div class="ttdef"><b>Definition:</b> <a href="a00015_source.html#l00020">common.hpp:20</a></div></div>
-</div><!-- fragment --></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.10
-</small></address>
-</body>
-</html>

+ 0 - 161
doc/api/a00031_source.html

@@ -1,161 +0,0 @@
-<!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.10"/>
-<title>0.9.9 API documentation: fast_exponential.hpp Source File</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="search/search.css" rel="stylesheet" type="text/css"/>
-<script type="text/javascript" src="search/searchdata.js"></script>
-<script type="text/javascript" src="search/search.js"></script>
-<script type="text/javascript">
-  $(document).ready(function() { init_search(); });
-</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 id="projectlogo"><img alt="Logo" src="logo-mini.png"/></td>
-  <td id="projectalign" style="padding-left: 0.5em;">
-   <div id="projectname">0.9.9 API documentation
-   </div>
-  </td>
- </tr>
- </tbody>
-</table>
-</div>
-<!-- end header part -->
-<!-- Generated by Doxygen 1.8.10 -->
-<script type="text/javascript">
-var searchBox = new SearchBox("searchBox", "search",false,'Search');
-</script>
-  <div id="navrow1" class="tabs">
-    <ul class="tablist">
-      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
-      <li><a href="modules.html"><span>Modules</span></a></li>
-      <li class="current"><a href="files.html"><span>Files</span></a></li>
-      <li>
-        <div id="MSearchBox" class="MSearchBoxInactive">
-        <span class="left">
-          <img id="MSearchSelect" src="search/mag_sel.png"
-               onmouseover="return searchBox.OnSearchSelectShow()"
-               onmouseout="return searchBox.OnSearchSelectHide()"
-               alt=""/>
-          <input type="text" id="MSearchField" value="Search" accesskey="S"
-               onfocus="searchBox.OnSearchFieldFocus(true)" 
-               onblur="searchBox.OnSearchFieldFocus(false)" 
-               onkeyup="searchBox.OnSearchFieldChange(event)"/>
-          </span><span class="right">
-            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
-          </span>
-        </div>
-      </li>
-    </ul>
-  </div>
-  <div id="navrow2" class="tabs2">
-    <ul class="tablist">
-      <li><a href="files.html"><span>File&#160;List</span></a></li>
-    </ul>
-  </div>
-<!-- window showing the filter options -->
-<div id="MSearchSelectWindow"
-     onmouseover="return searchBox.OnSearchSelectShow()"
-     onmouseout="return searchBox.OnSearchSelectHide()"
-     onkeydown="return searchBox.OnSearchSelectKey(event)">
-</div>
-
-<!-- iframe showing the search results (closed by default) -->
-<div id="MSearchResultsWindow">
-<iframe src="javascript:void(0)" frameborder="0" 
-        name="MSearchResults" id="MSearchResults">
-</iframe>
-</div>
-
-<div id="nav-path" class="navpath">
-  <ul>
-<li class="navelem"><a class="el" href="dir_3a581ba30d25676e4b797b1f96d53b45.html">F:</a></li><li class="navelem"><a class="el" href="dir_9e5fe034a00e89334fd5186c3e7db156.html">G-Truc</a></li><li class="navelem"><a class="el" href="dir_d9496f0844b48bc7e53b5af8c99b9ab2.html">Source</a></li><li class="navelem"><a class="el" href="dir_a8bee7be44182a33f3820393ae0b105d.html">G-Truc</a></li><li class="navelem"><a class="el" href="dir_44e5e654415abd9ca6fdeaddaff8565e.html">glm</a></li><li class="navelem"><a class="el" href="dir_cef2d71d502cb69a9252bca2297d9549.html">glm</a></li><li class="navelem"><a class="el" href="dir_f35778ec600a1b9bbc4524e62e226aa2.html">gtx</a></li>  </ul>
-</div>
-</div><!-- top -->
-<div class="header">
-  <div class="headertitle">
-<div class="title">fast_exponential.hpp</div>  </div>
-</div><!--header-->
-<div class="contents">
-<a href="a00031.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span>&#160;</div>
-<div class="line"><a name="l00014"></a><span class="lineno">   14</span>&#160;<span class="preprocessor">#pragma once</span></div>
-<div class="line"><a name="l00015"></a><span class="lineno">   15</span>&#160;</div>
-<div class="line"><a name="l00016"></a><span class="lineno">   16</span>&#160;<span class="comment">// Dependency:</span></div>
-<div class="line"><a name="l00017"></a><span class="lineno">   17</span>&#160;<span class="preprocessor">#include &quot;../glm.hpp&quot;</span></div>
-<div class="line"><a name="l00018"></a><span class="lineno">   18</span>&#160;</div>
-<div class="line"><a name="l00019"></a><span class="lineno">   19</span>&#160;<span class="preprocessor">#if GLM_MESSAGES == GLM_ENABLE &amp;&amp; !defined(GLM_EXT_INCLUDED)</span></div>
-<div class="line"><a name="l00020"></a><span class="lineno">   20</span>&#160;<span class="preprocessor">#       ifndef GLM_ENABLE_EXPERIMENTAL</span></div>
-<div class="line"><a name="l00021"></a><span class="lineno">   21</span>&#160;<span class="preprocessor">#               pragma message(&quot;GLM: GLM_GTX_fast_exponential is an experimental extension and may change in the future. Use #define GLM_ENABLE_EXPERIMENTAL before including it, if you really want to use it.&quot;)</span></div>
-<div class="line"><a name="l00022"></a><span class="lineno">   22</span>&#160;<span class="preprocessor">#       else</span></div>
-<div class="line"><a name="l00023"></a><span class="lineno">   23</span>&#160;<span class="preprocessor">#               pragma message(&quot;GLM: GLM_GTX_fast_exponential extension included&quot;)</span></div>
-<div class="line"><a name="l00024"></a><span class="lineno">   24</span>&#160;<span class="preprocessor">#       endif</span></div>
-<div class="line"><a name="l00025"></a><span class="lineno">   25</span>&#160;<span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00026"></a><span class="lineno">   26</span>&#160;</div>
-<div class="line"><a name="l00027"></a><span class="lineno">   27</span>&#160;<span class="keyword">namespace </span><a class="code" href="a00236.html">glm</a></div>
-<div class="line"><a name="l00028"></a><span class="lineno">   28</span>&#160;{</div>
-<div class="line"><a name="l00031"></a><span class="lineno">   31</span>&#160;</div>
-<div class="line"><a name="l00034"></a><span class="lineno">   34</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> genType&gt;</div>
-<div class="line"><a name="l00035"></a><span class="lineno">   35</span>&#160;        GLM_FUNC_DECL genType <a class="code" href="a00323.html#ga1abe488c0829da5b9de70ac64aeaa7e5">fastPow</a>(genType x, genType y);</div>
-<div class="line"><a name="l00036"></a><span class="lineno">   36</span>&#160;</div>
-<div class="line"><a name="l00039"></a><span class="lineno">   39</span>&#160;        <span class="keyword">template</span>&lt;length_t L, <span class="keyword">typename</span> T, qualifier Q&gt;</div>
-<div class="line"><a name="l00040"></a><span class="lineno">   40</span>&#160;        GLM_FUNC_DECL vec&lt;L, T, Q&gt; <a class="code" href="a00323.html#ga1abe488c0829da5b9de70ac64aeaa7e5">fastPow</a>(vec&lt;L, T, Q&gt; <span class="keyword">const</span>&amp; x, vec&lt;L, T, Q&gt; <span class="keyword">const</span>&amp; y);</div>
-<div class="line"><a name="l00041"></a><span class="lineno">   41</span>&#160;</div>
-<div class="line"><a name="l00044"></a><span class="lineno">   44</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> genTypeT, <span class="keyword">typename</span> genTypeU&gt;</div>
-<div class="line"><a name="l00045"></a><span class="lineno">   45</span>&#160;        GLM_FUNC_DECL genTypeT <a class="code" href="a00323.html#ga1abe488c0829da5b9de70ac64aeaa7e5">fastPow</a>(genTypeT x, genTypeU y);</div>
-<div class="line"><a name="l00046"></a><span class="lineno">   46</span>&#160;</div>
-<div class="line"><a name="l00049"></a><span class="lineno">   49</span>&#160;        <span class="keyword">template</span>&lt;length_t L, <span class="keyword">typename</span> T, qualifier Q&gt;</div>
-<div class="line"><a name="l00050"></a><span class="lineno">   50</span>&#160;        GLM_FUNC_DECL vec&lt;L, T, Q&gt; <a class="code" href="a00323.html#ga1abe488c0829da5b9de70ac64aeaa7e5">fastPow</a>(vec&lt;L, T, Q&gt; <span class="keyword">const</span>&amp; x);</div>
-<div class="line"><a name="l00051"></a><span class="lineno">   51</span>&#160;</div>
-<div class="line"><a name="l00054"></a><span class="lineno">   54</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T&gt;</div>
-<div class="line"><a name="l00055"></a><span class="lineno">   55</span>&#160;        GLM_FUNC_DECL T <a class="code" href="a00323.html#ga3ba6153aec6bd74628f8b00530aa8d58">fastExp</a>(T x);</div>
-<div class="line"><a name="l00056"></a><span class="lineno">   56</span>&#160;</div>
-<div class="line"><a name="l00059"></a><span class="lineno">   59</span>&#160;        <span class="keyword">template</span>&lt;length_t L, <span class="keyword">typename</span> T, qualifier Q&gt;</div>
-<div class="line"><a name="l00060"></a><span class="lineno">   60</span>&#160;        GLM_FUNC_DECL vec&lt;L, T, Q&gt; <a class="code" href="a00323.html#ga3ba6153aec6bd74628f8b00530aa8d58">fastExp</a>(vec&lt;L, T, Q&gt; <span class="keyword">const</span>&amp; x);</div>
-<div class="line"><a name="l00061"></a><span class="lineno">   61</span>&#160;</div>
-<div class="line"><a name="l00064"></a><span class="lineno">   64</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T&gt;</div>
-<div class="line"><a name="l00065"></a><span class="lineno">   65</span>&#160;        GLM_FUNC_DECL T <a class="code" href="a00323.html#ga937256993a7219e73f186bb348fe6be8">fastLog</a>(T x);</div>
-<div class="line"><a name="l00066"></a><span class="lineno">   66</span>&#160;</div>
-<div class="line"><a name="l00069"></a><span class="lineno">   69</span>&#160;        <span class="keyword">template</span>&lt;length_t L, <span class="keyword">typename</span> T, qualifier Q&gt;</div>
-<div class="line"><a name="l00070"></a><span class="lineno">   70</span>&#160;        GLM_FUNC_DECL vec&lt;L, T, Q&gt; <a class="code" href="a00323.html#ga937256993a7219e73f186bb348fe6be8">fastLog</a>(vec&lt;L, T, Q&gt; <span class="keyword">const</span>&amp; x);</div>
-<div class="line"><a name="l00071"></a><span class="lineno">   71</span>&#160;</div>
-<div class="line"><a name="l00074"></a><span class="lineno">   74</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T&gt;</div>
-<div class="line"><a name="l00075"></a><span class="lineno">   75</span>&#160;        GLM_FUNC_DECL T <a class="code" href="a00323.html#gacaaed8b67d20d244b7de217e7816c1b6">fastExp2</a>(T x);</div>
-<div class="line"><a name="l00076"></a><span class="lineno">   76</span>&#160;</div>
-<div class="line"><a name="l00079"></a><span class="lineno">   79</span>&#160;        <span class="keyword">template</span>&lt;length_t L, <span class="keyword">typename</span> T, qualifier Q&gt;</div>
-<div class="line"><a name="l00080"></a><span class="lineno">   80</span>&#160;        GLM_FUNC_DECL vec&lt;L, T, Q&gt; <a class="code" href="a00323.html#gacaaed8b67d20d244b7de217e7816c1b6">fastExp2</a>(vec&lt;L, T, Q&gt; <span class="keyword">const</span>&amp; x);</div>
-<div class="line"><a name="l00081"></a><span class="lineno">   81</span>&#160;</div>
-<div class="line"><a name="l00084"></a><span class="lineno">   84</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T&gt;</div>
-<div class="line"><a name="l00085"></a><span class="lineno">   85</span>&#160;        GLM_FUNC_DECL T <a class="code" href="a00323.html#ga7562043539194ccc24649f8475bc5584">fastLog2</a>(T x);</div>
-<div class="line"><a name="l00086"></a><span class="lineno">   86</span>&#160;</div>
-<div class="line"><a name="l00089"></a><span class="lineno">   89</span>&#160;        <span class="keyword">template</span>&lt;length_t L, <span class="keyword">typename</span> T, qualifier Q&gt;</div>
-<div class="line"><a name="l00090"></a><span class="lineno">   90</span>&#160;        GLM_FUNC_DECL vec&lt;L, T, Q&gt; <a class="code" href="a00323.html#ga7562043539194ccc24649f8475bc5584">fastLog2</a>(vec&lt;L, T, Q&gt; <span class="keyword">const</span>&amp; x);</div>
-<div class="line"><a name="l00091"></a><span class="lineno">   91</span>&#160;</div>
-<div class="line"><a name="l00093"></a><span class="lineno">   93</span>&#160;}<span class="comment">//namespace glm</span></div>
-<div class="line"><a name="l00094"></a><span class="lineno">   94</span>&#160;</div>
-<div class="line"><a name="l00095"></a><span class="lineno">   95</span>&#160;<span class="preprocessor">#include &quot;fast_exponential.inl&quot;</span></div>
-<div class="ttc" id="a00323_html_ga937256993a7219e73f186bb348fe6be8"><div class="ttname"><a href="a00323.html#ga937256993a7219e73f186bb348fe6be8">glm::fastLog</a></div><div class="ttdeci">GLM_FUNC_DECL vec&lt; L, T, Q &gt; fastLog(vec&lt; L, T, Q &gt; const &amp;x)</div><div class="ttdoc">Faster than the common exp2 function but less accurate. </div></div>
-<div class="ttc" id="a00323_html_ga1abe488c0829da5b9de70ac64aeaa7e5"><div class="ttname"><a href="a00323.html#ga1abe488c0829da5b9de70ac64aeaa7e5">glm::fastPow</a></div><div class="ttdeci">GLM_FUNC_DECL vec&lt; L, T, Q &gt; fastPow(vec&lt; L, T, Q &gt; const &amp;x)</div><div class="ttdoc">Faster than the common pow function but less accurate. </div></div>
-<div class="ttc" id="a00323_html_ga7562043539194ccc24649f8475bc5584"><div class="ttname"><a href="a00323.html#ga7562043539194ccc24649f8475bc5584">glm::fastLog2</a></div><div class="ttdeci">GLM_FUNC_DECL vec&lt; L, T, Q &gt; fastLog2(vec&lt; L, T, Q &gt; const &amp;x)</div><div class="ttdoc">Faster than the common log2 function but less accurate. </div></div>
-<div class="ttc" id="a00323_html_gacaaed8b67d20d244b7de217e7816c1b6"><div class="ttname"><a href="a00323.html#gacaaed8b67d20d244b7de217e7816c1b6">glm::fastExp2</a></div><div class="ttdeci">GLM_FUNC_DECL vec&lt; L, T, Q &gt; fastExp2(vec&lt; L, T, Q &gt; const &amp;x)</div><div class="ttdoc">Faster than the common exp2 function but less accurate. </div></div>
-<div class="ttc" id="a00323_html_ga3ba6153aec6bd74628f8b00530aa8d58"><div class="ttname"><a href="a00323.html#ga3ba6153aec6bd74628f8b00530aa8d58">glm::fastExp</a></div><div class="ttdeci">GLM_FUNC_DECL vec&lt; L, T, Q &gt; fastExp(vec&lt; L, T, Q &gt; const &amp;x)</div><div class="ttdoc">Faster than the common exp function but less accurate. </div></div>
-<div class="ttc" id="a00236_html"><div class="ttname"><a href="a00236.html">glm</a></div><div class="ttdef"><b>Definition:</b> <a href="a00015_source.html#l00020">common.hpp:20</a></div></div>
-</div><!-- fragment --></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.10
-</small></address>
-</body>
-</html>

+ 1171 - 94
doc/api/a00032_source.html

@@ -1,19 +1,17 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://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.10"/>
-<title>0.9.9 API documentation: fast_square_root.hpp Source File</title>
+<meta name="generator" content="Doxygen 1.8.18"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>1.0.0 API documentation: setup.hpp Source File</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="search/search.css" rel="stylesheet" type="text/css"/>
 <script type="text/javascript" src="search/searchdata.js"></script>
 <script type="text/javascript" src="search/search.js"></script>
-<script type="text/javascript">
-  $(document).ready(function() { init_search(); });
-</script>
 <link href="doxygen.css" rel="stylesheet" type="text/css" />
 </head>
 <body>
@@ -24,7 +22,7 @@
  <tr style="height: 56px;">
   <td id="projectlogo"><img alt="Logo" src="logo-mini.png"/></td>
   <td id="projectalign" style="padding-left: 0.5em;">
-   <div id="projectname">0.9.9 API documentation
+   <div id="projectname">1.0.0 API documentation
    </div>
   </td>
  </tr>
@@ -32,38 +30,22 @@
 </table>
 </div>
 <!-- end header part -->
-<!-- Generated by Doxygen 1.8.10 -->
+<!-- Generated by Doxygen 1.8.18 -->
 <script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
 var searchBox = new SearchBox("searchBox", "search",false,'Search');
+/* @license-end */
 </script>
-  <div id="navrow1" class="tabs">
-    <ul class="tablist">
-      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
-      <li><a href="modules.html"><span>Modules</span></a></li>
-      <li class="current"><a href="files.html"><span>Files</span></a></li>
-      <li>
-        <div id="MSearchBox" class="MSearchBoxInactive">
-        <span class="left">
-          <img id="MSearchSelect" src="search/mag_sel.png"
-               onmouseover="return searchBox.OnSearchSelectShow()"
-               onmouseout="return searchBox.OnSearchSelectHide()"
-               alt=""/>
-          <input type="text" id="MSearchField" value="Search" accesskey="S"
-               onfocus="searchBox.OnSearchFieldFocus(true)" 
-               onblur="searchBox.OnSearchFieldFocus(false)" 
-               onkeyup="searchBox.OnSearchFieldChange(event)"/>
-          </span><span class="right">
-            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
-          </span>
-        </div>
-      </li>
-    </ul>
-  </div>
-  <div id="navrow2" class="tabs2">
-    <ul class="tablist">
-      <li><a href="files.html"><span>File&#160;List</span></a></li>
-    </ul>
-  </div>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
 <!-- window showing the filter options -->
 <div id="MSearchSelectWindow"
      onmouseover="return searchBox.OnSearchSelectShow()"
@@ -80,75 +62,1170 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 
 <div id="nav-path" class="navpath">
   <ul>
-<li class="navelem"><a class="el" href="dir_3a581ba30d25676e4b797b1f96d53b45.html">F:</a></li><li class="navelem"><a class="el" href="dir_9e5fe034a00e89334fd5186c3e7db156.html">G-Truc</a></li><li class="navelem"><a class="el" href="dir_d9496f0844b48bc7e53b5af8c99b9ab2.html">Source</a></li><li class="navelem"><a class="el" href="dir_a8bee7be44182a33f3820393ae0b105d.html">G-Truc</a></li><li class="navelem"><a class="el" href="dir_44e5e654415abd9ca6fdeaddaff8565e.html">glm</a></li><li class="navelem"><a class="el" href="dir_cef2d71d502cb69a9252bca2297d9549.html">glm</a></li><li class="navelem"><a class="el" href="dir_f35778ec600a1b9bbc4524e62e226aa2.html">gtx</a></li>  </ul>
+<li class="navelem"><a class="el" href="dir_885cc87fac2d91e269af0a5a959fa5f6.html">E:</a></li><li class="navelem"><a class="el" href="dir_63ed049134a778d525e06b63afc2c979.html">Github</a></li><li class="navelem"><a class="el" href="dir_c98a9ac98258ab9f831b188d66361a70.html">g-truc</a></li><li class="navelem"><a class="el" href="dir_50f12b6ceb23d7f6adfb377a1ae8b006.html">glm</a></li><li class="navelem"><a class="el" href="dir_fca33f1b5115d46f42c670590789c0d2.html">glm</a></li><li class="navelem"><a class="el" href="dir_382f4fd018b81be8753cb53c0a41a09a.html">detail</a></li>  </ul>
 </div>
 </div><!-- top -->
 <div class="header">
   <div class="headertitle">
-<div class="title">fast_square_root.hpp</div>  </div>
+<div class="title">setup.hpp</div>  </div>
 </div><!--header-->
 <div class="contents">
-<a href="a00032.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span>&#160;</div>
-<div class="line"><a name="l00015"></a><span class="lineno">   15</span>&#160;<span class="preprocessor">#pragma once</span></div>
-<div class="line"><a name="l00016"></a><span class="lineno">   16</span>&#160;</div>
-<div class="line"><a name="l00017"></a><span class="lineno">   17</span>&#160;<span class="comment">// Dependency:</span></div>
-<div class="line"><a name="l00018"></a><span class="lineno">   18</span>&#160;<span class="preprocessor">#include &quot;../common.hpp&quot;</span></div>
-<div class="line"><a name="l00019"></a><span class="lineno">   19</span>&#160;<span class="preprocessor">#include &quot;../exponential.hpp&quot;</span></div>
-<div class="line"><a name="l00020"></a><span class="lineno">   20</span>&#160;<span class="preprocessor">#include &quot;../geometric.hpp&quot;</span></div>
-<div class="line"><a name="l00021"></a><span class="lineno">   21</span>&#160;</div>
-<div class="line"><a name="l00022"></a><span class="lineno">   22</span>&#160;<span class="preprocessor">#if GLM_MESSAGES == GLM_ENABLE &amp;&amp; !defined(GLM_EXT_INCLUDED)</span></div>
-<div class="line"><a name="l00023"></a><span class="lineno">   23</span>&#160;<span class="preprocessor">#       ifndef GLM_ENABLE_EXPERIMENTAL</span></div>
-<div class="line"><a name="l00024"></a><span class="lineno">   24</span>&#160;<span class="preprocessor">#               pragma message(&quot;GLM: GLM_GTX_fast_square_root is an experimental extension and may change in the future. Use #define GLM_ENABLE_EXPERIMENTAL before including it, if you really want to use it.&quot;)</span></div>
-<div class="line"><a name="l00025"></a><span class="lineno">   25</span>&#160;<span class="preprocessor">#       else</span></div>
-<div class="line"><a name="l00026"></a><span class="lineno">   26</span>&#160;<span class="preprocessor">#               pragma message(&quot;GLM: GLM_GTX_fast_square_root extension included&quot;)</span></div>
-<div class="line"><a name="l00027"></a><span class="lineno">   27</span>&#160;<span class="preprocessor">#       endif</span></div>
-<div class="line"><a name="l00028"></a><span class="lineno">   28</span>&#160;<span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00029"></a><span class="lineno">   29</span>&#160;</div>
-<div class="line"><a name="l00030"></a><span class="lineno">   30</span>&#160;<span class="keyword">namespace </span><a class="code" href="a00236.html">glm</a></div>
-<div class="line"><a name="l00031"></a><span class="lineno">   31</span>&#160;{</div>
-<div class="line"><a name="l00034"></a><span class="lineno">   34</span>&#160;</div>
-<div class="line"><a name="l00038"></a><span class="lineno">   38</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> genType&gt;</div>
-<div class="line"><a name="l00039"></a><span class="lineno">   39</span>&#160;        GLM_FUNC_DECL genType <a class="code" href="a00324.html#gae83f0c03614f73eae5478c5b6274ee6d">fastSqrt</a>(genType x);</div>
-<div class="line"><a name="l00040"></a><span class="lineno">   40</span>&#160;</div>
-<div class="line"><a name="l00044"></a><span class="lineno">   44</span>&#160;        <span class="keyword">template</span>&lt;length_t L, <span class="keyword">typename</span> T, qualifier Q&gt;</div>
-<div class="line"><a name="l00045"></a><span class="lineno">   45</span>&#160;        GLM_FUNC_DECL vec&lt;L, T, Q&gt; <a class="code" href="a00324.html#gae83f0c03614f73eae5478c5b6274ee6d">fastSqrt</a>(vec&lt;L, T, Q&gt; <span class="keyword">const</span>&amp; x);</div>
-<div class="line"><a name="l00046"></a><span class="lineno">   46</span>&#160;</div>
-<div class="line"><a name="l00050"></a><span class="lineno">   50</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> genType&gt;</div>
-<div class="line"><a name="l00051"></a><span class="lineno">   51</span>&#160;        GLM_FUNC_DECL genType <a class="code" href="a00324.html#gadcd7be12b1e5ee182141359d4c45dd24">fastInverseSqrt</a>(genType x);</div>
-<div class="line"><a name="l00052"></a><span class="lineno">   52</span>&#160;</div>
-<div class="line"><a name="l00056"></a><span class="lineno">   56</span>&#160;        <span class="keyword">template</span>&lt;length_t L, <span class="keyword">typename</span> T, qualifier Q&gt;</div>
-<div class="line"><a name="l00057"></a><span class="lineno">   57</span>&#160;        GLM_FUNC_DECL vec&lt;L, T, Q&gt; <a class="code" href="a00324.html#gadcd7be12b1e5ee182141359d4c45dd24">fastInverseSqrt</a>(vec&lt;L, T, Q&gt; <span class="keyword">const</span>&amp; x);</div>
-<div class="line"><a name="l00058"></a><span class="lineno">   58</span>&#160;</div>
-<div class="line"><a name="l00062"></a><span class="lineno">   62</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> genType&gt;</div>
-<div class="line"><a name="l00063"></a><span class="lineno">   63</span>&#160;        GLM_FUNC_DECL genType <a class="code" href="a00324.html#ga90f66be92ef61e705c005e7b3209edb8">fastLength</a>(genType x);</div>
-<div class="line"><a name="l00064"></a><span class="lineno">   64</span>&#160;</div>
-<div class="line"><a name="l00068"></a><span class="lineno">   68</span>&#160;        <span class="keyword">template</span>&lt;length_t L, <span class="keyword">typename</span> T, qualifier Q&gt;</div>
-<div class="line"><a name="l00069"></a><span class="lineno">   69</span>&#160;        GLM_FUNC_DECL T <a class="code" href="a00324.html#ga90f66be92ef61e705c005e7b3209edb8">fastLength</a>(vec&lt;L, T, Q&gt; <span class="keyword">const</span>&amp; x);</div>
-<div class="line"><a name="l00070"></a><span class="lineno">   70</span>&#160;</div>
-<div class="line"><a name="l00074"></a><span class="lineno">   74</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> genType&gt;</div>
-<div class="line"><a name="l00075"></a><span class="lineno">   75</span>&#160;        GLM_FUNC_DECL genType <a class="code" href="a00324.html#ga42d3e771fa7cb3c60d828e315829df19">fastDistance</a>(genType x, genType y);</div>
-<div class="line"><a name="l00076"></a><span class="lineno">   76</span>&#160;</div>
-<div class="line"><a name="l00080"></a><span class="lineno">   80</span>&#160;        <span class="keyword">template</span>&lt;length_t L, <span class="keyword">typename</span> T, qualifier Q&gt;</div>
-<div class="line"><a name="l00081"></a><span class="lineno">   81</span>&#160;        GLM_FUNC_DECL T <a class="code" href="a00324.html#ga42d3e771fa7cb3c60d828e315829df19">fastDistance</a>(vec&lt;L, T, Q&gt; <span class="keyword">const</span>&amp; x, vec&lt;L, T, Q&gt; <span class="keyword">const</span>&amp; y);</div>
-<div class="line"><a name="l00082"></a><span class="lineno">   82</span>&#160;</div>
-<div class="line"><a name="l00086"></a><span class="lineno">   86</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> genType&gt;</div>
-<div class="line"><a name="l00087"></a><span class="lineno">   87</span>&#160;        GLM_FUNC_DECL genType <a class="code" href="a00324.html#ga3b02c1d6e0c754144e2f1e110bf9f16c">fastNormalize</a>(genType <span class="keyword">const</span>&amp; x);</div>
-<div class="line"><a name="l00088"></a><span class="lineno">   88</span>&#160;</div>
-<div class="line"><a name="l00090"></a><span class="lineno">   90</span>&#160;}<span class="comment">// namespace glm</span></div>
-<div class="line"><a name="l00091"></a><span class="lineno">   91</span>&#160;</div>
-<div class="line"><a name="l00092"></a><span class="lineno">   92</span>&#160;<span class="preprocessor">#include &quot;fast_square_root.inl&quot;</span></div>
-<div class="ttc" id="a00324_html_ga90f66be92ef61e705c005e7b3209edb8"><div class="ttname"><a href="a00324.html#ga90f66be92ef61e705c005e7b3209edb8">glm::fastLength</a></div><div class="ttdeci">GLM_FUNC_DECL T fastLength(vec&lt; L, T, Q &gt; const &amp;x)</div><div class="ttdoc">Faster than the common length function but less accurate. </div></div>
-<div class="ttc" id="a00324_html_ga42d3e771fa7cb3c60d828e315829df19"><div class="ttname"><a href="a00324.html#ga42d3e771fa7cb3c60d828e315829df19">glm::fastDistance</a></div><div class="ttdeci">GLM_FUNC_DECL T fastDistance(vec&lt; L, T, Q &gt; const &amp;x, vec&lt; L, T, Q &gt; const &amp;y)</div><div class="ttdoc">Faster than the common distance function but less accurate. </div></div>
-<div class="ttc" id="a00324_html_gae83f0c03614f73eae5478c5b6274ee6d"><div class="ttname"><a href="a00324.html#gae83f0c03614f73eae5478c5b6274ee6d">glm::fastSqrt</a></div><div class="ttdeci">GLM_FUNC_DECL vec&lt; L, T, Q &gt; fastSqrt(vec&lt; L, T, Q &gt; const &amp;x)</div><div class="ttdoc">Faster than the common sqrt function but less accurate. </div></div>
-<div class="ttc" id="a00324_html_ga3b02c1d6e0c754144e2f1e110bf9f16c"><div class="ttname"><a href="a00324.html#ga3b02c1d6e0c754144e2f1e110bf9f16c">glm::fastNormalize</a></div><div class="ttdeci">GLM_FUNC_DECL genType fastNormalize(genType const &amp;x)</div><div class="ttdoc">Faster than the common normalize function but less accurate. </div></div>
-<div class="ttc" id="a00324_html_gadcd7be12b1e5ee182141359d4c45dd24"><div class="ttname"><a href="a00324.html#gadcd7be12b1e5ee182141359d4c45dd24">glm::fastInverseSqrt</a></div><div class="ttdeci">GLM_FUNC_DECL vec&lt; L, T, Q &gt; fastInverseSqrt(vec&lt; L, T, Q &gt; const &amp;x)</div><div class="ttdoc">Faster than the common inversesqrt function but less accurate. </div></div>
-<div class="ttc" id="a00236_html"><div class="ttname"><a href="a00236.html">glm</a></div><div class="ttdef"><b>Definition:</b> <a href="a00015_source.html#l00020">common.hpp:20</a></div></div>
+<div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span>&#160;<span class="preprocessor">#ifndef GLM_SETUP_INCLUDED</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno">    2</span>&#160; </div>
+<div class="line"><a name="l00003"></a><span class="lineno">    3</span>&#160;<span class="preprocessor">#include &lt;cassert&gt;</span></div>
+<div class="line"><a name="l00004"></a><span class="lineno">    4</span>&#160;<span class="preprocessor">#include &lt;cstddef&gt;</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno">    5</span>&#160; </div>
+<div class="line"><a name="l00006"></a><span class="lineno">    6</span>&#160;<span class="preprocessor">#define GLM_VERSION_MAJOR 1</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno">    7</span>&#160;<span class="preprocessor">#define GLM_VERSION_MINOR 0</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno">    8</span>&#160;<span class="preprocessor">#define GLM_VERSION_PATCH 0</span></div>
+<div class="line"><a name="l00009"></a><span class="lineno">    9</span>&#160;<span class="preprocessor">#define GLM_VERSION_REVISION 0 // Deprecated</span></div>
+<div class="line"><a name="l00010"></a><span class="lineno">   10</span>&#160;<span class="preprocessor">#define GLM_VERSION 1000 // Deprecated</span></div>
+<div class="line"><a name="l00011"></a><span class="lineno">   11</span>&#160;<span class="preprocessor">#define GLM_VERSION_MESSAGE &quot;GLM: version 1.0.0&quot;</span></div>
+<div class="line"><a name="l00012"></a><span class="lineno">   12</span>&#160; </div>
+<div class="line"><a name="l00013"></a><span class="lineno">   13</span>&#160;<span class="preprocessor">#define GLM_MAKE_API_VERSION(variant, major, minor, patch) \</span></div>
+<div class="line"><a name="l00014"></a><span class="lineno">   14</span>&#160;<span class="preprocessor">    ((((uint32_t)(variant)) &lt;&lt; 29U) | (((uint32_t)(major)) &lt;&lt; 22U) | (((uint32_t)(minor)) &lt;&lt; 12U) | ((uint32_t)(patch)))</span></div>
+<div class="line"><a name="l00015"></a><span class="lineno">   15</span>&#160; </div>
+<div class="line"><a name="l00016"></a><span class="lineno">   16</span>&#160;<span class="preprocessor">#define GLM_VERSION_COMPLETE GLM_MAKE_API_VERSION(0, GLM_VERSION_MAJOR, GLM_VERSION_MINOR, GLM_VERSION_PATCH)</span></div>
+<div class="line"><a name="l00017"></a><span class="lineno">   17</span>&#160; </div>
+<div class="line"><a name="l00018"></a><span class="lineno">   18</span>&#160;<span class="preprocessor">#define GLM_SETUP_INCLUDED GLM_VERSION</span></div>
+<div class="line"><a name="l00019"></a><span class="lineno">   19</span>&#160; </div>
+<div class="line"><a name="l00020"></a><span class="lineno">   20</span>&#160;<span class="preprocessor">#define GLM_GET_VERSION_VARIANT(version) ((uint32_t)(version) &gt;&gt; 29U)</span></div>
+<div class="line"><a name="l00021"></a><span class="lineno">   21</span>&#160;<span class="preprocessor">#define GLM_GET_VERSION_MAJOR(version) (((uint32_t)(version) &gt;&gt; 22U) &amp; 0x7FU)</span></div>
+<div class="line"><a name="l00022"></a><span class="lineno">   22</span>&#160;<span class="preprocessor">#define GLM_GET_VERSION_MINOR(version) (((uint32_t)(version) &gt;&gt; 12U) &amp; 0x3FFU)</span></div>
+<div class="line"><a name="l00023"></a><span class="lineno">   23</span>&#160;<span class="preprocessor">#define GLM_GET_VERSION_PATCH(version) ((uint32_t)(version) &amp; 0xFFFU)</span></div>
+<div class="line"><a name="l00024"></a><span class="lineno">   24</span>&#160; </div>
+<div class="line"><a name="l00026"></a><span class="lineno">   26</span>&#160;<span class="comment">// Active states</span></div>
+<div class="line"><a name="l00027"></a><span class="lineno">   27</span>&#160; </div>
+<div class="line"><a name="l00028"></a><span class="lineno">   28</span>&#160;<span class="preprocessor">#define GLM_DISABLE             0</span></div>
+<div class="line"><a name="l00029"></a><span class="lineno">   29</span>&#160;<span class="preprocessor">#define GLM_ENABLE              1</span></div>
+<div class="line"><a name="l00030"></a><span class="lineno">   30</span>&#160; </div>
+<div class="line"><a name="l00032"></a><span class="lineno">   32</span>&#160;<span class="comment">// Messages</span></div>
+<div class="line"><a name="l00033"></a><span class="lineno">   33</span>&#160; </div>
+<div class="line"><a name="l00034"></a><span class="lineno">   34</span>&#160;<span class="preprocessor">#if defined(GLM_FORCE_MESSAGES)</span></div>
+<div class="line"><a name="l00035"></a><span class="lineno">   35</span>&#160;<span class="preprocessor">#       define GLM_MESSAGES GLM_ENABLE</span></div>
+<div class="line"><a name="l00036"></a><span class="lineno">   36</span>&#160;<span class="preprocessor">#else</span></div>
+<div class="line"><a name="l00037"></a><span class="lineno">   37</span>&#160;<span class="preprocessor">#       define GLM_MESSAGES GLM_DISABLE</span></div>
+<div class="line"><a name="l00038"></a><span class="lineno">   38</span>&#160;<span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l00039"></a><span class="lineno">   39</span>&#160; </div>
+<div class="line"><a name="l00041"></a><span class="lineno">   41</span>&#160;<span class="comment">// Detect the platform</span></div>
+<div class="line"><a name="l00042"></a><span class="lineno">   42</span>&#160; </div>
+<div class="line"><a name="l00043"></a><span class="lineno">   43</span>&#160;<span class="preprocessor">#include &quot;../simd/platform.h&quot;</span></div>
+<div class="line"><a name="l00044"></a><span class="lineno">   44</span>&#160; </div>
+<div class="line"><a name="l00046"></a><span class="lineno">   46</span>&#160;<span class="comment">// Build model</span></div>
+<div class="line"><a name="l00047"></a><span class="lineno">   47</span>&#160; </div>
+<div class="line"><a name="l00048"></a><span class="lineno">   48</span>&#160;<span class="preprocessor">#if defined(_M_ARM64) || defined(__LP64__) || defined(_M_X64) || defined(__ppc64__) || defined(__x86_64__)</span></div>
+<div class="line"><a name="l00049"></a><span class="lineno">   49</span>&#160;<span class="preprocessor">#       define GLM_MODEL        GLM_MODEL_64</span></div>
+<div class="line"><a name="l00050"></a><span class="lineno">   50</span>&#160;<span class="preprocessor">#elif defined(__i386__) || defined(__ppc__) || defined(__ILP32__) || defined(_M_ARM)</span></div>
+<div class="line"><a name="l00051"></a><span class="lineno">   51</span>&#160;<span class="preprocessor">#       define GLM_MODEL        GLM_MODEL_32</span></div>
+<div class="line"><a name="l00052"></a><span class="lineno">   52</span>&#160;<span class="preprocessor">#else</span></div>
+<div class="line"><a name="l00053"></a><span class="lineno">   53</span>&#160;<span class="preprocessor">#       define GLM_MODEL        GLM_MODEL_32</span></div>
+<div class="line"><a name="l00054"></a><span class="lineno">   54</span>&#160;<span class="preprocessor">#endif//</span></div>
+<div class="line"><a name="l00055"></a><span class="lineno">   55</span>&#160; </div>
+<div class="line"><a name="l00056"></a><span class="lineno">   56</span>&#160;<span class="preprocessor">#if !defined(GLM_MODEL) &amp;&amp; GLM_COMPILER != 0</span></div>
+<div class="line"><a name="l00057"></a><span class="lineno">   57</span>&#160;<span class="preprocessor">#       error &quot;GLM_MODEL undefined, your compiler may not be supported by GLM. Add #define GLM_MODEL 0 to ignore this message.&quot;</span></div>
+<div class="line"><a name="l00058"></a><span class="lineno">   58</span>&#160;<span class="preprocessor">#endif//GLM_MODEL</span></div>
+<div class="line"><a name="l00059"></a><span class="lineno">   59</span>&#160; </div>
+<div class="line"><a name="l00061"></a><span class="lineno">   61</span>&#160;<span class="comment">// C++ Version</span></div>
+<div class="line"><a name="l00062"></a><span class="lineno">   62</span>&#160; </div>
+<div class="line"><a name="l00063"></a><span class="lineno">   63</span>&#160;<span class="comment">// User defines: GLM_FORCE_CXX98, GLM_FORCE_CXX03, GLM_FORCE_CXX11, GLM_FORCE_CXX14, GLM_FORCE_CXX17, GLM_FORCE_CXX2A</span></div>
+<div class="line"><a name="l00064"></a><span class="lineno">   64</span>&#160; </div>
+<div class="line"><a name="l00065"></a><span class="lineno">   65</span>&#160;<span class="preprocessor">#define GLM_LANG_CXX98_FLAG                     (1 &lt;&lt; 1)</span></div>
+<div class="line"><a name="l00066"></a><span class="lineno">   66</span>&#160;<span class="preprocessor">#define GLM_LANG_CXX03_FLAG                     (1 &lt;&lt; 2)</span></div>
+<div class="line"><a name="l00067"></a><span class="lineno">   67</span>&#160;<span class="preprocessor">#define GLM_LANG_CXX0X_FLAG                     (1 &lt;&lt; 3)</span></div>
+<div class="line"><a name="l00068"></a><span class="lineno">   68</span>&#160;<span class="preprocessor">#define GLM_LANG_CXX11_FLAG                     (1 &lt;&lt; 4)</span></div>
+<div class="line"><a name="l00069"></a><span class="lineno">   69</span>&#160;<span class="preprocessor">#define GLM_LANG_CXX14_FLAG                     (1 &lt;&lt; 5)</span></div>
+<div class="line"><a name="l00070"></a><span class="lineno">   70</span>&#160;<span class="preprocessor">#define GLM_LANG_CXX17_FLAG                     (1 &lt;&lt; 6)</span></div>
+<div class="line"><a name="l00071"></a><span class="lineno">   71</span>&#160;<span class="preprocessor">#define GLM_LANG_CXX20_FLAG                     (1 &lt;&lt; 7)</span></div>
+<div class="line"><a name="l00072"></a><span class="lineno">   72</span>&#160;<span class="preprocessor">#define GLM_LANG_CXXMS_FLAG                     (1 &lt;&lt; 8)</span></div>
+<div class="line"><a name="l00073"></a><span class="lineno">   73</span>&#160;<span class="preprocessor">#define GLM_LANG_CXXGNU_FLAG            (1 &lt;&lt; 9)</span></div>
+<div class="line"><a name="l00074"></a><span class="lineno">   74</span>&#160; </div>
+<div class="line"><a name="l00075"></a><span class="lineno">   75</span>&#160;<span class="preprocessor">#define GLM_LANG_CXX98                  GLM_LANG_CXX98_FLAG</span></div>
+<div class="line"><a name="l00076"></a><span class="lineno">   76</span>&#160;<span class="preprocessor">#define GLM_LANG_CXX03                  (GLM_LANG_CXX98 | GLM_LANG_CXX03_FLAG)</span></div>
+<div class="line"><a name="l00077"></a><span class="lineno">   77</span>&#160;<span class="preprocessor">#define GLM_LANG_CXX0X                  (GLM_LANG_CXX03 | GLM_LANG_CXX0X_FLAG)</span></div>
+<div class="line"><a name="l00078"></a><span class="lineno">   78</span>&#160;<span class="preprocessor">#define GLM_LANG_CXX11                  (GLM_LANG_CXX0X | GLM_LANG_CXX11_FLAG)</span></div>
+<div class="line"><a name="l00079"></a><span class="lineno">   79</span>&#160;<span class="preprocessor">#define GLM_LANG_CXX14                  (GLM_LANG_CXX11 | GLM_LANG_CXX14_FLAG)</span></div>
+<div class="line"><a name="l00080"></a><span class="lineno">   80</span>&#160;<span class="preprocessor">#define GLM_LANG_CXX17                  (GLM_LANG_CXX14 | GLM_LANG_CXX17_FLAG)</span></div>
+<div class="line"><a name="l00081"></a><span class="lineno">   81</span>&#160;<span class="preprocessor">#define GLM_LANG_CXX20                  (GLM_LANG_CXX17 | GLM_LANG_CXX20_FLAG)</span></div>
+<div class="line"><a name="l00082"></a><span class="lineno">   82</span>&#160;<span class="preprocessor">#define GLM_LANG_CXXMS                  GLM_LANG_CXXMS_FLAG</span></div>
+<div class="line"><a name="l00083"></a><span class="lineno">   83</span>&#160;<span class="preprocessor">#define GLM_LANG_CXXGNU                 GLM_LANG_CXXGNU_FLAG</span></div>
+<div class="line"><a name="l00084"></a><span class="lineno">   84</span>&#160; </div>
+<div class="line"><a name="l00085"></a><span class="lineno">   85</span>&#160;<span class="preprocessor">#if (defined(_MSC_EXTENSIONS))</span></div>
+<div class="line"><a name="l00086"></a><span class="lineno">   86</span>&#160;<span class="preprocessor">#       define GLM_LANG_EXT GLM_LANG_CXXMS_FLAG</span></div>
+<div class="line"><a name="l00087"></a><span class="lineno">   87</span>&#160;<span class="preprocessor">#elif ((GLM_COMPILER &amp; (GLM_COMPILER_CLANG | GLM_COMPILER_GCC)) &amp;&amp; (GLM_ARCH &amp; GLM_ARCH_SIMD_BIT))</span></div>
+<div class="line"><a name="l00088"></a><span class="lineno">   88</span>&#160;<span class="preprocessor">#       define GLM_LANG_EXT GLM_LANG_CXXMS_FLAG</span></div>
+<div class="line"><a name="l00089"></a><span class="lineno">   89</span>&#160;<span class="preprocessor">#else</span></div>
+<div class="line"><a name="l00090"></a><span class="lineno">   90</span>&#160;<span class="preprocessor">#       define GLM_LANG_EXT 0</span></div>
+<div class="line"><a name="l00091"></a><span class="lineno">   91</span>&#160;<span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l00092"></a><span class="lineno">   92</span>&#160; </div>
+<div class="line"><a name="l00093"></a><span class="lineno">   93</span>&#160;<span class="preprocessor">#if (defined(GLM_FORCE_CXX_UNKNOWN))</span></div>
+<div class="line"><a name="l00094"></a><span class="lineno">   94</span>&#160;<span class="preprocessor">#       define GLM_LANG 0</span></div>
+<div class="line"><a name="l00095"></a><span class="lineno">   95</span>&#160;<span class="preprocessor">#elif defined(GLM_FORCE_CXX20)</span></div>
+<div class="line"><a name="l00096"></a><span class="lineno">   96</span>&#160;<span class="preprocessor">#       define GLM_LANG (GLM_LANG_CXX20 | GLM_LANG_EXT)</span></div>
+<div class="line"><a name="l00097"></a><span class="lineno">   97</span>&#160;<span class="preprocessor">#       define GLM_LANG_STL11_FORCED</span></div>
+<div class="line"><a name="l00098"></a><span class="lineno">   98</span>&#160;<span class="preprocessor">#elif defined(GLM_FORCE_CXX17)</span></div>
+<div class="line"><a name="l00099"></a><span class="lineno">   99</span>&#160;<span class="preprocessor">#       define GLM_LANG (GLM_LANG_CXX17 | GLM_LANG_EXT)</span></div>
+<div class="line"><a name="l00100"></a><span class="lineno">  100</span>&#160;<span class="preprocessor">#       define GLM_LANG_STL11_FORCED</span></div>
+<div class="line"><a name="l00101"></a><span class="lineno">  101</span>&#160;<span class="preprocessor">#elif defined(GLM_FORCE_CXX14)</span></div>
+<div class="line"><a name="l00102"></a><span class="lineno">  102</span>&#160;<span class="preprocessor">#       define GLM_LANG (GLM_LANG_CXX14 | GLM_LANG_EXT)</span></div>
+<div class="line"><a name="l00103"></a><span class="lineno">  103</span>&#160;<span class="preprocessor">#       define GLM_LANG_STL11_FORCED</span></div>
+<div class="line"><a name="l00104"></a><span class="lineno">  104</span>&#160;<span class="preprocessor">#elif defined(GLM_FORCE_CXX11)</span></div>
+<div class="line"><a name="l00105"></a><span class="lineno">  105</span>&#160;<span class="preprocessor">#       define GLM_LANG (GLM_LANG_CXX11 | GLM_LANG_EXT)</span></div>
+<div class="line"><a name="l00106"></a><span class="lineno">  106</span>&#160;<span class="preprocessor">#       define GLM_LANG_STL11_FORCED</span></div>
+<div class="line"><a name="l00107"></a><span class="lineno">  107</span>&#160;<span class="preprocessor">#elif defined(GLM_FORCE_CXX03)</span></div>
+<div class="line"><a name="l00108"></a><span class="lineno">  108</span>&#160;<span class="preprocessor">#       define GLM_LANG (GLM_LANG_CXX03 | GLM_LANG_EXT)</span></div>
+<div class="line"><a name="l00109"></a><span class="lineno">  109</span>&#160;<span class="preprocessor">#elif defined(GLM_FORCE_CXX98)</span></div>
+<div class="line"><a name="l00110"></a><span class="lineno">  110</span>&#160;<span class="preprocessor">#       define GLM_LANG (GLM_LANG_CXX98 | GLM_LANG_EXT)</span></div>
+<div class="line"><a name="l00111"></a><span class="lineno">  111</span>&#160;<span class="preprocessor">#else</span></div>
+<div class="line"><a name="l00112"></a><span class="lineno">  112</span>&#160;<span class="preprocessor">#       if GLM_COMPILER &amp; GLM_COMPILER_VC &amp;&amp; defined(_MSVC_LANG)</span></div>
+<div class="line"><a name="l00113"></a><span class="lineno">  113</span>&#160;<span class="preprocessor">#               if GLM_COMPILER &gt;= GLM_COMPILER_VC15_7</span></div>
+<div class="line"><a name="l00114"></a><span class="lineno">  114</span>&#160;<span class="preprocessor">#                       define GLM_LANG_PLATFORM _MSVC_LANG</span></div>
+<div class="line"><a name="l00115"></a><span class="lineno">  115</span>&#160;<span class="preprocessor">#               elif GLM_COMPILER &gt;= GLM_COMPILER_VC15</span></div>
+<div class="line"><a name="l00116"></a><span class="lineno">  116</span>&#160;<span class="preprocessor">#                       if _MSVC_LANG &gt; 201402L</span></div>
+<div class="line"><a name="l00117"></a><span class="lineno">  117</span>&#160;<span class="preprocessor">#                               define GLM_LANG_PLATFORM 201402L</span></div>
+<div class="line"><a name="l00118"></a><span class="lineno">  118</span>&#160;<span class="preprocessor">#                       else</span></div>
+<div class="line"><a name="l00119"></a><span class="lineno">  119</span>&#160;<span class="preprocessor">#                               define GLM_LANG_PLATFORM _MSVC_LANG</span></div>
+<div class="line"><a name="l00120"></a><span class="lineno">  120</span>&#160;<span class="preprocessor">#                       endif</span></div>
+<div class="line"><a name="l00121"></a><span class="lineno">  121</span>&#160;<span class="preprocessor">#               else</span></div>
+<div class="line"><a name="l00122"></a><span class="lineno">  122</span>&#160;<span class="preprocessor">#                       define GLM_LANG_PLATFORM 0</span></div>
+<div class="line"><a name="l00123"></a><span class="lineno">  123</span>&#160;<span class="preprocessor">#               endif</span></div>
+<div class="line"><a name="l00124"></a><span class="lineno">  124</span>&#160;<span class="preprocessor">#       else</span></div>
+<div class="line"><a name="l00125"></a><span class="lineno">  125</span>&#160;<span class="preprocessor">#               define GLM_LANG_PLATFORM 0</span></div>
+<div class="line"><a name="l00126"></a><span class="lineno">  126</span>&#160;<span class="preprocessor">#       endif</span></div>
+<div class="line"><a name="l00127"></a><span class="lineno">  127</span>&#160; </div>
+<div class="line"><a name="l00128"></a><span class="lineno">  128</span>&#160;<span class="preprocessor">#       if __cplusplus &gt; 201703L || GLM_LANG_PLATFORM &gt; 201703L</span></div>
+<div class="line"><a name="l00129"></a><span class="lineno">  129</span>&#160;<span class="preprocessor">#               define GLM_LANG (GLM_LANG_CXX20 | GLM_LANG_EXT)</span></div>
+<div class="line"><a name="l00130"></a><span class="lineno">  130</span>&#160;<span class="preprocessor">#       elif __cplusplus == 201703L || GLM_LANG_PLATFORM == 201703L</span></div>
+<div class="line"><a name="l00131"></a><span class="lineno">  131</span>&#160;<span class="preprocessor">#               define GLM_LANG (GLM_LANG_CXX17 | GLM_LANG_EXT)</span></div>
+<div class="line"><a name="l00132"></a><span class="lineno">  132</span>&#160;<span class="preprocessor">#       elif __cplusplus == 201402L || __cplusplus == 201406L || __cplusplus == 201500L || GLM_LANG_PLATFORM == 201402L</span></div>
+<div class="line"><a name="l00133"></a><span class="lineno">  133</span>&#160;<span class="preprocessor">#               define GLM_LANG (GLM_LANG_CXX14 | GLM_LANG_EXT)</span></div>
+<div class="line"><a name="l00134"></a><span class="lineno">  134</span>&#160;<span class="preprocessor">#       elif __cplusplus == 201103L || GLM_LANG_PLATFORM == 201103L</span></div>
+<div class="line"><a name="l00135"></a><span class="lineno">  135</span>&#160;<span class="preprocessor">#               define GLM_LANG (GLM_LANG_CXX11 | GLM_LANG_EXT)</span></div>
+<div class="line"><a name="l00136"></a><span class="lineno">  136</span>&#160;<span class="preprocessor">#       elif defined(__INTEL_CXX11_MODE__) || defined(_MSC_VER) || defined(__GXX_EXPERIMENTAL_CXX0X__)</span></div>
+<div class="line"><a name="l00137"></a><span class="lineno">  137</span>&#160;<span class="preprocessor">#               define GLM_LANG (GLM_LANG_CXX0X | GLM_LANG_EXT)</span></div>
+<div class="line"><a name="l00138"></a><span class="lineno">  138</span>&#160;<span class="preprocessor">#       elif __cplusplus == 199711L</span></div>
+<div class="line"><a name="l00139"></a><span class="lineno">  139</span>&#160;<span class="preprocessor">#               define GLM_LANG (GLM_LANG_CXX98 | GLM_LANG_EXT)</span></div>
+<div class="line"><a name="l00140"></a><span class="lineno">  140</span>&#160;<span class="preprocessor">#       else</span></div>
+<div class="line"><a name="l00141"></a><span class="lineno">  141</span>&#160;<span class="preprocessor">#               define GLM_LANG (0 | GLM_LANG_EXT)</span></div>
+<div class="line"><a name="l00142"></a><span class="lineno">  142</span>&#160;<span class="preprocessor">#       endif</span></div>
+<div class="line"><a name="l00143"></a><span class="lineno">  143</span>&#160;<span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l00144"></a><span class="lineno">  144</span>&#160; </div>
+<div class="line"><a name="l00146"></a><span class="lineno">  146</span>&#160;<span class="comment">// Has of C++ features</span></div>
+<div class="line"><a name="l00147"></a><span class="lineno">  147</span>&#160; </div>
+<div class="line"><a name="l00148"></a><span class="lineno">  148</span>&#160;<span class="comment">// http://clang.llvm.org/cxx_status.html</span></div>
+<div class="line"><a name="l00149"></a><span class="lineno">  149</span>&#160;<span class="comment">// http://gcc.gnu.org/projects/cxx0x.html</span></div>
+<div class="line"><a name="l00150"></a><span class="lineno">  150</span>&#160;<span class="comment">// http://msdn.microsoft.com/en-us/library/vstudio/hh567368(v=vs.120).aspx</span></div>
+<div class="line"><a name="l00151"></a><span class="lineno">  151</span>&#160; </div>
+<div class="line"><a name="l00152"></a><span class="lineno">  152</span>&#160;<span class="comment">// Android has multiple STLs but C++11 STL detection doesn&#39;t always work #284 #564</span></div>
+<div class="line"><a name="l00153"></a><span class="lineno">  153</span>&#160;<span class="preprocessor">#if GLM_PLATFORM == GLM_PLATFORM_ANDROID &amp;&amp; !defined(GLM_LANG_STL11_FORCED)</span></div>
+<div class="line"><a name="l00154"></a><span class="lineno">  154</span>&#160;<span class="preprocessor">#       define GLM_HAS_CXX11_STL 0</span></div>
+<div class="line"><a name="l00155"></a><span class="lineno">  155</span>&#160;<span class="preprocessor">#elif (GLM_COMPILER &amp; GLM_COMPILER_CUDA_RTC) == GLM_COMPILER_CUDA_RTC</span></div>
+<div class="line"><a name="l00156"></a><span class="lineno">  156</span>&#160;<span class="preprocessor">#       define GLM_HAS_CXX11_STL 0</span></div>
+<div class="line"><a name="l00157"></a><span class="lineno">  157</span>&#160;<span class="preprocessor">#elif (GLM_COMPILER &amp; GLM_COMPILER_HIP)</span></div>
+<div class="line"><a name="l00158"></a><span class="lineno">  158</span>&#160;<span class="preprocessor">#       define GLM_HAS_CXX11_STL 0</span></div>
+<div class="line"><a name="l00159"></a><span class="lineno">  159</span>&#160;<span class="preprocessor">#elif GLM_COMPILER &amp; GLM_COMPILER_CLANG</span></div>
+<div class="line"><a name="l00160"></a><span class="lineno">  160</span>&#160;<span class="preprocessor">#       if (defined(_LIBCPP_VERSION) || (GLM_LANG &amp; GLM_LANG_CXX11_FLAG) || defined(GLM_LANG_STL11_FORCED))</span></div>
+<div class="line"><a name="l00161"></a><span class="lineno">  161</span>&#160;<span class="preprocessor">#               define GLM_HAS_CXX11_STL 1</span></div>
+<div class="line"><a name="l00162"></a><span class="lineno">  162</span>&#160;<span class="preprocessor">#       else</span></div>
+<div class="line"><a name="l00163"></a><span class="lineno">  163</span>&#160;<span class="preprocessor">#               define GLM_HAS_CXX11_STL 0</span></div>
+<div class="line"><a name="l00164"></a><span class="lineno">  164</span>&#160;<span class="preprocessor">#       endif</span></div>
+<div class="line"><a name="l00165"></a><span class="lineno">  165</span>&#160;<span class="preprocessor">#elif GLM_LANG &amp; GLM_LANG_CXX11_FLAG</span></div>
+<div class="line"><a name="l00166"></a><span class="lineno">  166</span>&#160;<span class="preprocessor">#       define GLM_HAS_CXX11_STL 1</span></div>
+<div class="line"><a name="l00167"></a><span class="lineno">  167</span>&#160;<span class="preprocessor">#else</span></div>
+<div class="line"><a name="l00168"></a><span class="lineno">  168</span>&#160;<span class="preprocessor">#       define GLM_HAS_CXX11_STL ((GLM_LANG &amp; GLM_LANG_CXX0X_FLAG) &amp;&amp; (\</span></div>
+<div class="line"><a name="l00169"></a><span class="lineno">  169</span>&#160;<span class="preprocessor">                ((GLM_COMPILER &amp; GLM_COMPILER_GCC) &amp;&amp; (GLM_COMPILER &gt;= GLM_COMPILER_GCC48)) || \</span></div>
+<div class="line"><a name="l00170"></a><span class="lineno">  170</span>&#160;<span class="preprocessor">                ((GLM_COMPILER &amp; GLM_COMPILER_VC) &amp;&amp; (GLM_COMPILER &gt;= GLM_COMPILER_VC12)) || \</span></div>
+<div class="line"><a name="l00171"></a><span class="lineno">  171</span>&#160;<span class="preprocessor">                ((GLM_PLATFORM != GLM_PLATFORM_WINDOWS) &amp;&amp; (GLM_COMPILER &amp; GLM_COMPILER_INTEL) &amp;&amp; (GLM_COMPILER &gt;= GLM_COMPILER_INTEL15))))</span></div>
+<div class="line"><a name="l00172"></a><span class="lineno">  172</span>&#160;<span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l00173"></a><span class="lineno">  173</span>&#160; </div>
+<div class="line"><a name="l00174"></a><span class="lineno">  174</span>&#160;<span class="comment">// N1720</span></div>
+<div class="line"><a name="l00175"></a><span class="lineno">  175</span>&#160;<span class="preprocessor">#if GLM_COMPILER &amp; GLM_COMPILER_CLANG</span></div>
+<div class="line"><a name="l00176"></a><span class="lineno">  176</span>&#160;<span class="preprocessor">#       define GLM_HAS_STATIC_ASSERT __has_feature(cxx_static_assert)</span></div>
+<div class="line"><a name="l00177"></a><span class="lineno">  177</span>&#160;<span class="preprocessor">#elif GLM_LANG &amp; GLM_LANG_CXX11_FLAG</span></div>
+<div class="line"><a name="l00178"></a><span class="lineno">  178</span>&#160;<span class="preprocessor">#       define GLM_HAS_STATIC_ASSERT 1</span></div>
+<div class="line"><a name="l00179"></a><span class="lineno">  179</span>&#160;<span class="preprocessor">#else</span></div>
+<div class="line"><a name="l00180"></a><span class="lineno">  180</span>&#160;<span class="preprocessor">#       define GLM_HAS_STATIC_ASSERT ((GLM_LANG &amp; GLM_LANG_CXX0X_FLAG) &amp;&amp; (\</span></div>
+<div class="line"><a name="l00181"></a><span class="lineno">  181</span>&#160;<span class="preprocessor">                ((GLM_COMPILER &amp; GLM_COMPILER_CUDA)) || \</span></div>
+<div class="line"><a name="l00182"></a><span class="lineno">  182</span>&#160;<span class="preprocessor">                ((GLM_COMPILER &amp; GLM_COMPILER_VC)) || \</span></div>
+<div class="line"><a name="l00183"></a><span class="lineno">  183</span>&#160;<span class="preprocessor">                ((GLM_COMPILER &amp; GLM_COMPILER_HIP))))</span></div>
+<div class="line"><a name="l00184"></a><span class="lineno">  184</span>&#160;<span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l00185"></a><span class="lineno">  185</span>&#160; </div>
+<div class="line"><a name="l00186"></a><span class="lineno">  186</span>&#160;<span class="comment">// N1988</span></div>
+<div class="line"><a name="l00187"></a><span class="lineno">  187</span>&#160;<span class="preprocessor">#if GLM_LANG &amp; GLM_LANG_CXX11_FLAG</span></div>
+<div class="line"><a name="l00188"></a><span class="lineno">  188</span>&#160;<span class="preprocessor">#       define GLM_HAS_EXTENDED_INTEGER_TYPE 1</span></div>
+<div class="line"><a name="l00189"></a><span class="lineno">  189</span>&#160;<span class="preprocessor">#else</span></div>
+<div class="line"><a name="l00190"></a><span class="lineno">  190</span>&#160;<span class="preprocessor">#       define GLM_HAS_EXTENDED_INTEGER_TYPE (\</span></div>
+<div class="line"><a name="l00191"></a><span class="lineno">  191</span>&#160;<span class="preprocessor">                ((GLM_LANG &amp; GLM_LANG_CXX0X_FLAG) &amp;&amp; (GLM_COMPILER &amp; GLM_COMPILER_VC)) || \</span></div>
+<div class="line"><a name="l00192"></a><span class="lineno">  192</span>&#160;<span class="preprocessor">                ((GLM_LANG &amp; GLM_LANG_CXX0X_FLAG) &amp;&amp; (GLM_COMPILER &amp; GLM_COMPILER_CUDA)) || \</span></div>
+<div class="line"><a name="l00193"></a><span class="lineno">  193</span>&#160;<span class="preprocessor">                ((GLM_LANG &amp; GLM_LANG_CXX0X_FLAG) &amp;&amp; (GLM_COMPILER &amp; GLM_COMPILER_CLANG)) || \</span></div>
+<div class="line"><a name="l00194"></a><span class="lineno">  194</span>&#160;<span class="preprocessor">                ((GLM_COMPILER &amp; GLM_COMPILER_HIP)))</span></div>
+<div class="line"><a name="l00195"></a><span class="lineno">  195</span>&#160;<span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l00196"></a><span class="lineno">  196</span>&#160; </div>
+<div class="line"><a name="l00197"></a><span class="lineno">  197</span>&#160;<span class="comment">// N2672 Initializer lists http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2008/n2672.htm</span></div>
+<div class="line"><a name="l00198"></a><span class="lineno">  198</span>&#160;<span class="preprocessor">#if GLM_COMPILER &amp; GLM_COMPILER_CLANG</span></div>
+<div class="line"><a name="l00199"></a><span class="lineno">  199</span>&#160;<span class="preprocessor">#       define GLM_HAS_INITIALIZER_LISTS __has_feature(cxx_generalized_initializers)</span></div>
+<div class="line"><a name="l00200"></a><span class="lineno">  200</span>&#160;<span class="preprocessor">#elif GLM_LANG &amp; GLM_LANG_CXX11_FLAG</span></div>
+<div class="line"><a name="l00201"></a><span class="lineno">  201</span>&#160;<span class="preprocessor">#       define GLM_HAS_INITIALIZER_LISTS 1</span></div>
+<div class="line"><a name="l00202"></a><span class="lineno">  202</span>&#160;<span class="preprocessor">#else</span></div>
+<div class="line"><a name="l00203"></a><span class="lineno">  203</span>&#160;<span class="preprocessor">#       define GLM_HAS_INITIALIZER_LISTS ((GLM_LANG &amp; GLM_LANG_CXX0X_FLAG) &amp;&amp; (\</span></div>
+<div class="line"><a name="l00204"></a><span class="lineno">  204</span>&#160;<span class="preprocessor">                ((GLM_COMPILER &amp; GLM_COMPILER_VC) &amp;&amp; (GLM_COMPILER &gt;= GLM_COMPILER_VC15)) || \</span></div>
+<div class="line"><a name="l00205"></a><span class="lineno">  205</span>&#160;<span class="preprocessor">                ((GLM_COMPILER &amp; GLM_COMPILER_INTEL) &amp;&amp; (GLM_COMPILER &gt;= GLM_COMPILER_INTEL14)) || \</span></div>
+<div class="line"><a name="l00206"></a><span class="lineno">  206</span>&#160;<span class="preprocessor">                ((GLM_COMPILER &amp; GLM_COMPILER_CUDA)) || \</span></div>
+<div class="line"><a name="l00207"></a><span class="lineno">  207</span>&#160;<span class="preprocessor">                ((GLM_COMPILER &amp; GLM_COMPILER_HIP))))</span></div>
+<div class="line"><a name="l00208"></a><span class="lineno">  208</span>&#160;<span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l00209"></a><span class="lineno">  209</span>&#160; </div>
+<div class="line"><a name="l00210"></a><span class="lineno">  210</span>&#160;<span class="comment">// N2544 Unrestricted unions http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2008/n2544.pdf</span></div>
+<div class="line"><a name="l00211"></a><span class="lineno">  211</span>&#160;<span class="preprocessor">#if GLM_COMPILER &amp; GLM_COMPILER_CLANG</span></div>
+<div class="line"><a name="l00212"></a><span class="lineno">  212</span>&#160;<span class="preprocessor">#       define GLM_HAS_UNRESTRICTED_UNIONS __has_feature(cxx_unrestricted_unions)</span></div>
+<div class="line"><a name="l00213"></a><span class="lineno">  213</span>&#160;<span class="preprocessor">#elif GLM_LANG &amp; GLM_LANG_CXX11_FLAG</span></div>
+<div class="line"><a name="l00214"></a><span class="lineno">  214</span>&#160;<span class="preprocessor">#       define GLM_HAS_UNRESTRICTED_UNIONS 1</span></div>
+<div class="line"><a name="l00215"></a><span class="lineno">  215</span>&#160;<span class="preprocessor">#else</span></div>
+<div class="line"><a name="l00216"></a><span class="lineno">  216</span>&#160;<span class="preprocessor">#       define GLM_HAS_UNRESTRICTED_UNIONS (GLM_LANG &amp; GLM_LANG_CXX0X_FLAG) &amp;&amp; (\</span></div>
+<div class="line"><a name="l00217"></a><span class="lineno">  217</span>&#160;<span class="preprocessor">                (GLM_COMPILER &amp; GLM_COMPILER_VC) || \</span></div>
+<div class="line"><a name="l00218"></a><span class="lineno">  218</span>&#160;<span class="preprocessor">                ((GLM_COMPILER &amp; GLM_COMPILER_CUDA)) || \</span></div>
+<div class="line"><a name="l00219"></a><span class="lineno">  219</span>&#160;<span class="preprocessor">                ((GLM_COMPILER &amp; GLM_COMPILER_HIP)))</span></div>
+<div class="line"><a name="l00220"></a><span class="lineno">  220</span>&#160;<span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l00221"></a><span class="lineno">  221</span>&#160; </div>
+<div class="line"><a name="l00222"></a><span class="lineno">  222</span>&#160;<span class="comment">// N2346</span></div>
+<div class="line"><a name="l00223"></a><span class="lineno">  223</span>&#160;<span class="preprocessor">#if GLM_COMPILER &amp; GLM_COMPILER_CLANG</span></div>
+<div class="line"><a name="l00224"></a><span class="lineno">  224</span>&#160;<span class="preprocessor">#       define GLM_HAS_DEFAULTED_FUNCTIONS __has_feature(cxx_defaulted_functions)</span></div>
+<div class="line"><a name="l00225"></a><span class="lineno">  225</span>&#160;<span class="preprocessor">#elif GLM_LANG &amp; GLM_LANG_CXX11_FLAG</span></div>
+<div class="line"><a name="l00226"></a><span class="lineno">  226</span>&#160;<span class="preprocessor">#       define GLM_HAS_DEFAULTED_FUNCTIONS 1</span></div>
+<div class="line"><a name="l00227"></a><span class="lineno">  227</span>&#160;<span class="preprocessor">#else</span></div>
+<div class="line"><a name="l00228"></a><span class="lineno">  228</span>&#160;<span class="preprocessor">#       define GLM_HAS_DEFAULTED_FUNCTIONS ((GLM_LANG &amp; GLM_LANG_CXX0X_FLAG) &amp;&amp; (\</span></div>
+<div class="line"><a name="l00229"></a><span class="lineno">  229</span>&#160;<span class="preprocessor">                ((GLM_COMPILER &amp; GLM_COMPILER_VC) &amp;&amp; (GLM_COMPILER &gt;= GLM_COMPILER_VC12)) || \</span></div>
+<div class="line"><a name="l00230"></a><span class="lineno">  230</span>&#160;<span class="preprocessor">                ((GLM_COMPILER &amp; GLM_COMPILER_INTEL)) || \</span></div>
+<div class="line"><a name="l00231"></a><span class="lineno">  231</span>&#160;<span class="preprocessor">                (GLM_COMPILER &amp; GLM_COMPILER_CUDA)) || \</span></div>
+<div class="line"><a name="l00232"></a><span class="lineno">  232</span>&#160;<span class="preprocessor">                ((GLM_COMPILER &amp; GLM_COMPILER_HIP)))</span></div>
+<div class="line"><a name="l00233"></a><span class="lineno">  233</span>&#160;<span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l00234"></a><span class="lineno">  234</span>&#160; </div>
+<div class="line"><a name="l00235"></a><span class="lineno">  235</span>&#160;<span class="comment">// N2118</span></div>
+<div class="line"><a name="l00236"></a><span class="lineno">  236</span>&#160;<span class="preprocessor">#if GLM_COMPILER &amp; GLM_COMPILER_CLANG</span></div>
+<div class="line"><a name="l00237"></a><span class="lineno">  237</span>&#160;<span class="preprocessor">#       define GLM_HAS_RVALUE_REFERENCES __has_feature(cxx_rvalue_references)</span></div>
+<div class="line"><a name="l00238"></a><span class="lineno">  238</span>&#160;<span class="preprocessor">#elif GLM_LANG &amp; GLM_LANG_CXX11_FLAG</span></div>
+<div class="line"><a name="l00239"></a><span class="lineno">  239</span>&#160;<span class="preprocessor">#       define GLM_HAS_RVALUE_REFERENCES 1</span></div>
+<div class="line"><a name="l00240"></a><span class="lineno">  240</span>&#160;<span class="preprocessor">#else</span></div>
+<div class="line"><a name="l00241"></a><span class="lineno">  241</span>&#160;<span class="preprocessor">#       define GLM_HAS_RVALUE_REFERENCES ((GLM_LANG &amp; GLM_LANG_CXX0X_FLAG) &amp;&amp; (\</span></div>
+<div class="line"><a name="l00242"></a><span class="lineno">  242</span>&#160;<span class="preprocessor">                ((GLM_COMPILER &amp; GLM_COMPILER_VC)) || \</span></div>
+<div class="line"><a name="l00243"></a><span class="lineno">  243</span>&#160;<span class="preprocessor">                ((GLM_COMPILER &amp; GLM_COMPILER_CUDA)) || \</span></div>
+<div class="line"><a name="l00244"></a><span class="lineno">  244</span>&#160;<span class="preprocessor">                ((GLM_COMPILER &amp; GLM_COMPILER_HIP))))</span></div>
+<div class="line"><a name="l00245"></a><span class="lineno">  245</span>&#160;<span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l00246"></a><span class="lineno">  246</span>&#160; </div>
+<div class="line"><a name="l00247"></a><span class="lineno">  247</span>&#160;<span class="comment">// N2437 http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2007/n2437.pdf</span></div>
+<div class="line"><a name="l00248"></a><span class="lineno">  248</span>&#160;<span class="preprocessor">#if GLM_COMPILER &amp; GLM_COMPILER_CLANG</span></div>
+<div class="line"><a name="l00249"></a><span class="lineno">  249</span>&#160;<span class="preprocessor">#       define GLM_HAS_EXPLICIT_CONVERSION_OPERATORS __has_feature(cxx_explicit_conversions)</span></div>
+<div class="line"><a name="l00250"></a><span class="lineno">  250</span>&#160;<span class="preprocessor">#elif GLM_LANG &amp; GLM_LANG_CXX11_FLAG</span></div>
+<div class="line"><a name="l00251"></a><span class="lineno">  251</span>&#160;<span class="preprocessor">#       define GLM_HAS_EXPLICIT_CONVERSION_OPERATORS 1</span></div>
+<div class="line"><a name="l00252"></a><span class="lineno">  252</span>&#160;<span class="preprocessor">#else</span></div>
+<div class="line"><a name="l00253"></a><span class="lineno">  253</span>&#160;<span class="preprocessor">#       define GLM_HAS_EXPLICIT_CONVERSION_OPERATORS ((GLM_LANG &amp; GLM_LANG_CXX0X_FLAG) &amp;&amp; (\</span></div>
+<div class="line"><a name="l00254"></a><span class="lineno">  254</span>&#160;<span class="preprocessor">                ((GLM_COMPILER &amp; GLM_COMPILER_INTEL) &amp;&amp; (GLM_COMPILER &gt;= GLM_COMPILER_INTEL14)) || \</span></div>
+<div class="line"><a name="l00255"></a><span class="lineno">  255</span>&#160;<span class="preprocessor">                ((GLM_COMPILER &amp; GLM_COMPILER_VC) &amp;&amp; (GLM_COMPILER &gt;= GLM_COMPILER_VC12)) || \</span></div>
+<div class="line"><a name="l00256"></a><span class="lineno">  256</span>&#160;<span class="preprocessor">                ((GLM_COMPILER &amp; GLM_COMPILER_CUDA)) || \</span></div>
+<div class="line"><a name="l00257"></a><span class="lineno">  257</span>&#160;<span class="preprocessor">                ((GLM_COMPILER &amp; GLM_COMPILER_HIP))))</span></div>
+<div class="line"><a name="l00258"></a><span class="lineno">  258</span>&#160;<span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l00259"></a><span class="lineno">  259</span>&#160; </div>
+<div class="line"><a name="l00260"></a><span class="lineno">  260</span>&#160;<span class="comment">// N2258 http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2007/n2258.pdf</span></div>
+<div class="line"><a name="l00261"></a><span class="lineno">  261</span>&#160;<span class="preprocessor">#if GLM_COMPILER &amp; GLM_COMPILER_CLANG</span></div>
+<div class="line"><a name="l00262"></a><span class="lineno">  262</span>&#160;<span class="preprocessor">#       define GLM_HAS_TEMPLATE_ALIASES __has_feature(cxx_alias_templates)</span></div>
+<div class="line"><a name="l00263"></a><span class="lineno">  263</span>&#160;<span class="preprocessor">#elif GLM_LANG &amp; GLM_LANG_CXX11_FLAG</span></div>
+<div class="line"><a name="l00264"></a><span class="lineno">  264</span>&#160;<span class="preprocessor">#       define GLM_HAS_TEMPLATE_ALIASES 1</span></div>
+<div class="line"><a name="l00265"></a><span class="lineno">  265</span>&#160;<span class="preprocessor">#else</span></div>
+<div class="line"><a name="l00266"></a><span class="lineno">  266</span>&#160;<span class="preprocessor">#       define GLM_HAS_TEMPLATE_ALIASES ((GLM_LANG &amp; GLM_LANG_CXX0X_FLAG) &amp;&amp; (\</span></div>
+<div class="line"><a name="l00267"></a><span class="lineno">  267</span>&#160;<span class="preprocessor">                ((GLM_COMPILER &amp; GLM_COMPILER_INTEL)) || \</span></div>
+<div class="line"><a name="l00268"></a><span class="lineno">  268</span>&#160;<span class="preprocessor">                ((GLM_COMPILER &amp; GLM_COMPILER_VC) &amp;&amp; (GLM_COMPILER &gt;= GLM_COMPILER_VC12)) || \</span></div>
+<div class="line"><a name="l00269"></a><span class="lineno">  269</span>&#160;<span class="preprocessor">                ((GLM_COMPILER &amp; GLM_COMPILER_CUDA)) || \</span></div>
+<div class="line"><a name="l00270"></a><span class="lineno">  270</span>&#160;<span class="preprocessor">                ((GLM_COMPILER &amp; GLM_COMPILER_HIP))))</span></div>
+<div class="line"><a name="l00271"></a><span class="lineno">  271</span>&#160;<span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l00272"></a><span class="lineno">  272</span>&#160; </div>
+<div class="line"><a name="l00273"></a><span class="lineno">  273</span>&#160;<span class="comment">// N2930 http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2009/n2930.html</span></div>
+<div class="line"><a name="l00274"></a><span class="lineno">  274</span>&#160;<span class="preprocessor">#if GLM_COMPILER &amp; GLM_COMPILER_CLANG</span></div>
+<div class="line"><a name="l00275"></a><span class="lineno">  275</span>&#160;<span class="preprocessor">#       define GLM_HAS_RANGE_FOR __has_feature(cxx_range_for)</span></div>
+<div class="line"><a name="l00276"></a><span class="lineno">  276</span>&#160;<span class="preprocessor">#elif GLM_LANG &amp; GLM_LANG_CXX11_FLAG</span></div>
+<div class="line"><a name="l00277"></a><span class="lineno">  277</span>&#160;<span class="preprocessor">#       define GLM_HAS_RANGE_FOR 1</span></div>
+<div class="line"><a name="l00278"></a><span class="lineno">  278</span>&#160;<span class="preprocessor">#else</span></div>
+<div class="line"><a name="l00279"></a><span class="lineno">  279</span>&#160;<span class="preprocessor">#       define GLM_HAS_RANGE_FOR ((GLM_LANG &amp; GLM_LANG_CXX0X_FLAG) &amp;&amp; (\</span></div>
+<div class="line"><a name="l00280"></a><span class="lineno">  280</span>&#160;<span class="preprocessor">                ((GLM_COMPILER &amp; GLM_COMPILER_INTEL)) || \</span></div>
+<div class="line"><a name="l00281"></a><span class="lineno">  281</span>&#160;<span class="preprocessor">                ((GLM_COMPILER &amp; GLM_COMPILER_VC)) || \</span></div>
+<div class="line"><a name="l00282"></a><span class="lineno">  282</span>&#160;<span class="preprocessor">                ((GLM_COMPILER &amp; GLM_COMPILER_CUDA)) || \</span></div>
+<div class="line"><a name="l00283"></a><span class="lineno">  283</span>&#160;<span class="preprocessor">                ((GLM_COMPILER &amp; GLM_COMPILER_HIP))))</span></div>
+<div class="line"><a name="l00284"></a><span class="lineno">  284</span>&#160;<span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l00285"></a><span class="lineno">  285</span>&#160; </div>
+<div class="line"><a name="l00286"></a><span class="lineno">  286</span>&#160;<span class="comment">// N2341 http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2007/n2341.pdf</span></div>
+<div class="line"><a name="l00287"></a><span class="lineno">  287</span>&#160;<span class="preprocessor">#if GLM_COMPILER &amp; GLM_COMPILER_CLANG</span></div>
+<div class="line"><a name="l00288"></a><span class="lineno">  288</span>&#160;<span class="preprocessor">#       define GLM_HAS_ALIGNOF __has_feature(cxx_alignas)</span></div>
+<div class="line"><a name="l00289"></a><span class="lineno">  289</span>&#160;<span class="preprocessor">#elif GLM_LANG &amp; GLM_LANG_CXX11_FLAG</span></div>
+<div class="line"><a name="l00290"></a><span class="lineno">  290</span>&#160;<span class="preprocessor">#       define GLM_HAS_ALIGNOF 1</span></div>
+<div class="line"><a name="l00291"></a><span class="lineno">  291</span>&#160;<span class="preprocessor">#else</span></div>
+<div class="line"><a name="l00292"></a><span class="lineno">  292</span>&#160;<span class="preprocessor">#       define GLM_HAS_ALIGNOF ((GLM_LANG &amp; GLM_LANG_CXX0X_FLAG) &amp;&amp; (\</span></div>
+<div class="line"><a name="l00293"></a><span class="lineno">  293</span>&#160;<span class="preprocessor">                ((GLM_COMPILER &amp; GLM_COMPILER_INTEL) &amp;&amp; (GLM_COMPILER &gt;= GLM_COMPILER_INTEL15)) || \</span></div>
+<div class="line"><a name="l00294"></a><span class="lineno">  294</span>&#160;<span class="preprocessor">                ((GLM_COMPILER &amp; GLM_COMPILER_VC) &amp;&amp; (GLM_COMPILER &gt;= GLM_COMPILER_VC14)) || \</span></div>
+<div class="line"><a name="l00295"></a><span class="lineno">  295</span>&#160;<span class="preprocessor">                ((GLM_COMPILER &amp; GLM_COMPILER_CUDA)) || \</span></div>
+<div class="line"><a name="l00296"></a><span class="lineno">  296</span>&#160;<span class="preprocessor">                ((GLM_COMPILER &amp; GLM_COMPILER_HIP))))</span></div>
+<div class="line"><a name="l00297"></a><span class="lineno">  297</span>&#160;<span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l00298"></a><span class="lineno">  298</span>&#160; </div>
+<div class="line"><a name="l00299"></a><span class="lineno">  299</span>&#160;<span class="comment">// N2235 Generalized Constant Expressions http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2007/n2235.pdf</span></div>
+<div class="line"><a name="l00300"></a><span class="lineno">  300</span>&#160;<span class="comment">// N3652 Extended Constant Expressions http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2013/n3652.html</span></div>
+<div class="line"><a name="l00301"></a><span class="lineno">  301</span>&#160;<span class="preprocessor">#if (GLM_ARCH &amp; GLM_ARCH_SIMD_BIT) // Compiler SIMD intrinsics don&#39;t support constexpr...</span></div>
+<div class="line"><a name="l00302"></a><span class="lineno">  302</span>&#160;<span class="preprocessor">#       define GLM_HAS_CONSTEXPR 0</span></div>
+<div class="line"><a name="l00303"></a><span class="lineno">  303</span>&#160;<span class="preprocessor">#elif (GLM_COMPILER &amp; GLM_COMPILER_CLANG)</span></div>
+<div class="line"><a name="l00304"></a><span class="lineno">  304</span>&#160;<span class="preprocessor">#       define GLM_HAS_CONSTEXPR __has_feature(cxx_relaxed_constexpr)</span></div>
+<div class="line"><a name="l00305"></a><span class="lineno">  305</span>&#160;<span class="preprocessor">#elif (GLM_LANG &amp; GLM_LANG_CXX14_FLAG)</span></div>
+<div class="line"><a name="l00306"></a><span class="lineno">  306</span>&#160;<span class="preprocessor">#       define GLM_HAS_CONSTEXPR 1</span></div>
+<div class="line"><a name="l00307"></a><span class="lineno">  307</span>&#160;<span class="preprocessor">#else</span></div>
+<div class="line"><a name="l00308"></a><span class="lineno">  308</span>&#160;<span class="preprocessor">#       define GLM_HAS_CONSTEXPR ((GLM_LANG &amp; GLM_LANG_CXX0X_FLAG) &amp;&amp; GLM_HAS_INITIALIZER_LISTS &amp;&amp; (\</span></div>
+<div class="line"><a name="l00309"></a><span class="lineno">  309</span>&#160;<span class="preprocessor">                ((GLM_COMPILER &amp; GLM_COMPILER_INTEL) &amp;&amp; (GLM_COMPILER &gt;= GLM_COMPILER_INTEL17)) || \</span></div>
+<div class="line"><a name="l00310"></a><span class="lineno">  310</span>&#160;<span class="preprocessor">                ((GLM_COMPILER &amp; GLM_COMPILER_VC) &amp;&amp; (GLM_COMPILER &gt;= GLM_COMPILER_VC15))))</span></div>
+<div class="line"><a name="l00311"></a><span class="lineno">  311</span>&#160;<span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l00312"></a><span class="lineno">  312</span>&#160; </div>
+<div class="line"><a name="l00313"></a><span class="lineno">  313</span>&#160;<span class="preprocessor">#if GLM_HAS_CONSTEXPR</span></div>
+<div class="line"><a name="l00314"></a><span class="lineno">  314</span>&#160;<span class="preprocessor">#       define GLM_CONSTEXPR constexpr</span></div>
+<div class="line"><a name="l00315"></a><span class="lineno">  315</span>&#160;<span class="preprocessor">#else</span></div>
+<div class="line"><a name="l00316"></a><span class="lineno">  316</span>&#160;<span class="preprocessor">#       define GLM_CONSTEXPR</span></div>
+<div class="line"><a name="l00317"></a><span class="lineno">  317</span>&#160;<span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l00318"></a><span class="lineno">  318</span>&#160; </div>
+<div class="line"><a name="l00319"></a><span class="lineno">  319</span>&#160;<span class="comment">//</span></div>
+<div class="line"><a name="l00320"></a><span class="lineno">  320</span>&#160;<span class="preprocessor">#if GLM_HAS_CONSTEXPR</span></div>
+<div class="line"><a name="l00321"></a><span class="lineno">  321</span>&#160;<span class="preprocessor"># if (GLM_COMPILER &amp; GLM_COMPILER_CLANG)</span></div>
+<div class="line"><a name="l00322"></a><span class="lineno">  322</span>&#160;<span class="preprocessor">#       if __has_feature(cxx_if_constexpr)</span></div>
+<div class="line"><a name="l00323"></a><span class="lineno">  323</span>&#160;<span class="preprocessor">#               define GLM_HAS_IF_CONSTEXPR 1</span></div>
+<div class="line"><a name="l00324"></a><span class="lineno">  324</span>&#160;<span class="preprocessor">#       else</span></div>
+<div class="line"><a name="l00325"></a><span class="lineno">  325</span>&#160;<span class="preprocessor">#               define GLM_HAS_IF_CONSTEXPR 0</span></div>
+<div class="line"><a name="l00326"></a><span class="lineno">  326</span>&#160;<span class="preprocessor">#       endif</span></div>
+<div class="line"><a name="l00327"></a><span class="lineno">  327</span>&#160;<span class="preprocessor"># elif (GLM_LANG &amp; GLM_LANG_CXX17_FLAG)</span></div>
+<div class="line"><a name="l00328"></a><span class="lineno">  328</span>&#160;<span class="preprocessor">#       define GLM_HAS_IF_CONSTEXPR 1</span></div>
+<div class="line"><a name="l00329"></a><span class="lineno">  329</span>&#160;<span class="preprocessor"># else</span></div>
+<div class="line"><a name="l00330"></a><span class="lineno">  330</span>&#160;<span class="preprocessor">#       define GLM_HAS_IF_CONSTEXPR 0</span></div>
+<div class="line"><a name="l00331"></a><span class="lineno">  331</span>&#160;<span class="preprocessor"># endif</span></div>
+<div class="line"><a name="l00332"></a><span class="lineno">  332</span>&#160;<span class="preprocessor">#else</span></div>
+<div class="line"><a name="l00333"></a><span class="lineno">  333</span>&#160;<span class="preprocessor">#       define GLM_HAS_IF_CONSTEXPR 0</span></div>
+<div class="line"><a name="l00334"></a><span class="lineno">  334</span>&#160;<span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l00335"></a><span class="lineno">  335</span>&#160; </div>
+<div class="line"><a name="l00336"></a><span class="lineno">  336</span>&#160;<span class="preprocessor">#if GLM_HAS_IF_CONSTEXPR</span></div>
+<div class="line"><a name="l00337"></a><span class="lineno">  337</span>&#160;<span class="preprocessor">#       define GLM_IF_CONSTEXPR if constexpr</span></div>
+<div class="line"><a name="l00338"></a><span class="lineno">  338</span>&#160;<span class="preprocessor">#else</span></div>
+<div class="line"><a name="l00339"></a><span class="lineno">  339</span>&#160;<span class="preprocessor">#       define GLM_IF_CONSTEXPR if</span></div>
+<div class="line"><a name="l00340"></a><span class="lineno">  340</span>&#160;<span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l00341"></a><span class="lineno">  341</span>&#160; </div>
+<div class="line"><a name="l00342"></a><span class="lineno">  342</span>&#160;<span class="comment">//</span></div>
+<div class="line"><a name="l00343"></a><span class="lineno">  343</span>&#160;<span class="preprocessor">#if GLM_LANG &amp; GLM_LANG_CXX11_FLAG</span></div>
+<div class="line"><a name="l00344"></a><span class="lineno">  344</span>&#160;<span class="preprocessor">#       define GLM_HAS_ASSIGNABLE 1</span></div>
+<div class="line"><a name="l00345"></a><span class="lineno">  345</span>&#160;<span class="preprocessor">#else</span></div>
+<div class="line"><a name="l00346"></a><span class="lineno">  346</span>&#160;<span class="preprocessor">#       define GLM_HAS_ASSIGNABLE ((GLM_LANG &amp; GLM_LANG_CXX0X_FLAG) &amp;&amp; (\</span></div>
+<div class="line"><a name="l00347"></a><span class="lineno">  347</span>&#160;<span class="preprocessor">                ((GLM_COMPILER &amp; GLM_COMPILER_VC) &amp;&amp; (GLM_COMPILER &gt;= GLM_COMPILER_VC15)) || \</span></div>
+<div class="line"><a name="l00348"></a><span class="lineno">  348</span>&#160;<span class="preprocessor">                ((GLM_COMPILER &amp; GLM_COMPILER_GCC) &amp;&amp; (GLM_COMPILER &gt;= GLM_COMPILER_GCC49))))</span></div>
+<div class="line"><a name="l00349"></a><span class="lineno">  349</span>&#160;<span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l00350"></a><span class="lineno">  350</span>&#160; </div>
+<div class="line"><a name="l00351"></a><span class="lineno">  351</span>&#160;<span class="comment">//</span></div>
+<div class="line"><a name="l00352"></a><span class="lineno">  352</span>&#160;<span class="preprocessor">#define GLM_HAS_TRIVIAL_QUERIES 0</span></div>
+<div class="line"><a name="l00353"></a><span class="lineno">  353</span>&#160; </div>
+<div class="line"><a name="l00354"></a><span class="lineno">  354</span>&#160;<span class="comment">//</span></div>
+<div class="line"><a name="l00355"></a><span class="lineno">  355</span>&#160;<span class="preprocessor">#if GLM_LANG &amp; GLM_LANG_CXX11_FLAG</span></div>
+<div class="line"><a name="l00356"></a><span class="lineno">  356</span>&#160;<span class="preprocessor">#       define GLM_HAS_MAKE_SIGNED 1</span></div>
+<div class="line"><a name="l00357"></a><span class="lineno">  357</span>&#160;<span class="preprocessor">#else</span></div>
+<div class="line"><a name="l00358"></a><span class="lineno">  358</span>&#160;<span class="preprocessor">#       define GLM_HAS_MAKE_SIGNED ((GLM_LANG &amp; GLM_LANG_CXX0X_FLAG) &amp;&amp; (\</span></div>
+<div class="line"><a name="l00359"></a><span class="lineno">  359</span>&#160;<span class="preprocessor">                ((GLM_COMPILER &amp; GLM_COMPILER_VC) &amp;&amp; (GLM_COMPILER &gt;= GLM_COMPILER_VC12)) || \</span></div>
+<div class="line"><a name="l00360"></a><span class="lineno">  360</span>&#160;<span class="preprocessor">                ((GLM_COMPILER &amp; GLM_COMPILER_CUDA)) || \</span></div>
+<div class="line"><a name="l00361"></a><span class="lineno">  361</span>&#160;<span class="preprocessor">                ((GLM_COMPILER &amp; GLM_COMPILER_HIP))))</span></div>
+<div class="line"><a name="l00362"></a><span class="lineno">  362</span>&#160;<span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l00363"></a><span class="lineno">  363</span>&#160; </div>
+<div class="line"><a name="l00364"></a><span class="lineno">  364</span>&#160;<span class="comment">//</span></div>
+<div class="line"><a name="l00365"></a><span class="lineno">  365</span>&#160;<span class="preprocessor">#if defined(GLM_FORCE_INTRINSICS)</span></div>
+<div class="line"><a name="l00366"></a><span class="lineno">  366</span>&#160;<span class="preprocessor">#       define GLM_HAS_BITSCAN_WINDOWS ((GLM_PLATFORM &amp; GLM_PLATFORM_WINDOWS) &amp;&amp; (\</span></div>
+<div class="line"><a name="l00367"></a><span class="lineno">  367</span>&#160;<span class="preprocessor">                ((GLM_COMPILER &amp; GLM_COMPILER_INTEL)) || \</span></div>
+<div class="line"><a name="l00368"></a><span class="lineno">  368</span>&#160;<span class="preprocessor">                ((GLM_COMPILER &amp; GLM_COMPILER_VC) &amp;&amp; (GLM_COMPILER &gt;= GLM_COMPILER_VC14) &amp;&amp; (GLM_ARCH &amp; GLM_ARCH_X86_BIT))))</span></div>
+<div class="line"><a name="l00369"></a><span class="lineno">  369</span>&#160;<span class="preprocessor">#else</span></div>
+<div class="line"><a name="l00370"></a><span class="lineno">  370</span>&#160;<span class="preprocessor">#       define GLM_HAS_BITSCAN_WINDOWS 0</span></div>
+<div class="line"><a name="l00371"></a><span class="lineno">  371</span>&#160;<span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l00372"></a><span class="lineno">  372</span>&#160; </div>
+<div class="line"><a name="l00373"></a><span class="lineno">  373</span>&#160;<span class="preprocessor">#if GLM_LANG &amp; GLM_LANG_CXX11_FLAG</span></div>
+<div class="line"><a name="l00374"></a><span class="lineno">  374</span>&#160;<span class="preprocessor">#       define GLM_HAS_NOEXCEPT 1</span></div>
+<div class="line"><a name="l00375"></a><span class="lineno">  375</span>&#160;<span class="preprocessor">#else</span></div>
+<div class="line"><a name="l00376"></a><span class="lineno">  376</span>&#160;<span class="preprocessor">#       define GLM_HAS_NOEXCEPT 0</span></div>
+<div class="line"><a name="l00377"></a><span class="lineno">  377</span>&#160;<span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l00378"></a><span class="lineno">  378</span>&#160; </div>
+<div class="line"><a name="l00379"></a><span class="lineno">  379</span>&#160;<span class="preprocessor">#if GLM_HAS_NOEXCEPT</span></div>
+<div class="line"><a name="l00380"></a><span class="lineno">  380</span>&#160;<span class="preprocessor">#       define GLM_NOEXCEPT noexcept</span></div>
+<div class="line"><a name="l00381"></a><span class="lineno">  381</span>&#160;<span class="preprocessor">#else</span></div>
+<div class="line"><a name="l00382"></a><span class="lineno">  382</span>&#160;<span class="preprocessor">#       define GLM_NOEXCEPT</span></div>
+<div class="line"><a name="l00383"></a><span class="lineno">  383</span>&#160;<span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l00384"></a><span class="lineno">  384</span>&#160; </div>
+<div class="line"><a name="l00386"></a><span class="lineno">  386</span>&#160;<span class="comment">// OpenMP</span></div>
+<div class="line"><a name="l00387"></a><span class="lineno">  387</span>&#160;<span class="preprocessor">#ifdef _OPENMP</span></div>
+<div class="line"><a name="l00388"></a><span class="lineno">  388</span>&#160;<span class="preprocessor">#       if GLM_COMPILER &amp; GLM_COMPILER_GCC</span></div>
+<div class="line"><a name="l00389"></a><span class="lineno">  389</span>&#160;<span class="preprocessor">#               if GLM_COMPILER &gt;= GLM_COMPILER_GCC61</span></div>
+<div class="line"><a name="l00390"></a><span class="lineno">  390</span>&#160;<span class="preprocessor">#                       define GLM_HAS_OPENMP 45</span></div>
+<div class="line"><a name="l00391"></a><span class="lineno">  391</span>&#160;<span class="preprocessor">#               elif GLM_COMPILER &gt;= GLM_COMPILER_GCC49</span></div>
+<div class="line"><a name="l00392"></a><span class="lineno">  392</span>&#160;<span class="preprocessor">#                       define GLM_HAS_OPENMP 40</span></div>
+<div class="line"><a name="l00393"></a><span class="lineno">  393</span>&#160;<span class="preprocessor">#               elif GLM_COMPILER &gt;= GLM_COMPILER_GCC47</span></div>
+<div class="line"><a name="l00394"></a><span class="lineno">  394</span>&#160;<span class="preprocessor">#                       define GLM_HAS_OPENMP 31</span></div>
+<div class="line"><a name="l00395"></a><span class="lineno">  395</span>&#160;<span class="preprocessor">#               else</span></div>
+<div class="line"><a name="l00396"></a><span class="lineno">  396</span>&#160;<span class="preprocessor">#                       define GLM_HAS_OPENMP 0</span></div>
+<div class="line"><a name="l00397"></a><span class="lineno">  397</span>&#160;<span class="preprocessor">#               endif</span></div>
+<div class="line"><a name="l00398"></a><span class="lineno">  398</span>&#160;<span class="preprocessor">#       elif GLM_COMPILER &amp; GLM_COMPILER_CLANG</span></div>
+<div class="line"><a name="l00399"></a><span class="lineno">  399</span>&#160;<span class="preprocessor">#               if GLM_COMPILER &gt;= GLM_COMPILER_CLANG38</span></div>
+<div class="line"><a name="l00400"></a><span class="lineno">  400</span>&#160;<span class="preprocessor">#                       define GLM_HAS_OPENMP 31</span></div>
+<div class="line"><a name="l00401"></a><span class="lineno">  401</span>&#160;<span class="preprocessor">#               else</span></div>
+<div class="line"><a name="l00402"></a><span class="lineno">  402</span>&#160;<span class="preprocessor">#                       define GLM_HAS_OPENMP 0</span></div>
+<div class="line"><a name="l00403"></a><span class="lineno">  403</span>&#160;<span class="preprocessor">#               endif</span></div>
+<div class="line"><a name="l00404"></a><span class="lineno">  404</span>&#160;<span class="preprocessor">#       elif GLM_COMPILER &amp; GLM_COMPILER_VC</span></div>
+<div class="line"><a name="l00405"></a><span class="lineno">  405</span>&#160;<span class="preprocessor">#               define GLM_HAS_OPENMP 20</span></div>
+<div class="line"><a name="l00406"></a><span class="lineno">  406</span>&#160;<span class="preprocessor">#       elif GLM_COMPILER &amp; GLM_COMPILER_INTEL</span></div>
+<div class="line"><a name="l00407"></a><span class="lineno">  407</span>&#160;<span class="preprocessor">#               if GLM_COMPILER &gt;= GLM_COMPILER_INTEL16</span></div>
+<div class="line"><a name="l00408"></a><span class="lineno">  408</span>&#160;<span class="preprocessor">#                       define GLM_HAS_OPENMP 40</span></div>
+<div class="line"><a name="l00409"></a><span class="lineno">  409</span>&#160;<span class="preprocessor">#               else</span></div>
+<div class="line"><a name="l00410"></a><span class="lineno">  410</span>&#160;<span class="preprocessor">#                       define GLM_HAS_OPENMP 0</span></div>
+<div class="line"><a name="l00411"></a><span class="lineno">  411</span>&#160;<span class="preprocessor">#               endif</span></div>
+<div class="line"><a name="l00412"></a><span class="lineno">  412</span>&#160;<span class="preprocessor">#       else</span></div>
+<div class="line"><a name="l00413"></a><span class="lineno">  413</span>&#160;<span class="preprocessor">#               define GLM_HAS_OPENMP 0</span></div>
+<div class="line"><a name="l00414"></a><span class="lineno">  414</span>&#160;<span class="preprocessor">#       endif</span></div>
+<div class="line"><a name="l00415"></a><span class="lineno">  415</span>&#160;<span class="preprocessor">#else</span></div>
+<div class="line"><a name="l00416"></a><span class="lineno">  416</span>&#160;<span class="preprocessor">#       define GLM_HAS_OPENMP 0</span></div>
+<div class="line"><a name="l00417"></a><span class="lineno">  417</span>&#160;<span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l00418"></a><span class="lineno">  418</span>&#160; </div>
+<div class="line"><a name="l00420"></a><span class="lineno">  420</span>&#160;<span class="comment">// nullptr</span></div>
+<div class="line"><a name="l00421"></a><span class="lineno">  421</span>&#160; </div>
+<div class="line"><a name="l00422"></a><span class="lineno">  422</span>&#160;<span class="preprocessor">#if GLM_LANG &amp; GLM_LANG_CXX0X_FLAG</span></div>
+<div class="line"><a name="l00423"></a><span class="lineno">  423</span>&#160;<span class="preprocessor">#       define GLM_CONFIG_NULLPTR GLM_ENABLE</span></div>
+<div class="line"><a name="l00424"></a><span class="lineno">  424</span>&#160;<span class="preprocessor">#else</span></div>
+<div class="line"><a name="l00425"></a><span class="lineno">  425</span>&#160;<span class="preprocessor">#       define GLM_CONFIG_NULLPTR GLM_DISABLE</span></div>
+<div class="line"><a name="l00426"></a><span class="lineno">  426</span>&#160;<span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l00427"></a><span class="lineno">  427</span>&#160; </div>
+<div class="line"><a name="l00428"></a><span class="lineno">  428</span>&#160;<span class="preprocessor">#if GLM_CONFIG_NULLPTR == GLM_ENABLE</span></div>
+<div class="line"><a name="l00429"></a><span class="lineno">  429</span>&#160;<span class="preprocessor">#       define GLM_NULLPTR nullptr</span></div>
+<div class="line"><a name="l00430"></a><span class="lineno">  430</span>&#160;<span class="preprocessor">#else</span></div>
+<div class="line"><a name="l00431"></a><span class="lineno">  431</span>&#160;<span class="preprocessor">#       define GLM_NULLPTR 0</span></div>
+<div class="line"><a name="l00432"></a><span class="lineno">  432</span>&#160;<span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l00433"></a><span class="lineno">  433</span>&#160; </div>
+<div class="line"><a name="l00435"></a><span class="lineno">  435</span>&#160;<span class="comment">// Static assert</span></div>
+<div class="line"><a name="l00436"></a><span class="lineno">  436</span>&#160; </div>
+<div class="line"><a name="l00437"></a><span class="lineno">  437</span>&#160;<span class="preprocessor">#if GLM_HAS_STATIC_ASSERT</span></div>
+<div class="line"><a name="l00438"></a><span class="lineno">  438</span>&#160;<span class="preprocessor">#       define GLM_STATIC_ASSERT(x, message) static_assert(x, message)</span></div>
+<div class="line"><a name="l00439"></a><span class="lineno">  439</span>&#160;<span class="preprocessor">#elif GLM_COMPILER &amp; GLM_COMPILER_VC</span></div>
+<div class="line"><a name="l00440"></a><span class="lineno">  440</span>&#160;<span class="preprocessor">#       define GLM_STATIC_ASSERT(x, message) typedef char __CASSERT__##__LINE__[(x) ? 1 : -1]</span></div>
+<div class="line"><a name="l00441"></a><span class="lineno">  441</span>&#160;<span class="preprocessor">#else</span></div>
+<div class="line"><a name="l00442"></a><span class="lineno">  442</span>&#160;<span class="preprocessor">#       define GLM_STATIC_ASSERT(x, message) assert(x)</span></div>
+<div class="line"><a name="l00443"></a><span class="lineno">  443</span>&#160;<span class="preprocessor">#endif//GLM_LANG</span></div>
+<div class="line"><a name="l00444"></a><span class="lineno">  444</span>&#160; </div>
+<div class="line"><a name="l00446"></a><span class="lineno">  446</span>&#160;<span class="comment">// Qualifiers</span></div>
+<div class="line"><a name="l00447"></a><span class="lineno">  447</span>&#160; </div>
+<div class="line"><a name="l00448"></a><span class="lineno">  448</span>&#160;<span class="comment">// User defines: GLM_CUDA_FORCE_DEVICE_FUNC, GLM_CUDA_FORCE_HOST_FUNC</span></div>
+<div class="line"><a name="l00449"></a><span class="lineno">  449</span>&#160; </div>
+<div class="line"><a name="l00450"></a><span class="lineno">  450</span>&#160;<span class="preprocessor">#if (GLM_COMPILER &amp; GLM_COMPILER_CUDA) || (GLM_COMPILER &amp; GLM_COMPILER_HIP)</span></div>
+<div class="line"><a name="l00451"></a><span class="lineno">  451</span>&#160;<span class="preprocessor">#       if defined(GLM_CUDA_FORCE_DEVICE_FUNC) &amp;&amp; defined(GLM_CUDA_FORCE_HOST_FUNC)</span></div>
+<div class="line"><a name="l00452"></a><span class="lineno">  452</span>&#160;<span class="preprocessor">#               error &quot;GLM error: GLM_CUDA_FORCE_DEVICE_FUNC and GLM_CUDA_FORCE_HOST_FUNC should not be defined at the same time, GLM by default generates both device and host code for CUDA compiler.&quot;</span></div>
+<div class="line"><a name="l00453"></a><span class="lineno">  453</span>&#160;<span class="preprocessor">#       endif//defined(GLM_CUDA_FORCE_DEVICE_FUNC) &amp;&amp; defined(GLM_CUDA_FORCE_HOST_FUNC)</span></div>
+<div class="line"><a name="l00454"></a><span class="lineno">  454</span>&#160; </div>
+<div class="line"><a name="l00455"></a><span class="lineno">  455</span>&#160;<span class="preprocessor">#       if defined(GLM_CUDA_FORCE_DEVICE_FUNC)</span></div>
+<div class="line"><a name="l00456"></a><span class="lineno">  456</span>&#160;<span class="preprocessor">#               define GLM_CUDA_FUNC_DEF __device__</span></div>
+<div class="line"><a name="l00457"></a><span class="lineno">  457</span>&#160;<span class="preprocessor">#               define GLM_CUDA_FUNC_DECL __device__</span></div>
+<div class="line"><a name="l00458"></a><span class="lineno">  458</span>&#160;<span class="preprocessor">#       elif defined(GLM_CUDA_FORCE_HOST_FUNC)</span></div>
+<div class="line"><a name="l00459"></a><span class="lineno">  459</span>&#160;<span class="preprocessor">#               define GLM_CUDA_FUNC_DEF __host__</span></div>
+<div class="line"><a name="l00460"></a><span class="lineno">  460</span>&#160;<span class="preprocessor">#               define GLM_CUDA_FUNC_DECL __host__</span></div>
+<div class="line"><a name="l00461"></a><span class="lineno">  461</span>&#160;<span class="preprocessor">#       else</span></div>
+<div class="line"><a name="l00462"></a><span class="lineno">  462</span>&#160;<span class="preprocessor">#               define GLM_CUDA_FUNC_DEF __device__ __host__</span></div>
+<div class="line"><a name="l00463"></a><span class="lineno">  463</span>&#160;<span class="preprocessor">#               define GLM_CUDA_FUNC_DECL __device__ __host__</span></div>
+<div class="line"><a name="l00464"></a><span class="lineno">  464</span>&#160;<span class="preprocessor">#       endif//defined(GLM_CUDA_FORCE_XXXX_FUNC)</span></div>
+<div class="line"><a name="l00465"></a><span class="lineno">  465</span>&#160;<span class="preprocessor">#else</span></div>
+<div class="line"><a name="l00466"></a><span class="lineno">  466</span>&#160;<span class="preprocessor">#       define GLM_CUDA_FUNC_DEF</span></div>
+<div class="line"><a name="l00467"></a><span class="lineno">  467</span>&#160;<span class="preprocessor">#       define GLM_CUDA_FUNC_DECL</span></div>
+<div class="line"><a name="l00468"></a><span class="lineno">  468</span>&#160;<span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l00469"></a><span class="lineno">  469</span>&#160; </div>
+<div class="line"><a name="l00470"></a><span class="lineno">  470</span>&#160;<span class="preprocessor">#if defined(GLM_FORCE_INLINE)</span></div>
+<div class="line"><a name="l00471"></a><span class="lineno">  471</span>&#160;<span class="preprocessor">#       if GLM_COMPILER &amp; GLM_COMPILER_VC</span></div>
+<div class="line"><a name="l00472"></a><span class="lineno">  472</span>&#160;<span class="preprocessor">#               define GLM_INLINE __forceinline</span></div>
+<div class="line"><a name="l00473"></a><span class="lineno">  473</span>&#160;<span class="preprocessor">#               define GLM_NEVER_INLINE __declspec(noinline)</span></div>
+<div class="line"><a name="l00474"></a><span class="lineno">  474</span>&#160;<span class="preprocessor">#       elif GLM_COMPILER &amp; (GLM_COMPILER_GCC | GLM_COMPILER_CLANG)</span></div>
+<div class="line"><a name="l00475"></a><span class="lineno">  475</span>&#160;<span class="preprocessor">#               define GLM_INLINE inline __attribute__((__always_inline__))</span></div>
+<div class="line"><a name="l00476"></a><span class="lineno">  476</span>&#160;<span class="preprocessor">#               define GLM_NEVER_INLINE __attribute__((__noinline__))</span></div>
+<div class="line"><a name="l00477"></a><span class="lineno">  477</span>&#160;<span class="preprocessor">#       elif (GLM_COMPILER &amp; GLM_COMPILER_CUDA) || (GLM_COMPILER &amp; GLM_COMPILER_HIP)</span></div>
+<div class="line"><a name="l00478"></a><span class="lineno">  478</span>&#160;<span class="preprocessor">#               define GLM_INLINE __forceinline__</span></div>
+<div class="line"><a name="l00479"></a><span class="lineno">  479</span>&#160;<span class="preprocessor">#               define GLM_NEVER_INLINE __noinline__</span></div>
+<div class="line"><a name="l00480"></a><span class="lineno">  480</span>&#160;<span class="preprocessor">#       else</span></div>
+<div class="line"><a name="l00481"></a><span class="lineno">  481</span>&#160;<span class="preprocessor">#               define GLM_INLINE inline</span></div>
+<div class="line"><a name="l00482"></a><span class="lineno">  482</span>&#160;<span class="preprocessor">#               define GLM_NEVER_INLINE</span></div>
+<div class="line"><a name="l00483"></a><span class="lineno">  483</span>&#160;<span class="preprocessor">#       endif//GLM_COMPILER</span></div>
+<div class="line"><a name="l00484"></a><span class="lineno">  484</span>&#160;<span class="preprocessor">#else</span></div>
+<div class="line"><a name="l00485"></a><span class="lineno">  485</span>&#160;<span class="preprocessor">#       define GLM_INLINE inline</span></div>
+<div class="line"><a name="l00486"></a><span class="lineno">  486</span>&#160;<span class="preprocessor">#       define GLM_NEVER_INLINE</span></div>
+<div class="line"><a name="l00487"></a><span class="lineno">  487</span>&#160;<span class="preprocessor">#endif//defined(GLM_FORCE_INLINE)</span></div>
+<div class="line"><a name="l00488"></a><span class="lineno">  488</span>&#160; </div>
+<div class="line"><a name="l00489"></a><span class="lineno">  489</span>&#160;<span class="preprocessor">#define GLM_FUNC_DECL GLM_CUDA_FUNC_DECL</span></div>
+<div class="line"><a name="l00490"></a><span class="lineno">  490</span>&#160;<span class="preprocessor">#define GLM_FUNC_QUALIFIER GLM_CUDA_FUNC_DEF GLM_INLINE</span></div>
+<div class="line"><a name="l00491"></a><span class="lineno">  491</span>&#160; </div>
+<div class="line"><a name="l00492"></a><span class="lineno">  492</span>&#160;<span class="comment">// Do not use CUDA function qualifiers on CUDA compiler when functions are made default</span></div>
+<div class="line"><a name="l00493"></a><span class="lineno">  493</span>&#160;<span class="preprocessor">#if GLM_HAS_DEFAULTED_FUNCTIONS</span></div>
+<div class="line"><a name="l00494"></a><span class="lineno">  494</span>&#160;<span class="preprocessor">#       define GLM_DEFAULTED_FUNC_DECL</span></div>
+<div class="line"><a name="l00495"></a><span class="lineno">  495</span>&#160;<span class="preprocessor">#       define GLM_DEFAULTED_FUNC_QUALIFIER GLM_INLINE</span></div>
+<div class="line"><a name="l00496"></a><span class="lineno">  496</span>&#160;<span class="preprocessor">#else</span></div>
+<div class="line"><a name="l00497"></a><span class="lineno">  497</span>&#160;<span class="preprocessor">#       define GLM_DEFAULTED_FUNC_DECL GLM_FUNC_DECL</span></div>
+<div class="line"><a name="l00498"></a><span class="lineno">  498</span>&#160;<span class="preprocessor">#       define GLM_DEFAULTED_FUNC_QUALIFIER GLM_FUNC_QUALIFIER</span></div>
+<div class="line"><a name="l00499"></a><span class="lineno">  499</span>&#160;<span class="preprocessor">#endif//GLM_HAS_DEFAULTED_FUNCTIONS</span></div>
+<div class="line"><a name="l00500"></a><span class="lineno">  500</span>&#160;<span class="preprocessor">#if !defined(GLM_FORCE_CTOR_INIT)</span></div>
+<div class="line"><a name="l00501"></a><span class="lineno">  501</span>&#160;<span class="preprocessor">#       define GLM_DEFAULTED_DEFAULT_CTOR_DECL GLM_DEFAULTED_FUNC_DECL</span></div>
+<div class="line"><a name="l00502"></a><span class="lineno">  502</span>&#160;<span class="preprocessor">#       define GLM_DEFAULTED_DEFAULT_CTOR_QUALIFIER GLM_DEFAULTED_FUNC_QUALIFIER</span></div>
+<div class="line"><a name="l00503"></a><span class="lineno">  503</span>&#160;<span class="preprocessor">#else</span></div>
+<div class="line"><a name="l00504"></a><span class="lineno">  504</span>&#160;<span class="preprocessor">#       define GLM_DEFAULTED_DEFAULT_CTOR_DECL GLM_FUNC_DECL</span></div>
+<div class="line"><a name="l00505"></a><span class="lineno">  505</span>&#160;<span class="preprocessor">#       define GLM_DEFAULTED_DEFAULT_CTOR_QUALIFIER GLM_FUNC_QUALIFIER</span></div>
+<div class="line"><a name="l00506"></a><span class="lineno">  506</span>&#160;<span class="preprocessor">#endif//GLM_FORCE_CTOR_INIT</span></div>
+<div class="line"><a name="l00507"></a><span class="lineno">  507</span>&#160; </div>
+<div class="line"><a name="l00509"></a><span class="lineno">  509</span>&#160;<span class="comment">// Swizzle operators</span></div>
+<div class="line"><a name="l00510"></a><span class="lineno">  510</span>&#160; </div>
+<div class="line"><a name="l00511"></a><span class="lineno">  511</span>&#160;<span class="comment">// User defines: GLM_FORCE_SWIZZLE</span></div>
+<div class="line"><a name="l00512"></a><span class="lineno">  512</span>&#160; </div>
+<div class="line"><a name="l00513"></a><span class="lineno">  513</span>&#160;<span class="preprocessor">#define GLM_SWIZZLE_DISABLED            0</span></div>
+<div class="line"><a name="l00514"></a><span class="lineno">  514</span>&#160;<span class="preprocessor">#define GLM_SWIZZLE_OPERATOR            1</span></div>
+<div class="line"><a name="l00515"></a><span class="lineno">  515</span>&#160;<span class="preprocessor">#define GLM_SWIZZLE_FUNCTION            2</span></div>
+<div class="line"><a name="l00516"></a><span class="lineno">  516</span>&#160; </div>
+<div class="line"><a name="l00517"></a><span class="lineno">  517</span>&#160;<span class="preprocessor">#if defined(GLM_SWIZZLE)</span></div>
+<div class="line"><a name="l00518"></a><span class="lineno">  518</span>&#160;<span class="preprocessor">#       pragma message(&quot;GLM: GLM_SWIZZLE is deprecated, use GLM_FORCE_SWIZZLE instead.&quot;)</span></div>
+<div class="line"><a name="l00519"></a><span class="lineno">  519</span>&#160;<span class="preprocessor">#       define GLM_FORCE_SWIZZLE</span></div>
+<div class="line"><a name="l00520"></a><span class="lineno">  520</span>&#160;<span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l00521"></a><span class="lineno">  521</span>&#160; </div>
+<div class="line"><a name="l00522"></a><span class="lineno">  522</span>&#160;<span class="preprocessor">#if defined(GLM_FORCE_SWIZZLE) &amp;&amp; (GLM_LANG &amp; GLM_LANG_CXXMS_FLAG) &amp;&amp; !defined(GLM_FORCE_XYZW_ONLY)</span></div>
+<div class="line"><a name="l00523"></a><span class="lineno">  523</span>&#160;<span class="preprocessor">#       define GLM_CONFIG_SWIZZLE GLM_SWIZZLE_OPERATOR</span></div>
+<div class="line"><a name="l00524"></a><span class="lineno">  524</span>&#160;<span class="preprocessor">#elif defined(GLM_FORCE_SWIZZLE)</span></div>
+<div class="line"><a name="l00525"></a><span class="lineno">  525</span>&#160;<span class="preprocessor">#       define GLM_CONFIG_SWIZZLE GLM_SWIZZLE_FUNCTION</span></div>
+<div class="line"><a name="l00526"></a><span class="lineno">  526</span>&#160;<span class="preprocessor">#else</span></div>
+<div class="line"><a name="l00527"></a><span class="lineno">  527</span>&#160;<span class="preprocessor">#       define GLM_CONFIG_SWIZZLE GLM_SWIZZLE_DISABLED</span></div>
+<div class="line"><a name="l00528"></a><span class="lineno">  528</span>&#160;<span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l00529"></a><span class="lineno">  529</span>&#160; </div>
+<div class="line"><a name="l00531"></a><span class="lineno">  531</span>&#160;<span class="comment">// Allows using not basic types as genType</span></div>
+<div class="line"><a name="l00532"></a><span class="lineno">  532</span>&#160; </div>
+<div class="line"><a name="l00533"></a><span class="lineno">  533</span>&#160;<span class="comment">// #define GLM_FORCE_UNRESTRICTED_GENTYPE</span></div>
+<div class="line"><a name="l00534"></a><span class="lineno">  534</span>&#160; </div>
+<div class="line"><a name="l00535"></a><span class="lineno">  535</span>&#160;<span class="preprocessor">#ifdef GLM_FORCE_UNRESTRICTED_GENTYPE</span></div>
+<div class="line"><a name="l00536"></a><span class="lineno">  536</span>&#160;<span class="preprocessor">#       define GLM_CONFIG_UNRESTRICTED_GENTYPE GLM_ENABLE</span></div>
+<div class="line"><a name="l00537"></a><span class="lineno">  537</span>&#160;<span class="preprocessor">#else</span></div>
+<div class="line"><a name="l00538"></a><span class="lineno">  538</span>&#160;<span class="preprocessor">#       define GLM_CONFIG_UNRESTRICTED_GENTYPE GLM_DISABLE</span></div>
+<div class="line"><a name="l00539"></a><span class="lineno">  539</span>&#160;<span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l00540"></a><span class="lineno">  540</span>&#160; </div>
+<div class="line"><a name="l00542"></a><span class="lineno">  542</span>&#160;<span class="comment">// Allows using any scaler as float</span></div>
+<div class="line"><a name="l00543"></a><span class="lineno">  543</span>&#160; </div>
+<div class="line"><a name="l00544"></a><span class="lineno">  544</span>&#160;<span class="comment">// #define GLM_FORCE_UNRESTRICTED_FLOAT</span></div>
+<div class="line"><a name="l00545"></a><span class="lineno">  545</span>&#160; </div>
+<div class="line"><a name="l00546"></a><span class="lineno">  546</span>&#160;<span class="preprocessor">#ifdef GLM_FORCE_UNRESTRICTED_FLOAT</span></div>
+<div class="line"><a name="l00547"></a><span class="lineno">  547</span>&#160;<span class="preprocessor">#       define GLM_CONFIG_UNRESTRICTED_FLOAT GLM_ENABLE</span></div>
+<div class="line"><a name="l00548"></a><span class="lineno">  548</span>&#160;<span class="preprocessor">#else</span></div>
+<div class="line"><a name="l00549"></a><span class="lineno">  549</span>&#160;<span class="preprocessor">#       define GLM_CONFIG_UNRESTRICTED_FLOAT GLM_DISABLE</span></div>
+<div class="line"><a name="l00550"></a><span class="lineno">  550</span>&#160;<span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l00551"></a><span class="lineno">  551</span>&#160; </div>
+<div class="line"><a name="l00553"></a><span class="lineno">  553</span>&#160;<span class="comment">// Clip control, define GLM_FORCE_DEPTH_ZERO_TO_ONE before including GLM</span></div>
+<div class="line"><a name="l00554"></a><span class="lineno">  554</span>&#160;<span class="comment">// to use a clip space between 0 to 1.</span></div>
+<div class="line"><a name="l00555"></a><span class="lineno">  555</span>&#160;<span class="comment">// Coordinate system, define GLM_FORCE_LEFT_HANDED before including GLM</span></div>
+<div class="line"><a name="l00556"></a><span class="lineno">  556</span>&#160;<span class="comment">// to use left handed coordinate system by default.</span></div>
+<div class="line"><a name="l00557"></a><span class="lineno">  557</span>&#160; </div>
+<div class="line"><a name="l00558"></a><span class="lineno">  558</span>&#160;<span class="preprocessor">#define GLM_CLIP_CONTROL_ZO_BIT         (1 &lt;&lt; 0) // ZERO_TO_ONE</span></div>
+<div class="line"><a name="l00559"></a><span class="lineno">  559</span>&#160;<span class="preprocessor">#define GLM_CLIP_CONTROL_NO_BIT         (1 &lt;&lt; 1) // NEGATIVE_ONE_TO_ONE</span></div>
+<div class="line"><a name="l00560"></a><span class="lineno">  560</span>&#160;<span class="preprocessor">#define GLM_CLIP_CONTROL_LH_BIT         (1 &lt;&lt; 2) // LEFT_HANDED, For DirectX, Metal, Vulkan</span></div>
+<div class="line"><a name="l00561"></a><span class="lineno">  561</span>&#160;<span class="preprocessor">#define GLM_CLIP_CONTROL_RH_BIT         (1 &lt;&lt; 3) // RIGHT_HANDED, For OpenGL, default in GLM</span></div>
+<div class="line"><a name="l00562"></a><span class="lineno">  562</span>&#160; </div>
+<div class="line"><a name="l00563"></a><span class="lineno">  563</span>&#160;<span class="preprocessor">#define GLM_CLIP_CONTROL_LH_ZO (GLM_CLIP_CONTROL_LH_BIT | GLM_CLIP_CONTROL_ZO_BIT)</span></div>
+<div class="line"><a name="l00564"></a><span class="lineno">  564</span>&#160;<span class="preprocessor">#define GLM_CLIP_CONTROL_LH_NO (GLM_CLIP_CONTROL_LH_BIT | GLM_CLIP_CONTROL_NO_BIT)</span></div>
+<div class="line"><a name="l00565"></a><span class="lineno">  565</span>&#160;<span class="preprocessor">#define GLM_CLIP_CONTROL_RH_ZO (GLM_CLIP_CONTROL_RH_BIT | GLM_CLIP_CONTROL_ZO_BIT)</span></div>
+<div class="line"><a name="l00566"></a><span class="lineno">  566</span>&#160;<span class="preprocessor">#define GLM_CLIP_CONTROL_RH_NO (GLM_CLIP_CONTROL_RH_BIT | GLM_CLIP_CONTROL_NO_BIT)</span></div>
+<div class="line"><a name="l00567"></a><span class="lineno">  567</span>&#160; </div>
+<div class="line"><a name="l00568"></a><span class="lineno">  568</span>&#160;<span class="preprocessor">#ifdef GLM_FORCE_DEPTH_ZERO_TO_ONE</span></div>
+<div class="line"><a name="l00569"></a><span class="lineno">  569</span>&#160;<span class="preprocessor">#       ifdef GLM_FORCE_LEFT_HANDED</span></div>
+<div class="line"><a name="l00570"></a><span class="lineno">  570</span>&#160;<span class="preprocessor">#               define GLM_CONFIG_CLIP_CONTROL GLM_CLIP_CONTROL_LH_ZO</span></div>
+<div class="line"><a name="l00571"></a><span class="lineno">  571</span>&#160;<span class="preprocessor">#       else</span></div>
+<div class="line"><a name="l00572"></a><span class="lineno">  572</span>&#160;<span class="preprocessor">#               define GLM_CONFIG_CLIP_CONTROL GLM_CLIP_CONTROL_RH_ZO</span></div>
+<div class="line"><a name="l00573"></a><span class="lineno">  573</span>&#160;<span class="preprocessor">#       endif</span></div>
+<div class="line"><a name="l00574"></a><span class="lineno">  574</span>&#160;<span class="preprocessor">#else</span></div>
+<div class="line"><a name="l00575"></a><span class="lineno">  575</span>&#160;<span class="preprocessor">#       ifdef GLM_FORCE_LEFT_HANDED</span></div>
+<div class="line"><a name="l00576"></a><span class="lineno">  576</span>&#160;<span class="preprocessor">#               define GLM_CONFIG_CLIP_CONTROL GLM_CLIP_CONTROL_LH_NO</span></div>
+<div class="line"><a name="l00577"></a><span class="lineno">  577</span>&#160;<span class="preprocessor">#       else</span></div>
+<div class="line"><a name="l00578"></a><span class="lineno">  578</span>&#160;<span class="preprocessor">#               define GLM_CONFIG_CLIP_CONTROL GLM_CLIP_CONTROL_RH_NO</span></div>
+<div class="line"><a name="l00579"></a><span class="lineno">  579</span>&#160;<span class="preprocessor">#       endif</span></div>
+<div class="line"><a name="l00580"></a><span class="lineno">  580</span>&#160;<span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l00581"></a><span class="lineno">  581</span>&#160; </div>
+<div class="line"><a name="l00583"></a><span class="lineno">  583</span>&#160;<span class="comment">// Qualifiers</span></div>
+<div class="line"><a name="l00584"></a><span class="lineno">  584</span>&#160; </div>
+<div class="line"><a name="l00585"></a><span class="lineno">  585</span>&#160;<span class="preprocessor">#if (GLM_COMPILER &amp; GLM_COMPILER_VC) || ((GLM_COMPILER &amp; GLM_COMPILER_INTEL) &amp;&amp; (GLM_PLATFORM &amp; GLM_PLATFORM_WINDOWS))</span></div>
+<div class="line"><a name="l00586"></a><span class="lineno">  586</span>&#160;<span class="preprocessor">#       define GLM_DEPRECATED __declspec(deprecated)</span></div>
+<div class="line"><a name="l00587"></a><span class="lineno">  587</span>&#160;<span class="preprocessor">#       define GLM_ALIGNED_TYPEDEF(type, name, alignment) typedef __declspec(align(alignment)) type name</span></div>
+<div class="line"><a name="l00588"></a><span class="lineno">  588</span>&#160;<span class="preprocessor">#elif GLM_COMPILER &amp; (GLM_COMPILER_GCC | GLM_COMPILER_CLANG | GLM_COMPILER_INTEL)</span></div>
+<div class="line"><a name="l00589"></a><span class="lineno">  589</span>&#160;<span class="preprocessor">#       define GLM_DEPRECATED __attribute__((__deprecated__))</span></div>
+<div class="line"><a name="l00590"></a><span class="lineno">  590</span>&#160;<span class="preprocessor">#       define GLM_ALIGNED_TYPEDEF(type, name, alignment) typedef type name __attribute__((aligned(alignment)))</span></div>
+<div class="line"><a name="l00591"></a><span class="lineno">  591</span>&#160;<span class="preprocessor">#elif (GLM_COMPILER &amp; GLM_COMPILER_CUDA) || (GLM_COMPILER &amp; GLM_COMPILER_HIP)</span></div>
+<div class="line"><a name="l00592"></a><span class="lineno">  592</span>&#160;<span class="preprocessor">#       define GLM_DEPRECATED</span></div>
+<div class="line"><a name="l00593"></a><span class="lineno">  593</span>&#160;<span class="preprocessor">#       define GLM_ALIGNED_TYPEDEF(type, name, alignment) typedef type name __align__(x)</span></div>
+<div class="line"><a name="l00594"></a><span class="lineno">  594</span>&#160;<span class="preprocessor">#else</span></div>
+<div class="line"><a name="l00595"></a><span class="lineno">  595</span>&#160;<span class="preprocessor">#       define GLM_DEPRECATED</span></div>
+<div class="line"><a name="l00596"></a><span class="lineno">  596</span>&#160;<span class="preprocessor">#       define GLM_ALIGNED_TYPEDEF(type, name, alignment) typedef type name</span></div>
+<div class="line"><a name="l00597"></a><span class="lineno">  597</span>&#160;<span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l00598"></a><span class="lineno">  598</span>&#160; </div>
+<div class="line"><a name="l00600"></a><span class="lineno">  600</span>&#160; </div>
+<div class="line"><a name="l00601"></a><span class="lineno">  601</span>&#160;<span class="preprocessor">#ifdef GLM_FORCE_EXPLICIT_CTOR</span></div>
+<div class="line"><a name="l00602"></a><span class="lineno">  602</span>&#160;<span class="preprocessor">#       define GLM_EXPLICIT explicit</span></div>
+<div class="line"><a name="l00603"></a><span class="lineno">  603</span>&#160;<span class="preprocessor">#else</span></div>
+<div class="line"><a name="l00604"></a><span class="lineno">  604</span>&#160;<span class="preprocessor">#       define GLM_EXPLICIT</span></div>
+<div class="line"><a name="l00605"></a><span class="lineno">  605</span>&#160;<span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l00606"></a><span class="lineno">  606</span>&#160; </div>
+<div class="line"><a name="l00608"></a><span class="lineno">  608</span>&#160;<span class="comment">// Length type: all length functions returns a length_t type.</span></div>
+<div class="line"><a name="l00609"></a><span class="lineno">  609</span>&#160;<span class="comment">// When GLM_FORCE_SIZE_T_LENGTH is defined, length_t is a typedef of size_t otherwise</span></div>
+<div class="line"><a name="l00610"></a><span class="lineno">  610</span>&#160;<span class="comment">// length_t is a typedef of int like GLSL defines it.</span></div>
+<div class="line"><a name="l00611"></a><span class="lineno">  611</span>&#160; </div>
+<div class="line"><a name="l00612"></a><span class="lineno">  612</span>&#160;<span class="preprocessor">#define GLM_LENGTH_INT          1</span></div>
+<div class="line"><a name="l00613"></a><span class="lineno">  613</span>&#160;<span class="preprocessor">#define GLM_LENGTH_SIZE_T       2</span></div>
+<div class="line"><a name="l00614"></a><span class="lineno">  614</span>&#160; </div>
+<div class="line"><a name="l00615"></a><span class="lineno">  615</span>&#160;<span class="preprocessor">#ifdef GLM_FORCE_SIZE_T_LENGTH</span></div>
+<div class="line"><a name="l00616"></a><span class="lineno">  616</span>&#160;<span class="preprocessor">#       define GLM_CONFIG_LENGTH_TYPE           GLM_LENGTH_SIZE_T</span></div>
+<div class="line"><a name="l00617"></a><span class="lineno">  617</span>&#160;<span class="preprocessor">#else</span></div>
+<div class="line"><a name="l00618"></a><span class="lineno">  618</span>&#160;<span class="preprocessor">#       define GLM_CONFIG_LENGTH_TYPE           GLM_LENGTH_INT</span></div>
+<div class="line"><a name="l00619"></a><span class="lineno">  619</span>&#160;<span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l00620"></a><span class="lineno">  620</span>&#160; </div>
+<div class="line"><a name="l00621"></a><span class="lineno">  621</span>&#160;<span class="keyword">namespace </span>glm</div>
+<div class="line"><a name="l00622"></a><span class="lineno">  622</span>&#160;{</div>
+<div class="line"><a name="l00623"></a><span class="lineno">  623</span>&#160;        <span class="keyword">using</span> std::size_t;</div>
+<div class="line"><a name="l00624"></a><span class="lineno">  624</span>&#160;<span class="preprocessor">#       if GLM_CONFIG_LENGTH_TYPE == GLM_LENGTH_SIZE_T</span></div>
+<div class="line"><a name="l00625"></a><span class="lineno">  625</span>&#160;                <span class="keyword">typedef</span> <span class="keywordtype">size_t</span> length_t;</div>
+<div class="line"><a name="l00626"></a><span class="lineno">  626</span>&#160;<span class="preprocessor">#       else</span></div>
+<div class="line"><a name="l00627"></a><span class="lineno">  627</span>&#160;                <span class="keyword">typedef</span> <span class="keywordtype">int</span> length_t;</div>
+<div class="line"><a name="l00628"></a><span class="lineno">  628</span>&#160;<span class="preprocessor">#       endif</span></div>
+<div class="line"><a name="l00629"></a><span class="lineno">  629</span>&#160;}<span class="comment">//namespace glm</span></div>
+<div class="line"><a name="l00630"></a><span class="lineno">  630</span>&#160; </div>
+<div class="line"><a name="l00632"></a><span class="lineno">  632</span>&#160;<span class="comment">// constexpr</span></div>
+<div class="line"><a name="l00633"></a><span class="lineno">  633</span>&#160; </div>
+<div class="line"><a name="l00634"></a><span class="lineno">  634</span>&#160;<span class="preprocessor">#if GLM_HAS_CONSTEXPR</span></div>
+<div class="line"><a name="l00635"></a><span class="lineno">  635</span>&#160;<span class="preprocessor">#       define GLM_CONFIG_CONSTEXP GLM_ENABLE</span></div>
+<div class="line"><a name="l00636"></a><span class="lineno">  636</span>&#160; </div>
+<div class="line"><a name="l00637"></a><span class="lineno">  637</span>&#160;        <span class="keyword">namespace </span>glm</div>
+<div class="line"><a name="l00638"></a><span class="lineno">  638</span>&#160;        {</div>
+<div class="line"><a name="l00639"></a><span class="lineno">  639</span>&#160;                <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T, std::<span class="keywordtype">size_t</span> N&gt;</div>
+<div class="line"><a name="l00640"></a><span class="lineno">  640</span>&#160;                constexpr std::size_t countof(T <span class="keyword">const</span> (&amp;)[N])</div>
+<div class="line"><a name="l00641"></a><span class="lineno">  641</span>&#160;                {</div>
+<div class="line"><a name="l00642"></a><span class="lineno">  642</span>&#160;                        <span class="keywordflow">return</span> N;</div>
+<div class="line"><a name="l00643"></a><span class="lineno">  643</span>&#160;                }</div>
+<div class="line"><a name="l00644"></a><span class="lineno">  644</span>&#160;        }<span class="comment">//namespace glm</span></div>
+<div class="line"><a name="l00645"></a><span class="lineno">  645</span>&#160;<span class="preprocessor">#       define GLM_COUNTOF(arr) glm::countof(arr)</span></div>
+<div class="line"><a name="l00646"></a><span class="lineno">  646</span>&#160;<span class="preprocessor">#elif defined(_MSC_VER)</span></div>
+<div class="line"><a name="l00647"></a><span class="lineno">  647</span>&#160;<span class="preprocessor">#       define GLM_CONFIG_CONSTEXP GLM_DISABLE</span></div>
+<div class="line"><a name="l00648"></a><span class="lineno">  648</span>&#160; </div>
+<div class="line"><a name="l00649"></a><span class="lineno">  649</span>&#160;<span class="preprocessor">#       define GLM_COUNTOF(arr) _countof(arr)</span></div>
+<div class="line"><a name="l00650"></a><span class="lineno">  650</span>&#160;<span class="preprocessor">#else</span></div>
+<div class="line"><a name="l00651"></a><span class="lineno">  651</span>&#160;<span class="preprocessor">#       define GLM_CONFIG_CONSTEXP GLM_DISABLE</span></div>
+<div class="line"><a name="l00652"></a><span class="lineno">  652</span>&#160; </div>
+<div class="line"><a name="l00653"></a><span class="lineno">  653</span>&#160;<span class="preprocessor">#       define GLM_COUNTOF(arr) sizeof(arr) / sizeof(arr[0])</span></div>
+<div class="line"><a name="l00654"></a><span class="lineno">  654</span>&#160;<span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l00655"></a><span class="lineno">  655</span>&#160; </div>
+<div class="line"><a name="l00657"></a><span class="lineno">  657</span>&#160;<span class="comment">// uint</span></div>
+<div class="line"><a name="l00658"></a><span class="lineno">  658</span>&#160; </div>
+<div class="line"><a name="l00659"></a><span class="lineno">  659</span>&#160;<span class="keyword">namespace </span>glm{</div>
+<div class="line"><a name="l00660"></a><span class="lineno">  660</span>&#160;<span class="keyword">namespace </span>detail</div>
+<div class="line"><a name="l00661"></a><span class="lineno">  661</span>&#160;{</div>
+<div class="line"><a name="l00662"></a><span class="lineno">  662</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T&gt;</div>
+<div class="line"><a name="l00663"></a><span class="lineno">  663</span>&#160;        <span class="keyword">struct </span>is_int</div>
+<div class="line"><a name="l00664"></a><span class="lineno">  664</span>&#160;        {</div>
+<div class="line"><a name="l00665"></a><span class="lineno">  665</span>&#160;                <span class="keyword">enum</span> test {value = 0};</div>
+<div class="line"><a name="l00666"></a><span class="lineno">  666</span>&#160;        };</div>
+<div class="line"><a name="l00667"></a><span class="lineno">  667</span>&#160; </div>
+<div class="line"><a name="l00668"></a><span class="lineno">  668</span>&#160;        <span class="keyword">template</span>&lt;&gt;</div>
+<div class="line"><a name="l00669"></a><span class="lineno">  669</span>&#160;        <span class="keyword">struct </span>is_int&lt;unsigned int&gt;</div>
+<div class="line"><a name="l00670"></a><span class="lineno">  670</span>&#160;        {</div>
+<div class="line"><a name="l00671"></a><span class="lineno">  671</span>&#160;                <span class="keyword">enum</span> test {value = ~0};</div>
+<div class="line"><a name="l00672"></a><span class="lineno">  672</span>&#160;        };</div>
+<div class="line"><a name="l00673"></a><span class="lineno">  673</span>&#160; </div>
+<div class="line"><a name="l00674"></a><span class="lineno">  674</span>&#160;        <span class="keyword">template</span>&lt;&gt;</div>
+<div class="line"><a name="l00675"></a><span class="lineno">  675</span>&#160;        <span class="keyword">struct </span>is_int&lt;signed int&gt;</div>
+<div class="line"><a name="l00676"></a><span class="lineno">  676</span>&#160;        {</div>
+<div class="line"><a name="l00677"></a><span class="lineno">  677</span>&#160;                <span class="keyword">enum</span> test {value = ~0};</div>
+<div class="line"><a name="l00678"></a><span class="lineno">  678</span>&#160;        };</div>
+<div class="line"><a name="l00679"></a><span class="lineno">  679</span>&#160;}<span class="comment">//namespace detail</span></div>
+<div class="line"><a name="l00680"></a><span class="lineno">  680</span>&#160; </div>
+<div class="line"><a name="l00681"></a><span class="lineno">  681</span>&#160;        <span class="keyword">typedef</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span>    uint;</div>
+<div class="line"><a name="l00682"></a><span class="lineno">  682</span>&#160;}<span class="comment">//namespace glm</span></div>
+<div class="line"><a name="l00683"></a><span class="lineno">  683</span>&#160; </div>
+<div class="line"><a name="l00685"></a><span class="lineno">  685</span>&#160;<span class="comment">// 64-bit int</span></div>
+<div class="line"><a name="l00686"></a><span class="lineno">  686</span>&#160; </div>
+<div class="line"><a name="l00687"></a><span class="lineno">  687</span>&#160;<span class="preprocessor">#if GLM_HAS_EXTENDED_INTEGER_TYPE</span></div>
+<div class="line"><a name="l00688"></a><span class="lineno">  688</span>&#160;<span class="preprocessor">#       include &lt;cstdint&gt;</span></div>
+<div class="line"><a name="l00689"></a><span class="lineno">  689</span>&#160;<span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l00690"></a><span class="lineno">  690</span>&#160; </div>
+<div class="line"><a name="l00691"></a><span class="lineno">  691</span>&#160;<span class="keyword">namespace </span>glm{</div>
+<div class="line"><a name="l00692"></a><span class="lineno">  692</span>&#160;<span class="keyword">namespace </span>detail</div>
+<div class="line"><a name="l00693"></a><span class="lineno">  693</span>&#160;{</div>
+<div class="line"><a name="l00694"></a><span class="lineno">  694</span>&#160;<span class="preprocessor">#       if GLM_HAS_EXTENDED_INTEGER_TYPE</span></div>
+<div class="line"><a name="l00695"></a><span class="lineno">  695</span>&#160;                <span class="keyword">typedef</span> <a class="code" href="a00913.html#ga3999d3e7ff22025c16ddb601e14dfdee">std::uint64_t</a>                                           <a class="code" href="a00864.html#gab630f76c26b50298187f7889104d4b9c">uint64</a>;</div>
+<div class="line"><a name="l00696"></a><span class="lineno">  696</span>&#160;                <span class="keyword">typedef</span> <a class="code" href="a00913.html#ga322a7d7d2c2c68994dc872a33de63c61">std::int64_t</a>                                            <a class="code" href="a00859.html#gaff5189f97f9e842d9636a0f240001b2e">int64</a>;</div>
+<div class="line"><a name="l00697"></a><span class="lineno">  697</span>&#160;<span class="preprocessor">#       elif (defined(__STDC_VERSION__) &amp;&amp; (__STDC_VERSION__ &gt;= 199901L)) // C99 detected, 64 bit types available</span></div>
+<div class="line"><a name="l00698"></a><span class="lineno">  698</span>&#160;                <span class="keyword">typedef</span> <a class="code" href="a00913.html#ga3999d3e7ff22025c16ddb601e14dfdee">uint64_t</a>                                                        <a class="code" href="a00864.html#gab630f76c26b50298187f7889104d4b9c">uint64</a>;</div>
+<div class="line"><a name="l00699"></a><span class="lineno">  699</span>&#160;                <span class="keyword">typedef</span> <a class="code" href="a00913.html#ga322a7d7d2c2c68994dc872a33de63c61">int64_t</a>                                                         <a class="code" href="a00859.html#gaff5189f97f9e842d9636a0f240001b2e">int64</a>;</div>
+<div class="line"><a name="l00700"></a><span class="lineno">  700</span>&#160;<span class="preprocessor">#       elif GLM_COMPILER &amp; GLM_COMPILER_VC</span></div>
+<div class="line"><a name="l00701"></a><span class="lineno">  701</span>&#160;                <span class="keyword">typedef</span> <span class="keywordtype">unsigned</span> __int64                                        <a class="code" href="a00864.html#gab630f76c26b50298187f7889104d4b9c">uint64</a>;</div>
+<div class="line"><a name="l00702"></a><span class="lineno">  702</span>&#160;                <span class="keyword">typedef</span> <span class="keywordtype">signed</span> __int64                                          <a class="code" href="a00859.html#gaff5189f97f9e842d9636a0f240001b2e">int64</a>;</div>
+<div class="line"><a name="l00703"></a><span class="lineno">  703</span>&#160;<span class="preprocessor">#       elif GLM_COMPILER &amp; GLM_COMPILER_GCC</span></div>
+<div class="line"><a name="l00704"></a><span class="lineno">  704</span>&#160;<span class="preprocessor">#               pragma GCC diagnostic ignored &quot;-Wlong-long&quot;</span></div>
+<div class="line"><a name="l00705"></a><span class="lineno">  705</span>&#160;                __extension__ <span class="keyword">typedef</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">long</span> <span class="keywordtype">long</span>        <a class="code" href="a00864.html#gab630f76c26b50298187f7889104d4b9c">uint64</a>;</div>
+<div class="line"><a name="l00706"></a><span class="lineno">  706</span>&#160;                __extension__ <span class="keyword">typedef</span> <span class="keywordtype">signed</span> <span class="keywordtype">long</span> <span class="keywordtype">long</span>          <a class="code" href="a00859.html#gaff5189f97f9e842d9636a0f240001b2e">int64</a>;</div>
+<div class="line"><a name="l00707"></a><span class="lineno">  707</span>&#160;<span class="preprocessor">#       elif (GLM_COMPILER &amp; GLM_COMPILER_CLANG)</span></div>
+<div class="line"><a name="l00708"></a><span class="lineno">  708</span>&#160;<span class="preprocessor">#               pragma clang diagnostic ignored &quot;-Wc++11-long-long&quot;</span></div>
+<div class="line"><a name="l00709"></a><span class="lineno">  709</span>&#160;                <span class="keyword">typedef</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">long</span> <span class="keywordtype">long</span>                                      <a class="code" href="a00864.html#gab630f76c26b50298187f7889104d4b9c">uint64</a>;</div>
+<div class="line"><a name="l00710"></a><span class="lineno">  710</span>&#160;                <span class="keyword">typedef</span> <span class="keywordtype">signed</span> <span class="keywordtype">long</span> <span class="keywordtype">long</span>                                        <a class="code" href="a00859.html#gaff5189f97f9e842d9636a0f240001b2e">int64</a>;</div>
+<div class="line"><a name="l00711"></a><span class="lineno">  711</span>&#160;<span class="preprocessor">#       else//unknown compiler</span></div>
+<div class="line"><a name="l00712"></a><span class="lineno">  712</span>&#160;                <span class="keyword">typedef</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">long</span> <span class="keywordtype">long</span>                                      <a class="code" href="a00864.html#gab630f76c26b50298187f7889104d4b9c">uint64</a>;</div>
+<div class="line"><a name="l00713"></a><span class="lineno">  713</span>&#160;                <span class="keyword">typedef</span> <span class="keywordtype">signed</span> <span class="keywordtype">long</span> <span class="keywordtype">long</span>                                        <a class="code" href="a00859.html#gaff5189f97f9e842d9636a0f240001b2e">int64</a>;</div>
+<div class="line"><a name="l00714"></a><span class="lineno">  714</span>&#160;<span class="preprocessor">#       endif</span></div>
+<div class="line"><a name="l00715"></a><span class="lineno">  715</span>&#160;}<span class="comment">//namespace detail</span></div>
+<div class="line"><a name="l00716"></a><span class="lineno">  716</span>&#160;}<span class="comment">//namespace glm</span></div>
+<div class="line"><a name="l00717"></a><span class="lineno">  717</span>&#160; </div>
+<div class="line"><a name="l00719"></a><span class="lineno">  719</span>&#160;<span class="comment">// make_unsigned</span></div>
+<div class="line"><a name="l00720"></a><span class="lineno">  720</span>&#160; </div>
+<div class="line"><a name="l00721"></a><span class="lineno">  721</span>&#160;<span class="preprocessor">#if GLM_HAS_MAKE_SIGNED</span></div>
+<div class="line"><a name="l00722"></a><span class="lineno">  722</span>&#160;<span class="preprocessor">#       include &lt;type_traits&gt;</span></div>
+<div class="line"><a name="l00723"></a><span class="lineno">  723</span>&#160; </div>
+<div class="line"><a name="l00724"></a><span class="lineno">  724</span>&#160;<span class="keyword">namespace </span>glm{</div>
+<div class="line"><a name="l00725"></a><span class="lineno">  725</span>&#160;<span class="keyword">namespace </span>detail</div>
+<div class="line"><a name="l00726"></a><span class="lineno">  726</span>&#160;{</div>
+<div class="line"><a name="l00727"></a><span class="lineno">  727</span>&#160;        <span class="keyword">using</span> std::make_unsigned;</div>
+<div class="line"><a name="l00728"></a><span class="lineno">  728</span>&#160;}<span class="comment">//namespace detail</span></div>
+<div class="line"><a name="l00729"></a><span class="lineno">  729</span>&#160;}<span class="comment">//namespace glm</span></div>
+<div class="line"><a name="l00730"></a><span class="lineno">  730</span>&#160; </div>
+<div class="line"><a name="l00731"></a><span class="lineno">  731</span>&#160;<span class="preprocessor">#else</span></div>
+<div class="line"><a name="l00732"></a><span class="lineno">  732</span>&#160; </div>
+<div class="line"><a name="l00733"></a><span class="lineno">  733</span>&#160;<span class="keyword">namespace </span>glm{</div>
+<div class="line"><a name="l00734"></a><span class="lineno">  734</span>&#160;<span class="keyword">namespace </span>detail</div>
+<div class="line"><a name="l00735"></a><span class="lineno">  735</span>&#160;{</div>
+<div class="line"><a name="l00736"></a><span class="lineno">  736</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> genType&gt;</div>
+<div class="line"><a name="l00737"></a><span class="lineno">  737</span>&#160;        <span class="keyword">struct </span>make_unsigned</div>
+<div class="line"><a name="l00738"></a><span class="lineno">  738</span>&#160;        {};</div>
+<div class="line"><a name="l00739"></a><span class="lineno">  739</span>&#160; </div>
+<div class="line"><a name="l00740"></a><span class="lineno">  740</span>&#160;        <span class="keyword">template</span>&lt;&gt;</div>
+<div class="line"><a name="l00741"></a><span class="lineno">  741</span>&#160;        <span class="keyword">struct </span>make_unsigned&lt;char&gt;</div>
+<div class="line"><a name="l00742"></a><span class="lineno">  742</span>&#160;        {</div>
+<div class="line"><a name="l00743"></a><span class="lineno">  743</span>&#160;                <span class="keyword">typedef</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">char</span> type;</div>
+<div class="line"><a name="l00744"></a><span class="lineno">  744</span>&#160;        };</div>
+<div class="line"><a name="l00745"></a><span class="lineno">  745</span>&#160; </div>
+<div class="line"><a name="l00746"></a><span class="lineno">  746</span>&#160;        <span class="keyword">template</span>&lt;&gt;</div>
+<div class="line"><a name="l00747"></a><span class="lineno">  747</span>&#160;        <span class="keyword">struct </span>make_unsigned&lt;signed char&gt;</div>
+<div class="line"><a name="l00748"></a><span class="lineno">  748</span>&#160;        {</div>
+<div class="line"><a name="l00749"></a><span class="lineno">  749</span>&#160;                <span class="keyword">typedef</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">char</span> type;</div>
+<div class="line"><a name="l00750"></a><span class="lineno">  750</span>&#160;        };</div>
+<div class="line"><a name="l00751"></a><span class="lineno">  751</span>&#160; </div>
+<div class="line"><a name="l00752"></a><span class="lineno">  752</span>&#160;        <span class="keyword">template</span>&lt;&gt;</div>
+<div class="line"><a name="l00753"></a><span class="lineno">  753</span>&#160;        <span class="keyword">struct </span>make_unsigned&lt;short&gt;</div>
+<div class="line"><a name="l00754"></a><span class="lineno">  754</span>&#160;        {</div>
+<div class="line"><a name="l00755"></a><span class="lineno">  755</span>&#160;                <span class="keyword">typedef</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">short</span> type;</div>
+<div class="line"><a name="l00756"></a><span class="lineno">  756</span>&#160;        };</div>
+<div class="line"><a name="l00757"></a><span class="lineno">  757</span>&#160; </div>
+<div class="line"><a name="l00758"></a><span class="lineno">  758</span>&#160;        <span class="keyword">template</span>&lt;&gt;</div>
+<div class="line"><a name="l00759"></a><span class="lineno">  759</span>&#160;        <span class="keyword">struct </span>make_unsigned&lt;int&gt;</div>
+<div class="line"><a name="l00760"></a><span class="lineno">  760</span>&#160;        {</div>
+<div class="line"><a name="l00761"></a><span class="lineno">  761</span>&#160;                <span class="keyword">typedef</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> type;</div>
+<div class="line"><a name="l00762"></a><span class="lineno">  762</span>&#160;        };</div>
+<div class="line"><a name="l00763"></a><span class="lineno">  763</span>&#160; </div>
+<div class="line"><a name="l00764"></a><span class="lineno">  764</span>&#160;        <span class="keyword">template</span>&lt;&gt;</div>
+<div class="line"><a name="l00765"></a><span class="lineno">  765</span>&#160;        <span class="keyword">struct </span>make_unsigned&lt;long&gt;</div>
+<div class="line"><a name="l00766"></a><span class="lineno">  766</span>&#160;        {</div>
+<div class="line"><a name="l00767"></a><span class="lineno">  767</span>&#160;                <span class="keyword">typedef</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">long</span> type;</div>
+<div class="line"><a name="l00768"></a><span class="lineno">  768</span>&#160;        };</div>
+<div class="line"><a name="l00769"></a><span class="lineno">  769</span>&#160; </div>
+<div class="line"><a name="l00770"></a><span class="lineno">  770</span>&#160;        <span class="keyword">template</span>&lt;&gt;</div>
+<div class="line"><a name="l00771"></a><span class="lineno">  771</span>&#160;        <span class="keyword">struct </span>make_unsigned&lt;<a class="code" href="a00859.html#gaff5189f97f9e842d9636a0f240001b2e">int64</a>&gt;</div>
+<div class="line"><a name="l00772"></a><span class="lineno">  772</span>&#160;        {</div>
+<div class="line"><a name="l00773"></a><span class="lineno">  773</span>&#160;                <span class="keyword">typedef</span> <a class="code" href="a00864.html#gab630f76c26b50298187f7889104d4b9c">uint64</a> type;</div>
+<div class="line"><a name="l00774"></a><span class="lineno">  774</span>&#160;        };</div>
+<div class="line"><a name="l00775"></a><span class="lineno">  775</span>&#160; </div>
+<div class="line"><a name="l00776"></a><span class="lineno">  776</span>&#160;        <span class="keyword">template</span>&lt;&gt;</div>
+<div class="line"><a name="l00777"></a><span class="lineno">  777</span>&#160;        <span class="keyword">struct </span>make_unsigned&lt;unsigned char&gt;</div>
+<div class="line"><a name="l00778"></a><span class="lineno">  778</span>&#160;        {</div>
+<div class="line"><a name="l00779"></a><span class="lineno">  779</span>&#160;                <span class="keyword">typedef</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">char</span> type;</div>
+<div class="line"><a name="l00780"></a><span class="lineno">  780</span>&#160;        };</div>
+<div class="line"><a name="l00781"></a><span class="lineno">  781</span>&#160; </div>
+<div class="line"><a name="l00782"></a><span class="lineno">  782</span>&#160;        <span class="keyword">template</span>&lt;&gt;</div>
+<div class="line"><a name="l00783"></a><span class="lineno">  783</span>&#160;        <span class="keyword">struct </span>make_unsigned&lt;unsigned short&gt;</div>
+<div class="line"><a name="l00784"></a><span class="lineno">  784</span>&#160;        {</div>
+<div class="line"><a name="l00785"></a><span class="lineno">  785</span>&#160;                <span class="keyword">typedef</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">short</span> type;</div>
+<div class="line"><a name="l00786"></a><span class="lineno">  786</span>&#160;        };</div>
+<div class="line"><a name="l00787"></a><span class="lineno">  787</span>&#160; </div>
+<div class="line"><a name="l00788"></a><span class="lineno">  788</span>&#160;        <span class="keyword">template</span>&lt;&gt;</div>
+<div class="line"><a name="l00789"></a><span class="lineno">  789</span>&#160;        <span class="keyword">struct </span>make_unsigned&lt;unsigned int&gt;</div>
+<div class="line"><a name="l00790"></a><span class="lineno">  790</span>&#160;        {</div>
+<div class="line"><a name="l00791"></a><span class="lineno">  791</span>&#160;                <span class="keyword">typedef</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> type;</div>
+<div class="line"><a name="l00792"></a><span class="lineno">  792</span>&#160;        };</div>
+<div class="line"><a name="l00793"></a><span class="lineno">  793</span>&#160; </div>
+<div class="line"><a name="l00794"></a><span class="lineno">  794</span>&#160;        <span class="keyword">template</span>&lt;&gt;</div>
+<div class="line"><a name="l00795"></a><span class="lineno">  795</span>&#160;        <span class="keyword">struct </span>make_unsigned&lt;unsigned long&gt;</div>
+<div class="line"><a name="l00796"></a><span class="lineno">  796</span>&#160;        {</div>
+<div class="line"><a name="l00797"></a><span class="lineno">  797</span>&#160;                <span class="keyword">typedef</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">long</span> type;</div>
+<div class="line"><a name="l00798"></a><span class="lineno">  798</span>&#160;        };</div>
+<div class="line"><a name="l00799"></a><span class="lineno">  799</span>&#160; </div>
+<div class="line"><a name="l00800"></a><span class="lineno">  800</span>&#160;        <span class="keyword">template</span>&lt;&gt;</div>
+<div class="line"><a name="l00801"></a><span class="lineno">  801</span>&#160;        <span class="keyword">struct </span>make_unsigned&lt;<a class="code" href="a00864.html#gab630f76c26b50298187f7889104d4b9c">uint64</a>&gt;</div>
+<div class="line"><a name="l00802"></a><span class="lineno">  802</span>&#160;        {</div>
+<div class="line"><a name="l00803"></a><span class="lineno">  803</span>&#160;                <span class="keyword">typedef</span> <a class="code" href="a00864.html#gab630f76c26b50298187f7889104d4b9c">uint64</a> type;</div>
+<div class="line"><a name="l00804"></a><span class="lineno">  804</span>&#160;        };</div>
+<div class="line"><a name="l00805"></a><span class="lineno">  805</span>&#160;}<span class="comment">//namespace detail</span></div>
+<div class="line"><a name="l00806"></a><span class="lineno">  806</span>&#160;}<span class="comment">//namespace glm</span></div>
+<div class="line"><a name="l00807"></a><span class="lineno">  807</span>&#160;<span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l00808"></a><span class="lineno">  808</span>&#160; </div>
+<div class="line"><a name="l00810"></a><span class="lineno">  810</span>&#160;<span class="comment">// Only use x, y, z, w as vector type components</span></div>
+<div class="line"><a name="l00811"></a><span class="lineno">  811</span>&#160; </div>
+<div class="line"><a name="l00812"></a><span class="lineno">  812</span>&#160;<span class="preprocessor">#ifdef GLM_FORCE_XYZW_ONLY</span></div>
+<div class="line"><a name="l00813"></a><span class="lineno">  813</span>&#160;<span class="preprocessor">#       define GLM_CONFIG_XYZW_ONLY GLM_ENABLE</span></div>
+<div class="line"><a name="l00814"></a><span class="lineno">  814</span>&#160;<span class="preprocessor">#else</span></div>
+<div class="line"><a name="l00815"></a><span class="lineno">  815</span>&#160;<span class="preprocessor">#       define GLM_CONFIG_XYZW_ONLY GLM_DISABLE</span></div>
+<div class="line"><a name="l00816"></a><span class="lineno">  816</span>&#160;<span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l00817"></a><span class="lineno">  817</span>&#160; </div>
+<div class="line"><a name="l00819"></a><span class="lineno">  819</span>&#160;<span class="comment">// Configure the use of defaulted initialized types</span></div>
+<div class="line"><a name="l00820"></a><span class="lineno">  820</span>&#160; </div>
+<div class="line"><a name="l00821"></a><span class="lineno">  821</span>&#160;<span class="preprocessor">#define GLM_CTOR_INIT_DISABLE           0</span></div>
+<div class="line"><a name="l00822"></a><span class="lineno">  822</span>&#160;<span class="preprocessor">#define GLM_CTOR_INITIALIZER_LIST       1</span></div>
+<div class="line"><a name="l00823"></a><span class="lineno">  823</span>&#160;<span class="preprocessor">#define GLM_CTOR_INITIALISATION         2</span></div>
+<div class="line"><a name="l00824"></a><span class="lineno">  824</span>&#160; </div>
+<div class="line"><a name="l00825"></a><span class="lineno">  825</span>&#160;<span class="preprocessor">#if defined(GLM_FORCE_CTOR_INIT) &amp;&amp; GLM_HAS_INITIALIZER_LISTS</span></div>
+<div class="line"><a name="l00826"></a><span class="lineno">  826</span>&#160;<span class="preprocessor">#       define GLM_CONFIG_CTOR_INIT GLM_CTOR_INITIALIZER_LIST</span></div>
+<div class="line"><a name="l00827"></a><span class="lineno">  827</span>&#160;<span class="preprocessor">#elif defined(GLM_FORCE_CTOR_INIT) &amp;&amp; !GLM_HAS_INITIALIZER_LISTS</span></div>
+<div class="line"><a name="l00828"></a><span class="lineno">  828</span>&#160;<span class="preprocessor">#       define GLM_CONFIG_CTOR_INIT GLM_CTOR_INITIALISATION</span></div>
+<div class="line"><a name="l00829"></a><span class="lineno">  829</span>&#160;<span class="preprocessor">#else</span></div>
+<div class="line"><a name="l00830"></a><span class="lineno">  830</span>&#160;<span class="preprocessor">#       define GLM_CONFIG_CTOR_INIT GLM_CTOR_INIT_DISABLE</span></div>
+<div class="line"><a name="l00831"></a><span class="lineno">  831</span>&#160;<span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l00832"></a><span class="lineno">  832</span>&#160; </div>
+<div class="line"><a name="l00834"></a><span class="lineno">  834</span>&#160;<span class="comment">// Use SIMD instruction sets</span></div>
+<div class="line"><a name="l00835"></a><span class="lineno">  835</span>&#160; </div>
+<div class="line"><a name="l00836"></a><span class="lineno">  836</span>&#160;<span class="preprocessor">#if GLM_HAS_ALIGNOF &amp;&amp; (GLM_LANG &amp; GLM_LANG_CXXMS_FLAG) &amp;&amp; (GLM_ARCH &amp; GLM_ARCH_SIMD_BIT)</span></div>
+<div class="line"><a name="l00837"></a><span class="lineno">  837</span>&#160;<span class="preprocessor">#       define GLM_CONFIG_SIMD GLM_ENABLE</span></div>
+<div class="line"><a name="l00838"></a><span class="lineno">  838</span>&#160;<span class="preprocessor">#else</span></div>
+<div class="line"><a name="l00839"></a><span class="lineno">  839</span>&#160;<span class="preprocessor">#       define GLM_CONFIG_SIMD GLM_DISABLE</span></div>
+<div class="line"><a name="l00840"></a><span class="lineno">  840</span>&#160;<span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l00841"></a><span class="lineno">  841</span>&#160; </div>
+<div class="line"><a name="l00843"></a><span class="lineno">  843</span>&#160;<span class="comment">// Configure the use of defaulted function</span></div>
+<div class="line"><a name="l00844"></a><span class="lineno">  844</span>&#160; </div>
+<div class="line"><a name="l00845"></a><span class="lineno">  845</span>&#160;<span class="preprocessor">#if GLM_HAS_DEFAULTED_FUNCTIONS</span></div>
+<div class="line"><a name="l00846"></a><span class="lineno">  846</span>&#160;<span class="preprocessor">#       define GLM_CONFIG_DEFAULTED_FUNCTIONS GLM_ENABLE</span></div>
+<div class="line"><a name="l00847"></a><span class="lineno">  847</span>&#160;<span class="preprocessor">#       define GLM_DEFAULT = default</span></div>
+<div class="line"><a name="l00848"></a><span class="lineno">  848</span>&#160;<span class="preprocessor">#else</span></div>
+<div class="line"><a name="l00849"></a><span class="lineno">  849</span>&#160;<span class="preprocessor">#       define GLM_CONFIG_DEFAULTED_FUNCTIONS GLM_DISABLE</span></div>
+<div class="line"><a name="l00850"></a><span class="lineno">  850</span>&#160;<span class="preprocessor">#       define GLM_DEFAULT</span></div>
+<div class="line"><a name="l00851"></a><span class="lineno">  851</span>&#160;<span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l00852"></a><span class="lineno">  852</span>&#160; </div>
+<div class="line"><a name="l00853"></a><span class="lineno">  853</span>&#160;<span class="preprocessor">#if GLM_CONFIG_CTOR_INIT == GLM_CTOR_INIT_DISABLE &amp;&amp; GLM_CONFIG_DEFAULTED_FUNCTIONS == GLM_ENABLE</span></div>
+<div class="line"><a name="l00854"></a><span class="lineno">  854</span>&#160;<span class="preprocessor">#       define GLM_CONFIG_DEFAULTED_DEFAULT_CTOR GLM_ENABLE</span></div>
+<div class="line"><a name="l00855"></a><span class="lineno">  855</span>&#160;<span class="preprocessor">#       define GLM_DEFAULT_CTOR GLM_DEFAULT</span></div>
+<div class="line"><a name="l00856"></a><span class="lineno">  856</span>&#160;<span class="preprocessor">#else</span></div>
+<div class="line"><a name="l00857"></a><span class="lineno">  857</span>&#160;<span class="preprocessor">#       define GLM_CONFIG_DEFAULTED_DEFAULT_CTOR GLM_DISABLE</span></div>
+<div class="line"><a name="l00858"></a><span class="lineno">  858</span>&#160;<span class="preprocessor">#       define GLM_DEFAULT_CTOR</span></div>
+<div class="line"><a name="l00859"></a><span class="lineno">  859</span>&#160;<span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l00860"></a><span class="lineno">  860</span>&#160; </div>
+<div class="line"><a name="l00862"></a><span class="lineno">  862</span>&#160;<span class="comment">// Configure the use of aligned gentypes</span></div>
+<div class="line"><a name="l00863"></a><span class="lineno">  863</span>&#160; </div>
+<div class="line"><a name="l00864"></a><span class="lineno">  864</span>&#160;<span class="preprocessor">#ifdef GLM_FORCE_ALIGNED // Legacy define</span></div>
+<div class="line"><a name="l00865"></a><span class="lineno">  865</span>&#160;<span class="preprocessor">#       define GLM_FORCE_DEFAULT_ALIGNED_GENTYPES</span></div>
+<div class="line"><a name="l00866"></a><span class="lineno">  866</span>&#160;<span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l00867"></a><span class="lineno">  867</span>&#160; </div>
+<div class="line"><a name="l00868"></a><span class="lineno">  868</span>&#160;<span class="preprocessor">#ifdef GLM_FORCE_DEFAULT_ALIGNED_GENTYPES</span></div>
+<div class="line"><a name="l00869"></a><span class="lineno">  869</span>&#160;<span class="preprocessor">#       define GLM_FORCE_ALIGNED_GENTYPES</span></div>
+<div class="line"><a name="l00870"></a><span class="lineno">  870</span>&#160;<span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l00871"></a><span class="lineno">  871</span>&#160; </div>
+<div class="line"><a name="l00872"></a><span class="lineno">  872</span>&#160;<span class="preprocessor">#if GLM_HAS_ALIGNOF &amp;&amp; (GLM_LANG &amp; GLM_LANG_CXXMS_FLAG) &amp;&amp; (defined(GLM_FORCE_ALIGNED_GENTYPES) || (GLM_CONFIG_SIMD == GLM_ENABLE))</span></div>
+<div class="line"><a name="l00873"></a><span class="lineno">  873</span>&#160;<span class="preprocessor">#       define GLM_CONFIG_ALIGNED_GENTYPES GLM_ENABLE</span></div>
+<div class="line"><a name="l00874"></a><span class="lineno">  874</span>&#160;<span class="preprocessor">#else</span></div>
+<div class="line"><a name="l00875"></a><span class="lineno">  875</span>&#160;<span class="preprocessor">#       define GLM_CONFIG_ALIGNED_GENTYPES GLM_DISABLE</span></div>
+<div class="line"><a name="l00876"></a><span class="lineno">  876</span>&#160;<span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l00877"></a><span class="lineno">  877</span>&#160; </div>
+<div class="line"><a name="l00879"></a><span class="lineno">  879</span>&#160;<span class="comment">// Configure the use of anonymous structure as implementation detail</span></div>
+<div class="line"><a name="l00880"></a><span class="lineno">  880</span>&#160; </div>
+<div class="line"><a name="l00881"></a><span class="lineno">  881</span>&#160;<span class="preprocessor">#if ((GLM_CONFIG_SIMD == GLM_ENABLE) || (GLM_CONFIG_SWIZZLE == GLM_SWIZZLE_OPERATOR) || (GLM_CONFIG_ALIGNED_GENTYPES == GLM_ENABLE))</span></div>
+<div class="line"><a name="l00882"></a><span class="lineno">  882</span>&#160;<span class="preprocessor">#       define GLM_CONFIG_ANONYMOUS_STRUCT GLM_ENABLE</span></div>
+<div class="line"><a name="l00883"></a><span class="lineno">  883</span>&#160;<span class="preprocessor">#else</span></div>
+<div class="line"><a name="l00884"></a><span class="lineno">  884</span>&#160;<span class="preprocessor">#       define GLM_CONFIG_ANONYMOUS_STRUCT GLM_DISABLE</span></div>
+<div class="line"><a name="l00885"></a><span class="lineno">  885</span>&#160;<span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l00886"></a><span class="lineno">  886</span>&#160; </div>
+<div class="line"><a name="l00888"></a><span class="lineno">  888</span>&#160;<span class="comment">// Silent warnings</span></div>
+<div class="line"><a name="l00889"></a><span class="lineno">  889</span>&#160; </div>
+<div class="line"><a name="l00890"></a><span class="lineno">  890</span>&#160;<span class="preprocessor">#ifdef GLM_FORCE_WARNINGS</span></div>
+<div class="line"><a name="l00891"></a><span class="lineno">  891</span>&#160;<span class="preprocessor">#       define GLM_SILENT_WARNINGS GLM_DISABLE</span></div>
+<div class="line"><a name="l00892"></a><span class="lineno">  892</span>&#160;<span class="preprocessor">#else</span></div>
+<div class="line"><a name="l00893"></a><span class="lineno">  893</span>&#160;<span class="preprocessor">#       define GLM_SILENT_WARNINGS GLM_ENABLE</span></div>
+<div class="line"><a name="l00894"></a><span class="lineno">  894</span>&#160;<span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l00895"></a><span class="lineno">  895</span>&#160; </div>
+<div class="line"><a name="l00897"></a><span class="lineno">  897</span>&#160;<span class="comment">// Precision</span></div>
+<div class="line"><a name="l00898"></a><span class="lineno">  898</span>&#160; </div>
+<div class="line"><a name="l00899"></a><span class="lineno">  899</span>&#160;<span class="preprocessor">#define GLM_HIGHP               1</span></div>
+<div class="line"><a name="l00900"></a><span class="lineno">  900</span>&#160;<span class="preprocessor">#define GLM_MEDIUMP             2</span></div>
+<div class="line"><a name="l00901"></a><span class="lineno">  901</span>&#160;<span class="preprocessor">#define GLM_LOWP                3</span></div>
+<div class="line"><a name="l00902"></a><span class="lineno">  902</span>&#160; </div>
+<div class="line"><a name="l00903"></a><span class="lineno">  903</span>&#160;<span class="preprocessor">#if defined(GLM_FORCE_PRECISION_HIGHP_BOOL) || defined(GLM_PRECISION_HIGHP_BOOL)</span></div>
+<div class="line"><a name="l00904"></a><span class="lineno">  904</span>&#160;<span class="preprocessor">#       define GLM_CONFIG_PRECISION_BOOL                GLM_HIGHP</span></div>
+<div class="line"><a name="l00905"></a><span class="lineno">  905</span>&#160;<span class="preprocessor">#elif defined(GLM_FORCE_PRECISION_MEDIUMP_BOOL) || defined(GLM_PRECISION_MEDIUMP_BOOL)</span></div>
+<div class="line"><a name="l00906"></a><span class="lineno">  906</span>&#160;<span class="preprocessor">#       define GLM_CONFIG_PRECISION_BOOL                GLM_MEDIUMP</span></div>
+<div class="line"><a name="l00907"></a><span class="lineno">  907</span>&#160;<span class="preprocessor">#elif defined(GLM_FORCE_PRECISION_LOWP_BOOL) || defined(GLM_PRECISION_LOWP_BOOL)</span></div>
+<div class="line"><a name="l00908"></a><span class="lineno">  908</span>&#160;<span class="preprocessor">#       define GLM_CONFIG_PRECISION_BOOL                GLM_LOWP</span></div>
+<div class="line"><a name="l00909"></a><span class="lineno">  909</span>&#160;<span class="preprocessor">#else</span></div>
+<div class="line"><a name="l00910"></a><span class="lineno">  910</span>&#160;<span class="preprocessor">#       define GLM_CONFIG_PRECISION_BOOL                GLM_HIGHP</span></div>
+<div class="line"><a name="l00911"></a><span class="lineno">  911</span>&#160;<span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l00912"></a><span class="lineno">  912</span>&#160; </div>
+<div class="line"><a name="l00913"></a><span class="lineno">  913</span>&#160;<span class="preprocessor">#if defined(GLM_FORCE_PRECISION_HIGHP_INT) || defined(GLM_PRECISION_HIGHP_INT)</span></div>
+<div class="line"><a name="l00914"></a><span class="lineno">  914</span>&#160;<span class="preprocessor">#       define GLM_CONFIG_PRECISION_INT                 GLM_HIGHP</span></div>
+<div class="line"><a name="l00915"></a><span class="lineno">  915</span>&#160;<span class="preprocessor">#elif defined(GLM_FORCE_PRECISION_MEDIUMP_INT) || defined(GLM_PRECISION_MEDIUMP_INT)</span></div>
+<div class="line"><a name="l00916"></a><span class="lineno">  916</span>&#160;<span class="preprocessor">#       define GLM_CONFIG_PRECISION_INT                 GLM_MEDIUMP</span></div>
+<div class="line"><a name="l00917"></a><span class="lineno">  917</span>&#160;<span class="preprocessor">#elif defined(GLM_FORCE_PRECISION_LOWP_INT) || defined(GLM_PRECISION_LOWP_INT)</span></div>
+<div class="line"><a name="l00918"></a><span class="lineno">  918</span>&#160;<span class="preprocessor">#       define GLM_CONFIG_PRECISION_INT                 GLM_LOWP</span></div>
+<div class="line"><a name="l00919"></a><span class="lineno">  919</span>&#160;<span class="preprocessor">#else</span></div>
+<div class="line"><a name="l00920"></a><span class="lineno">  920</span>&#160;<span class="preprocessor">#       define GLM_CONFIG_PRECISION_INT                 GLM_HIGHP</span></div>
+<div class="line"><a name="l00921"></a><span class="lineno">  921</span>&#160;<span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l00922"></a><span class="lineno">  922</span>&#160; </div>
+<div class="line"><a name="l00923"></a><span class="lineno">  923</span>&#160;<span class="preprocessor">#if defined(GLM_FORCE_PRECISION_HIGHP_UINT) || defined(GLM_PRECISION_HIGHP_UINT)</span></div>
+<div class="line"><a name="l00924"></a><span class="lineno">  924</span>&#160;<span class="preprocessor">#       define GLM_CONFIG_PRECISION_UINT                GLM_HIGHP</span></div>
+<div class="line"><a name="l00925"></a><span class="lineno">  925</span>&#160;<span class="preprocessor">#elif defined(GLM_FORCE_PRECISION_MEDIUMP_UINT) || defined(GLM_PRECISION_MEDIUMP_UINT)</span></div>
+<div class="line"><a name="l00926"></a><span class="lineno">  926</span>&#160;<span class="preprocessor">#       define GLM_CONFIG_PRECISION_UINT                GLM_MEDIUMP</span></div>
+<div class="line"><a name="l00927"></a><span class="lineno">  927</span>&#160;<span class="preprocessor">#elif defined(GLM_FORCE_PRECISION_LOWP_UINT) || defined(GLM_PRECISION_LOWP_UINT)</span></div>
+<div class="line"><a name="l00928"></a><span class="lineno">  928</span>&#160;<span class="preprocessor">#       define GLM_CONFIG_PRECISION_UINT                GLM_LOWP</span></div>
+<div class="line"><a name="l00929"></a><span class="lineno">  929</span>&#160;<span class="preprocessor">#else</span></div>
+<div class="line"><a name="l00930"></a><span class="lineno">  930</span>&#160;<span class="preprocessor">#       define GLM_CONFIG_PRECISION_UINT                GLM_HIGHP</span></div>
+<div class="line"><a name="l00931"></a><span class="lineno">  931</span>&#160;<span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l00932"></a><span class="lineno">  932</span>&#160; </div>
+<div class="line"><a name="l00933"></a><span class="lineno">  933</span>&#160;<span class="preprocessor">#if defined(GLM_FORCE_PRECISION_HIGHP_FLOAT) || defined(GLM_PRECISION_HIGHP_FLOAT)</span></div>
+<div class="line"><a name="l00934"></a><span class="lineno">  934</span>&#160;<span class="preprocessor">#       define GLM_CONFIG_PRECISION_FLOAT               GLM_HIGHP</span></div>
+<div class="line"><a name="l00935"></a><span class="lineno">  935</span>&#160;<span class="preprocessor">#elif defined(GLM_FORCE_PRECISION_MEDIUMP_FLOAT) || defined(GLM_PRECISION_MEDIUMP_FLOAT)</span></div>
+<div class="line"><a name="l00936"></a><span class="lineno">  936</span>&#160;<span class="preprocessor">#       define GLM_CONFIG_PRECISION_FLOAT               GLM_MEDIUMP</span></div>
+<div class="line"><a name="l00937"></a><span class="lineno">  937</span>&#160;<span class="preprocessor">#elif defined(GLM_FORCE_PRECISION_LOWP_FLOAT) || defined(GLM_PRECISION_LOWP_FLOAT)</span></div>
+<div class="line"><a name="l00938"></a><span class="lineno">  938</span>&#160;<span class="preprocessor">#       define GLM_CONFIG_PRECISION_FLOAT               GLM_LOWP</span></div>
+<div class="line"><a name="l00939"></a><span class="lineno">  939</span>&#160;<span class="preprocessor">#else</span></div>
+<div class="line"><a name="l00940"></a><span class="lineno">  940</span>&#160;<span class="preprocessor">#       define GLM_CONFIG_PRECISION_FLOAT               GLM_HIGHP</span></div>
+<div class="line"><a name="l00941"></a><span class="lineno">  941</span>&#160;<span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l00942"></a><span class="lineno">  942</span>&#160; </div>
+<div class="line"><a name="l00943"></a><span class="lineno">  943</span>&#160;<span class="preprocessor">#if defined(GLM_FORCE_PRECISION_HIGHP_DOUBLE) || defined(GLM_PRECISION_HIGHP_DOUBLE)</span></div>
+<div class="line"><a name="l00944"></a><span class="lineno">  944</span>&#160;<span class="preprocessor">#       define GLM_CONFIG_PRECISION_DOUBLE              GLM_HIGHP</span></div>
+<div class="line"><a name="l00945"></a><span class="lineno">  945</span>&#160;<span class="preprocessor">#elif defined(GLM_FORCE_PRECISION_MEDIUMP_DOUBLE) || defined(GLM_PRECISION_MEDIUMP_DOUBLE)</span></div>
+<div class="line"><a name="l00946"></a><span class="lineno">  946</span>&#160;<span class="preprocessor">#       define GLM_CONFIG_PRECISION_DOUBLE              GLM_MEDIUMP</span></div>
+<div class="line"><a name="l00947"></a><span class="lineno">  947</span>&#160;<span class="preprocessor">#elif defined(GLM_FORCE_PRECISION_LOWP_DOUBLE) || defined(GLM_PRECISION_LOWP_DOUBLE)</span></div>
+<div class="line"><a name="l00948"></a><span class="lineno">  948</span>&#160;<span class="preprocessor">#       define GLM_CONFIG_PRECISION_DOUBLE              GLM_LOWP</span></div>
+<div class="line"><a name="l00949"></a><span class="lineno">  949</span>&#160;<span class="preprocessor">#else</span></div>
+<div class="line"><a name="l00950"></a><span class="lineno">  950</span>&#160;<span class="preprocessor">#       define GLM_CONFIG_PRECISION_DOUBLE              GLM_HIGHP</span></div>
+<div class="line"><a name="l00951"></a><span class="lineno">  951</span>&#160;<span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l00952"></a><span class="lineno">  952</span>&#160; </div>
+<div class="line"><a name="l00954"></a><span class="lineno">  954</span>&#160;<span class="comment">// Check inclusions of different versions of GLM</span></div>
+<div class="line"><a name="l00955"></a><span class="lineno">  955</span>&#160; </div>
+<div class="line"><a name="l00956"></a><span class="lineno">  956</span>&#160;<span class="preprocessor">#elif ((GLM_SETUP_INCLUDED != GLM_VERSION) &amp;&amp; !defined(GLM_FORCE_IGNORE_VERSION))</span></div>
+<div class="line"><a name="l00957"></a><span class="lineno">  957</span>&#160;<span class="preprocessor">#       error &quot;GLM error: A different version of GLM is already included. Define GLM_FORCE_IGNORE_VERSION before including GLM headers to ignore this error.&quot;</span></div>
+<div class="line"><a name="l00958"></a><span class="lineno">  958</span>&#160;<span class="preprocessor">#elif GLM_SETUP_INCLUDED == GLM_VERSION</span></div>
+<div class="line"><a name="l00959"></a><span class="lineno">  959</span>&#160; </div>
+<div class="line"><a name="l00961"></a><span class="lineno">  961</span>&#160;<span class="comment">// Messages</span></div>
+<div class="line"><a name="l00962"></a><span class="lineno">  962</span>&#160; </div>
+<div class="line"><a name="l00963"></a><span class="lineno">  963</span>&#160;<span class="preprocessor">#if GLM_MESSAGES == GLM_ENABLE &amp;&amp; !defined(GLM_MESSAGE_DISPLAYED)</span></div>
+<div class="line"><a name="l00964"></a><span class="lineno">  964</span>&#160;<span class="preprocessor">#       define GLM_MESSAGE_DISPLAYED</span></div>
+<div class="line"><a name="l00965"></a><span class="lineno">  965</span>&#160;<span class="preprocessor">#               define GLM_STR_HELPER(x) #x</span></div>
+<div class="line"><a name="l00966"></a><span class="lineno">  966</span>&#160;<span class="preprocessor">#               define GLM_STR(x) GLM_STR_HELPER(x)</span></div>
+<div class="line"><a name="l00967"></a><span class="lineno">  967</span>&#160; </div>
+<div class="line"><a name="l00968"></a><span class="lineno">  968</span>&#160;        <span class="comment">// Report GLM version</span></div>
+<div class="line"><a name="l00969"></a><span class="lineno">  969</span>&#160;<span class="preprocessor">#               pragma message (GLM_STR(GLM_VERSION_MESSAGE))</span></div>
+<div class="line"><a name="l00970"></a><span class="lineno">  970</span>&#160; </div>
+<div class="line"><a name="l00971"></a><span class="lineno">  971</span>&#160;        <span class="comment">// Report C++ language</span></div>
+<div class="line"><a name="l00972"></a><span class="lineno">  972</span>&#160;<span class="preprocessor">#       if (GLM_LANG &amp; GLM_LANG_CXX20_FLAG) &amp;&amp; (GLM_LANG &amp; GLM_LANG_EXT)</span></div>
+<div class="line"><a name="l00973"></a><span class="lineno">  973</span>&#160;<span class="preprocessor">#               pragma message(&quot;GLM: C++ 20 with extensions&quot;)</span></div>
+<div class="line"><a name="l00974"></a><span class="lineno">  974</span>&#160;<span class="preprocessor">#       elif (GLM_LANG &amp; GLM_LANG_CXX20_FLAG)</span></div>
+<div class="line"><a name="l00975"></a><span class="lineno">  975</span>&#160;<span class="preprocessor">#               pragma message(&quot;GLM: C++ 2A&quot;)</span></div>
+<div class="line"><a name="l00976"></a><span class="lineno">  976</span>&#160;<span class="preprocessor">#       elif (GLM_LANG &amp; GLM_LANG_CXX17_FLAG) &amp;&amp; (GLM_LANG &amp; GLM_LANG_EXT)</span></div>
+<div class="line"><a name="l00977"></a><span class="lineno">  977</span>&#160;<span class="preprocessor">#               pragma message(&quot;GLM: C++ 17 with extensions&quot;)</span></div>
+<div class="line"><a name="l00978"></a><span class="lineno">  978</span>&#160;<span class="preprocessor">#       elif (GLM_LANG &amp; GLM_LANG_CXX17_FLAG)</span></div>
+<div class="line"><a name="l00979"></a><span class="lineno">  979</span>&#160;<span class="preprocessor">#               pragma message(&quot;GLM: C++ 17&quot;)</span></div>
+<div class="line"><a name="l00980"></a><span class="lineno">  980</span>&#160;<span class="preprocessor">#       elif (GLM_LANG &amp; GLM_LANG_CXX14_FLAG) &amp;&amp; (GLM_LANG &amp; GLM_LANG_EXT)</span></div>
+<div class="line"><a name="l00981"></a><span class="lineno">  981</span>&#160;<span class="preprocessor">#               pragma message(&quot;GLM: C++ 14 with extensions&quot;)</span></div>
+<div class="line"><a name="l00982"></a><span class="lineno">  982</span>&#160;<span class="preprocessor">#       elif (GLM_LANG &amp; GLM_LANG_CXX14_FLAG)</span></div>
+<div class="line"><a name="l00983"></a><span class="lineno">  983</span>&#160;<span class="preprocessor">#               pragma message(&quot;GLM: C++ 14&quot;)</span></div>
+<div class="line"><a name="l00984"></a><span class="lineno">  984</span>&#160;<span class="preprocessor">#       elif (GLM_LANG &amp; GLM_LANG_CXX11_FLAG) &amp;&amp; (GLM_LANG &amp; GLM_LANG_EXT)</span></div>
+<div class="line"><a name="l00985"></a><span class="lineno">  985</span>&#160;<span class="preprocessor">#               pragma message(&quot;GLM: C++ 11 with extensions&quot;)</span></div>
+<div class="line"><a name="l00986"></a><span class="lineno">  986</span>&#160;<span class="preprocessor">#       elif (GLM_LANG &amp; GLM_LANG_CXX11_FLAG)</span></div>
+<div class="line"><a name="l00987"></a><span class="lineno">  987</span>&#160;<span class="preprocessor">#               pragma message(&quot;GLM: C++ 11&quot;)</span></div>
+<div class="line"><a name="l00988"></a><span class="lineno">  988</span>&#160;<span class="preprocessor">#       elif (GLM_LANG &amp; GLM_LANG_CXX0X_FLAG) &amp;&amp; (GLM_LANG &amp; GLM_LANG_EXT)</span></div>
+<div class="line"><a name="l00989"></a><span class="lineno">  989</span>&#160;<span class="preprocessor">#               pragma message(&quot;GLM: C++ 0x with extensions&quot;)</span></div>
+<div class="line"><a name="l00990"></a><span class="lineno">  990</span>&#160;<span class="preprocessor">#       elif (GLM_LANG &amp; GLM_LANG_CXX0X_FLAG)</span></div>
+<div class="line"><a name="l00991"></a><span class="lineno">  991</span>&#160;<span class="preprocessor">#               pragma message(&quot;GLM: C++ 0x&quot;)</span></div>
+<div class="line"><a name="l00992"></a><span class="lineno">  992</span>&#160;<span class="preprocessor">#       elif (GLM_LANG &amp; GLM_LANG_CXX03_FLAG) &amp;&amp; (GLM_LANG &amp; GLM_LANG_EXT)</span></div>
+<div class="line"><a name="l00993"></a><span class="lineno">  993</span>&#160;<span class="preprocessor">#               pragma message(&quot;GLM: C++ 03 with extensions&quot;)</span></div>
+<div class="line"><a name="l00994"></a><span class="lineno">  994</span>&#160;<span class="preprocessor">#       elif (GLM_LANG &amp; GLM_LANG_CXX03_FLAG)</span></div>
+<div class="line"><a name="l00995"></a><span class="lineno">  995</span>&#160;<span class="preprocessor">#               pragma message(&quot;GLM: C++ 03&quot;)</span></div>
+<div class="line"><a name="l00996"></a><span class="lineno">  996</span>&#160;<span class="preprocessor">#       elif (GLM_LANG &amp; GLM_LANG_CXX98_FLAG) &amp;&amp; (GLM_LANG &amp; GLM_LANG_EXT)</span></div>
+<div class="line"><a name="l00997"></a><span class="lineno">  997</span>&#160;<span class="preprocessor">#               pragma message(&quot;GLM: C++ 98 with extensions&quot;)</span></div>
+<div class="line"><a name="l00998"></a><span class="lineno">  998</span>&#160;<span class="preprocessor">#       elif (GLM_LANG &amp; GLM_LANG_CXX98_FLAG)</span></div>
+<div class="line"><a name="l00999"></a><span class="lineno">  999</span>&#160;<span class="preprocessor">#               pragma message(&quot;GLM: C++ 98&quot;)</span></div>
+<div class="line"><a name="l01000"></a><span class="lineno"> 1000</span>&#160;<span class="preprocessor">#       else</span></div>
+<div class="line"><a name="l01001"></a><span class="lineno"> 1001</span>&#160;<span class="preprocessor">#               pragma message(&quot;GLM: C++ language undetected&quot;)</span></div>
+<div class="line"><a name="l01002"></a><span class="lineno"> 1002</span>&#160;<span class="preprocessor">#       endif//GLM_LANG</span></div>
+<div class="line"><a name="l01003"></a><span class="lineno"> 1003</span>&#160; </div>
+<div class="line"><a name="l01004"></a><span class="lineno"> 1004</span>&#160;        <span class="comment">// Report compiler detection</span></div>
+<div class="line"><a name="l01005"></a><span class="lineno"> 1005</span>&#160;<span class="preprocessor">#       if GLM_COMPILER &amp; GLM_COMPILER_CUDA</span></div>
+<div class="line"><a name="l01006"></a><span class="lineno"> 1006</span>&#160;<span class="preprocessor">#               pragma message(&quot;GLM: CUDA compiler detected&quot;)</span></div>
+<div class="line"><a name="l01007"></a><span class="lineno"> 1007</span>&#160;<span class="preprocessor">#       elif GLM_COMPILER &amp; GLM_COMPILER_HIP</span></div>
+<div class="line"><a name="l01008"></a><span class="lineno"> 1008</span>&#160;<span class="preprocessor">#               pragma message(&quot;GLM: HIP compiler detected&quot;)</span></div>
+<div class="line"><a name="l01009"></a><span class="lineno"> 1009</span>&#160;<span class="preprocessor">#       elif GLM_COMPILER &amp; GLM_COMPILER_VC</span></div>
+<div class="line"><a name="l01010"></a><span class="lineno"> 1010</span>&#160;<span class="preprocessor">#               pragma message(&quot;GLM: Visual C++ compiler detected&quot;)</span></div>
+<div class="line"><a name="l01011"></a><span class="lineno"> 1011</span>&#160;<span class="preprocessor">#       elif GLM_COMPILER &amp; GLM_COMPILER_CLANG</span></div>
+<div class="line"><a name="l01012"></a><span class="lineno"> 1012</span>&#160;<span class="preprocessor">#               pragma message(&quot;GLM: Clang compiler detected&quot;)</span></div>
+<div class="line"><a name="l01013"></a><span class="lineno"> 1013</span>&#160;<span class="preprocessor">#       elif GLM_COMPILER &amp; GLM_COMPILER_INTEL</span></div>
+<div class="line"><a name="l01014"></a><span class="lineno"> 1014</span>&#160;<span class="preprocessor">#               pragma message(&quot;GLM: Intel Compiler detected&quot;)</span></div>
+<div class="line"><a name="l01015"></a><span class="lineno"> 1015</span>&#160;<span class="preprocessor">#       elif GLM_COMPILER &amp; GLM_COMPILER_GCC</span></div>
+<div class="line"><a name="l01016"></a><span class="lineno"> 1016</span>&#160;<span class="preprocessor">#               pragma message(&quot;GLM: GCC compiler detected&quot;)</span></div>
+<div class="line"><a name="l01017"></a><span class="lineno"> 1017</span>&#160;<span class="preprocessor">#       else</span></div>
+<div class="line"><a name="l01018"></a><span class="lineno"> 1018</span>&#160;<span class="preprocessor">#               pragma message(&quot;GLM: Compiler not detected&quot;)</span></div>
+<div class="line"><a name="l01019"></a><span class="lineno"> 1019</span>&#160;<span class="preprocessor">#       endif</span></div>
+<div class="line"><a name="l01020"></a><span class="lineno"> 1020</span>&#160; </div>
+<div class="line"><a name="l01021"></a><span class="lineno"> 1021</span>&#160;        <span class="comment">// Report build target</span></div>
+<div class="line"><a name="l01022"></a><span class="lineno"> 1022</span>&#160;<span class="preprocessor">#       if (GLM_ARCH &amp; GLM_ARCH_AVX2_BIT) &amp;&amp; (GLM_MODEL == GLM_MODEL_64)</span></div>
+<div class="line"><a name="l01023"></a><span class="lineno"> 1023</span>&#160;<span class="preprocessor">#               pragma message(&quot;GLM: x86 64 bits with AVX2 instruction set build target&quot;)</span></div>
+<div class="line"><a name="l01024"></a><span class="lineno"> 1024</span>&#160;<span class="preprocessor">#       elif (GLM_ARCH &amp; GLM_ARCH_AVX2_BIT) &amp;&amp; (GLM_MODEL == GLM_MODEL_32)</span></div>
+<div class="line"><a name="l01025"></a><span class="lineno"> 1025</span>&#160;<span class="preprocessor">#               pragma message(&quot;GLM: x86 32 bits with AVX2 instruction set build target&quot;)</span></div>
+<div class="line"><a name="l01026"></a><span class="lineno"> 1026</span>&#160; </div>
+<div class="line"><a name="l01027"></a><span class="lineno"> 1027</span>&#160;<span class="preprocessor">#       elif (GLM_ARCH &amp; GLM_ARCH_AVX_BIT) &amp;&amp; (GLM_MODEL == GLM_MODEL_64)</span></div>
+<div class="line"><a name="l01028"></a><span class="lineno"> 1028</span>&#160;<span class="preprocessor">#               pragma message(&quot;GLM: x86 64 bits with AVX instruction set build target&quot;)</span></div>
+<div class="line"><a name="l01029"></a><span class="lineno"> 1029</span>&#160;<span class="preprocessor">#       elif (GLM_ARCH &amp; GLM_ARCH_AVX_BIT) &amp;&amp; (GLM_MODEL == GLM_MODEL_32)</span></div>
+<div class="line"><a name="l01030"></a><span class="lineno"> 1030</span>&#160;<span class="preprocessor">#               pragma message(&quot;GLM: x86 32 bits with AVX instruction set build target&quot;)</span></div>
+<div class="line"><a name="l01031"></a><span class="lineno"> 1031</span>&#160; </div>
+<div class="line"><a name="l01032"></a><span class="lineno"> 1032</span>&#160;<span class="preprocessor">#       elif (GLM_ARCH &amp; GLM_ARCH_SSE42_BIT) &amp;&amp; (GLM_MODEL == GLM_MODEL_64)</span></div>
+<div class="line"><a name="l01033"></a><span class="lineno"> 1033</span>&#160;<span class="preprocessor">#               pragma message(&quot;GLM: x86 64 bits with SSE4.2 instruction set build target&quot;)</span></div>
+<div class="line"><a name="l01034"></a><span class="lineno"> 1034</span>&#160;<span class="preprocessor">#       elif (GLM_ARCH &amp; GLM_ARCH_SSE42_BIT) &amp;&amp; (GLM_MODEL == GLM_MODEL_32)</span></div>
+<div class="line"><a name="l01035"></a><span class="lineno"> 1035</span>&#160;<span class="preprocessor">#               pragma message(&quot;GLM: x86 32 bits with SSE4.2 instruction set build target&quot;)</span></div>
+<div class="line"><a name="l01036"></a><span class="lineno"> 1036</span>&#160; </div>
+<div class="line"><a name="l01037"></a><span class="lineno"> 1037</span>&#160;<span class="preprocessor">#       elif (GLM_ARCH &amp; GLM_ARCH_SSE41_BIT) &amp;&amp; (GLM_MODEL == GLM_MODEL_64)</span></div>
+<div class="line"><a name="l01038"></a><span class="lineno"> 1038</span>&#160;<span class="preprocessor">#               pragma message(&quot;GLM: x86 64 bits with SSE4.1 instruction set build target&quot;)</span></div>
+<div class="line"><a name="l01039"></a><span class="lineno"> 1039</span>&#160;<span class="preprocessor">#       elif (GLM_ARCH &amp; GLM_ARCH_SSE41_BIT) &amp;&amp; (GLM_MODEL == GLM_MODEL_32)</span></div>
+<div class="line"><a name="l01040"></a><span class="lineno"> 1040</span>&#160;<span class="preprocessor">#               pragma message(&quot;GLM: x86 32 bits with SSE4.1 instruction set build target&quot;)</span></div>
+<div class="line"><a name="l01041"></a><span class="lineno"> 1041</span>&#160; </div>
+<div class="line"><a name="l01042"></a><span class="lineno"> 1042</span>&#160;<span class="preprocessor">#       elif (GLM_ARCH &amp; GLM_ARCH_SSSE3_BIT) &amp;&amp; (GLM_MODEL == GLM_MODEL_64)</span></div>
+<div class="line"><a name="l01043"></a><span class="lineno"> 1043</span>&#160;<span class="preprocessor">#               pragma message(&quot;GLM: x86 64 bits with SSSE3 instruction set build target&quot;)</span></div>
+<div class="line"><a name="l01044"></a><span class="lineno"> 1044</span>&#160;<span class="preprocessor">#       elif (GLM_ARCH &amp; GLM_ARCH_SSSE3_BIT) &amp;&amp; (GLM_MODEL == GLM_MODEL_32)</span></div>
+<div class="line"><a name="l01045"></a><span class="lineno"> 1045</span>&#160;<span class="preprocessor">#               pragma message(&quot;GLM: x86 32 bits with SSSE3 instruction set build target&quot;)</span></div>
+<div class="line"><a name="l01046"></a><span class="lineno"> 1046</span>&#160; </div>
+<div class="line"><a name="l01047"></a><span class="lineno"> 1047</span>&#160;<span class="preprocessor">#       elif (GLM_ARCH &amp; GLM_ARCH_SSE3_BIT) &amp;&amp; (GLM_MODEL == GLM_MODEL_64)</span></div>
+<div class="line"><a name="l01048"></a><span class="lineno"> 1048</span>&#160;<span class="preprocessor">#               pragma message(&quot;GLM: x86 64 bits with SSE3 instruction set build target&quot;)</span></div>
+<div class="line"><a name="l01049"></a><span class="lineno"> 1049</span>&#160;<span class="preprocessor">#       elif (GLM_ARCH &amp; GLM_ARCH_SSE3_BIT) &amp;&amp; (GLM_MODEL == GLM_MODEL_32)</span></div>
+<div class="line"><a name="l01050"></a><span class="lineno"> 1050</span>&#160;<span class="preprocessor">#               pragma message(&quot;GLM: x86 32 bits with SSE3 instruction set build target&quot;)</span></div>
+<div class="line"><a name="l01051"></a><span class="lineno"> 1051</span>&#160; </div>
+<div class="line"><a name="l01052"></a><span class="lineno"> 1052</span>&#160;<span class="preprocessor">#       elif (GLM_ARCH &amp; GLM_ARCH_SSE2_BIT) &amp;&amp; (GLM_MODEL == GLM_MODEL_64)</span></div>
+<div class="line"><a name="l01053"></a><span class="lineno"> 1053</span>&#160;<span class="preprocessor">#               pragma message(&quot;GLM: x86 64 bits with SSE2 instruction set build target&quot;)</span></div>
+<div class="line"><a name="l01054"></a><span class="lineno"> 1054</span>&#160;<span class="preprocessor">#       elif (GLM_ARCH &amp; GLM_ARCH_SSE2_BIT) &amp;&amp; (GLM_MODEL == GLM_MODEL_32)</span></div>
+<div class="line"><a name="l01055"></a><span class="lineno"> 1055</span>&#160;<span class="preprocessor">#               pragma message(&quot;GLM: x86 32 bits with SSE2 instruction set build target&quot;)</span></div>
+<div class="line"><a name="l01056"></a><span class="lineno"> 1056</span>&#160; </div>
+<div class="line"><a name="l01057"></a><span class="lineno"> 1057</span>&#160;<span class="preprocessor">#       elif (GLM_ARCH &amp; GLM_ARCH_X86_BIT) &amp;&amp; (GLM_MODEL == GLM_MODEL_64)</span></div>
+<div class="line"><a name="l01058"></a><span class="lineno"> 1058</span>&#160;<span class="preprocessor">#               pragma message(&quot;GLM: x86 64 bits build target&quot;)</span></div>
+<div class="line"><a name="l01059"></a><span class="lineno"> 1059</span>&#160;<span class="preprocessor">#       elif (GLM_ARCH &amp; GLM_ARCH_X86_BIT) &amp;&amp; (GLM_MODEL == GLM_MODEL_32)</span></div>
+<div class="line"><a name="l01060"></a><span class="lineno"> 1060</span>&#160;<span class="preprocessor">#               pragma message(&quot;GLM: x86 32 bits build target&quot;)</span></div>
+<div class="line"><a name="l01061"></a><span class="lineno"> 1061</span>&#160; </div>
+<div class="line"><a name="l01062"></a><span class="lineno"> 1062</span>&#160;<span class="preprocessor">#       elif (GLM_ARCH &amp; GLM_ARCH_NEON_BIT) &amp;&amp; (GLM_MODEL == GLM_MODEL_64)</span></div>
+<div class="line"><a name="l01063"></a><span class="lineno"> 1063</span>&#160;<span class="preprocessor">#               pragma message(&quot;GLM: ARM 64 bits with Neon instruction set build target&quot;)</span></div>
+<div class="line"><a name="l01064"></a><span class="lineno"> 1064</span>&#160;<span class="preprocessor">#       elif (GLM_ARCH &amp; GLM_ARCH_NEON_BIT) &amp;&amp; (GLM_MODEL == GLM_MODEL_32)</span></div>
+<div class="line"><a name="l01065"></a><span class="lineno"> 1065</span>&#160;<span class="preprocessor">#               pragma message(&quot;GLM: ARM 32 bits with Neon instruction set build target&quot;)</span></div>
+<div class="line"><a name="l01066"></a><span class="lineno"> 1066</span>&#160; </div>
+<div class="line"><a name="l01067"></a><span class="lineno"> 1067</span>&#160;<span class="preprocessor">#       elif (GLM_ARCH &amp; GLM_ARCH_ARM_BIT) &amp;&amp; (GLM_MODEL == GLM_MODEL_64)</span></div>
+<div class="line"><a name="l01068"></a><span class="lineno"> 1068</span>&#160;<span class="preprocessor">#               pragma message(&quot;GLM: ARM 64 bits build target&quot;)</span></div>
+<div class="line"><a name="l01069"></a><span class="lineno"> 1069</span>&#160;<span class="preprocessor">#       elif (GLM_ARCH &amp; GLM_ARCH_ARM_BIT) &amp;&amp; (GLM_MODEL == GLM_MODEL_32)</span></div>
+<div class="line"><a name="l01070"></a><span class="lineno"> 1070</span>&#160;<span class="preprocessor">#               pragma message(&quot;GLM: ARM 32 bits build target&quot;)</span></div>
+<div class="line"><a name="l01071"></a><span class="lineno"> 1071</span>&#160; </div>
+<div class="line"><a name="l01072"></a><span class="lineno"> 1072</span>&#160;<span class="preprocessor">#       elif (GLM_ARCH &amp; GLM_ARCH_MIPS_BIT) &amp;&amp; (GLM_MODEL == GLM_MODEL_64)</span></div>
+<div class="line"><a name="l01073"></a><span class="lineno"> 1073</span>&#160;<span class="preprocessor">#               pragma message(&quot;GLM: MIPS 64 bits build target&quot;)</span></div>
+<div class="line"><a name="l01074"></a><span class="lineno"> 1074</span>&#160;<span class="preprocessor">#       elif (GLM_ARCH &amp; GLM_ARCH_MIPS_BIT) &amp;&amp; (GLM_MODEL == GLM_MODEL_32)</span></div>
+<div class="line"><a name="l01075"></a><span class="lineno"> 1075</span>&#160;<span class="preprocessor">#               pragma message(&quot;GLM: MIPS 32 bits build target&quot;)</span></div>
+<div class="line"><a name="l01076"></a><span class="lineno"> 1076</span>&#160; </div>
+<div class="line"><a name="l01077"></a><span class="lineno"> 1077</span>&#160;<span class="preprocessor">#       elif (GLM_ARCH &amp; GLM_ARCH_PPC_BIT) &amp;&amp; (GLM_MODEL == GLM_MODEL_64)</span></div>
+<div class="line"><a name="l01078"></a><span class="lineno"> 1078</span>&#160;<span class="preprocessor">#               pragma message(&quot;GLM: PowerPC 64 bits build target&quot;)</span></div>
+<div class="line"><a name="l01079"></a><span class="lineno"> 1079</span>&#160;<span class="preprocessor">#       elif (GLM_ARCH &amp; GLM_ARCH_PPC_BIT) &amp;&amp; (GLM_MODEL == GLM_MODEL_32)</span></div>
+<div class="line"><a name="l01080"></a><span class="lineno"> 1080</span>&#160;<span class="preprocessor">#               pragma message(&quot;GLM: PowerPC 32 bits build target&quot;)</span></div>
+<div class="line"><a name="l01081"></a><span class="lineno"> 1081</span>&#160;<span class="preprocessor">#       else</span></div>
+<div class="line"><a name="l01082"></a><span class="lineno"> 1082</span>&#160;<span class="preprocessor">#               pragma message(&quot;GLM: Unknown build target&quot;)</span></div>
+<div class="line"><a name="l01083"></a><span class="lineno"> 1083</span>&#160;<span class="preprocessor">#       endif//GLM_ARCH</span></div>
+<div class="line"><a name="l01084"></a><span class="lineno"> 1084</span>&#160; </div>
+<div class="line"><a name="l01085"></a><span class="lineno"> 1085</span>&#160;        <span class="comment">// Report platform name</span></div>
+<div class="line"><a name="l01086"></a><span class="lineno"> 1086</span>&#160;<span class="preprocessor">#       if(GLM_PLATFORM &amp; GLM_PLATFORM_QNXNTO)</span></div>
+<div class="line"><a name="l01087"></a><span class="lineno"> 1087</span>&#160;<span class="preprocessor">#               pragma message(&quot;GLM: QNX platform detected&quot;)</span></div>
+<div class="line"><a name="l01088"></a><span class="lineno"> 1088</span>&#160;<span class="comment">//#     elif(GLM_PLATFORM &amp; GLM_PLATFORM_IOS)</span></div>
+<div class="line"><a name="l01089"></a><span class="lineno"> 1089</span>&#160;<span class="comment">//#             pragma message(&quot;GLM: iOS platform detected&quot;)</span></div>
+<div class="line"><a name="l01090"></a><span class="lineno"> 1090</span>&#160;<span class="preprocessor">#       elif(GLM_PLATFORM &amp; GLM_PLATFORM_APPLE)</span></div>
+<div class="line"><a name="l01091"></a><span class="lineno"> 1091</span>&#160;<span class="preprocessor">#               pragma message(&quot;GLM: Apple platform detected&quot;)</span></div>
+<div class="line"><a name="l01092"></a><span class="lineno"> 1092</span>&#160;<span class="preprocessor">#       elif(GLM_PLATFORM &amp; GLM_PLATFORM_WINCE)</span></div>
+<div class="line"><a name="l01093"></a><span class="lineno"> 1093</span>&#160;<span class="preprocessor">#               pragma message(&quot;GLM: WinCE platform detected&quot;)</span></div>
+<div class="line"><a name="l01094"></a><span class="lineno"> 1094</span>&#160;<span class="preprocessor">#       elif(GLM_PLATFORM &amp; GLM_PLATFORM_WINDOWS)</span></div>
+<div class="line"><a name="l01095"></a><span class="lineno"> 1095</span>&#160;<span class="preprocessor">#               pragma message(&quot;GLM: Windows platform detected&quot;)</span></div>
+<div class="line"><a name="l01096"></a><span class="lineno"> 1096</span>&#160;<span class="preprocessor">#       elif(GLM_PLATFORM &amp; GLM_PLATFORM_CHROME_NACL)</span></div>
+<div class="line"><a name="l01097"></a><span class="lineno"> 1097</span>&#160;<span class="preprocessor">#               pragma message(&quot;GLM: Native Client detected&quot;)</span></div>
+<div class="line"><a name="l01098"></a><span class="lineno"> 1098</span>&#160;<span class="preprocessor">#       elif(GLM_PLATFORM &amp; GLM_PLATFORM_ANDROID)</span></div>
+<div class="line"><a name="l01099"></a><span class="lineno"> 1099</span>&#160;<span class="preprocessor">#               pragma message(&quot;GLM: Android platform detected&quot;)</span></div>
+<div class="line"><a name="l01100"></a><span class="lineno"> 1100</span>&#160;<span class="preprocessor">#       elif(GLM_PLATFORM &amp; GLM_PLATFORM_LINUX)</span></div>
+<div class="line"><a name="l01101"></a><span class="lineno"> 1101</span>&#160;<span class="preprocessor">#               pragma message(&quot;GLM: Linux platform detected&quot;)</span></div>
+<div class="line"><a name="l01102"></a><span class="lineno"> 1102</span>&#160;<span class="preprocessor">#       elif(GLM_PLATFORM &amp; GLM_PLATFORM_UNIX)</span></div>
+<div class="line"><a name="l01103"></a><span class="lineno"> 1103</span>&#160;<span class="preprocessor">#               pragma message(&quot;GLM: UNIX platform detected&quot;)</span></div>
+<div class="line"><a name="l01104"></a><span class="lineno"> 1104</span>&#160;<span class="preprocessor">#       elif(GLM_PLATFORM &amp; GLM_PLATFORM_UNKNOWN)</span></div>
+<div class="line"><a name="l01105"></a><span class="lineno"> 1105</span>&#160;<span class="preprocessor">#               pragma message(&quot;GLM: platform unknown&quot;)</span></div>
+<div class="line"><a name="l01106"></a><span class="lineno"> 1106</span>&#160;<span class="preprocessor">#       else</span></div>
+<div class="line"><a name="l01107"></a><span class="lineno"> 1107</span>&#160;<span class="preprocessor">#               pragma message(&quot;GLM: platform not detected&quot;)</span></div>
+<div class="line"><a name="l01108"></a><span class="lineno"> 1108</span>&#160;<span class="preprocessor">#       endif</span></div>
+<div class="line"><a name="l01109"></a><span class="lineno"> 1109</span>&#160; </div>
+<div class="line"><a name="l01110"></a><span class="lineno"> 1110</span>&#160;        <span class="comment">// Report whether only xyzw component are used</span></div>
+<div class="line"><a name="l01111"></a><span class="lineno"> 1111</span>&#160;<span class="preprocessor">#       if defined GLM_FORCE_XYZW_ONLY</span></div>
+<div class="line"><a name="l01112"></a><span class="lineno"> 1112</span>&#160;<span class="preprocessor">#               pragma message(&quot;GLM: GLM_FORCE_XYZW_ONLY is defined. Only x, y, z and w component are available in vector type. This define disables swizzle operators and SIMD instruction sets.&quot;)</span></div>
+<div class="line"><a name="l01113"></a><span class="lineno"> 1113</span>&#160;<span class="preprocessor">#       endif</span></div>
+<div class="line"><a name="l01114"></a><span class="lineno"> 1114</span>&#160; </div>
+<div class="line"><a name="l01115"></a><span class="lineno"> 1115</span>&#160;        <span class="comment">// Report swizzle operator support</span></div>
+<div class="line"><a name="l01116"></a><span class="lineno"> 1116</span>&#160;<span class="preprocessor">#       if GLM_CONFIG_SWIZZLE == GLM_SWIZZLE_OPERATOR</span></div>
+<div class="line"><a name="l01117"></a><span class="lineno"> 1117</span>&#160;<span class="preprocessor">#               pragma message(&quot;GLM: GLM_FORCE_SWIZZLE is defined, swizzling operators enabled.&quot;)</span></div>
+<div class="line"><a name="l01118"></a><span class="lineno"> 1118</span>&#160;<span class="preprocessor">#       elif GLM_CONFIG_SWIZZLE == GLM_SWIZZLE_FUNCTION</span></div>
+<div class="line"><a name="l01119"></a><span class="lineno"> 1119</span>&#160;<span class="preprocessor">#               pragma message(&quot;GLM: GLM_FORCE_SWIZZLE is defined, swizzling functions enabled. Enable compiler C++ language extensions to enable swizzle operators.&quot;)</span></div>
+<div class="line"><a name="l01120"></a><span class="lineno"> 1120</span>&#160;<span class="preprocessor">#       else</span></div>
+<div class="line"><a name="l01121"></a><span class="lineno"> 1121</span>&#160;<span class="preprocessor">#               pragma message(&quot;GLM: GLM_FORCE_SWIZZLE is undefined. swizzling functions or operators are disabled.&quot;)</span></div>
+<div class="line"><a name="l01122"></a><span class="lineno"> 1122</span>&#160;<span class="preprocessor">#       endif</span></div>
+<div class="line"><a name="l01123"></a><span class="lineno"> 1123</span>&#160; </div>
+<div class="line"><a name="l01124"></a><span class="lineno"> 1124</span>&#160;        <span class="comment">// Report .length() type</span></div>
+<div class="line"><a name="l01125"></a><span class="lineno"> 1125</span>&#160;<span class="preprocessor">#       if GLM_CONFIG_LENGTH_TYPE == GLM_LENGTH_SIZE_T</span></div>
+<div class="line"><a name="l01126"></a><span class="lineno"> 1126</span>&#160;<span class="preprocessor">#               pragma message(&quot;GLM: GLM_FORCE_SIZE_T_LENGTH is defined. .length() returns a glm::length_t, a typedef of std::size_t.&quot;)</span></div>
+<div class="line"><a name="l01127"></a><span class="lineno"> 1127</span>&#160;<span class="preprocessor">#       else</span></div>
+<div class="line"><a name="l01128"></a><span class="lineno"> 1128</span>&#160;<span class="preprocessor">#               pragma message(&quot;GLM: GLM_FORCE_SIZE_T_LENGTH is undefined. .length() returns a glm::length_t, a typedef of int following GLSL.&quot;)</span></div>
+<div class="line"><a name="l01129"></a><span class="lineno"> 1129</span>&#160;<span class="preprocessor">#       endif</span></div>
+<div class="line"><a name="l01130"></a><span class="lineno"> 1130</span>&#160; </div>
+<div class="line"><a name="l01131"></a><span class="lineno"> 1131</span>&#160;<span class="preprocessor">#       if GLM_CONFIG_UNRESTRICTED_GENTYPE == GLM_ENABLE</span></div>
+<div class="line"><a name="l01132"></a><span class="lineno"> 1132</span>&#160;<span class="preprocessor">#               pragma message(&quot;GLM: GLM_FORCE_UNRESTRICTED_GENTYPE is defined. Removes GLSL restrictions on valid function genTypes.&quot;)</span></div>
+<div class="line"><a name="l01133"></a><span class="lineno"> 1133</span>&#160;<span class="preprocessor">#       else</span></div>
+<div class="line"><a name="l01134"></a><span class="lineno"> 1134</span>&#160;<span class="preprocessor">#               pragma message(&quot;GLM: GLM_FORCE_UNRESTRICTED_GENTYPE is undefined. Follows strictly GLSL on valid function genTypes.&quot;)</span></div>
+<div class="line"><a name="l01135"></a><span class="lineno"> 1135</span>&#160;<span class="preprocessor">#       endif</span></div>
+<div class="line"><a name="l01136"></a><span class="lineno"> 1136</span>&#160; </div>
+<div class="line"><a name="l01137"></a><span class="lineno"> 1137</span>&#160;<span class="preprocessor">#       if GLM_SILENT_WARNINGS == GLM_ENABLE</span></div>
+<div class="line"><a name="l01138"></a><span class="lineno"> 1138</span>&#160;<span class="preprocessor">#               pragma message(&quot;GLM: GLM_FORCE_SILENT_WARNINGS is defined. Ignores C++ warnings from using C++ language extensions.&quot;)</span></div>
+<div class="line"><a name="l01139"></a><span class="lineno"> 1139</span>&#160;<span class="preprocessor">#       else</span></div>
+<div class="line"><a name="l01140"></a><span class="lineno"> 1140</span>&#160;<span class="preprocessor">#               pragma message(&quot;GLM: GLM_FORCE_SILENT_WARNINGS is undefined. Shows C++ warnings from using C++ language extensions.&quot;)</span></div>
+<div class="line"><a name="l01141"></a><span class="lineno"> 1141</span>&#160;<span class="preprocessor">#       endif</span></div>
+<div class="line"><a name="l01142"></a><span class="lineno"> 1142</span>&#160; </div>
+<div class="line"><a name="l01143"></a><span class="lineno"> 1143</span>&#160;<span class="preprocessor">#       ifdef GLM_FORCE_SINGLE_ONLY</span></div>
+<div class="line"><a name="l01144"></a><span class="lineno"> 1144</span>&#160;<span class="preprocessor">#               pragma message(&quot;GLM: GLM_FORCE_SINGLE_ONLY is defined. Using only single precision floating-point types.&quot;)</span></div>
+<div class="line"><a name="l01145"></a><span class="lineno"> 1145</span>&#160;<span class="preprocessor">#       endif</span></div>
+<div class="line"><a name="l01146"></a><span class="lineno"> 1146</span>&#160; </div>
+<div class="line"><a name="l01147"></a><span class="lineno"> 1147</span>&#160;<span class="preprocessor">#       if defined(GLM_FORCE_ALIGNED_GENTYPES) &amp;&amp; (GLM_CONFIG_ALIGNED_GENTYPES == GLM_ENABLE)</span></div>
+<div class="line"><a name="l01148"></a><span class="lineno"> 1148</span>&#160;<span class="preprocessor">#               undef GLM_FORCE_ALIGNED_GENTYPES</span></div>
+<div class="line"><a name="l01149"></a><span class="lineno"> 1149</span>&#160;<span class="preprocessor">#               pragma message(&quot;GLM: GLM_FORCE_ALIGNED_GENTYPES is defined, allowing aligned types. This prevents the use of C++ constexpr.&quot;)</span></div>
+<div class="line"><a name="l01150"></a><span class="lineno"> 1150</span>&#160;<span class="preprocessor">#       elif defined(GLM_FORCE_ALIGNED_GENTYPES) &amp;&amp; (GLM_CONFIG_ALIGNED_GENTYPES == GLM_DISABLE)</span></div>
+<div class="line"><a name="l01151"></a><span class="lineno"> 1151</span>&#160;<span class="preprocessor">#               undef GLM_FORCE_ALIGNED_GENTYPES</span></div>
+<div class="line"><a name="l01152"></a><span class="lineno"> 1152</span>&#160;<span class="preprocessor">#               pragma message(&quot;GLM: GLM_FORCE_ALIGNED_GENTYPES is defined but is disabled. It requires C++11 and language extensions.&quot;)</span></div>
+<div class="line"><a name="l01153"></a><span class="lineno"> 1153</span>&#160;<span class="preprocessor">#       endif</span></div>
+<div class="line"><a name="l01154"></a><span class="lineno"> 1154</span>&#160; </div>
+<div class="line"><a name="l01155"></a><span class="lineno"> 1155</span>&#160;<span class="preprocessor">#       if defined(GLM_FORCE_DEFAULT_ALIGNED_GENTYPES)</span></div>
+<div class="line"><a name="l01156"></a><span class="lineno"> 1156</span>&#160;<span class="preprocessor">#               if GLM_CONFIG_ALIGNED_GENTYPES == GLM_DISABLE</span></div>
+<div class="line"><a name="l01157"></a><span class="lineno"> 1157</span>&#160;<span class="preprocessor">#                       undef GLM_FORCE_DEFAULT_ALIGNED_GENTYPES</span></div>
+<div class="line"><a name="l01158"></a><span class="lineno"> 1158</span>&#160;<span class="preprocessor">#                       pragma message(&quot;GLM: GLM_FORCE_DEFAULT_ALIGNED_GENTYPES is defined but is disabled. It requires C++11 and language extensions.&quot;)</span></div>
+<div class="line"><a name="l01159"></a><span class="lineno"> 1159</span>&#160;<span class="preprocessor">#               elif GLM_CONFIG_ALIGNED_GENTYPES == GLM_ENABLE</span></div>
+<div class="line"><a name="l01160"></a><span class="lineno"> 1160</span>&#160;<span class="preprocessor">#                       pragma message(&quot;GLM: GLM_FORCE_DEFAULT_ALIGNED_GENTYPES is defined. All gentypes (e.g. vec3) will be aligned and padded by default.&quot;)</span></div>
+<div class="line"><a name="l01161"></a><span class="lineno"> 1161</span>&#160;<span class="preprocessor">#               endif</span></div>
+<div class="line"><a name="l01162"></a><span class="lineno"> 1162</span>&#160;<span class="preprocessor">#       endif</span></div>
+<div class="line"><a name="l01163"></a><span class="lineno"> 1163</span>&#160; </div>
+<div class="line"><a name="l01164"></a><span class="lineno"> 1164</span>&#160;<span class="preprocessor">#       if GLM_CONFIG_CLIP_CONTROL &amp; GLM_CLIP_CONTROL_ZO_BIT</span></div>
+<div class="line"><a name="l01165"></a><span class="lineno"> 1165</span>&#160;<span class="preprocessor">#               pragma message(&quot;GLM: GLM_FORCE_DEPTH_ZERO_TO_ONE is defined. Using zero to one depth clip space.&quot;)</span></div>
+<div class="line"><a name="l01166"></a><span class="lineno"> 1166</span>&#160;<span class="preprocessor">#       else</span></div>
+<div class="line"><a name="l01167"></a><span class="lineno"> 1167</span>&#160;<span class="preprocessor">#               pragma message(&quot;GLM: GLM_FORCE_DEPTH_ZERO_TO_ONE is undefined. Using negative one to one depth clip space.&quot;)</span></div>
+<div class="line"><a name="l01168"></a><span class="lineno"> 1168</span>&#160;<span class="preprocessor">#       endif</span></div>
+<div class="line"><a name="l01169"></a><span class="lineno"> 1169</span>&#160; </div>
+<div class="line"><a name="l01170"></a><span class="lineno"> 1170</span>&#160;<span class="preprocessor">#       if GLM_CONFIG_CLIP_CONTROL &amp; GLM_CLIP_CONTROL_LH_BIT</span></div>
+<div class="line"><a name="l01171"></a><span class="lineno"> 1171</span>&#160;<span class="preprocessor">#               pragma message(&quot;GLM: GLM_FORCE_LEFT_HANDED is defined. Using left handed coordinate system.&quot;)</span></div>
+<div class="line"><a name="l01172"></a><span class="lineno"> 1172</span>&#160;<span class="preprocessor">#       else</span></div>
+<div class="line"><a name="l01173"></a><span class="lineno"> 1173</span>&#160;<span class="preprocessor">#               pragma message(&quot;GLM: GLM_FORCE_LEFT_HANDED is undefined. Using right handed coordinate system.&quot;)</span></div>
+<div class="line"><a name="l01174"></a><span class="lineno"> 1174</span>&#160;<span class="preprocessor">#       endif</span></div>
+<div class="line"><a name="l01175"></a><span class="lineno"> 1175</span>&#160;<span class="preprocessor">#endif//GLM_MESSAGES</span></div>
+<div class="line"><a name="l01176"></a><span class="lineno"> 1176</span>&#160; </div>
+<div class="line"><a name="l01177"></a><span class="lineno"> 1177</span>&#160;<span class="preprocessor">#endif//GLM_SETUP_INCLUDED</span></div>
 </div><!-- fragment --></div><!-- contents -->
+<div class="ttc" id="aa00864_html_gab630f76c26b50298187f7889104d4b9c"><div class="ttname"><a href="a00864.html#gab630f76c26b50298187f7889104d4b9c">glm::uint64</a></div><div class="ttdeci">detail::uint64 uint64</div><div class="ttdoc">64 bit unsigned integer type.</div><div class="ttdef"><b>Definition:</b> <a href="a00374_source.html#l00067">scalar_uint_sized.hpp:67</a></div></div>
+<div class="ttc" id="aa00913_html_ga3999d3e7ff22025c16ddb601e14dfdee"><div class="ttname"><a href="a00913.html#ga3999d3e7ff22025c16ddb601e14dfdee">glm::uint64_t</a></div><div class="ttdeci">uint64 uint64_t</div><div class="ttdoc">Default qualifier 64 bit unsigned integer type.</div><div class="ttdef"><b>Definition:</b> <a href="a00521_source.html#l00145">fwd.hpp:145</a></div></div>
+<div class="ttc" id="aa00913_html_ga322a7d7d2c2c68994dc872a33de63c61"><div class="ttname"><a href="a00913.html#ga322a7d7d2c2c68994dc872a33de63c61">glm::int64_t</a></div><div class="ttdeci">int64 int64_t</div><div class="ttdoc">64 bit signed integer type.</div><div class="ttdef"><b>Definition:</b> <a href="a00521_source.html#l00085">fwd.hpp:85</a></div></div>
+<div class="ttc" id="aa00859_html_gaff5189f97f9e842d9636a0f240001b2e"><div class="ttname"><a href="a00859.html#gaff5189f97f9e842d9636a0f240001b2e">glm::int64</a></div><div class="ttdeci">detail::int64 int64</div><div class="ttdoc">64 bit signed integer type.</div><div class="ttdef"><b>Definition:</b> <a href="a00359_source.html#l00067">scalar_int_sized.hpp:67</a></div></div>
 <!-- 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.10
+</a> 1.8.18
 </small></address>
 </body>
 </html>

+ 0 - 152
doc/api/a00033_source.html

@@ -1,152 +0,0 @@
-<!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.10"/>
-<title>0.9.9 API documentation: fast_trigonometry.hpp Source File</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="search/search.css" rel="stylesheet" type="text/css"/>
-<script type="text/javascript" src="search/searchdata.js"></script>
-<script type="text/javascript" src="search/search.js"></script>
-<script type="text/javascript">
-  $(document).ready(function() { init_search(); });
-</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 id="projectlogo"><img alt="Logo" src="logo-mini.png"/></td>
-  <td id="projectalign" style="padding-left: 0.5em;">
-   <div id="projectname">0.9.9 API documentation
-   </div>
-  </td>
- </tr>
- </tbody>
-</table>
-</div>
-<!-- end header part -->
-<!-- Generated by Doxygen 1.8.10 -->
-<script type="text/javascript">
-var searchBox = new SearchBox("searchBox", "search",false,'Search');
-</script>
-  <div id="navrow1" class="tabs">
-    <ul class="tablist">
-      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
-      <li><a href="modules.html"><span>Modules</span></a></li>
-      <li class="current"><a href="files.html"><span>Files</span></a></li>
-      <li>
-        <div id="MSearchBox" class="MSearchBoxInactive">
-        <span class="left">
-          <img id="MSearchSelect" src="search/mag_sel.png"
-               onmouseover="return searchBox.OnSearchSelectShow()"
-               onmouseout="return searchBox.OnSearchSelectHide()"
-               alt=""/>
-          <input type="text" id="MSearchField" value="Search" accesskey="S"
-               onfocus="searchBox.OnSearchFieldFocus(true)" 
-               onblur="searchBox.OnSearchFieldFocus(false)" 
-               onkeyup="searchBox.OnSearchFieldChange(event)"/>
-          </span><span class="right">
-            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
-          </span>
-        </div>
-      </li>
-    </ul>
-  </div>
-  <div id="navrow2" class="tabs2">
-    <ul class="tablist">
-      <li><a href="files.html"><span>File&#160;List</span></a></li>
-    </ul>
-  </div>
-<!-- window showing the filter options -->
-<div id="MSearchSelectWindow"
-     onmouseover="return searchBox.OnSearchSelectShow()"
-     onmouseout="return searchBox.OnSearchSelectHide()"
-     onkeydown="return searchBox.OnSearchSelectKey(event)">
-</div>
-
-<!-- iframe showing the search results (closed by default) -->
-<div id="MSearchResultsWindow">
-<iframe src="javascript:void(0)" frameborder="0" 
-        name="MSearchResults" id="MSearchResults">
-</iframe>
-</div>
-
-<div id="nav-path" class="navpath">
-  <ul>
-<li class="navelem"><a class="el" href="dir_3a581ba30d25676e4b797b1f96d53b45.html">F:</a></li><li class="navelem"><a class="el" href="dir_9e5fe034a00e89334fd5186c3e7db156.html">G-Truc</a></li><li class="navelem"><a class="el" href="dir_d9496f0844b48bc7e53b5af8c99b9ab2.html">Source</a></li><li class="navelem"><a class="el" href="dir_a8bee7be44182a33f3820393ae0b105d.html">G-Truc</a></li><li class="navelem"><a class="el" href="dir_44e5e654415abd9ca6fdeaddaff8565e.html">glm</a></li><li class="navelem"><a class="el" href="dir_cef2d71d502cb69a9252bca2297d9549.html">glm</a></li><li class="navelem"><a class="el" href="dir_f35778ec600a1b9bbc4524e62e226aa2.html">gtx</a></li>  </ul>
-</div>
-</div><!-- top -->
-<div class="header">
-  <div class="headertitle">
-<div class="title">fast_trigonometry.hpp</div>  </div>
-</div><!--header-->
-<div class="contents">
-<a href="a00033.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span>&#160;</div>
-<div class="line"><a name="l00013"></a><span class="lineno">   13</span>&#160;<span class="preprocessor">#pragma once</span></div>
-<div class="line"><a name="l00014"></a><span class="lineno">   14</span>&#160;</div>
-<div class="line"><a name="l00015"></a><span class="lineno">   15</span>&#160;<span class="comment">// Dependency:</span></div>
-<div class="line"><a name="l00016"></a><span class="lineno">   16</span>&#160;<span class="preprocessor">#include &quot;../gtc/constants.hpp&quot;</span></div>
-<div class="line"><a name="l00017"></a><span class="lineno">   17</span>&#160;</div>
-<div class="line"><a name="l00018"></a><span class="lineno">   18</span>&#160;<span class="preprocessor">#if GLM_MESSAGES == GLM_ENABLE &amp;&amp; !defined(GLM_EXT_INCLUDED)</span></div>
-<div class="line"><a name="l00019"></a><span class="lineno">   19</span>&#160;<span class="preprocessor">#       ifndef GLM_ENABLE_EXPERIMENTAL</span></div>
-<div class="line"><a name="l00020"></a><span class="lineno">   20</span>&#160;<span class="preprocessor">#               pragma message(&quot;GLM: GLM_GTX_fast_trigonometry is an experimental extension and may change in the future. Use #define GLM_ENABLE_EXPERIMENTAL before including it, if you really want to use it.&quot;)</span></div>
-<div class="line"><a name="l00021"></a><span class="lineno">   21</span>&#160;<span class="preprocessor">#       else</span></div>
-<div class="line"><a name="l00022"></a><span class="lineno">   22</span>&#160;<span class="preprocessor">#               pragma message(&quot;GLM: GLM_GTX_fast_trigonometry extension included&quot;)</span></div>
-<div class="line"><a name="l00023"></a><span class="lineno">   23</span>&#160;<span class="preprocessor">#       endif</span></div>
-<div class="line"><a name="l00024"></a><span class="lineno">   24</span>&#160;<span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00025"></a><span class="lineno">   25</span>&#160;</div>
-<div class="line"><a name="l00026"></a><span class="lineno">   26</span>&#160;<span class="keyword">namespace </span><a class="code" href="a00236.html">glm</a></div>
-<div class="line"><a name="l00027"></a><span class="lineno">   27</span>&#160;{</div>
-<div class="line"><a name="l00030"></a><span class="lineno">   30</span>&#160;</div>
-<div class="line"><a name="l00033"></a><span class="lineno">   33</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T&gt;</div>
-<div class="line"><a name="l00034"></a><span class="lineno">   34</span>&#160;        GLM_FUNC_DECL T <a class="code" href="a00325.html#ga069527c6dbd64f53435b8ebc4878b473">wrapAngle</a>(T <a class="code" href="a00257.html#ga8aa248b31d5ade470c87304df5eb7bd8">angle</a>);</div>
-<div class="line"><a name="l00035"></a><span class="lineno">   35</span>&#160;</div>
-<div class="line"><a name="l00038"></a><span class="lineno">   38</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T&gt;</div>
-<div class="line"><a name="l00039"></a><span class="lineno">   39</span>&#160;        GLM_FUNC_DECL T <a class="code" href="a00325.html#ga0aab3257bb3b628d10a1e0483e2c6915">fastSin</a>(T <a class="code" href="a00257.html#ga8aa248b31d5ade470c87304df5eb7bd8">angle</a>);</div>
-<div class="line"><a name="l00040"></a><span class="lineno">   40</span>&#160;</div>
-<div class="line"><a name="l00043"></a><span class="lineno">   43</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T&gt;</div>
-<div class="line"><a name="l00044"></a><span class="lineno">   44</span>&#160;        GLM_FUNC_DECL T <a class="code" href="a00325.html#gab34c8b45c23c0165a64dcecfcc3b302a">fastCos</a>(T <a class="code" href="a00257.html#ga8aa248b31d5ade470c87304df5eb7bd8">angle</a>);</div>
-<div class="line"><a name="l00045"></a><span class="lineno">   45</span>&#160;</div>
-<div class="line"><a name="l00049"></a><span class="lineno">   49</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T&gt;</div>
-<div class="line"><a name="l00050"></a><span class="lineno">   50</span>&#160;        GLM_FUNC_DECL T <a class="code" href="a00325.html#gaf29b9c1101a10007b4f79ee89df27ba2">fastTan</a>(T <a class="code" href="a00257.html#ga8aa248b31d5ade470c87304df5eb7bd8">angle</a>);</div>
-<div class="line"><a name="l00051"></a><span class="lineno">   51</span>&#160;</div>
-<div class="line"><a name="l00055"></a><span class="lineno">   55</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T&gt;</div>
-<div class="line"><a name="l00056"></a><span class="lineno">   56</span>&#160;        GLM_FUNC_DECL T <a class="code" href="a00325.html#ga562cb62c51fbfe7fac7db0bce706b81f">fastAsin</a>(T <a class="code" href="a00257.html#ga8aa248b31d5ade470c87304df5eb7bd8">angle</a>);</div>
-<div class="line"><a name="l00057"></a><span class="lineno">   57</span>&#160;</div>
-<div class="line"><a name="l00061"></a><span class="lineno">   61</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T&gt;</div>
-<div class="line"><a name="l00062"></a><span class="lineno">   62</span>&#160;        GLM_FUNC_DECL T <a class="code" href="a00325.html#ga9721d63356e5d94fdc4b393a426ab26b">fastAcos</a>(T <a class="code" href="a00257.html#ga8aa248b31d5ade470c87304df5eb7bd8">angle</a>);</div>
-<div class="line"><a name="l00063"></a><span class="lineno">   63</span>&#160;</div>
-<div class="line"><a name="l00067"></a><span class="lineno">   67</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T&gt;</div>
-<div class="line"><a name="l00068"></a><span class="lineno">   68</span>&#160;        GLM_FUNC_DECL T <a class="code" href="a00325.html#gae25de86a968490ff56856fa425ec9d30">fastAtan</a>(T y, T x);</div>
-<div class="line"><a name="l00069"></a><span class="lineno">   69</span>&#160;</div>
-<div class="line"><a name="l00073"></a><span class="lineno">   73</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T&gt;</div>
-<div class="line"><a name="l00074"></a><span class="lineno">   74</span>&#160;        GLM_FUNC_DECL T <a class="code" href="a00325.html#gae25de86a968490ff56856fa425ec9d30">fastAtan</a>(T <a class="code" href="a00257.html#ga8aa248b31d5ade470c87304df5eb7bd8">angle</a>);</div>
-<div class="line"><a name="l00075"></a><span class="lineno">   75</span>&#160;</div>
-<div class="line"><a name="l00077"></a><span class="lineno">   77</span>&#160;}<span class="comment">//namespace glm</span></div>
-<div class="line"><a name="l00078"></a><span class="lineno">   78</span>&#160;</div>
-<div class="line"><a name="l00079"></a><span class="lineno">   79</span>&#160;<span class="preprocessor">#include &quot;fast_trigonometry.inl&quot;</span></div>
-<div class="ttc" id="a00325_html_ga562cb62c51fbfe7fac7db0bce706b81f"><div class="ttname"><a href="a00325.html#ga562cb62c51fbfe7fac7db0bce706b81f">glm::fastAsin</a></div><div class="ttdeci">GLM_FUNC_DECL T fastAsin(T angle)</div><div class="ttdoc">Faster than the common asin function but less accurate. </div></div>
-<div class="ttc" id="a00257_html_ga8aa248b31d5ade470c87304df5eb7bd8"><div class="ttname"><a href="a00257.html#ga8aa248b31d5ade470c87304df5eb7bd8">glm::angle</a></div><div class="ttdeci">GLM_FUNC_DECL T angle(qua&lt; T, Q &gt; const &amp;x)</div><div class="ttdoc">Returns the quaternion rotation angle. </div></div>
-<div class="ttc" id="a00325_html_ga9721d63356e5d94fdc4b393a426ab26b"><div class="ttname"><a href="a00325.html#ga9721d63356e5d94fdc4b393a426ab26b">glm::fastAcos</a></div><div class="ttdeci">GLM_FUNC_DECL T fastAcos(T angle)</div><div class="ttdoc">Faster than the common acos function but less accurate. </div></div>
-<div class="ttc" id="a00325_html_gaf29b9c1101a10007b4f79ee89df27ba2"><div class="ttname"><a href="a00325.html#gaf29b9c1101a10007b4f79ee89df27ba2">glm::fastTan</a></div><div class="ttdeci">GLM_FUNC_DECL T fastTan(T angle)</div><div class="ttdoc">Faster than the common tan function but less accurate. </div></div>
-<div class="ttc" id="a00325_html_gab34c8b45c23c0165a64dcecfcc3b302a"><div class="ttname"><a href="a00325.html#gab34c8b45c23c0165a64dcecfcc3b302a">glm::fastCos</a></div><div class="ttdeci">GLM_FUNC_DECL T fastCos(T angle)</div><div class="ttdoc">Faster than the common cos function but less accurate. </div></div>
-<div class="ttc" id="a00325_html_gae25de86a968490ff56856fa425ec9d30"><div class="ttname"><a href="a00325.html#gae25de86a968490ff56856fa425ec9d30">glm::fastAtan</a></div><div class="ttdeci">GLM_FUNC_DECL T fastAtan(T angle)</div><div class="ttdoc">Faster than the common atan function but less accurate. </div></div>
-<div class="ttc" id="a00325_html_ga0aab3257bb3b628d10a1e0483e2c6915"><div class="ttname"><a href="a00325.html#ga0aab3257bb3b628d10a1e0483e2c6915">glm::fastSin</a></div><div class="ttdeci">GLM_FUNC_DECL T fastSin(T angle)</div><div class="ttdoc">Faster than the common sin function but less accurate. </div></div>
-<div class="ttc" id="a00325_html_ga069527c6dbd64f53435b8ebc4878b473"><div class="ttname"><a href="a00325.html#ga069527c6dbd64f53435b8ebc4878b473">glm::wrapAngle</a></div><div class="ttdeci">GLM_FUNC_DECL T wrapAngle(T angle)</div><div class="ttdoc">Wrap an angle to [0 2pi[ From GLM_GTX_fast_trigonometry extension. </div></div>
-<div class="ttc" id="a00236_html"><div class="ttname"><a href="a00236.html">glm</a></div><div class="ttdef"><b>Definition:</b> <a href="a00015_source.html#l00020">common.hpp:20</a></div></div>
-</div><!-- fragment --></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.10
-</small></address>
-</body>
-</html>

+ 0 - 136
doc/api/a00034_source.html

@@ -1,136 +0,0 @@
-<!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.10"/>
-<title>0.9.9 API documentation: functions.hpp Source File</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="search/search.css" rel="stylesheet" type="text/css"/>
-<script type="text/javascript" src="search/searchdata.js"></script>
-<script type="text/javascript" src="search/search.js"></script>
-<script type="text/javascript">
-  $(document).ready(function() { init_search(); });
-</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 id="projectlogo"><img alt="Logo" src="logo-mini.png"/></td>
-  <td id="projectalign" style="padding-left: 0.5em;">
-   <div id="projectname">0.9.9 API documentation
-   </div>
-  </td>
- </tr>
- </tbody>
-</table>
-</div>
-<!-- end header part -->
-<!-- Generated by Doxygen 1.8.10 -->
-<script type="text/javascript">
-var searchBox = new SearchBox("searchBox", "search",false,'Search');
-</script>
-  <div id="navrow1" class="tabs">
-    <ul class="tablist">
-      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
-      <li><a href="modules.html"><span>Modules</span></a></li>
-      <li class="current"><a href="files.html"><span>Files</span></a></li>
-      <li>
-        <div id="MSearchBox" class="MSearchBoxInactive">
-        <span class="left">
-          <img id="MSearchSelect" src="search/mag_sel.png"
-               onmouseover="return searchBox.OnSearchSelectShow()"
-               onmouseout="return searchBox.OnSearchSelectHide()"
-               alt=""/>
-          <input type="text" id="MSearchField" value="Search" accesskey="S"
-               onfocus="searchBox.OnSearchFieldFocus(true)" 
-               onblur="searchBox.OnSearchFieldFocus(false)" 
-               onkeyup="searchBox.OnSearchFieldChange(event)"/>
-          </span><span class="right">
-            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
-          </span>
-        </div>
-      </li>
-    </ul>
-  </div>
-  <div id="navrow2" class="tabs2">
-    <ul class="tablist">
-      <li><a href="files.html"><span>File&#160;List</span></a></li>
-    </ul>
-  </div>
-<!-- window showing the filter options -->
-<div id="MSearchSelectWindow"
-     onmouseover="return searchBox.OnSearchSelectShow()"
-     onmouseout="return searchBox.OnSearchSelectHide()"
-     onkeydown="return searchBox.OnSearchSelectKey(event)">
-</div>
-
-<!-- iframe showing the search results (closed by default) -->
-<div id="MSearchResultsWindow">
-<iframe src="javascript:void(0)" frameborder="0" 
-        name="MSearchResults" id="MSearchResults">
-</iframe>
-</div>
-
-<div id="nav-path" class="navpath">
-  <ul>
-<li class="navelem"><a class="el" href="dir_3a581ba30d25676e4b797b1f96d53b45.html">F:</a></li><li class="navelem"><a class="el" href="dir_9e5fe034a00e89334fd5186c3e7db156.html">G-Truc</a></li><li class="navelem"><a class="el" href="dir_d9496f0844b48bc7e53b5af8c99b9ab2.html">Source</a></li><li class="navelem"><a class="el" href="dir_a8bee7be44182a33f3820393ae0b105d.html">G-Truc</a></li><li class="navelem"><a class="el" href="dir_44e5e654415abd9ca6fdeaddaff8565e.html">glm</a></li><li class="navelem"><a class="el" href="dir_cef2d71d502cb69a9252bca2297d9549.html">glm</a></li><li class="navelem"><a class="el" href="dir_f35778ec600a1b9bbc4524e62e226aa2.html">gtx</a></li>  </ul>
-</div>
-</div><!-- top -->
-<div class="header">
-  <div class="headertitle">
-<div class="title">functions.hpp</div>  </div>
-</div><!--header-->
-<div class="contents">
-<a href="a00034.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span>&#160;</div>
-<div class="line"><a name="l00014"></a><span class="lineno">   14</span>&#160;<span class="preprocessor">#pragma once</span></div>
-<div class="line"><a name="l00015"></a><span class="lineno">   15</span>&#160;</div>
-<div class="line"><a name="l00016"></a><span class="lineno">   16</span>&#160;<span class="comment">// Dependencies</span></div>
-<div class="line"><a name="l00017"></a><span class="lineno">   17</span>&#160;<span class="preprocessor">#include &quot;../detail/setup.hpp&quot;</span></div>
-<div class="line"><a name="l00018"></a><span class="lineno">   18</span>&#160;<span class="preprocessor">#include &quot;../detail/qualifier.hpp&quot;</span></div>
-<div class="line"><a name="l00019"></a><span class="lineno">   19</span>&#160;<span class="preprocessor">#include &quot;../detail/type_vec2.hpp&quot;</span></div>
-<div class="line"><a name="l00020"></a><span class="lineno">   20</span>&#160;</div>
-<div class="line"><a name="l00021"></a><span class="lineno">   21</span>&#160;<span class="preprocessor">#if GLM_MESSAGES == GLM_ENABLE &amp;&amp; !defined(GLM_EXT_INCLUDED)</span></div>
-<div class="line"><a name="l00022"></a><span class="lineno">   22</span>&#160;<span class="preprocessor">#       ifndef GLM_ENABLE_EXPERIMENTAL</span></div>
-<div class="line"><a name="l00023"></a><span class="lineno">   23</span>&#160;<span class="preprocessor">#               pragma message(&quot;GLM: GLM_GTX_functions is an experimental extension and may change in the future. Use #define GLM_ENABLE_EXPERIMENTAL before including it, if you really want to use it.&quot;)</span></div>
-<div class="line"><a name="l00024"></a><span class="lineno">   24</span>&#160;<span class="preprocessor">#       else</span></div>
-<div class="line"><a name="l00025"></a><span class="lineno">   25</span>&#160;<span class="preprocessor">#               pragma message(&quot;GLM: GLM_GTX_functions extension included&quot;)</span></div>
-<div class="line"><a name="l00026"></a><span class="lineno">   26</span>&#160;<span class="preprocessor">#       endif</span></div>
-<div class="line"><a name="l00027"></a><span class="lineno">   27</span>&#160;<span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00028"></a><span class="lineno">   28</span>&#160;</div>
-<div class="line"><a name="l00029"></a><span class="lineno">   29</span>&#160;<span class="keyword">namespace </span><a class="code" href="a00236.html">glm</a></div>
-<div class="line"><a name="l00030"></a><span class="lineno">   30</span>&#160;{</div>
-<div class="line"><a name="l00033"></a><span class="lineno">   33</span>&#160;</div>
-<div class="line"><a name="l00037"></a><span class="lineno">   37</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T&gt;</div>
-<div class="line"><a name="l00038"></a><span class="lineno">   38</span>&#160;        GLM_FUNC_DECL T <a class="code" href="a00326.html#gad19ec8754a83c0b9a8dc16b7e60705ab">gauss</a>(</div>
-<div class="line"><a name="l00039"></a><span class="lineno">   39</span>&#160;                T x,</div>
-<div class="line"><a name="l00040"></a><span class="lineno">   40</span>&#160;                T ExpectedValue,</div>
-<div class="line"><a name="l00041"></a><span class="lineno">   41</span>&#160;                T StandardDeviation);</div>
-<div class="line"><a name="l00042"></a><span class="lineno">   42</span>&#160;</div>
-<div class="line"><a name="l00046"></a><span class="lineno">   46</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T, qualifier Q&gt;</div>
-<div class="line"><a name="l00047"></a><span class="lineno">   47</span>&#160;        GLM_FUNC_DECL T <a class="code" href="a00326.html#gad19ec8754a83c0b9a8dc16b7e60705ab">gauss</a>(</div>
-<div class="line"><a name="l00048"></a><span class="lineno">   48</span>&#160;                vec&lt;2, T, Q&gt; <span class="keyword">const</span>&amp; Coord,</div>
-<div class="line"><a name="l00049"></a><span class="lineno">   49</span>&#160;                vec&lt;2, T, Q&gt; <span class="keyword">const</span>&amp; ExpectedValue,</div>
-<div class="line"><a name="l00050"></a><span class="lineno">   50</span>&#160;                vec&lt;2, T, Q&gt; <span class="keyword">const</span>&amp; StandardDeviation);</div>
-<div class="line"><a name="l00051"></a><span class="lineno">   51</span>&#160;</div>
-<div class="line"><a name="l00053"></a><span class="lineno">   53</span>&#160;}<span class="comment">//namespace glm</span></div>
-<div class="line"><a name="l00054"></a><span class="lineno">   54</span>&#160;</div>
-<div class="line"><a name="l00055"></a><span class="lineno">   55</span>&#160;<span class="preprocessor">#include &quot;functions.inl&quot;</span></div>
-<div class="line"><a name="l00056"></a><span class="lineno">   56</span>&#160;</div>
-<div class="ttc" id="a00326_html_gad19ec8754a83c0b9a8dc16b7e60705ab"><div class="ttname"><a href="a00326.html#gad19ec8754a83c0b9a8dc16b7e60705ab">glm::gauss</a></div><div class="ttdeci">GLM_FUNC_DECL T gauss(vec&lt; 2, T, Q &gt; const &amp;Coord, vec&lt; 2, T, Q &gt; const &amp;ExpectedValue, vec&lt; 2, T, Q &gt; const &amp;StandardDeviation)</div><div class="ttdoc">2D gauss function </div></div>
-<div class="ttc" id="a00236_html"><div class="ttname"><a href="a00236.html">glm</a></div><div class="ttdef"><b>Definition:</b> <a href="a00015_source.html#l00020">common.hpp:20</a></div></div>
-</div><!-- fragment --></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.10
-</small></address>
-</body>
-</html>

+ 89 - 1483
doc/api/a00035_source.html

@@ -1,19 +1,17 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://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.10"/>
-<title>0.9.9 API documentation: fwd.hpp Source File</title>
+<meta name="generator" content="Doxygen 1.8.18"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>1.0.0 API documentation: type_float.hpp Source File</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="search/search.css" rel="stylesheet" type="text/css"/>
 <script type="text/javascript" src="search/searchdata.js"></script>
 <script type="text/javascript" src="search/search.js"></script>
-<script type="text/javascript">
-  $(document).ready(function() { init_search(); });
-</script>
 <link href="doxygen.css" rel="stylesheet" type="text/css" />
 </head>
 <body>
@@ -24,7 +22,7 @@
  <tr style="height: 56px;">
   <td id="projectlogo"><img alt="Logo" src="logo-mini.png"/></td>
   <td id="projectalign" style="padding-left: 0.5em;">
-   <div id="projectname">0.9.9 API documentation
+   <div id="projectname">1.0.0 API documentation
    </div>
   </td>
  </tr>
@@ -32,38 +30,22 @@
 </table>
 </div>
 <!-- end header part -->
-<!-- Generated by Doxygen 1.8.10 -->
+<!-- Generated by Doxygen 1.8.18 -->
 <script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
 var searchBox = new SearchBox("searchBox", "search",false,'Search');
+/* @license-end */
 </script>
-  <div id="navrow1" class="tabs">
-    <ul class="tablist">
-      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
-      <li><a href="modules.html"><span>Modules</span></a></li>
-      <li class="current"><a href="files.html"><span>Files</span></a></li>
-      <li>
-        <div id="MSearchBox" class="MSearchBoxInactive">
-        <span class="left">
-          <img id="MSearchSelect" src="search/mag_sel.png"
-               onmouseover="return searchBox.OnSearchSelectShow()"
-               onmouseout="return searchBox.OnSearchSelectHide()"
-               alt=""/>
-          <input type="text" id="MSearchField" value="Search" accesskey="S"
-               onfocus="searchBox.OnSearchFieldFocus(true)" 
-               onblur="searchBox.OnSearchFieldFocus(false)" 
-               onkeyup="searchBox.OnSearchFieldChange(event)"/>
-          </span><span class="right">
-            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
-          </span>
-        </div>
-      </li>
-    </ul>
-  </div>
-  <div id="navrow2" class="tabs2">
-    <ul class="tablist">
-      <li><a href="files.html"><span>File&#160;List</span></a></li>
-    </ul>
-  </div>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
 <!-- window showing the filter options -->
 <div id="MSearchSelectWindow"
      onmouseover="return searchBox.OnSearchSelectShow()"
@@ -80,1465 +62,89 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 
 <div id="nav-path" class="navpath">
   <ul>
-<li class="navelem"><a class="el" href="dir_3a581ba30d25676e4b797b1f96d53b45.html">F:</a></li><li class="navelem"><a class="el" href="dir_9e5fe034a00e89334fd5186c3e7db156.html">G-Truc</a></li><li class="navelem"><a class="el" href="dir_d9496f0844b48bc7e53b5af8c99b9ab2.html">Source</a></li><li class="navelem"><a class="el" href="dir_a8bee7be44182a33f3820393ae0b105d.html">G-Truc</a></li><li class="navelem"><a class="el" href="dir_44e5e654415abd9ca6fdeaddaff8565e.html">glm</a></li><li class="navelem"><a class="el" href="dir_cef2d71d502cb69a9252bca2297d9549.html">glm</a></li>  </ul>
+<li class="navelem"><a class="el" href="dir_885cc87fac2d91e269af0a5a959fa5f6.html">E:</a></li><li class="navelem"><a class="el" href="dir_63ed049134a778d525e06b63afc2c979.html">Github</a></li><li class="navelem"><a class="el" href="dir_c98a9ac98258ab9f831b188d66361a70.html">g-truc</a></li><li class="navelem"><a class="el" href="dir_50f12b6ceb23d7f6adfb377a1ae8b006.html">glm</a></li><li class="navelem"><a class="el" href="dir_fca33f1b5115d46f42c670590789c0d2.html">glm</a></li><li class="navelem"><a class="el" href="dir_382f4fd018b81be8753cb53c0a41a09a.html">detail</a></li>  </ul>
 </div>
 </div><!-- top -->
 <div class="header">
   <div class="headertitle">
-<div class="title">fwd.hpp</div>  </div>
+<div class="title">type_float.hpp</div>  </div>
 </div><!--header-->
 <div class="contents">
 <div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span>&#160;<span class="preprocessor">#pragma once</span></div>
-<div class="line"><a name="l00002"></a><span class="lineno">    2</span>&#160;</div>
-<div class="line"><a name="l00003"></a><span class="lineno">    3</span>&#160;<span class="preprocessor">#include &quot;detail/qualifier.hpp&quot;</span></div>
-<div class="line"><a name="l00004"></a><span class="lineno">    4</span>&#160;</div>
-<div class="line"><a name="l00005"></a><span class="lineno">    5</span>&#160;<span class="keyword">namespace </span><a class="code" href="a00236.html">glm</a></div>
-<div class="line"><a name="l00006"></a><span class="lineno">    6</span>&#160;{</div>
-<div class="line"><a name="l00007"></a><span class="lineno">    7</span>&#160;<span class="preprocessor">#if GLM_HAS_EXTENDED_INTEGER_TYPE</span></div>
-<div class="line"><a name="l00008"></a><span class="lineno">    8</span>&#160;        <span class="keyword">typedef</span> <a class="code" href="a00304.html#ga4bf09d8838a86866b39ee6e109341645">std::int8_t</a>                             int8;</div>
-<div class="line"><a name="l00009"></a><span class="lineno">    9</span>&#160;        <span class="keyword">typedef</span> <a class="code" href="a00304.html#gae8f5e3e964ca2ae240adc2c0d74adede">std::int16_t</a>                    int16;</div>
-<div class="line"><a name="l00010"></a><span class="lineno">   10</span>&#160;        <span class="keyword">typedef</span> <a class="code" href="a00304.html#ga042ef09ff2f0cb24a36f541bcb3a3710">std::int32_t</a>                    int32;</div>
-<div class="line"><a name="l00011"></a><span class="lineno">   11</span>&#160;        <span class="keyword">typedef</span> <a class="code" href="a00304.html#ga322a7d7d2c2c68994dc872a33de63c61">std::int64_t</a>                    <a class="code" href="a00260.html#gaff5189f97f9e842d9636a0f240001b2e">int64</a>;</div>
-<div class="line"><a name="l00012"></a><span class="lineno">   12</span>&#160;</div>
-<div class="line"><a name="l00013"></a><span class="lineno">   13</span>&#160;        <span class="keyword">typedef</span> <a class="code" href="a00304.html#ga28d97808322d3c92186e4a0c067d7e8e">std::uint8_t</a>                    uint8;</div>
-<div class="line"><a name="l00014"></a><span class="lineno">   14</span>&#160;        <span class="keyword">typedef</span> <a class="code" href="a00304.html#ga91f91f411080c37730856ff5887f5bcf">std::uint16_t</a>                   uint16;</div>
-<div class="line"><a name="l00015"></a><span class="lineno">   15</span>&#160;        <span class="keyword">typedef</span> <a class="code" href="a00304.html#ga2171d9dc1fefb1c82e2817f45b622eac">std::uint32_t</a>                   uint32;</div>
-<div class="line"><a name="l00016"></a><span class="lineno">   16</span>&#160;        <span class="keyword">typedef</span> <a class="code" href="a00304.html#ga3999d3e7ff22025c16ddb601e14dfdee">std::uint64_t</a>                   <a class="code" href="a00263.html#gab630f76c26b50298187f7889104d4b9c">uint64</a>;</div>
-<div class="line"><a name="l00017"></a><span class="lineno">   17</span>&#160;<span class="preprocessor">#else</span></div>
-<div class="line"><a name="l00018"></a><span class="lineno">   18</span>&#160;        <span class="keyword">typedef</span> <span class="keywordtype">signed</span> <span class="keywordtype">char</span>                             int8;</div>
-<div class="line"><a name="l00019"></a><span class="lineno">   19</span>&#160;        <span class="keyword">typedef</span> <span class="keywordtype">signed</span> <span class="keywordtype">short</span>                    int16;</div>
-<div class="line"><a name="l00020"></a><span class="lineno">   20</span>&#160;        <span class="keyword">typedef</span> <span class="keywordtype">signed</span> <span class="keywordtype">int</span>                              int32;</div>
-<div class="line"><a name="l00021"></a><span class="lineno">   21</span>&#160;        <span class="keyword">typedef</span> <a class="code" href="a00260.html#gaff5189f97f9e842d9636a0f240001b2e">detail::int64</a>                   <a class="code" href="a00260.html#gaff5189f97f9e842d9636a0f240001b2e">int64</a>;</div>
-<div class="line"><a name="l00022"></a><span class="lineno">   22</span>&#160;</div>
-<div class="line"><a name="l00023"></a><span class="lineno">   23</span>&#160;        <span class="keyword">typedef</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">char</span>                   uint8;</div>
-<div class="line"><a name="l00024"></a><span class="lineno">   24</span>&#160;        <span class="keyword">typedef</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">short</span>                  uint16;</div>
-<div class="line"><a name="l00025"></a><span class="lineno">   25</span>&#160;        <span class="keyword">typedef</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span>                    uint32;</div>
-<div class="line"><a name="l00026"></a><span class="lineno">   26</span>&#160;        <span class="keyword">typedef</span> <a class="code" href="a00263.html#gab630f76c26b50298187f7889104d4b9c">detail::uint64</a>                  <a class="code" href="a00263.html#gab630f76c26b50298187f7889104d4b9c">uint64</a>;</div>
-<div class="line"><a name="l00027"></a><span class="lineno">   27</span>&#160;<span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00028"></a><span class="lineno">   28</span>&#160;</div>
-<div class="line"><a name="l00029"></a><span class="lineno">   29</span>&#160;        <span class="comment">// Scalar int</span></div>
-<div class="line"><a name="l00030"></a><span class="lineno">   30</span>&#160;</div>
-<div class="line"><a name="l00031"></a><span class="lineno"><a class="line" href="a00304.html#ga552a6bde5e75984efb0f863278da2e54">   31</a></span>&#160;        <span class="keyword">typedef</span> int8                                    <a class="code" href="a00304.html#ga552a6bde5e75984efb0f863278da2e54">lowp_i8</a>;</div>
-<div class="line"><a name="l00032"></a><span class="lineno"><a class="line" href="a00304.html#gacf1ded173e1e2d049c511d095b259e21">   32</a></span>&#160;        <span class="keyword">typedef</span> int8                                    <a class="code" href="a00304.html#gacf1ded173e1e2d049c511d095b259e21">mediump_i8</a>;</div>
-<div class="line"><a name="l00033"></a><span class="lineno"><a class="line" href="a00304.html#gacb88796f2d08ef253d0345aff20c3aee">   33</a></span>&#160;        <span class="keyword">typedef</span> int8                                    <a class="code" href="a00304.html#gacb88796f2d08ef253d0345aff20c3aee">highp_i8</a>;</div>
-<div class="line"><a name="l00034"></a><span class="lineno"><a class="line" href="a00304.html#ga302ec977b0c0c3ea245b6c9275495355">   34</a></span>&#160;        <span class="keyword">typedef</span> int8                                    <a class="code" href="a00304.html#ga302ec977b0c0c3ea245b6c9275495355">i8</a>;</div>
-<div class="line"><a name="l00035"></a><span class="lineno">   35</span>&#160;</div>
-<div class="line"><a name="l00036"></a><span class="lineno"><a class="line" href="a00304.html#ga760bcf26fdb23a2c3ecad3c928a19ae6">   36</a></span>&#160;        <span class="keyword">typedef</span> int8                                    <a class="code" href="a00304.html#ga760bcf26fdb23a2c3ecad3c928a19ae6">lowp_int8</a>;</div>
-<div class="line"><a name="l00037"></a><span class="lineno"><a class="line" href="a00304.html#ga6fbd69cbdaa44345bff923a2cf63de7e">   37</a></span>&#160;        <span class="keyword">typedef</span> int8                                    <a class="code" href="a00304.html#ga6fbd69cbdaa44345bff923a2cf63de7e">mediump_int8</a>;</div>
-<div class="line"><a name="l00038"></a><span class="lineno"><a class="line" href="a00304.html#gad0549c902a96a7164e4ac858d5f39dbf">   38</a></span>&#160;        <span class="keyword">typedef</span> int8                                    <a class="code" href="a00304.html#gad0549c902a96a7164e4ac858d5f39dbf">highp_int8</a>;</div>
-<div class="line"><a name="l00039"></a><span class="lineno">   39</span>&#160;</div>
-<div class="line"><a name="l00040"></a><span class="lineno"><a class="line" href="a00304.html#ga119c41d73fe9977358174eb3ac1035a3">   40</a></span>&#160;        <span class="keyword">typedef</span> int8                                    <a class="code" href="a00304.html#ga119c41d73fe9977358174eb3ac1035a3">lowp_int8_t</a>;</div>
-<div class="line"><a name="l00041"></a><span class="lineno"><a class="line" href="a00304.html#ga6d7b3789ecb932c26430009478cac7ae">   41</a></span>&#160;        <span class="keyword">typedef</span> int8                                    <a class="code" href="a00304.html#ga6d7b3789ecb932c26430009478cac7ae">mediump_int8_t</a>;</div>
-<div class="line"><a name="l00042"></a><span class="lineno"><a class="line" href="a00304.html#ga1085c50dd8fbeb5e7e609b1c127492a5">   42</a></span>&#160;        <span class="keyword">typedef</span> int8                                    <a class="code" href="a00304.html#ga1085c50dd8fbeb5e7e609b1c127492a5">highp_int8_t</a>;</div>
-<div class="line"><a name="l00043"></a><span class="lineno"><a class="line" href="a00304.html#ga4bf09d8838a86866b39ee6e109341645">   43</a></span>&#160;        <span class="keyword">typedef</span> int8                                    <a class="code" href="a00304.html#ga4bf09d8838a86866b39ee6e109341645">int8_t</a>;</div>
-<div class="line"><a name="l00044"></a><span class="lineno">   44</span>&#160;</div>
-<div class="line"><a name="l00045"></a><span class="lineno"><a class="line" href="a00304.html#ga392b673fd10847bfb78fb808c6cf8ff7">   45</a></span>&#160;        <span class="keyword">typedef</span> int16                                   <a class="code" href="a00304.html#ga392b673fd10847bfb78fb808c6cf8ff7">lowp_i16</a>;</div>
-<div class="line"><a name="l00046"></a><span class="lineno"><a class="line" href="a00304.html#ga62a17cddeb4dffb4e18fe3aea23f051a">   46</a></span>&#160;        <span class="keyword">typedef</span> int16                                   <a class="code" href="a00304.html#ga62a17cddeb4dffb4e18fe3aea23f051a">mediump_i16</a>;</div>
-<div class="line"><a name="l00047"></a><span class="lineno"><a class="line" href="a00304.html#ga0336abc2604dd2c20c30e036454b64f8">   47</a></span>&#160;        <span class="keyword">typedef</span> int16                                   <a class="code" href="a00304.html#ga0336abc2604dd2c20c30e036454b64f8">highp_i16</a>;</div>
-<div class="line"><a name="l00048"></a><span class="lineno"><a class="line" href="a00304.html#ga3ab5fe184343d394fb6c2723c3ee3699">   48</a></span>&#160;        <span class="keyword">typedef</span> int16                                   <a class="code" href="a00304.html#ga3ab5fe184343d394fb6c2723c3ee3699">i16</a>;</div>
-<div class="line"><a name="l00049"></a><span class="lineno">   49</span>&#160;</div>
-<div class="line"><a name="l00050"></a><span class="lineno"><a class="line" href="a00304.html#ga698e36b01167fc0f037889334dce8def">   50</a></span>&#160;        <span class="keyword">typedef</span> int16                                   <a class="code" href="a00304.html#ga698e36b01167fc0f037889334dce8def">lowp_int16</a>;</div>
-<div class="line"><a name="l00051"></a><span class="lineno"><a class="line" href="a00304.html#gadff3608baa4b5bd3ed28f95c1c2c345d">   51</a></span>&#160;        <span class="keyword">typedef</span> int16                                   <a class="code" href="a00304.html#gadff3608baa4b5bd3ed28f95c1c2c345d">mediump_int16</a>;</div>
-<div class="line"><a name="l00052"></a><span class="lineno"><a class="line" href="a00304.html#ga5fde0fa4a3852a9dd5d637a92ee74718">   52</a></span>&#160;        <span class="keyword">typedef</span> int16                                   <a class="code" href="a00304.html#ga5fde0fa4a3852a9dd5d637a92ee74718">highp_int16</a>;</div>
-<div class="line"><a name="l00053"></a><span class="lineno">   53</span>&#160;</div>
-<div class="line"><a name="l00054"></a><span class="lineno"><a class="line" href="a00304.html#ga8b2cd8d31eb345b2d641d9261c38db1a">   54</a></span>&#160;        <span class="keyword">typedef</span> int16                                   <a class="code" href="a00304.html#ga8b2cd8d31eb345b2d641d9261c38db1a">lowp_int16_t</a>;</div>
-<div class="line"><a name="l00055"></a><span class="lineno"><a class="line" href="a00304.html#ga80e72fe94c88498537e8158ba7591c54">   55</a></span>&#160;        <span class="keyword">typedef</span> int16                                   <a class="code" href="a00304.html#ga80e72fe94c88498537e8158ba7591c54">mediump_int16_t</a>;</div>
-<div class="line"><a name="l00056"></a><span class="lineno"><a class="line" href="a00304.html#gacaea06d0a79ef3172e887a7a6ba434ff">   56</a></span>&#160;        <span class="keyword">typedef</span> int16                                   <a class="code" href="a00304.html#gacaea06d0a79ef3172e887a7a6ba434ff">highp_int16_t</a>;</div>
-<div class="line"><a name="l00057"></a><span class="lineno"><a class="line" href="a00304.html#gae8f5e3e964ca2ae240adc2c0d74adede">   57</a></span>&#160;        <span class="keyword">typedef</span> int16                                   <a class="code" href="a00304.html#gae8f5e3e964ca2ae240adc2c0d74adede">int16_t</a>;</div>
-<div class="line"><a name="l00058"></a><span class="lineno">   58</span>&#160;</div>
-<div class="line"><a name="l00059"></a><span class="lineno"><a class="line" href="a00304.html#ga7ff73a45cea9613ebf1a9fad0b9f82ac">   59</a></span>&#160;        <span class="keyword">typedef</span> int32                                   <a class="code" href="a00304.html#ga7ff73a45cea9613ebf1a9fad0b9f82ac">lowp_i32</a>;</div>
-<div class="line"><a name="l00060"></a><span class="lineno"><a class="line" href="a00304.html#gaf5e94bf2a20af7601787c154751dc2e1">   60</a></span>&#160;        <span class="keyword">typedef</span> int32                                   <a class="code" href="a00304.html#gaf5e94bf2a20af7601787c154751dc2e1">mediump_i32</a>;</div>
-<div class="line"><a name="l00061"></a><span class="lineno"><a class="line" href="a00304.html#ga727675ac6b5d2fc699520e0059735e25">   61</a></span>&#160;        <span class="keyword">typedef</span> int32                                   <a class="code" href="a00304.html#ga727675ac6b5d2fc699520e0059735e25">highp_i32</a>;</div>
-<div class="line"><a name="l00062"></a><span class="lineno"><a class="line" href="a00304.html#ga96faea43ac5f875d2d3ffbf8d213e3eb">   62</a></span>&#160;        <span class="keyword">typedef</span> int32                                   <a class="code" href="a00304.html#ga96faea43ac5f875d2d3ffbf8d213e3eb">i32</a>;</div>
-<div class="line"><a name="l00063"></a><span class="lineno">   63</span>&#160;</div>
-<div class="line"><a name="l00064"></a><span class="lineno"><a class="line" href="a00304.html#ga864aabca5f3296e176e0c3ed9cc16b02">   64</a></span>&#160;        <span class="keyword">typedef</span> int32                                   <a class="code" href="a00304.html#ga864aabca5f3296e176e0c3ed9cc16b02">lowp_int32</a>;</div>
-<div class="line"><a name="l00065"></a><span class="lineno"><a class="line" href="a00304.html#ga5244cef85d6e870e240c76428a262ae8">   65</a></span>&#160;        <span class="keyword">typedef</span> int32                                   <a class="code" href="a00304.html#ga5244cef85d6e870e240c76428a262ae8">mediump_int32</a>;</div>
-<div class="line"><a name="l00066"></a><span class="lineno"><a class="line" href="a00304.html#ga84ed04b4e0de18c977e932d617e7c223">   66</a></span>&#160;        <span class="keyword">typedef</span> int32                                   <a class="code" href="a00304.html#ga84ed04b4e0de18c977e932d617e7c223">highp_int32</a>;</div>
-<div class="line"><a name="l00067"></a><span class="lineno">   67</span>&#160;</div>
-<div class="line"><a name="l00068"></a><span class="lineno"><a class="line" href="a00304.html#ga0350631d35ff800e6133ac6243b13cbc">   68</a></span>&#160;        <span class="keyword">typedef</span> int32                                   <a class="code" href="a00304.html#ga0350631d35ff800e6133ac6243b13cbc">lowp_int32_t</a>;</div>
-<div class="line"><a name="l00069"></a><span class="lineno"><a class="line" href="a00304.html#ga26fc7ced1ad7ca5024f1c973c8dc9180">   69</a></span>&#160;        <span class="keyword">typedef</span> int32                                   <a class="code" href="a00304.html#ga26fc7ced1ad7ca5024f1c973c8dc9180">mediump_int32_t</a>;</div>
-<div class="line"><a name="l00070"></a><span class="lineno"><a class="line" href="a00304.html#ga2c71c8bd9e2fe7d2e93ca250d8b6157f">   70</a></span>&#160;        <span class="keyword">typedef</span> int32                                   <a class="code" href="a00304.html#ga2c71c8bd9e2fe7d2e93ca250d8b6157f">highp_int32_t</a>;</div>
-<div class="line"><a name="l00071"></a><span class="lineno"><a class="line" href="a00304.html#ga042ef09ff2f0cb24a36f541bcb3a3710">   71</a></span>&#160;        <span class="keyword">typedef</span> int32                                   <a class="code" href="a00304.html#ga042ef09ff2f0cb24a36f541bcb3a3710">int32_t</a>;</div>
-<div class="line"><a name="l00072"></a><span class="lineno">   72</span>&#160;</div>
-<div class="line"><a name="l00073"></a><span class="lineno"><a class="line" href="a00304.html#ga354736e0c645099cd44c42fb2f87c2b8">   73</a></span>&#160;        <span class="keyword">typedef</span> int64                                   <a class="code" href="a00304.html#ga354736e0c645099cd44c42fb2f87c2b8">lowp_i64</a>;</div>
-<div class="line"><a name="l00074"></a><span class="lineno"><a class="line" href="a00304.html#ga3ebcb1f6d8d8387253de8bccb058d77f">   74</a></span>&#160;        <span class="keyword">typedef</span> int64                                   <a class="code" href="a00304.html#ga3ebcb1f6d8d8387253de8bccb058d77f">mediump_i64</a>;</div>
-<div class="line"><a name="l00075"></a><span class="lineno"><a class="line" href="a00304.html#gac25db6d2b1e2a0f351b77ba3409ac4cd">   75</a></span>&#160;        <span class="keyword">typedef</span> int64                                   <a class="code" href="a00304.html#gac25db6d2b1e2a0f351b77ba3409ac4cd">highp_i64</a>;</div>
-<div class="line"><a name="l00076"></a><span class="lineno"><a class="line" href="a00304.html#gadb997e409103d4da18abd837e636a496">   76</a></span>&#160;        <span class="keyword">typedef</span> int64                                   <a class="code" href="a00304.html#gadb997e409103d4da18abd837e636a496">i64</a>;</div>
-<div class="line"><a name="l00077"></a><span class="lineno">   77</span>&#160;</div>
-<div class="line"><a name="l00078"></a><span class="lineno"><a class="line" href="a00304.html#gaf645b1a60203b39c0207baff5e3d8c3c">   78</a></span>&#160;        <span class="keyword">typedef</span> int64                                   <a class="code" href="a00304.html#gaf645b1a60203b39c0207baff5e3d8c3c">lowp_int64</a>;</div>
-<div class="line"><a name="l00079"></a><span class="lineno"><a class="line" href="a00304.html#ga7b968f2b86a0442a89c7359171e1d866">   79</a></span>&#160;        <span class="keyword">typedef</span> int64                                   <a class="code" href="a00304.html#ga7b968f2b86a0442a89c7359171e1d866">mediump_int64</a>;</div>
-<div class="line"><a name="l00080"></a><span class="lineno"><a class="line" href="a00304.html#ga226a8d52b4e3f77aaa6231135e886aac">   80</a></span>&#160;        <span class="keyword">typedef</span> int64                                   <a class="code" href="a00304.html#ga226a8d52b4e3f77aaa6231135e886aac">highp_int64</a>;</div>
-<div class="line"><a name="l00081"></a><span class="lineno">   81</span>&#160;</div>
-<div class="line"><a name="l00082"></a><span class="lineno"><a class="line" href="a00304.html#gaebf341fc4a5be233f7dde962c2e33847">   82</a></span>&#160;        <span class="keyword">typedef</span> int64                                   <a class="code" href="a00304.html#gaebf341fc4a5be233f7dde962c2e33847">lowp_int64_t</a>;</div>
-<div class="line"><a name="l00083"></a><span class="lineno"><a class="line" href="a00304.html#gac3bc41bcac61d1ba8f02a6f68ce23f64">   83</a></span>&#160;        <span class="keyword">typedef</span> int64                                   <a class="code" href="a00304.html#gac3bc41bcac61d1ba8f02a6f68ce23f64">mediump_int64_t</a>;</div>
-<div class="line"><a name="l00084"></a><span class="lineno"><a class="line" href="a00304.html#ga73c6abb280a45feeff60f9accaee91f3">   84</a></span>&#160;        <span class="keyword">typedef</span> int64                                   <a class="code" href="a00304.html#ga73c6abb280a45feeff60f9accaee91f3">highp_int64_t</a>;</div>
-<div class="line"><a name="l00085"></a><span class="lineno"><a class="line" href="a00304.html#ga322a7d7d2c2c68994dc872a33de63c61">   85</a></span>&#160;        <span class="keyword">typedef</span> int64                                   <a class="code" href="a00304.html#ga322a7d7d2c2c68994dc872a33de63c61">int64_t</a>;</div>
-<div class="line"><a name="l00086"></a><span class="lineno">   86</span>&#160;</div>
-<div class="line"><a name="l00087"></a><span class="lineno">   87</span>&#160;        <span class="comment">// Scalar uint</span></div>
-<div class="line"><a name="l00088"></a><span class="lineno">   88</span>&#160;</div>
-<div class="line"><a name="l00089"></a><span class="lineno"><a class="line" href="a00304.html#ga1b09f03da7ac43055c68a349d5445083">   89</a></span>&#160;        <span class="keyword">typedef</span> uint8                                   <a class="code" href="a00304.html#ga1b09f03da7ac43055c68a349d5445083">lowp_u8</a>;</div>
-<div class="line"><a name="l00090"></a><span class="lineno"><a class="line" href="a00304.html#gad1213a22bbb9e4107f07eaa4956f8281">   90</a></span>&#160;        <span class="keyword">typedef</span> uint8                                   <a class="code" href="a00304.html#gad1213a22bbb9e4107f07eaa4956f8281">mediump_u8</a>;</div>
-<div class="line"><a name="l00091"></a><span class="lineno"><a class="line" href="a00304.html#gacd1259f3a9e8d2a9df5be2d74322ef9c">   91</a></span>&#160;        <span class="keyword">typedef</span> uint8                                   <a class="code" href="a00304.html#gacd1259f3a9e8d2a9df5be2d74322ef9c">highp_u8</a>;</div>
-<div class="line"><a name="l00092"></a><span class="lineno"><a class="line" href="a00304.html#gaecc7082561fc9028b844b6cf3d305d36">   92</a></span>&#160;        <span class="keyword">typedef</span> uint8                                   <a class="code" href="a00304.html#gaecc7082561fc9028b844b6cf3d305d36">u8</a>;</div>
-<div class="line"><a name="l00093"></a><span class="lineno">   93</span>&#160;</div>
-<div class="line"><a name="l00094"></a><span class="lineno"><a class="line" href="a00304.html#gaf49470869e9be2c059629b250619804e">   94</a></span>&#160;        <span class="keyword">typedef</span> uint8                                   <a class="code" href="a00304.html#gaf49470869e9be2c059629b250619804e">lowp_uint8</a>;</div>
-<div class="line"><a name="l00095"></a><span class="lineno"><a class="line" href="a00304.html#ga1fa92a233b9110861cdbc8c2ccf0b5a3">   95</a></span>&#160;        <span class="keyword">typedef</span> uint8                                   <a class="code" href="a00304.html#ga1fa92a233b9110861cdbc8c2ccf0b5a3">mediump_uint8</a>;</div>
-<div class="line"><a name="l00096"></a><span class="lineno"><a class="line" href="a00304.html#ga97432f9979e73e66567361fd01e4cffb">   96</a></span>&#160;        <span class="keyword">typedef</span> uint8                                   <a class="code" href="a00304.html#ga97432f9979e73e66567361fd01e4cffb">highp_uint8</a>;</div>
-<div class="line"><a name="l00097"></a><span class="lineno">   97</span>&#160;</div>
-<div class="line"><a name="l00098"></a><span class="lineno"><a class="line" href="a00304.html#ga667b2ece2b258be898812dc2177995d1">   98</a></span>&#160;        <span class="keyword">typedef</span> uint8                                   <a class="code" href="a00304.html#ga667b2ece2b258be898812dc2177995d1">lowp_uint8_t</a>;</div>
-<div class="line"><a name="l00099"></a><span class="lineno"><a class="line" href="a00304.html#gadfe65c78231039e90507770db50c98c7">   99</a></span>&#160;        <span class="keyword">typedef</span> uint8                                   <a class="code" href="a00304.html#gadfe65c78231039e90507770db50c98c7">mediump_uint8_t</a>;</div>
-<div class="line"><a name="l00100"></a><span class="lineno"><a class="line" href="a00304.html#gac4e00a26a2adb5f2c0a7096810df29e5">  100</a></span>&#160;        <span class="keyword">typedef</span> uint8                                   <a class="code" href="a00304.html#gac4e00a26a2adb5f2c0a7096810df29e5">highp_uint8_t</a>;</div>
-<div class="line"><a name="l00101"></a><span class="lineno"><a class="line" href="a00304.html#ga28d97808322d3c92186e4a0c067d7e8e">  101</a></span>&#160;        <span class="keyword">typedef</span> uint8                                   <a class="code" href="a00304.html#ga28d97808322d3c92186e4a0c067d7e8e">uint8_t</a>;</div>
-<div class="line"><a name="l00102"></a><span class="lineno">  102</span>&#160;</div>
-<div class="line"><a name="l00103"></a><span class="lineno"><a class="line" href="a00304.html#ga504ce1631cb2ac02fcf1d44d8c2aa126">  103</a></span>&#160;        <span class="keyword">typedef</span> uint16                                  <a class="code" href="a00304.html#ga504ce1631cb2ac02fcf1d44d8c2aa126">lowp_u16</a>;</div>
-<div class="line"><a name="l00104"></a><span class="lineno"><a class="line" href="a00304.html#ga9df98857be695d5a30cb30f5bfa38a80">  104</a></span>&#160;        <span class="keyword">typedef</span> uint16                                  <a class="code" href="a00304.html#ga9df98857be695d5a30cb30f5bfa38a80">mediump_u16</a>;</div>
-<div class="line"><a name="l00105"></a><span class="lineno"><a class="line" href="a00304.html#ga8e62c883d13f47015f3b70ed88751369">  105</a></span>&#160;        <span class="keyword">typedef</span> uint16                                  <a class="code" href="a00304.html#ga8e62c883d13f47015f3b70ed88751369">highp_u16</a>;</div>
-<div class="line"><a name="l00106"></a><span class="lineno"><a class="line" href="a00304.html#gaa2d7acc0adb536fab71fe261232a40ff">  106</a></span>&#160;        <span class="keyword">typedef</span> uint16                                  <a class="code" href="a00304.html#gaa2d7acc0adb536fab71fe261232a40ff">u16</a>;</div>
-<div class="line"><a name="l00107"></a><span class="lineno">  107</span>&#160;</div>
-<div class="line"><a name="l00108"></a><span class="lineno"><a class="line" href="a00304.html#gad68bfd9f881856fc863a6ebca0b67f78">  108</a></span>&#160;        <span class="keyword">typedef</span> uint16                                  <a class="code" href="a00304.html#gad68bfd9f881856fc863a6ebca0b67f78">lowp_uint16</a>;</div>
-<div class="line"><a name="l00109"></a><span class="lineno"><a class="line" href="a00304.html#ga2885a6c89916911e418c06bb76b9bdbb">  109</a></span>&#160;        <span class="keyword">typedef</span> uint16                                  <a class="code" href="a00304.html#ga2885a6c89916911e418c06bb76b9bdbb">mediump_uint16</a>;</div>
-<div class="line"><a name="l00110"></a><span class="lineno"><a class="line" href="a00304.html#ga746dc6da204f5622e395f492997dbf57">  110</a></span>&#160;        <span class="keyword">typedef</span> uint16                                  <a class="code" href="a00304.html#ga746dc6da204f5622e395f492997dbf57">highp_uint16</a>;</div>
-<div class="line"><a name="l00111"></a><span class="lineno">  111</span>&#160;</div>
-<div class="line"><a name="l00112"></a><span class="lineno"><a class="line" href="a00304.html#ga91c4815f93177eb423362fd296a87e9f">  112</a></span>&#160;        <span class="keyword">typedef</span> uint16                                  <a class="code" href="a00304.html#ga91c4815f93177eb423362fd296a87e9f">lowp_uint16_t</a>;</div>
-<div class="line"><a name="l00113"></a><span class="lineno"><a class="line" href="a00304.html#ga3963b1050fc65a383ee28e3f827b6e3e">  113</a></span>&#160;        <span class="keyword">typedef</span> uint16                                  <a class="code" href="a00304.html#ga3963b1050fc65a383ee28e3f827b6e3e">mediump_uint16_t</a>;</div>
-<div class="line"><a name="l00114"></a><span class="lineno"><a class="line" href="a00304.html#gacf54c3330ef60aa3d16cb676c7bcb8c7">  114</a></span>&#160;        <span class="keyword">typedef</span> uint16                                  <a class="code" href="a00304.html#gacf54c3330ef60aa3d16cb676c7bcb8c7">highp_uint16_t</a>;</div>
-<div class="line"><a name="l00115"></a><span class="lineno"><a class="line" href="a00304.html#ga91f91f411080c37730856ff5887f5bcf">  115</a></span>&#160;        <span class="keyword">typedef</span> uint16                                  <a class="code" href="a00304.html#ga91f91f411080c37730856ff5887f5bcf">uint16_t</a>;</div>
-<div class="line"><a name="l00116"></a><span class="lineno">  116</span>&#160;</div>
-<div class="line"><a name="l00117"></a><span class="lineno"><a class="line" href="a00304.html#ga4f072ada9552e1e480bbb3b1acde5250">  117</a></span>&#160;        <span class="keyword">typedef</span> uint32                                  <a class="code" href="a00304.html#ga4f072ada9552e1e480bbb3b1acde5250">lowp_u32</a>;</div>
-<div class="line"><a name="l00118"></a><span class="lineno"><a class="line" href="a00304.html#ga1bd0e914158bf03135f8a317de6debe9">  118</a></span>&#160;        <span class="keyword">typedef</span> uint32                                  <a class="code" href="a00304.html#ga1bd0e914158bf03135f8a317de6debe9">mediump_u32</a>;</div>
-<div class="line"><a name="l00119"></a><span class="lineno"><a class="line" href="a00304.html#ga7a6f1929464dcc680b16381a4ee5f2cf">  119</a></span>&#160;        <span class="keyword">typedef</span> uint32                                  <a class="code" href="a00304.html#ga7a6f1929464dcc680b16381a4ee5f2cf">highp_u32</a>;</div>
-<div class="line"><a name="l00120"></a><span class="lineno"><a class="line" href="a00304.html#ga8165913e068444f7842302d40ba897b9">  120</a></span>&#160;        <span class="keyword">typedef</span> uint32                                  <a class="code" href="a00304.html#ga8165913e068444f7842302d40ba897b9">u32</a>;</div>
-<div class="line"><a name="l00121"></a><span class="lineno">  121</span>&#160;</div>
-<div class="line"><a name="l00122"></a><span class="lineno"><a class="line" href="a00304.html#gaa6a5b461bbf5fe20982472aa51896d4b">  122</a></span>&#160;        <span class="keyword">typedef</span> uint32                                  <a class="code" href="a00304.html#gaa6a5b461bbf5fe20982472aa51896d4b">lowp_uint32</a>;</div>
-<div class="line"><a name="l00123"></a><span class="lineno"><a class="line" href="a00304.html#ga34dd5ec1988c443bae80f1b20a8ade5f">  123</a></span>&#160;        <span class="keyword">typedef</span> uint32                                  <a class="code" href="a00304.html#ga34dd5ec1988c443bae80f1b20a8ade5f">mediump_uint32</a>;</div>
-<div class="line"><a name="l00124"></a><span class="lineno"><a class="line" href="a00304.html#ga256b12b650c3f2fb86878fd1c5db8bc3">  124</a></span>&#160;        <span class="keyword">typedef</span> uint32                                  <a class="code" href="a00304.html#ga256b12b650c3f2fb86878fd1c5db8bc3">highp_uint32</a>;</div>
-<div class="line"><a name="l00125"></a><span class="lineno">  125</span>&#160;</div>
-<div class="line"><a name="l00126"></a><span class="lineno"><a class="line" href="a00304.html#gaf1b735b4b1145174f4e4167d13778f9b">  126</a></span>&#160;        <span class="keyword">typedef</span> uint32                                  <a class="code" href="a00304.html#gaf1b735b4b1145174f4e4167d13778f9b">lowp_uint32_t</a>;</div>
-<div class="line"><a name="l00127"></a><span class="lineno"><a class="line" href="a00304.html#gaf4dae276fd29623950de14a6ca2586b5">  127</a></span>&#160;        <span class="keyword">typedef</span> uint32                                  <a class="code" href="a00304.html#gaf4dae276fd29623950de14a6ca2586b5">mediump_uint32_t</a>;</div>
-<div class="line"><a name="l00128"></a><span class="lineno"><a class="line" href="a00304.html#gae978599c9711ac263ba732d4ac225b0e">  128</a></span>&#160;        <span class="keyword">typedef</span> uint32                                  <a class="code" href="a00304.html#gae978599c9711ac263ba732d4ac225b0e">highp_uint32_t</a>;</div>
-<div class="line"><a name="l00129"></a><span class="lineno"><a class="line" href="a00304.html#ga2171d9dc1fefb1c82e2817f45b622eac">  129</a></span>&#160;        <span class="keyword">typedef</span> uint32                                  <a class="code" href="a00304.html#ga2171d9dc1fefb1c82e2817f45b622eac">uint32_t</a>;</div>
-<div class="line"><a name="l00130"></a><span class="lineno">  130</span>&#160;</div>
-<div class="line"><a name="l00131"></a><span class="lineno"><a class="line" href="a00304.html#ga30069d1f02b19599cbfadf98c23ac6ed">  131</a></span>&#160;        <span class="keyword">typedef</span> uint64                                  <a class="code" href="a00304.html#ga30069d1f02b19599cbfadf98c23ac6ed">lowp_u64</a>;</div>
-<div class="line"><a name="l00132"></a><span class="lineno"><a class="line" href="a00304.html#ga2af9490085ae3bdf36a544e9dd073610">  132</a></span>&#160;        <span class="keyword">typedef</span> uint64                                  <a class="code" href="a00304.html#ga2af9490085ae3bdf36a544e9dd073610">mediump_u64</a>;</div>
-<div class="line"><a name="l00133"></a><span class="lineno"><a class="line" href="a00304.html#ga0c181fdf06a309691999926b6690c969">  133</a></span>&#160;        <span class="keyword">typedef</span> uint64                                  <a class="code" href="a00304.html#ga0c181fdf06a309691999926b6690c969">highp_u64</a>;</div>
-<div class="line"><a name="l00134"></a><span class="lineno"><a class="line" href="a00304.html#gaf3f312156984c365e9f65620354da70b">  134</a></span>&#160;        <span class="keyword">typedef</span> uint64                                  <a class="code" href="a00304.html#gaf3f312156984c365e9f65620354da70b">u64</a>;</div>
-<div class="line"><a name="l00135"></a><span class="lineno">  135</span>&#160;</div>
-<div class="line"><a name="l00136"></a><span class="lineno"><a class="line" href="a00304.html#gaa212b805736a759998e312cbdd550fae">  136</a></span>&#160;        <span class="keyword">typedef</span> uint64                                  <a class="code" href="a00304.html#gaa212b805736a759998e312cbdd550fae">lowp_uint64</a>;</div>
-<div class="line"><a name="l00137"></a><span class="lineno"><a class="line" href="a00304.html#ga30652709815ad9404272a31957daa59e">  137</a></span>&#160;        <span class="keyword">typedef</span> uint64                                  <a class="code" href="a00304.html#ga30652709815ad9404272a31957daa59e">mediump_uint64</a>;</div>
-<div class="line"><a name="l00138"></a><span class="lineno"><a class="line" href="a00304.html#gaa38d732f5d4a7bc42a1b43b9d3c141ce">  138</a></span>&#160;        <span class="keyword">typedef</span> uint64                                  <a class="code" href="a00304.html#gaa38d732f5d4a7bc42a1b43b9d3c141ce">highp_uint64</a>;</div>
-<div class="line"><a name="l00139"></a><span class="lineno">  139</span>&#160;</div>
-<div class="line"><a name="l00140"></a><span class="lineno"><a class="line" href="a00304.html#ga8dd3a3281ae5c970ffe0c41d538aa153">  140</a></span>&#160;        <span class="keyword">typedef</span> uint64                                  <a class="code" href="a00304.html#ga8dd3a3281ae5c970ffe0c41d538aa153">lowp_uint64_t</a>;</div>
-<div class="line"><a name="l00141"></a><span class="lineno"><a class="line" href="a00304.html#ga9b170dd4a8f38448a2dc93987c7875e9">  141</a></span>&#160;        <span class="keyword">typedef</span> uint64                                  <a class="code" href="a00304.html#ga9b170dd4a8f38448a2dc93987c7875e9">mediump_uint64_t</a>;</div>
-<div class="line"><a name="l00142"></a><span class="lineno"><a class="line" href="a00304.html#gaa46172d7dc1c7ffe3e78107ff88adf08">  142</a></span>&#160;        <span class="keyword">typedef</span> uint64                                  <a class="code" href="a00304.html#gaa46172d7dc1c7ffe3e78107ff88adf08">highp_uint64_t</a>;</div>
-<div class="line"><a name="l00143"></a><span class="lineno"><a class="line" href="a00304.html#ga3999d3e7ff22025c16ddb601e14dfdee">  143</a></span>&#160;        <span class="keyword">typedef</span> uint64                                  <a class="code" href="a00304.html#ga3999d3e7ff22025c16ddb601e14dfdee">uint64_t</a>;</div>
-<div class="line"><a name="l00144"></a><span class="lineno">  144</span>&#160;</div>
-<div class="line"><a name="l00145"></a><span class="lineno">  145</span>&#160;        <span class="comment">// Scalar float</span></div>
-<div class="line"><a name="l00146"></a><span class="lineno">  146</span>&#160;</div>
-<div class="line"><a name="l00147"></a><span class="lineno"><a class="line" href="a00304.html#gaeea53879fc327293cf3352a409b7867b">  147</a></span>&#160;        <span class="keyword">typedef</span> <span class="keywordtype">float</span>                                   <a class="code" href="a00304.html#gaeea53879fc327293cf3352a409b7867b">lowp_f32</a>;</div>
-<div class="line"><a name="l00148"></a><span class="lineno"><a class="line" href="a00304.html#ga3b27fcd9eaa2757f0aaf6b0ce0d85c80">  148</a></span>&#160;        <span class="keyword">typedef</span> <span class="keywordtype">float</span>                                   <a class="code" href="a00304.html#ga3b27fcd9eaa2757f0aaf6b0ce0d85c80">mediump_f32</a>;</div>
-<div class="line"><a name="l00149"></a><span class="lineno"><a class="line" href="a00304.html#ga6906e1ef0b34064b4b675489c5c38725">  149</a></span>&#160;        <span class="keyword">typedef</span> <span class="keywordtype">float</span>                                   <a class="code" href="a00304.html#ga6906e1ef0b34064b4b675489c5c38725">highp_f32</a>;</div>
-<div class="line"><a name="l00150"></a><span class="lineno"><a class="line" href="a00304.html#gabe6a542dd6c1d5ffd847f1b9b4c9c9b7">  150</a></span>&#160;        <span class="keyword">typedef</span> <span class="keywordtype">float</span>                                   <a class="code" href="a00304.html#gabe6a542dd6c1d5ffd847f1b9b4c9c9b7">f32</a>;</div>
-<div class="line"><a name="l00151"></a><span class="lineno">  151</span>&#160;</div>
-<div class="line"><a name="l00152"></a><span class="lineno"><a class="line" href="a00304.html#ga41b0d390bd8cc827323b1b3816ff4bf8">  152</a></span>&#160;        <span class="keyword">typedef</span> <span class="keywordtype">float</span>                                   <a class="code" href="a00304.html#ga41b0d390bd8cc827323b1b3816ff4bf8">lowp_float32</a>;</div>
-<div class="line"><a name="l00153"></a><span class="lineno"><a class="line" href="a00304.html#ga7812bf00676fb1a86dcd62cca354d2c7">  153</a></span>&#160;        <span class="keyword">typedef</span> <span class="keywordtype">float</span>                                   <a class="code" href="a00304.html#ga7812bf00676fb1a86dcd62cca354d2c7">mediump_float32</a>;</div>
-<div class="line"><a name="l00154"></a><span class="lineno"><a class="line" href="a00304.html#gac5a7f21136e0a78d0a1b9f60ef2f8aea">  154</a></span>&#160;        <span class="keyword">typedef</span> <span class="keywordtype">float</span>                                   <a class="code" href="a00304.html#gac5a7f21136e0a78d0a1b9f60ef2f8aea">highp_float32</a>;</div>
-<div class="line"><a name="l00155"></a><span class="lineno"><a class="line" href="a00304.html#gaacdc525d6f7bddb3ae95d5c311bd06a1">  155</a></span>&#160;        <span class="keyword">typedef</span> <span class="keywordtype">float</span>                                   <a class="code" href="a00304.html#gaacdc525d6f7bddb3ae95d5c311bd06a1">float32</a>;</div>
-<div class="line"><a name="l00156"></a><span class="lineno">  156</span>&#160;</div>
-<div class="line"><a name="l00157"></a><span class="lineno"><a class="line" href="a00304.html#gaea881cae4ddc6c0fbf7cc5b08177ca5b">  157</a></span>&#160;        <span class="keyword">typedef</span> <span class="keywordtype">float</span>                                   <a class="code" href="a00304.html#gaea881cae4ddc6c0fbf7cc5b08177ca5b">lowp_float32_t</a>;</div>
-<div class="line"><a name="l00158"></a><span class="lineno"><a class="line" href="a00304.html#gae4dee61f8fe1caccec309fbed02faf12">  158</a></span>&#160;        <span class="keyword">typedef</span> <span class="keywordtype">float</span>                                   <a class="code" href="a00304.html#gae4dee61f8fe1caccec309fbed02faf12">mediump_float32_t</a>;</div>
-<div class="line"><a name="l00159"></a><span class="lineno"><a class="line" href="a00304.html#ga5376ef18dca9d248897c3363ef5a06b2">  159</a></span>&#160;        <span class="keyword">typedef</span> <span class="keywordtype">float</span>                                   <a class="code" href="a00304.html#ga5376ef18dca9d248897c3363ef5a06b2">highp_float32_t</a>;</div>
-<div class="line"><a name="l00160"></a><span class="lineno"><a class="line" href="a00304.html#gaa4947bc8b47c72fceea9bda730ecf603">  160</a></span>&#160;        <span class="keyword">typedef</span> <span class="keywordtype">float</span>                                   <a class="code" href="a00304.html#gaa4947bc8b47c72fceea9bda730ecf603">float32_t</a>;</div>
-<div class="line"><a name="l00161"></a><span class="lineno">  161</span>&#160;</div>
-<div class="line"><a name="l00162"></a><span class="lineno">  162</span>&#160;</div>
-<div class="line"><a name="l00163"></a><span class="lineno"><a class="line" href="a00304.html#gabc7a97c07cbfac8e35eb5e63beb4b679">  163</a></span>&#160;        <span class="keyword">typedef</span> <span class="keywordtype">double</span>                                  <a class="code" href="a00304.html#gabc7a97c07cbfac8e35eb5e63beb4b679">lowp_f64</a>;</div>
-<div class="line"><a name="l00164"></a><span class="lineno"><a class="line" href="a00304.html#ga6d40381d78472553f878f66e443feeef">  164</a></span>&#160;        <span class="keyword">typedef</span> <span class="keywordtype">double</span>                                  <a class="code" href="a00304.html#ga6d40381d78472553f878f66e443feeef">mediump_f64</a>;</div>
-<div class="line"><a name="l00165"></a><span class="lineno"><a class="line" href="a00304.html#ga51d5266017d88f62737c1973923a7cf4">  165</a></span>&#160;        <span class="keyword">typedef</span> <span class="keywordtype">double</span>                                  <a class="code" href="a00304.html#ga51d5266017d88f62737c1973923a7cf4">highp_f64</a>;</div>
-<div class="line"><a name="l00166"></a><span class="lineno"><a class="line" href="a00304.html#ga1d794d240091678f602e8de225b8d8c9">  166</a></span>&#160;        <span class="keyword">typedef</span> <span class="keywordtype">double</span>                                  <a class="code" href="a00304.html#ga1d794d240091678f602e8de225b8d8c9">f64</a>;</div>
-<div class="line"><a name="l00167"></a><span class="lineno">  167</span>&#160;</div>
-<div class="line"><a name="l00168"></a><span class="lineno"><a class="line" href="a00304.html#ga3714dab2c16a6545a405cb0c3b3aaa6f">  168</a></span>&#160;        <span class="keyword">typedef</span> <span class="keywordtype">double</span>                                  <a class="code" href="a00304.html#ga3714dab2c16a6545a405cb0c3b3aaa6f">lowp_float64</a>;</div>
-<div class="line"><a name="l00169"></a><span class="lineno"><a class="line" href="a00304.html#gab83d8aae6e4f115e97a785e8574a115f">  169</a></span>&#160;        <span class="keyword">typedef</span> <span class="keywordtype">double</span>                                  <a class="code" href="a00304.html#gab83d8aae6e4f115e97a785e8574a115f">mediump_float64</a>;</div>
-<div class="line"><a name="l00170"></a><span class="lineno"><a class="line" href="a00304.html#gadbb198a4d7aad82a0f4dc466ef6f6215">  170</a></span>&#160;        <span class="keyword">typedef</span> <span class="keywordtype">double</span>                                  <a class="code" href="a00304.html#gadbb198a4d7aad82a0f4dc466ef6f6215">highp_float64</a>;</div>
-<div class="line"><a name="l00171"></a><span class="lineno"><a class="line" href="a00304.html#ga232fad1b0d6dcc7c16aabde98b2e2a80">  171</a></span>&#160;        <span class="keyword">typedef</span> <span class="keywordtype">double</span>                                  <a class="code" href="a00304.html#ga232fad1b0d6dcc7c16aabde98b2e2a80">float64</a>;</div>
-<div class="line"><a name="l00172"></a><span class="lineno">  172</span>&#160;</div>
-<div class="line"><a name="l00173"></a><span class="lineno"><a class="line" href="a00304.html#ga7286a37076a09da140df18bfa75d4e38">  173</a></span>&#160;        <span class="keyword">typedef</span> <span class="keywordtype">double</span>                                  <a class="code" href="a00304.html#ga7286a37076a09da140df18bfa75d4e38">lowp_float64_t</a>;</div>
-<div class="line"><a name="l00174"></a><span class="lineno"><a class="line" href="a00304.html#gac61843e4fa96c1f4e9d8316454f32a8e">  174</a></span>&#160;        <span class="keyword">typedef</span> <span class="keywordtype">double</span>                                  <a class="code" href="a00304.html#gac61843e4fa96c1f4e9d8316454f32a8e">mediump_float64_t</a>;</div>
-<div class="line"><a name="l00175"></a><span class="lineno"><a class="line" href="a00304.html#gaaeeb0077198cff40e3f48b1108ece139">  175</a></span>&#160;        <span class="keyword">typedef</span> <span class="keywordtype">double</span>                                  <a class="code" href="a00304.html#gaaeeb0077198cff40e3f48b1108ece139">highp_float64_t</a>;</div>
-<div class="line"><a name="l00176"></a><span class="lineno"><a class="line" href="a00304.html#ga728366fef72cd96f0a5fa6429f05469e">  176</a></span>&#160;        <span class="keyword">typedef</span> <span class="keywordtype">double</span>                                  <a class="code" href="a00304.html#ga728366fef72cd96f0a5fa6429f05469e">float64_t</a>;</div>
-<div class="line"><a name="l00177"></a><span class="lineno">  177</span>&#160;</div>
-<div class="line"><a name="l00178"></a><span class="lineno">  178</span>&#160;        <span class="comment">// Vector bool</span></div>
-<div class="line"><a name="l00179"></a><span class="lineno">  179</span>&#160;</div>
-<div class="line"><a name="l00180"></a><span class="lineno">  180</span>&#160;        <span class="keyword">typedef</span> vec&lt;1, bool, lowp&gt;              <a class="code" href="a00266.html#ga24a3d364e2ddd444f5b9e7975bbef8f9">lowp_bvec1</a>;</div>
-<div class="line"><a name="l00181"></a><span class="lineno">  181</span>&#160;        <span class="keyword">typedef</span> vec&lt;2, bool, lowp&gt;              <a class="code" href="a00282.html#ga5a5452140650988b94d5716e4d872465">lowp_bvec2</a>;</div>
-<div class="line"><a name="l00182"></a><span class="lineno">  182</span>&#160;        <span class="keyword">typedef</span> vec&lt;3, bool, lowp&gt;              <a class="code" href="a00282.html#ga79e0922a977662a8fd39d7829be3908b">lowp_bvec3</a>;</div>
-<div class="line"><a name="l00183"></a><span class="lineno">  183</span>&#160;        <span class="keyword">typedef</span> vec&lt;4, bool, lowp&gt;              <a class="code" href="a00282.html#ga15ac87724048ab7169bb5d3572939dd3">lowp_bvec4</a>;</div>
-<div class="line"><a name="l00184"></a><span class="lineno">  184</span>&#160;</div>
-<div class="line"><a name="l00185"></a><span class="lineno">  185</span>&#160;        <span class="keyword">typedef</span> vec&lt;1, bool, mediump&gt;   <a class="code" href="a00266.html#ga7b4ccb989ba179fa44f7b0879c782621">mediump_bvec1</a>;</div>
-<div class="line"><a name="l00186"></a><span class="lineno">  186</span>&#160;        <span class="keyword">typedef</span> vec&lt;2, bool, mediump&gt;   <a class="code" href="a00282.html#ga1e743764869efa9223c2bcefccedaddc">mediump_bvec2</a>;</div>
-<div class="line"><a name="l00187"></a><span class="lineno">  187</span>&#160;        <span class="keyword">typedef</span> vec&lt;3, bool, mediump&gt;   <a class="code" href="a00282.html#ga50c783c25082882ef00fe2e5cddba4aa">mediump_bvec3</a>;</div>
-<div class="line"><a name="l00188"></a><span class="lineno">  188</span>&#160;        <span class="keyword">typedef</span> vec&lt;4, bool, mediump&gt;   <a class="code" href="a00282.html#ga0be2c682258604a35004f088782a9645">mediump_bvec4</a>;</div>
-<div class="line"><a name="l00189"></a><span class="lineno">  189</span>&#160;</div>
-<div class="line"><a name="l00190"></a><span class="lineno">  190</span>&#160;        <span class="keyword">typedef</span> vec&lt;1, bool, highp&gt;             <a class="code" href="a00266.html#gae8a1e14abae1387274f57741750c06a2">highp_bvec1</a>;</div>
-<div class="line"><a name="l00191"></a><span class="lineno">  191</span>&#160;        <span class="keyword">typedef</span> vec&lt;2, bool, highp&gt;             <a class="code" href="a00282.html#gac6c781a85f012d77a75310a3058702c2">highp_bvec2</a>;</div>
-<div class="line"><a name="l00192"></a><span class="lineno">  192</span>&#160;        <span class="keyword">typedef</span> vec&lt;3, bool, highp&gt;             <a class="code" href="a00282.html#gaedb70027d89a0a405046aefda4eabaa6">highp_bvec3</a>;</div>
-<div class="line"><a name="l00193"></a><span class="lineno">  193</span>&#160;        <span class="keyword">typedef</span> vec&lt;4, bool, highp&gt;             <a class="code" href="a00282.html#gaee663ff64429443ab07a5327074192f6">highp_bvec4</a>;</div>
-<div class="line"><a name="l00194"></a><span class="lineno">  194</span>&#160;</div>
-<div class="line"><a name="l00195"></a><span class="lineno">  195</span>&#160;        <span class="keyword">typedef</span> vec&lt;1, bool, defaultp&gt;  <a class="code" href="a00265.html#ga067af382616d93f8e850baae5154cdcc">bvec1</a>;</div>
-<div class="line"><a name="l00196"></a><span class="lineno">  196</span>&#160;        <span class="keyword">typedef</span> vec&lt;2, bool, defaultp&gt;  <a class="code" href="a00281.html#ga0b6123e03653cc1bbe366fc55238a934">bvec2</a>;</div>
-<div class="line"><a name="l00197"></a><span class="lineno">  197</span>&#160;        <span class="keyword">typedef</span> vec&lt;3, bool, defaultp&gt;  <a class="code" href="a00281.html#ga197151b72dfaf289daf98b361760ffe7">bvec3</a>;</div>
-<div class="line"><a name="l00198"></a><span class="lineno">  198</span>&#160;        <span class="keyword">typedef</span> vec&lt;4, bool, defaultp&gt;  <a class="code" href="a00281.html#ga9f7b9712373ff4342d9114619b55f5e3">bvec4</a>;</div>
-<div class="line"><a name="l00199"></a><span class="lineno">  199</span>&#160;</div>
-<div class="line"><a name="l00200"></a><span class="lineno">  200</span>&#160;        <span class="comment">// Vector int</span></div>
-<div class="line"><a name="l00201"></a><span class="lineno">  201</span>&#160;</div>
-<div class="line"><a name="l00202"></a><span class="lineno">  202</span>&#160;        <span class="keyword">typedef</span> vec&lt;1, i32, lowp&gt;               <a class="code" href="a00273.html#ga836dbb1dc516c233b7f5fe9763bc15dc">lowp_ivec1</a>;</div>
-<div class="line"><a name="l00203"></a><span class="lineno">  203</span>&#160;        <span class="keyword">typedef</span> vec&lt;2, i32, lowp&gt;               <a class="code" href="a00282.html#ga8433c6c1fdd80c0a83941d94aff73fa0">lowp_ivec2</a>;</div>
-<div class="line"><a name="l00204"></a><span class="lineno">  204</span>&#160;        <span class="keyword">typedef</span> vec&lt;3, i32, lowp&gt;               <a class="code" href="a00282.html#gac1a86a75b3c68ebb704d7094043669d6">lowp_ivec3</a>;</div>
-<div class="line"><a name="l00205"></a><span class="lineno">  205</span>&#160;        <span class="keyword">typedef</span> vec&lt;4, i32, lowp&gt;               <a class="code" href="a00282.html#ga27fc23da61859cd6356326c5f1c796de">lowp_ivec4</a>;</div>
-<div class="line"><a name="l00206"></a><span class="lineno">  206</span>&#160;</div>
-<div class="line"><a name="l00207"></a><span class="lineno">  207</span>&#160;        <span class="keyword">typedef</span> vec&lt;1, i32, mediump&gt;    <a class="code" href="a00273.html#gad628c608970b3d0aa6cfb63ce6e53e56">mediump_ivec1</a>;</div>
-<div class="line"><a name="l00208"></a><span class="lineno">  208</span>&#160;        <span class="keyword">typedef</span> vec&lt;2, i32, mediump&gt;    <a class="code" href="a00282.html#gac57496299d276ed97044074097bd5e2c">mediump_ivec2</a>;</div>
-<div class="line"><a name="l00209"></a><span class="lineno">  209</span>&#160;        <span class="keyword">typedef</span> vec&lt;3, i32, mediump&gt;    <a class="code" href="a00282.html#ga27cfb51e0dbe15bba27a14a8590e8466">mediump_ivec3</a>;</div>
-<div class="line"><a name="l00210"></a><span class="lineno">  210</span>&#160;        <span class="keyword">typedef</span> vec&lt;4, i32, mediump&gt;    <a class="code" href="a00282.html#ga92a204c37e66ac6c1dc7ae91142f2ea5">mediump_ivec4</a>;</div>
-<div class="line"><a name="l00211"></a><span class="lineno">  211</span>&#160;</div>
-<div class="line"><a name="l00212"></a><span class="lineno">  212</span>&#160;        <span class="keyword">typedef</span> vec&lt;1, i32, highp&gt;              <a class="code" href="a00273.html#ga7e02566f2bd2caa68e61be45a477c77e">highp_ivec1</a>;</div>
-<div class="line"><a name="l00213"></a><span class="lineno">  213</span>&#160;        <span class="keyword">typedef</span> vec&lt;2, i32, highp&gt;              <a class="code" href="a00282.html#gaa18f6b80b41c214f10666948539c1f93">highp_ivec2</a>;</div>
-<div class="line"><a name="l00214"></a><span class="lineno">  214</span>&#160;        <span class="keyword">typedef</span> vec&lt;3, i32, highp&gt;              <a class="code" href="a00282.html#ga7dd782c3ef5719bc6d5c3ca826b8ad18">highp_ivec3</a>;</div>
-<div class="line"><a name="l00215"></a><span class="lineno">  215</span>&#160;        <span class="keyword">typedef</span> vec&lt;4, i32, highp&gt;              <a class="code" href="a00282.html#gafb84dccdf5d82443df3ffc8428dcaf3e">highp_ivec4</a>;</div>
-<div class="line"><a name="l00216"></a><span class="lineno">  216</span>&#160;</div>
-<div class="line"><a name="l00217"></a><span class="lineno">  217</span>&#160;        <span class="keyword">typedef</span> vec&lt;1, i32, defaultp&gt;   <a class="code" href="a00272.html#gaedd0562c2e77714929d7723a7e2e0dba">ivec1</a>;</div>
-<div class="line"><a name="l00218"></a><span class="lineno">  218</span>&#160;        <span class="keyword">typedef</span> vec&lt;2, i32, defaultp&gt;   <a class="code" href="a00281.html#ga6f9269106d91b2d2b91bcf27cd5f5560">ivec2</a>;</div>
-<div class="line"><a name="l00219"></a><span class="lineno">  219</span>&#160;        <span class="keyword">typedef</span> vec&lt;3, i32, defaultp&gt;   <a class="code" href="a00281.html#gad0d784d8eee201aca362484d2daee46c">ivec3</a>;</div>
-<div class="line"><a name="l00220"></a><span class="lineno">  220</span>&#160;        <span class="keyword">typedef</span> vec&lt;4, i32, defaultp&gt;   <a class="code" href="a00281.html#ga5abb4603dae0ce58c595e66d9123d812">ivec4</a>;</div>
-<div class="line"><a name="l00221"></a><span class="lineno">  221</span>&#160;</div>
-<div class="line"><a name="l00222"></a><span class="lineno"><a class="line" href="a00304.html#ga036d6c7ca9fbbdc5f3871bfcb937c85c">  222</a></span>&#160;        <span class="keyword">typedef</span> vec&lt;1, i8, lowp&gt;                <a class="code" href="a00304.html#ga036d6c7ca9fbbdc5f3871bfcb937c85c">lowp_i8vec1</a>;</div>
-<div class="line"><a name="l00223"></a><span class="lineno"><a class="line" href="a00304.html#gac03e5099d27eeaa74b6016ea435a1df2">  223</a></span>&#160;        <span class="keyword">typedef</span> vec&lt;2, i8, lowp&gt;                <a class="code" href="a00304.html#gac03e5099d27eeaa74b6016ea435a1df2">lowp_i8vec2</a>;</div>
-<div class="line"><a name="l00224"></a><span class="lineno"><a class="line" href="a00304.html#gae2f43ace6b5b33ab49516d9e40af1845">  224</a></span>&#160;        <span class="keyword">typedef</span> vec&lt;3, i8, lowp&gt;                <a class="code" href="a00304.html#gae2f43ace6b5b33ab49516d9e40af1845">lowp_i8vec3</a>;</div>
-<div class="line"><a name="l00225"></a><span class="lineno"><a class="line" href="a00304.html#ga6d388e9b9aa1b389f0672d9c7dfc61c5">  225</a></span>&#160;        <span class="keyword">typedef</span> vec&lt;4, i8, lowp&gt;                <a class="code" href="a00304.html#ga6d388e9b9aa1b389f0672d9c7dfc61c5">lowp_i8vec4</a>;</div>
-<div class="line"><a name="l00226"></a><span class="lineno">  226</span>&#160;</div>
-<div class="line"><a name="l00227"></a><span class="lineno"><a class="line" href="a00304.html#ga85e8893f4ae3630065690a9000c0c483">  227</a></span>&#160;        <span class="keyword">typedef</span> vec&lt;1, i8, mediump&gt;             <a class="code" href="a00304.html#ga85e8893f4ae3630065690a9000c0c483">mediump_i8vec1</a>;</div>
-<div class="line"><a name="l00228"></a><span class="lineno"><a class="line" href="a00304.html#ga2a8bdc32184ea0a522ef7bd90640cf67">  228</a></span>&#160;        <span class="keyword">typedef</span> vec&lt;2, i8, mediump&gt;             <a class="code" href="a00304.html#ga2a8bdc32184ea0a522ef7bd90640cf67">mediump_i8vec2</a>;</div>
-<div class="line"><a name="l00229"></a><span class="lineno"><a class="line" href="a00304.html#ga6dd1c1618378c6f94d522a61c28773c9">  229</a></span>&#160;        <span class="keyword">typedef</span> vec&lt;3, i8, mediump&gt;             <a class="code" href="a00304.html#ga6dd1c1618378c6f94d522a61c28773c9">mediump_i8vec3</a>;</div>
-<div class="line"><a name="l00230"></a><span class="lineno"><a class="line" href="a00304.html#gac7bb04fb857ef7b520e49f6c381432be">  230</a></span>&#160;        <span class="keyword">typedef</span> vec&lt;4, i8, mediump&gt;             <a class="code" href="a00304.html#gac7bb04fb857ef7b520e49f6c381432be">mediump_i8vec4</a>;</div>
-<div class="line"><a name="l00231"></a><span class="lineno">  231</span>&#160;</div>
-<div class="line"><a name="l00232"></a><span class="lineno"><a class="line" href="a00304.html#ga1d8c10949691b0fd990253476f47beb3">  232</a></span>&#160;        <span class="keyword">typedef</span> vec&lt;1, i8, highp&gt;               <a class="code" href="a00304.html#ga1d8c10949691b0fd990253476f47beb3">highp_i8vec1</a>;</div>
-<div class="line"><a name="l00233"></a><span class="lineno"><a class="line" href="a00304.html#ga50542e4cb9b2f9bec213b66e06145d07">  233</a></span>&#160;        <span class="keyword">typedef</span> vec&lt;2, i8, highp&gt;               <a class="code" href="a00304.html#ga50542e4cb9b2f9bec213b66e06145d07">highp_i8vec2</a>;</div>
-<div class="line"><a name="l00234"></a><span class="lineno"><a class="line" href="a00304.html#ga8396bfdc081d9113190d0c39c9f67084">  234</a></span>&#160;        <span class="keyword">typedef</span> vec&lt;3, i8, highp&gt;               <a class="code" href="a00304.html#ga8396bfdc081d9113190d0c39c9f67084">highp_i8vec3</a>;</div>
-<div class="line"><a name="l00235"></a><span class="lineno"><a class="line" href="a00304.html#ga4824e3ddf6e608117dfe4809430737b4">  235</a></span>&#160;        <span class="keyword">typedef</span> vec&lt;4, i8, highp&gt;               <a class="code" href="a00304.html#ga4824e3ddf6e608117dfe4809430737b4">highp_i8vec4</a>;</div>
-<div class="line"><a name="l00236"></a><span class="lineno">  236</span>&#160;</div>
-<div class="line"><a name="l00237"></a><span class="lineno"><a class="line" href="a00304.html#ga7e80d927ff0a3861ced68dfff8a4020b">  237</a></span>&#160;        <span class="keyword">typedef</span> vec&lt;1, i8, defaultp&gt;    <a class="code" href="a00304.html#ga7e80d927ff0a3861ced68dfff8a4020b">i8vec1</a>;</div>
-<div class="line"><a name="l00238"></a><span class="lineno"><a class="line" href="a00304.html#gad06935764d78f43f9d542c784c2212ec">  238</a></span>&#160;        <span class="keyword">typedef</span> vec&lt;2, i8, defaultp&gt;    <a class="code" href="a00304.html#gad06935764d78f43f9d542c784c2212ec">i8vec2</a>;</div>
-<div class="line"><a name="l00239"></a><span class="lineno"><a class="line" href="a00304.html#ga5a08d36cf7917cd19d081a603d0eae3e">  239</a></span>&#160;        <span class="keyword">typedef</span> vec&lt;3, i8, defaultp&gt;    <a class="code" href="a00304.html#ga5a08d36cf7917cd19d081a603d0eae3e">i8vec3</a>;</div>
-<div class="line"><a name="l00240"></a><span class="lineno"><a class="line" href="a00304.html#ga4177a44206121dabc8c4ff1c0f544574">  240</a></span>&#160;        <span class="keyword">typedef</span> vec&lt;4, i8, defaultp&gt;    <a class="code" href="a00304.html#ga4177a44206121dabc8c4ff1c0f544574">i8vec4</a>;</div>
-<div class="line"><a name="l00241"></a><span class="lineno">  241</span>&#160;</div>
-<div class="line"><a name="l00242"></a><span class="lineno"><a class="line" href="a00304.html#ga501a2f313f1c220eef4ab02bdabdc3c6">  242</a></span>&#160;        <span class="keyword">typedef</span> vec&lt;1, i16, lowp&gt;               <a class="code" href="a00304.html#ga501a2f313f1c220eef4ab02bdabdc3c6">lowp_i16vec1</a>;</div>
-<div class="line"><a name="l00243"></a><span class="lineno"><a class="line" href="a00304.html#ga7cac84b520a6b57f2fbd880d3d63c51b">  243</a></span>&#160;        <span class="keyword">typedef</span> vec&lt;2, i16, lowp&gt;               <a class="code" href="a00304.html#ga7cac84b520a6b57f2fbd880d3d63c51b">lowp_i16vec2</a>;</div>
-<div class="line"><a name="l00244"></a><span class="lineno"><a class="line" href="a00304.html#gab69ef9cbc2a9214bf5596c528c801b72">  244</a></span>&#160;        <span class="keyword">typedef</span> vec&lt;3, i16, lowp&gt;               <a class="code" href="a00304.html#gab69ef9cbc2a9214bf5596c528c801b72">lowp_i16vec3</a>;</div>
-<div class="line"><a name="l00245"></a><span class="lineno"><a class="line" href="a00304.html#ga1d47d94d17c2406abdd1f087a816e387">  245</a></span>&#160;        <span class="keyword">typedef</span> vec&lt;4, i16, lowp&gt;               <a class="code" href="a00304.html#ga1d47d94d17c2406abdd1f087a816e387">lowp_i16vec4</a>;</div>
-<div class="line"><a name="l00246"></a><span class="lineno">  246</span>&#160;</div>
-<div class="line"><a name="l00247"></a><span class="lineno"><a class="line" href="a00304.html#gacc44265ed440bf5e6e566782570de842">  247</a></span>&#160;        <span class="keyword">typedef</span> vec&lt;1, i16, mediump&gt;    <a class="code" href="a00304.html#gacc44265ed440bf5e6e566782570de842">mediump_i16vec1</a>;</div>
-<div class="line"><a name="l00248"></a><span class="lineno"><a class="line" href="a00304.html#ga4b5e2c9aaa5d7717bf71179aefa12e88">  248</a></span>&#160;        <span class="keyword">typedef</span> vec&lt;2, i16, mediump&gt;    <a class="code" href="a00304.html#ga4b5e2c9aaa5d7717bf71179aefa12e88">mediump_i16vec2</a>;</div>
-<div class="line"><a name="l00249"></a><span class="lineno"><a class="line" href="a00304.html#ga3be6c7fc5fe08fa2274bdb001d5f2633">  249</a></span>&#160;        <span class="keyword">typedef</span> vec&lt;3, i16, mediump&gt;    <a class="code" href="a00304.html#ga3be6c7fc5fe08fa2274bdb001d5f2633">mediump_i16vec3</a>;</div>
-<div class="line"><a name="l00250"></a><span class="lineno"><a class="line" href="a00304.html#gaf52982bb23e3a3772649b2c5bb84b107">  250</a></span>&#160;        <span class="keyword">typedef</span> vec&lt;4, i16, mediump&gt;    <a class="code" href="a00304.html#gaf52982bb23e3a3772649b2c5bb84b107">mediump_i16vec4</a>;</div>
-<div class="line"><a name="l00251"></a><span class="lineno">  251</span>&#160;</div>
-<div class="line"><a name="l00252"></a><span class="lineno"><a class="line" href="a00304.html#ga70fdfcc1fd38084bde83c3f06a8b9f19">  252</a></span>&#160;        <span class="keyword">typedef</span> vec&lt;1, i16, highp&gt;              <a class="code" href="a00304.html#ga70fdfcc1fd38084bde83c3f06a8b9f19">highp_i16vec1</a>;</div>
-<div class="line"><a name="l00253"></a><span class="lineno"><a class="line" href="a00304.html#gaa7db3ad10947cf70cae6474d05ebd227">  253</a></span>&#160;        <span class="keyword">typedef</span> vec&lt;2, i16, highp&gt;              <a class="code" href="a00304.html#gaa7db3ad10947cf70cae6474d05ebd227">highp_i16vec2</a>;</div>
-<div class="line"><a name="l00254"></a><span class="lineno"><a class="line" href="a00304.html#ga5609c8fa2b7eac3dec337d321cb0ca96">  254</a></span>&#160;        <span class="keyword">typedef</span> vec&lt;3, i16, highp&gt;              <a class="code" href="a00304.html#ga5609c8fa2b7eac3dec337d321cb0ca96">highp_i16vec3</a>;</div>
-<div class="line"><a name="l00255"></a><span class="lineno"><a class="line" href="a00304.html#ga7a18659438828f91ccca28f1a1e067b4">  255</a></span>&#160;        <span class="keyword">typedef</span> vec&lt;4, i16, highp&gt;              <a class="code" href="a00304.html#ga7a18659438828f91ccca28f1a1e067b4">highp_i16vec4</a>;</div>
-<div class="line"><a name="l00256"></a><span class="lineno">  256</span>&#160;</div>
-<div class="line"><a name="l00257"></a><span class="lineno"><a class="line" href="a00304.html#gafe730798732aa7b0647096a004db1b1c">  257</a></span>&#160;        <span class="keyword">typedef</span> vec&lt;1, i16, defaultp&gt;   <a class="code" href="a00304.html#gafe730798732aa7b0647096a004db1b1c">i16vec1</a>;</div>
-<div class="line"><a name="l00258"></a><span class="lineno"><a class="line" href="a00304.html#ga2996630ba7b10535af8e065cf326f761">  258</a></span>&#160;        <span class="keyword">typedef</span> vec&lt;2, i16, defaultp&gt;   <a class="code" href="a00304.html#ga2996630ba7b10535af8e065cf326f761">i16vec2</a>;</div>
-<div class="line"><a name="l00259"></a><span class="lineno"><a class="line" href="a00304.html#gae9c90a867a6026b1f6eab00456f3fb8b">  259</a></span>&#160;        <span class="keyword">typedef</span> vec&lt;3, i16, defaultp&gt;   <a class="code" href="a00304.html#gae9c90a867a6026b1f6eab00456f3fb8b">i16vec3</a>;</div>
-<div class="line"><a name="l00260"></a><span class="lineno"><a class="line" href="a00304.html#ga550831bfc26d1e0101c1cb3d79938c06">  260</a></span>&#160;        <span class="keyword">typedef</span> vec&lt;4, i16, defaultp&gt;   <a class="code" href="a00304.html#ga550831bfc26d1e0101c1cb3d79938c06">i16vec4</a>;</div>
-<div class="line"><a name="l00261"></a><span class="lineno">  261</span>&#160;</div>
-<div class="line"><a name="l00262"></a><span class="lineno"><a class="line" href="a00304.html#gae31ac3608cf643ceffd6554874bec4a0">  262</a></span>&#160;        <span class="keyword">typedef</span> vec&lt;1, i32, lowp&gt;               <a class="code" href="a00304.html#gae31ac3608cf643ceffd6554874bec4a0">lowp_i32vec1</a>;</div>
-<div class="line"><a name="l00263"></a><span class="lineno"><a class="line" href="a00304.html#ga867a3c2d99ab369a454167d2c0a24dbd">  263</a></span>&#160;        <span class="keyword">typedef</span> vec&lt;2, i32, lowp&gt;               <a class="code" href="a00304.html#ga867a3c2d99ab369a454167d2c0a24dbd">lowp_i32vec2</a>;</div>
-<div class="line"><a name="l00264"></a><span class="lineno"><a class="line" href="a00304.html#ga5fe17c87ede1b1b4d92454cff4da076d">  264</a></span>&#160;        <span class="keyword">typedef</span> vec&lt;3, i32, lowp&gt;               <a class="code" href="a00304.html#ga5fe17c87ede1b1b4d92454cff4da076d">lowp_i32vec3</a>;</div>
-<div class="line"><a name="l00265"></a><span class="lineno"><a class="line" href="a00304.html#gac9b2eb4296ffe50a32eacca9ed932c08">  265</a></span>&#160;        <span class="keyword">typedef</span> vec&lt;4, i32, lowp&gt;               <a class="code" href="a00304.html#gac9b2eb4296ffe50a32eacca9ed932c08">lowp_i32vec4</a>;</div>
-<div class="line"><a name="l00266"></a><span class="lineno">  266</span>&#160;</div>
-<div class="line"><a name="l00267"></a><span class="lineno"><a class="line" href="a00304.html#ga46a57f71e430637559097a732b550a7e">  267</a></span>&#160;        <span class="keyword">typedef</span> vec&lt;1, i32, mediump&gt;    <a class="code" href="a00304.html#ga46a57f71e430637559097a732b550a7e">mediump_i32vec1</a>;</div>
-<div class="line"><a name="l00268"></a><span class="lineno"><a class="line" href="a00304.html#ga20bf224bd4f8a24ecc4ed2004a40c219">  268</a></span>&#160;        <span class="keyword">typedef</span> vec&lt;2, i32, mediump&gt;    <a class="code" href="a00304.html#ga20bf224bd4f8a24ecc4ed2004a40c219">mediump_i32vec2</a>;</div>
-<div class="line"><a name="l00269"></a><span class="lineno"><a class="line" href="a00304.html#ga13a221b910aa9eb1b04ca1c86e81015a">  269</a></span>&#160;        <span class="keyword">typedef</span> vec&lt;3, i32, mediump&gt;    <a class="code" href="a00304.html#ga13a221b910aa9eb1b04ca1c86e81015a">mediump_i32vec3</a>;</div>
-<div class="line"><a name="l00270"></a><span class="lineno"><a class="line" href="a00304.html#ga6addd4dfee87fc09ab9525e3d07db4c8">  270</a></span>&#160;        <span class="keyword">typedef</span> vec&lt;4, i32, mediump&gt;    <a class="code" href="a00304.html#ga6addd4dfee87fc09ab9525e3d07db4c8">mediump_i32vec4</a>;</div>
-<div class="line"><a name="l00271"></a><span class="lineno">  271</span>&#160;</div>
-<div class="line"><a name="l00272"></a><span class="lineno"><a class="line" href="a00304.html#ga6a9d71cc62745302f70422b7dc98755c">  272</a></span>&#160;        <span class="keyword">typedef</span> vec&lt;1, i32, highp&gt;              <a class="code" href="a00304.html#ga6a9d71cc62745302f70422b7dc98755c">highp_i32vec1</a>;</div>
-<div class="line"><a name="l00273"></a><span class="lineno"><a class="line" href="a00304.html#gaa9b4579f8e6f3d9b649a965bcb785530">  273</a></span>&#160;        <span class="keyword">typedef</span> vec&lt;2, i32, highp&gt;              <a class="code" href="a00304.html#gaa9b4579f8e6f3d9b649a965bcb785530">highp_i32vec2</a>;</div>
-<div class="line"><a name="l00274"></a><span class="lineno"><a class="line" href="a00304.html#ga31e070ea3bdee623e6e18a61ba5718b1">  274</a></span>&#160;        <span class="keyword">typedef</span> vec&lt;3, i32, highp&gt;              <a class="code" href="a00304.html#ga31e070ea3bdee623e6e18a61ba5718b1">highp_i32vec3</a>;</div>
-<div class="line"><a name="l00275"></a><span class="lineno"><a class="line" href="a00304.html#gadf70eaaa230aeed5a4c9f4c9c5c55902">  275</a></span>&#160;        <span class="keyword">typedef</span> vec&lt;4, i32, highp&gt;              <a class="code" href="a00304.html#gadf70eaaa230aeed5a4c9f4c9c5c55902">highp_i32vec4</a>;</div>
-<div class="line"><a name="l00276"></a><span class="lineno">  276</span>&#160;</div>
-<div class="line"><a name="l00277"></a><span class="lineno"><a class="line" href="a00304.html#ga54b8a4e0f5a7203a821bf8e9c1265bcf">  277</a></span>&#160;        <span class="keyword">typedef</span> vec&lt;1, i32, defaultp&gt;   <a class="code" href="a00304.html#ga54b8a4e0f5a7203a821bf8e9c1265bcf">i32vec1</a>;</div>
-<div class="line"><a name="l00278"></a><span class="lineno"><a class="line" href="a00304.html#ga8b44026374982dcd1e52d22bac99247e">  278</a></span>&#160;        <span class="keyword">typedef</span> vec&lt;2, i32, defaultp&gt;   <a class="code" href="a00304.html#ga8b44026374982dcd1e52d22bac99247e">i32vec2</a>;</div>
-<div class="line"><a name="l00279"></a><span class="lineno"><a class="line" href="a00304.html#ga7f526b5cccef126a2ebcf9bdd890394e">  279</a></span>&#160;        <span class="keyword">typedef</span> vec&lt;3, i32, defaultp&gt;   <a class="code" href="a00304.html#ga7f526b5cccef126a2ebcf9bdd890394e">i32vec3</a>;</div>
-<div class="line"><a name="l00280"></a><span class="lineno"><a class="line" href="a00304.html#ga866a05905c49912309ed1fa5f5980e61">  280</a></span>&#160;        <span class="keyword">typedef</span> vec&lt;4, i32, defaultp&gt;   <a class="code" href="a00304.html#ga866a05905c49912309ed1fa5f5980e61">i32vec4</a>;</div>
-<div class="line"><a name="l00281"></a><span class="lineno">  281</span>&#160;</div>
-<div class="line"><a name="l00282"></a><span class="lineno"><a class="line" href="a00304.html#gab0f7d875db5f3cc9f3168c5a0ed56437">  282</a></span>&#160;        <span class="keyword">typedef</span> vec&lt;1, i64, lowp&gt;               <a class="code" href="a00304.html#gab0f7d875db5f3cc9f3168c5a0ed56437">lowp_i64vec1</a>;</div>
-<div class="line"><a name="l00283"></a><span class="lineno"><a class="line" href="a00304.html#gab485c48f06a4fdd6b8d58d343bb49f3c">  283</a></span>&#160;        <span class="keyword">typedef</span> vec&lt;2, i64, lowp&gt;               <a class="code" href="a00304.html#gab485c48f06a4fdd6b8d58d343bb49f3c">lowp_i64vec2</a>;</div>
-<div class="line"><a name="l00284"></a><span class="lineno"><a class="line" href="a00304.html#ga5cb1dc9e8d300c2cdb0d7ff2308fa36c">  284</a></span>&#160;        <span class="keyword">typedef</span> vec&lt;3, i64, lowp&gt;               <a class="code" href="a00304.html#ga5cb1dc9e8d300c2cdb0d7ff2308fa36c">lowp_i64vec3</a>;</div>
-<div class="line"><a name="l00285"></a><span class="lineno"><a class="line" href="a00304.html#gabb4229a4c1488bf063eed0c45355bb9c">  285</a></span>&#160;        <span class="keyword">typedef</span> vec&lt;4, i64, lowp&gt;               <a class="code" href="a00304.html#gabb4229a4c1488bf063eed0c45355bb9c">lowp_i64vec4</a>;</div>
-<div class="line"><a name="l00286"></a><span class="lineno">  286</span>&#160;</div>
-<div class="line"><a name="l00287"></a><span class="lineno"><a class="line" href="a00304.html#ga8343e9d244fb17a5bbf0d94d36b3695e">  287</a></span>&#160;        <span class="keyword">typedef</span> vec&lt;1, i64, mediump&gt;    <a class="code" href="a00304.html#ga8343e9d244fb17a5bbf0d94d36b3695e">mediump_i64vec1</a>;</div>
-<div class="line"><a name="l00288"></a><span class="lineno"><a class="line" href="a00304.html#ga2c94aeae3457325944ca1059b0b68330">  288</a></span>&#160;        <span class="keyword">typedef</span> vec&lt;2, i64, mediump&gt;    <a class="code" href="a00304.html#ga2c94aeae3457325944ca1059b0b68330">mediump_i64vec2</a>;</div>
-<div class="line"><a name="l00289"></a><span class="lineno"><a class="line" href="a00304.html#ga8089722ffdf868cdfe721dea1fb6a90e">  289</a></span>&#160;        <span class="keyword">typedef</span> vec&lt;3, i64, mediump&gt;    <a class="code" href="a00304.html#ga8089722ffdf868cdfe721dea1fb6a90e">mediump_i64vec3</a>;</div>
-<div class="line"><a name="l00290"></a><span class="lineno"><a class="line" href="a00304.html#gabf1f16c5ab8cb0484bd1e846ae4368f1">  290</a></span>&#160;        <span class="keyword">typedef</span> vec&lt;4, i64, mediump&gt;    <a class="code" href="a00304.html#gabf1f16c5ab8cb0484bd1e846ae4368f1">mediump_i64vec4</a>;</div>
-<div class="line"><a name="l00291"></a><span class="lineno">  291</span>&#160;</div>
-<div class="line"><a name="l00292"></a><span class="lineno"><a class="line" href="a00304.html#gabd2fda3cd208acf5a370ec9b5b3c58d4">  292</a></span>&#160;        <span class="keyword">typedef</span> vec&lt;1, i64, highp&gt;              <a class="code" href="a00304.html#gabd2fda3cd208acf5a370ec9b5b3c58d4">highp_i64vec1</a>;</div>
-<div class="line"><a name="l00293"></a><span class="lineno"><a class="line" href="a00304.html#gad9d1903cb20899966e8ebe0670889a5f">  293</a></span>&#160;        <span class="keyword">typedef</span> vec&lt;2, i64, highp&gt;              <a class="code" href="a00304.html#gad9d1903cb20899966e8ebe0670889a5f">highp_i64vec2</a>;</div>
-<div class="line"><a name="l00294"></a><span class="lineno"><a class="line" href="a00304.html#ga62324224b9c6cce9c6b4db96bb704a8a">  294</a></span>&#160;        <span class="keyword">typedef</span> vec&lt;3, i64, highp&gt;              <a class="code" href="a00304.html#ga62324224b9c6cce9c6b4db96bb704a8a">highp_i64vec3</a>;</div>
-<div class="line"><a name="l00295"></a><span class="lineno"><a class="line" href="a00304.html#gad23b1be9b3bf20352089a6b738f0ebba">  295</a></span>&#160;        <span class="keyword">typedef</span> vec&lt;4, i64, highp&gt;              <a class="code" href="a00304.html#gad23b1be9b3bf20352089a6b738f0ebba">highp_i64vec4</a>;</div>
-<div class="line"><a name="l00296"></a><span class="lineno">  296</span>&#160;</div>
-<div class="line"><a name="l00297"></a><span class="lineno"><a class="line" href="a00304.html#ga2b65767f8b5aed1bd1cf86c541662b50">  297</a></span>&#160;        <span class="keyword">typedef</span> vec&lt;1, i64, defaultp&gt;   <a class="code" href="a00304.html#ga2b65767f8b5aed1bd1cf86c541662b50">i64vec1</a>;</div>
-<div class="line"><a name="l00298"></a><span class="lineno"><a class="line" href="a00304.html#ga48310188e1d0c616bf8d78c92447523b">  298</a></span>&#160;        <span class="keyword">typedef</span> vec&lt;2, i64, defaultp&gt;   <a class="code" href="a00304.html#ga48310188e1d0c616bf8d78c92447523b">i64vec2</a>;</div>
-<div class="line"><a name="l00299"></a><span class="lineno"><a class="line" href="a00304.html#ga667948cfe6fb3d6606c750729ec49f77">  299</a></span>&#160;        <span class="keyword">typedef</span> vec&lt;3, i64, defaultp&gt;   <a class="code" href="a00304.html#ga667948cfe6fb3d6606c750729ec49f77">i64vec3</a>;</div>
-<div class="line"><a name="l00300"></a><span class="lineno"><a class="line" href="a00304.html#gaa4e31c3d9de067029efeb161a44b0232">  300</a></span>&#160;        <span class="keyword">typedef</span> vec&lt;4, i64, defaultp&gt;   <a class="code" href="a00304.html#gaa4e31c3d9de067029efeb161a44b0232">i64vec4</a>;</div>
-<div class="line"><a name="l00301"></a><span class="lineno">  301</span>&#160;</div>
-<div class="line"><a name="l00302"></a><span class="lineno">  302</span>&#160;        <span class="comment">// Vector uint</span></div>
-<div class="line"><a name="l00303"></a><span class="lineno">  303</span>&#160;</div>
-<div class="line"><a name="l00304"></a><span class="lineno">  304</span>&#160;        <span class="keyword">typedef</span> vec&lt;1, u32, lowp&gt;               <a class="code" href="a00277.html#ga8bf3fc8a7863d140f48b29341c750402">lowp_uvec1</a>;</div>
-<div class="line"><a name="l00305"></a><span class="lineno">  305</span>&#160;        <span class="keyword">typedef</span> vec&lt;2, u32, lowp&gt;               <a class="code" href="a00282.html#ga752ee45136011301b64afd8c310c47a4">lowp_uvec2</a>;</div>
-<div class="line"><a name="l00306"></a><span class="lineno">  306</span>&#160;        <span class="keyword">typedef</span> vec&lt;3, u32, lowp&gt;               <a class="code" href="a00282.html#ga7b2efbdd6bdc2f8250c57f3e5dc9a292">lowp_uvec3</a>;</div>
-<div class="line"><a name="l00307"></a><span class="lineno">  307</span>&#160;        <span class="keyword">typedef</span> vec&lt;4, u32, lowp&gt;               <a class="code" href="a00282.html#ga5e6a632ec1165cf9f54ceeaa5e9b2b1e">lowp_uvec4</a>;</div>
-<div class="line"><a name="l00308"></a><span class="lineno">  308</span>&#160;</div>
-<div class="line"><a name="l00309"></a><span class="lineno">  309</span>&#160;        <span class="keyword">typedef</span> vec&lt;1, u32, mediump&gt;    <a class="code" href="a00277.html#ga38fde73aaf1420175ece8d4882558a3f">mediump_uvec1</a>;</div>
-<div class="line"><a name="l00310"></a><span class="lineno">  310</span>&#160;        <span class="keyword">typedef</span> vec&lt;2, u32, mediump&gt;    <a class="code" href="a00282.html#gaa3b4f7806dad03d83bb3da0baa1e3b9b">mediump_uvec2</a>;</div>
-<div class="line"><a name="l00311"></a><span class="lineno">  311</span>&#160;        <span class="keyword">typedef</span> vec&lt;3, u32, mediump&gt;    <a class="code" href="a00282.html#ga83b7df38feefbb357f3673d950fafef7">mediump_uvec3</a>;</div>
-<div class="line"><a name="l00312"></a><span class="lineno">  312</span>&#160;        <span class="keyword">typedef</span> vec&lt;4, u32, mediump&gt;    <a class="code" href="a00282.html#ga64ed0deb6573375b7016daf82ffd53a7">mediump_uvec4</a>;</div>
-<div class="line"><a name="l00313"></a><span class="lineno">  313</span>&#160;</div>
-<div class="line"><a name="l00314"></a><span class="lineno">  314</span>&#160;        <span class="keyword">typedef</span> vec&lt;1, u32, highp&gt;              <a class="code" href="a00277.html#gacda57dd8c2bff4934c7f09ddd87c0f39">highp_uvec1</a>;</div>
-<div class="line"><a name="l00315"></a><span class="lineno">  315</span>&#160;        <span class="keyword">typedef</span> vec&lt;2, u32, highp&gt;              <a class="code" href="a00282.html#gad5dd50da9e37387ca6b4e6f9c80fe6f8">highp_uvec2</a>;</div>
-<div class="line"><a name="l00316"></a><span class="lineno">  316</span>&#160;        <span class="keyword">typedef</span> vec&lt;3, u32, highp&gt;              <a class="code" href="a00282.html#gaef61508dd40ec523416697982f9ceaae">highp_uvec3</a>;</div>
-<div class="line"><a name="l00317"></a><span class="lineno">  317</span>&#160;        <span class="keyword">typedef</span> vec&lt;4, u32, highp&gt;              <a class="code" href="a00282.html#gaeebd7dd9f3e678691f8620241e5f9221">highp_uvec4</a>;</div>
-<div class="line"><a name="l00318"></a><span class="lineno">  318</span>&#160;</div>
-<div class="line"><a name="l00319"></a><span class="lineno">  319</span>&#160;        <span class="keyword">typedef</span> vec&lt;1, u32, defaultp&gt;   <a class="code" href="a00276.html#gac3bdd96183d23876c58a1424585fefe7">uvec1</a>;</div>
-<div class="line"><a name="l00320"></a><span class="lineno">  320</span>&#160;        <span class="keyword">typedef</span> vec&lt;2, u32, defaultp&gt;   <a class="code" href="a00281.html#ga2f6d9ec3ae14813ade37d6aee3715fdb">uvec2</a>;</div>
-<div class="line"><a name="l00321"></a><span class="lineno">  321</span>&#160;        <span class="keyword">typedef</span> vec&lt;3, u32, defaultp&gt;   <a class="code" href="a00281.html#ga3d3e55874babd4bf93baa7bbc83ae418">uvec3</a>;</div>
-<div class="line"><a name="l00322"></a><span class="lineno">  322</span>&#160;        <span class="keyword">typedef</span> vec&lt;4, u32, defaultp&gt;   <a class="code" href="a00281.html#gaa57e96bb337867329d5f43bcc27c1095">uvec4</a>;</div>
-<div class="line"><a name="l00323"></a><span class="lineno">  323</span>&#160;</div>
-<div class="line"><a name="l00324"></a><span class="lineno"><a class="line" href="a00304.html#ga4b2e0e10d8d154fec9cab50e216588ec">  324</a></span>&#160;        <span class="keyword">typedef</span> vec&lt;1, u8, lowp&gt;                <a class="code" href="a00304.html#ga4b2e0e10d8d154fec9cab50e216588ec">lowp_u8vec1</a>;</div>
-<div class="line"><a name="l00325"></a><span class="lineno"><a class="line" href="a00304.html#gae6f63fa38635431e51a8f2602f15c566">  325</a></span>&#160;        <span class="keyword">typedef</span> vec&lt;2, u8, lowp&gt;                <a class="code" href="a00304.html#gae6f63fa38635431e51a8f2602f15c566">lowp_u8vec2</a>;</div>
-<div class="line"><a name="l00326"></a><span class="lineno"><a class="line" href="a00304.html#ga150dc47e31c6b8cf8461803c8d56f7bd">  326</a></span>&#160;        <span class="keyword">typedef</span> vec&lt;3, u8, lowp&gt;                <a class="code" href="a00304.html#ga150dc47e31c6b8cf8461803c8d56f7bd">lowp_u8vec3</a>;</div>
-<div class="line"><a name="l00327"></a><span class="lineno"><a class="line" href="a00304.html#ga9910927f3a4d1addb3da6a82542a8287">  327</a></span>&#160;        <span class="keyword">typedef</span> vec&lt;4, u8, lowp&gt;                <a class="code" href="a00304.html#ga9910927f3a4d1addb3da6a82542a8287">lowp_u8vec4</a>;</div>
-<div class="line"><a name="l00328"></a><span class="lineno">  328</span>&#160;</div>
-<div class="line"><a name="l00329"></a><span class="lineno"><a class="line" href="a00304.html#ga4a43050843b141bdc7e85437faef6f55">  329</a></span>&#160;        <span class="keyword">typedef</span> vec&lt;1, u8, mediump&gt;             <a class="code" href="a00304.html#ga4a43050843b141bdc7e85437faef6f55">mediump_u8vec1</a>;</div>
-<div class="line"><a name="l00330"></a><span class="lineno"><a class="line" href="a00304.html#ga907f85d4a0eac3d8aaf571e5c2647194">  330</a></span>&#160;        <span class="keyword">typedef</span> vec&lt;2, u8, mediump&gt;             <a class="code" href="a00304.html#ga907f85d4a0eac3d8aaf571e5c2647194">mediump_u8vec2</a>;</div>
-<div class="line"><a name="l00331"></a><span class="lineno"><a class="line" href="a00304.html#gaddc6f7748b699254942c5216b68f8f7f">  331</a></span>&#160;        <span class="keyword">typedef</span> vec&lt;3, u8, mediump&gt;             <a class="code" href="a00304.html#gaddc6f7748b699254942c5216b68f8f7f">mediump_u8vec3</a>;</div>
-<div class="line"><a name="l00332"></a><span class="lineno"><a class="line" href="a00304.html#gaaf4ee3b76d43d98da02ec399b99bda4b">  332</a></span>&#160;        <span class="keyword">typedef</span> vec&lt;4, u8, mediump&gt;             <a class="code" href="a00304.html#gaaf4ee3b76d43d98da02ec399b99bda4b">mediump_u8vec4</a>;</div>
-<div class="line"><a name="l00333"></a><span class="lineno">  333</span>&#160;</div>
-<div class="line"><a name="l00334"></a><span class="lineno"><a class="line" href="a00304.html#ga8408cb76b6550ff01fa0a3024e7b68d2">  334</a></span>&#160;        <span class="keyword">typedef</span> vec&lt;1, u8, highp&gt;               <a class="code" href="a00304.html#ga8408cb76b6550ff01fa0a3024e7b68d2">highp_u8vec1</a>;</div>
-<div class="line"><a name="l00335"></a><span class="lineno"><a class="line" href="a00304.html#ga27585b7c3ab300059f11fcba465f6fd2">  335</a></span>&#160;        <span class="keyword">typedef</span> vec&lt;2, u8, highp&gt;               <a class="code" href="a00304.html#ga27585b7c3ab300059f11fcba465f6fd2">highp_u8vec2</a>;</div>
-<div class="line"><a name="l00336"></a><span class="lineno"><a class="line" href="a00304.html#ga45721c13b956eb691cbd6c6c1429167a">  336</a></span>&#160;        <span class="keyword">typedef</span> vec&lt;3, u8, highp&gt;               <a class="code" href="a00304.html#ga45721c13b956eb691cbd6c6c1429167a">highp_u8vec3</a>;</div>
-<div class="line"><a name="l00337"></a><span class="lineno"><a class="line" href="a00304.html#gae0b75ad0fed8c00ddc0b5ce335d31060">  337</a></span>&#160;        <span class="keyword">typedef</span> vec&lt;4, u8, highp&gt;               <a class="code" href="a00304.html#gae0b75ad0fed8c00ddc0b5ce335d31060">highp_u8vec4</a>;</div>
-<div class="line"><a name="l00338"></a><span class="lineno">  338</span>&#160;</div>
-<div class="line"><a name="l00339"></a><span class="lineno"><a class="line" href="a00304.html#ga29b349e037f0b24320b4548a143daee2">  339</a></span>&#160;        <span class="keyword">typedef</span> vec&lt;1, u8, defaultp&gt;    <a class="code" href="a00304.html#ga29b349e037f0b24320b4548a143daee2">u8vec1</a>;</div>
-<div class="line"><a name="l00340"></a><span class="lineno"><a class="line" href="a00304.html#ga518b8d948a6b4ddb72f84d5c3b7b6611">  340</a></span>&#160;        <span class="keyword">typedef</span> vec&lt;2, u8, defaultp&gt;    <a class="code" href="a00304.html#ga518b8d948a6b4ddb72f84d5c3b7b6611">u8vec2</a>;</div>
-<div class="line"><a name="l00341"></a><span class="lineno"><a class="line" href="a00304.html#ga7c5706f6bbe5282e5598acf7e7b377e2">  341</a></span>&#160;        <span class="keyword">typedef</span> vec&lt;3, u8, defaultp&gt;    <a class="code" href="a00304.html#ga7c5706f6bbe5282e5598acf7e7b377e2">u8vec3</a>;</div>
-<div class="line"><a name="l00342"></a><span class="lineno"><a class="line" href="a00304.html#ga20779a61de2fd526a17f12fe53ec46b1">  342</a></span>&#160;        <span class="keyword">typedef</span> vec&lt;4, u8, defaultp&gt;    <a class="code" href="a00304.html#ga20779a61de2fd526a17f12fe53ec46b1">u8vec4</a>;</div>
-<div class="line"><a name="l00343"></a><span class="lineno">  343</span>&#160;</div>
-<div class="line"><a name="l00344"></a><span class="lineno"><a class="line" href="a00304.html#gaa6aab4ee7189b86716f5d7015d43021d">  344</a></span>&#160;        <span class="keyword">typedef</span> vec&lt;1, u16, lowp&gt;               <a class="code" href="a00304.html#gaa6aab4ee7189b86716f5d7015d43021d">lowp_u16vec1</a>;</div>
-<div class="line"><a name="l00345"></a><span class="lineno"><a class="line" href="a00304.html#ga2a7d997da9ac29cb931e35bd399f58df">  345</a></span>&#160;        <span class="keyword">typedef</span> vec&lt;2, u16, lowp&gt;               <a class="code" href="a00304.html#ga2a7d997da9ac29cb931e35bd399f58df">lowp_u16vec2</a>;</div>
-<div class="line"><a name="l00346"></a><span class="lineno"><a class="line" href="a00304.html#gac0253db6c3d3bae1f591676307a9dd8c">  346</a></span>&#160;        <span class="keyword">typedef</span> vec&lt;3, u16, lowp&gt;               <a class="code" href="a00304.html#gac0253db6c3d3bae1f591676307a9dd8c">lowp_u16vec3</a>;</div>
-<div class="line"><a name="l00347"></a><span class="lineno"><a class="line" href="a00304.html#gaa7f00459b9a2e5b2757e70afc0c189e1">  347</a></span>&#160;        <span class="keyword">typedef</span> vec&lt;4, u16, lowp&gt;               <a class="code" href="a00304.html#gaa7f00459b9a2e5b2757e70afc0c189e1">lowp_u16vec4</a>;</div>
-<div class="line"><a name="l00348"></a><span class="lineno">  348</span>&#160;</div>
-<div class="line"><a name="l00349"></a><span class="lineno"><a class="line" href="a00304.html#ga400ce8cc566de093a9b28e59e220d6e4">  349</a></span>&#160;        <span class="keyword">typedef</span> vec&lt;1, u16, mediump&gt;    <a class="code" href="a00304.html#ga400ce8cc566de093a9b28e59e220d6e4">mediump_u16vec1</a>;</div>
-<div class="line"><a name="l00350"></a><span class="lineno"><a class="line" href="a00304.html#ga429c201b3e92c90b4ef4356f2be52ee1">  350</a></span>&#160;        <span class="keyword">typedef</span> vec&lt;2, u16, mediump&gt;    <a class="code" href="a00304.html#ga429c201b3e92c90b4ef4356f2be52ee1">mediump_u16vec2</a>;</div>
-<div class="line"><a name="l00351"></a><span class="lineno"><a class="line" href="a00304.html#gac9ba20234b0c3751d45ce575fc71e551">  351</a></span>&#160;        <span class="keyword">typedef</span> vec&lt;3, u16, mediump&gt;    <a class="code" href="a00304.html#gac9ba20234b0c3751d45ce575fc71e551">mediump_u16vec3</a>;</div>
-<div class="line"><a name="l00352"></a><span class="lineno"><a class="line" href="a00304.html#ga5793393686ce5bd2d5968ff9144762b8">  352</a></span>&#160;        <span class="keyword">typedef</span> vec&lt;4, u16, mediump&gt;    <a class="code" href="a00304.html#ga5793393686ce5bd2d5968ff9144762b8">mediump_u16vec4</a>;</div>
-<div class="line"><a name="l00353"></a><span class="lineno">  353</span>&#160;</div>
-<div class="line"><a name="l00354"></a><span class="lineno"><a class="line" href="a00304.html#gad064202b4cf9a2972475c03de657cb39">  354</a></span>&#160;        <span class="keyword">typedef</span> vec&lt;1, u16, highp&gt;              <a class="code" href="a00304.html#gad064202b4cf9a2972475c03de657cb39">highp_u16vec1</a>;</div>
-<div class="line"><a name="l00355"></a><span class="lineno"><a class="line" href="a00304.html#ga791b15ceb3f1e09d1a0ec6f3057ca159">  355</a></span>&#160;        <span class="keyword">typedef</span> vec&lt;2, u16, highp&gt;              <a class="code" href="a00304.html#ga791b15ceb3f1e09d1a0ec6f3057ca159">highp_u16vec2</a>;</div>
-<div class="line"><a name="l00356"></a><span class="lineno"><a class="line" href="a00304.html#gacfd806749008f0ade6ac4bb9dd91082f">  356</a></span>&#160;        <span class="keyword">typedef</span> vec&lt;3, u16, highp&gt;              <a class="code" href="a00304.html#gacfd806749008f0ade6ac4bb9dd91082f">highp_u16vec3</a>;</div>
-<div class="line"><a name="l00357"></a><span class="lineno"><a class="line" href="a00304.html#ga8a85a3d54a8a9e14fe7a1f96196c4f61">  357</a></span>&#160;        <span class="keyword">typedef</span> vec&lt;4, u16, highp&gt;              <a class="code" href="a00304.html#ga8a85a3d54a8a9e14fe7a1f96196c4f61">highp_u16vec4</a>;</div>
-<div class="line"><a name="l00358"></a><span class="lineno">  358</span>&#160;</div>
-<div class="line"><a name="l00359"></a><span class="lineno"><a class="line" href="a00304.html#ga08c05ba8ffb19f5d14ab584e1e9e9ee5">  359</a></span>&#160;        <span class="keyword">typedef</span> vec&lt;1, u16, defaultp&gt;   <a class="code" href="a00304.html#ga08c05ba8ffb19f5d14ab584e1e9e9ee5">u16vec1</a>;</div>
-<div class="line"><a name="l00360"></a><span class="lineno"><a class="line" href="a00304.html#ga2a78447eb9d66a114b193f4a25899c16">  360</a></span>&#160;        <span class="keyword">typedef</span> vec&lt;2, u16, defaultp&gt;   <a class="code" href="a00304.html#ga2a78447eb9d66a114b193f4a25899c16">u16vec2</a>;</div>
-<div class="line"><a name="l00361"></a><span class="lineno"><a class="line" href="a00304.html#ga1c522ca821c27b862fe51cf4024b064b">  361</a></span>&#160;        <span class="keyword">typedef</span> vec&lt;3, u16, defaultp&gt;   <a class="code" href="a00304.html#ga1c522ca821c27b862fe51cf4024b064b">u16vec3</a>;</div>
-<div class="line"><a name="l00362"></a><span class="lineno"><a class="line" href="a00304.html#ga529496d75775fb656a07993ea9af2450">  362</a></span>&#160;        <span class="keyword">typedef</span> vec&lt;4, u16, defaultp&gt;   <a class="code" href="a00304.html#ga529496d75775fb656a07993ea9af2450">u16vec4</a>;</div>
-<div class="line"><a name="l00363"></a><span class="lineno">  363</span>&#160;</div>
-<div class="line"><a name="l00364"></a><span class="lineno"><a class="line" href="a00304.html#gabed3be8dfdc4a0df4bf3271dbd7344c4">  364</a></span>&#160;        <span class="keyword">typedef</span> vec&lt;1, u32, lowp&gt;               <a class="code" href="a00304.html#gabed3be8dfdc4a0df4bf3271dbd7344c4">lowp_u32vec1</a>;</div>
-<div class="line"><a name="l00365"></a><span class="lineno"><a class="line" href="a00304.html#gaf7e286e81347011e257ee779524e73b9">  365</a></span>&#160;        <span class="keyword">typedef</span> vec&lt;2, u32, lowp&gt;               <a class="code" href="a00304.html#gaf7e286e81347011e257ee779524e73b9">lowp_u32vec2</a>;</div>
-<div class="line"><a name="l00366"></a><span class="lineno"><a class="line" href="a00304.html#gad3ad390560a671b1f676fbf03cd3aa15">  366</a></span>&#160;        <span class="keyword">typedef</span> vec&lt;3, u32, lowp&gt;               <a class="code" href="a00304.html#gad3ad390560a671b1f676fbf03cd3aa15">lowp_u32vec3</a>;</div>
-<div class="line"><a name="l00367"></a><span class="lineno"><a class="line" href="a00304.html#ga4502885718742aa238c36a312c3f3f20">  367</a></span>&#160;        <span class="keyword">typedef</span> vec&lt;4, u32, lowp&gt;               <a class="code" href="a00304.html#ga4502885718742aa238c36a312c3f3f20">lowp_u32vec4</a>;</div>
-<div class="line"><a name="l00368"></a><span class="lineno">  368</span>&#160;</div>
-<div class="line"><a name="l00369"></a><span class="lineno"><a class="line" href="a00304.html#ga8a11ccd2e38f674bbf3c2d1afc232aee">  369</a></span>&#160;        <span class="keyword">typedef</span> vec&lt;1, u32, mediump&gt;    <a class="code" href="a00304.html#ga8a11ccd2e38f674bbf3c2d1afc232aee">mediump_u32vec1</a>;</div>
-<div class="line"><a name="l00370"></a><span class="lineno"><a class="line" href="a00304.html#ga94f74851fce338549c705b5f0d601c4f">  370</a></span>&#160;        <span class="keyword">typedef</span> vec&lt;2, u32, mediump&gt;    <a class="code" href="a00304.html#ga94f74851fce338549c705b5f0d601c4f">mediump_u32vec2</a>;</div>
-<div class="line"><a name="l00371"></a><span class="lineno"><a class="line" href="a00304.html#ga012c24c8fc69707b90260474c70275a2">  371</a></span>&#160;        <span class="keyword">typedef</span> vec&lt;3, u32, mediump&gt;    <a class="code" href="a00304.html#ga012c24c8fc69707b90260474c70275a2">mediump_u32vec3</a>;</div>
-<div class="line"><a name="l00372"></a><span class="lineno"><a class="line" href="a00304.html#ga5d43ee8b5dbaa06c327b03b83682598a">  372</a></span>&#160;        <span class="keyword">typedef</span> vec&lt;4, u32, mediump&gt;    <a class="code" href="a00304.html#ga5d43ee8b5dbaa06c327b03b83682598a">mediump_u32vec4</a>;</div>
-<div class="line"><a name="l00373"></a><span class="lineno">  373</span>&#160;</div>
-<div class="line"><a name="l00374"></a><span class="lineno"><a class="line" href="a00304.html#ga0e35a565b9036bfc3989f5e23a0792e3">  374</a></span>&#160;        <span class="keyword">typedef</span> vec&lt;1, u32, highp&gt;              <a class="code" href="a00304.html#ga0e35a565b9036bfc3989f5e23a0792e3">highp_u32vec1</a>;</div>
-<div class="line"><a name="l00375"></a><span class="lineno"><a class="line" href="a00304.html#ga2f256334f83fba4c2d219e414b51df6c">  375</a></span>&#160;        <span class="keyword">typedef</span> vec&lt;2, u32, highp&gt;              <a class="code" href="a00304.html#ga2f256334f83fba4c2d219e414b51df6c">highp_u32vec2</a>;</div>
-<div class="line"><a name="l00376"></a><span class="lineno"><a class="line" href="a00304.html#gaf14d7a50502464e7cbfa074f24684cb1">  376</a></span>&#160;        <span class="keyword">typedef</span> vec&lt;3, u32, highp&gt;              <a class="code" href="a00304.html#gaf14d7a50502464e7cbfa074f24684cb1">highp_u32vec3</a>;</div>
-<div class="line"><a name="l00377"></a><span class="lineno"><a class="line" href="a00304.html#ga22166f0da65038b447f3c5e534fff1c2">  377</a></span>&#160;        <span class="keyword">typedef</span> vec&lt;4, u32, highp&gt;              <a class="code" href="a00304.html#ga22166f0da65038b447f3c5e534fff1c2">highp_u32vec4</a>;</div>
-<div class="line"><a name="l00378"></a><span class="lineno">  378</span>&#160;</div>
-<div class="line"><a name="l00379"></a><span class="lineno"><a class="line" href="a00304.html#gae627372cfd5f20dd87db490387b71195">  379</a></span>&#160;        <span class="keyword">typedef</span> vec&lt;1, u32, defaultp&gt;   <a class="code" href="a00304.html#gae627372cfd5f20dd87db490387b71195">u32vec1</a>;</div>
-<div class="line"><a name="l00380"></a><span class="lineno"><a class="line" href="a00304.html#ga2a266e46ee218d0c680f12b35c500cc0">  380</a></span>&#160;        <span class="keyword">typedef</span> vec&lt;2, u32, defaultp&gt;   <a class="code" href="a00304.html#ga2a266e46ee218d0c680f12b35c500cc0">u32vec2</a>;</div>
-<div class="line"><a name="l00381"></a><span class="lineno"><a class="line" href="a00304.html#gae267358ff2a41d156d97f5762630235a">  381</a></span>&#160;        <span class="keyword">typedef</span> vec&lt;3, u32, defaultp&gt;   <a class="code" href="a00304.html#gae267358ff2a41d156d97f5762630235a">u32vec3</a>;</div>
-<div class="line"><a name="l00382"></a><span class="lineno"><a class="line" href="a00304.html#ga31cef34e4cd04840c54741ff2f7005f0">  382</a></span>&#160;        <span class="keyword">typedef</span> vec&lt;4, u32, defaultp&gt;   <a class="code" href="a00304.html#ga31cef34e4cd04840c54741ff2f7005f0">u32vec4</a>;</div>
-<div class="line"><a name="l00383"></a><span class="lineno">  383</span>&#160;</div>
-<div class="line"><a name="l00384"></a><span class="lineno"><a class="line" href="a00304.html#ga859be7b9d3a3765c1cafc14dbcf249a6">  384</a></span>&#160;        <span class="keyword">typedef</span> vec&lt;1, u64, lowp&gt;               <a class="code" href="a00304.html#ga859be7b9d3a3765c1cafc14dbcf249a6">lowp_u64vec1</a>;</div>
-<div class="line"><a name="l00385"></a><span class="lineno"><a class="line" href="a00304.html#ga581485db4ba6ddb501505ee711fd8e42">  385</a></span>&#160;        <span class="keyword">typedef</span> vec&lt;2, u64, lowp&gt;               <a class="code" href="a00304.html#ga581485db4ba6ddb501505ee711fd8e42">lowp_u64vec2</a>;</div>
-<div class="line"><a name="l00386"></a><span class="lineno"><a class="line" href="a00304.html#gaa4a8682bec7ec8af666ef87fae38d5d1">  386</a></span>&#160;        <span class="keyword">typedef</span> vec&lt;3, u64, lowp&gt;               <a class="code" href="a00304.html#gaa4a8682bec7ec8af666ef87fae38d5d1">lowp_u64vec3</a>;</div>
-<div class="line"><a name="l00387"></a><span class="lineno"><a class="line" href="a00304.html#ga6fccc89c34045c86339f6fa781ce96de">  387</a></span>&#160;        <span class="keyword">typedef</span> vec&lt;4, u64, lowp&gt;               <a class="code" href="a00304.html#ga6fccc89c34045c86339f6fa781ce96de">lowp_u64vec4</a>;</div>
-<div class="line"><a name="l00388"></a><span class="lineno">  388</span>&#160;</div>
-<div class="line"><a name="l00389"></a><span class="lineno"><a class="line" href="a00304.html#ga659f372ccb8307d5db5beca942cde5e8">  389</a></span>&#160;        <span class="keyword">typedef</span> vec&lt;1, u64, mediump&gt;    <a class="code" href="a00304.html#ga659f372ccb8307d5db5beca942cde5e8">mediump_u64vec1</a>;</div>
-<div class="line"><a name="l00390"></a><span class="lineno"><a class="line" href="a00304.html#ga73a08ef5a74798f3a1a99250b5f86a7d">  390</a></span>&#160;        <span class="keyword">typedef</span> vec&lt;2, u64, mediump&gt;    <a class="code" href="a00304.html#ga73a08ef5a74798f3a1a99250b5f86a7d">mediump_u64vec2</a>;</div>
-<div class="line"><a name="l00391"></a><span class="lineno"><a class="line" href="a00304.html#ga1900c6ab74acd392809425953359ef52">  391</a></span>&#160;        <span class="keyword">typedef</span> vec&lt;3, u64, mediump&gt;    <a class="code" href="a00304.html#ga1900c6ab74acd392809425953359ef52">mediump_u64vec3</a>;</div>
-<div class="line"><a name="l00392"></a><span class="lineno"><a class="line" href="a00304.html#gaec7ee455cb379ec2993e81482123e1cc">  392</a></span>&#160;        <span class="keyword">typedef</span> vec&lt;4, u64, mediump&gt;    <a class="code" href="a00304.html#gaec7ee455cb379ec2993e81482123e1cc">mediump_u64vec4</a>;</div>
-<div class="line"><a name="l00393"></a><span class="lineno">  393</span>&#160;</div>
-<div class="line"><a name="l00394"></a><span class="lineno"><a class="line" href="a00304.html#gae4fe774744852c4d7d069be2e05257ab">  394</a></span>&#160;        <span class="keyword">typedef</span> vec&lt;1, u64, highp&gt;              <a class="code" href="a00304.html#gae4fe774744852c4d7d069be2e05257ab">highp_u64vec1</a>;</div>
-<div class="line"><a name="l00395"></a><span class="lineno"><a class="line" href="a00304.html#ga78f77b8b2d17b431ac5a68c0b5d7050d">  395</a></span>&#160;        <span class="keyword">typedef</span> vec&lt;2, u64, highp&gt;              <a class="code" href="a00304.html#ga78f77b8b2d17b431ac5a68c0b5d7050d">highp_u64vec2</a>;</div>
-<div class="line"><a name="l00396"></a><span class="lineno"><a class="line" href="a00304.html#ga41bdabea6e589029659331ba47eb78c1">  396</a></span>&#160;        <span class="keyword">typedef</span> vec&lt;3, u64, highp&gt;              <a class="code" href="a00304.html#ga41bdabea6e589029659331ba47eb78c1">highp_u64vec3</a>;</div>
-<div class="line"><a name="l00397"></a><span class="lineno"><a class="line" href="a00304.html#ga4f15b41aa24b11cc42ad5798c04a2325">  397</a></span>&#160;        <span class="keyword">typedef</span> vec&lt;4, u64, highp&gt;              <a class="code" href="a00304.html#ga4f15b41aa24b11cc42ad5798c04a2325">highp_u64vec4</a>;</div>
-<div class="line"><a name="l00398"></a><span class="lineno">  398</span>&#160;</div>
-<div class="line"><a name="l00399"></a><span class="lineno"><a class="line" href="a00304.html#gaf09f3ca4b671a4a4f84505eb4cc865fd">  399</a></span>&#160;        <span class="keyword">typedef</span> vec&lt;1, u64, defaultp&gt;   <a class="code" href="a00304.html#gaf09f3ca4b671a4a4f84505eb4cc865fd">u64vec1</a>;</div>
-<div class="line"><a name="l00400"></a><span class="lineno"><a class="line" href="a00304.html#gaef3824ed4fe435a019c5b9dddf53fec5">  400</a></span>&#160;        <span class="keyword">typedef</span> vec&lt;2, u64, defaultp&gt;   <a class="code" href="a00304.html#gaef3824ed4fe435a019c5b9dddf53fec5">u64vec2</a>;</div>
-<div class="line"><a name="l00401"></a><span class="lineno"><a class="line" href="a00304.html#ga489b89ba93d4f7b3934df78debc52276">  401</a></span>&#160;        <span class="keyword">typedef</span> vec&lt;3, u64, defaultp&gt;   <a class="code" href="a00304.html#ga489b89ba93d4f7b3934df78debc52276">u64vec3</a>;</div>
-<div class="line"><a name="l00402"></a><span class="lineno"><a class="line" href="a00304.html#ga3945dd6515d4498cb603e65ff867ab03">  402</a></span>&#160;        <span class="keyword">typedef</span> vec&lt;4, u64, defaultp&gt;   <a class="code" href="a00304.html#ga3945dd6515d4498cb603e65ff867ab03">u64vec4</a>;</div>
-<div class="line"><a name="l00403"></a><span class="lineno">  403</span>&#160;</div>
-<div class="line"><a name="l00404"></a><span class="lineno">  404</span>&#160;        <span class="comment">// Vector float</span></div>
-<div class="line"><a name="l00405"></a><span class="lineno">  405</span>&#160;</div>
-<div class="line"><a name="l00406"></a><span class="lineno">  406</span>&#160;        <span class="keyword">typedef</span> vec&lt;1, float, lowp&gt;                     <a class="code" href="a00271.html#ga0a57630f03031706b1d26a7d70d9184c">lowp_vec1</a>;</div>
-<div class="line"><a name="l00407"></a><span class="lineno">  407</span>&#160;        <span class="keyword">typedef</span> vec&lt;2, float, lowp&gt;                     <a class="code" href="a00282.html#ga30e8baef5d56d5c166872a2bc00f36e9">lowp_vec2</a>;</div>
-<div class="line"><a name="l00408"></a><span class="lineno">  408</span>&#160;        <span class="keyword">typedef</span> vec&lt;3, float, lowp&gt;                     <a class="code" href="a00282.html#ga868e8e4470a3ef97c7ee3032bf90dc79">lowp_vec3</a>;</div>
-<div class="line"><a name="l00409"></a><span class="lineno">  409</span>&#160;        <span class="keyword">typedef</span> vec&lt;4, float, lowp&gt;                     <a class="code" href="a00282.html#gace3acb313c800552a9411953eb8b2ed7">lowp_vec4</a>;</div>
-<div class="line"><a name="l00410"></a><span class="lineno">  410</span>&#160;</div>
-<div class="line"><a name="l00411"></a><span class="lineno">  411</span>&#160;        <span class="keyword">typedef</span> vec&lt;1, float, mediump&gt;          <a class="code" href="a00271.html#ga645f53e6b8056609023a894b4e2beef4">mediump_vec1</a>;</div>
-<div class="line"><a name="l00412"></a><span class="lineno">  412</span>&#160;        <span class="keyword">typedef</span> vec&lt;2, float, mediump&gt;          <a class="code" href="a00282.html#gabc61976261c406520c7a8e4d946dc3f0">mediump_vec2</a>;</div>
-<div class="line"><a name="l00413"></a><span class="lineno">  413</span>&#160;        <span class="keyword">typedef</span> vec&lt;3, float, mediump&gt;          <a class="code" href="a00282.html#ga2384e263df19f1404b733016eff78fca">mediump_vec3</a>;</div>
-<div class="line"><a name="l00414"></a><span class="lineno">  414</span>&#160;        <span class="keyword">typedef</span> vec&lt;4, float, mediump&gt;          <a class="code" href="a00282.html#ga5c6978d3ffba06738416a33083853fc0">mediump_vec4</a>;</div>
-<div class="line"><a name="l00415"></a><span class="lineno">  415</span>&#160;</div>
-<div class="line"><a name="l00416"></a><span class="lineno">  416</span>&#160;        <span class="keyword">typedef</span> vec&lt;1, float, highp&gt;            <a class="code" href="a00271.html#ga9e8ed21862a897c156c0b2abca70b1e9">highp_vec1</a>;</div>
-<div class="line"><a name="l00417"></a><span class="lineno">  417</span>&#160;        <span class="keyword">typedef</span> vec&lt;2, float, highp&gt;            <a class="code" href="a00282.html#gaa92c1954d71b1e7914874bd787b43d1c">highp_vec2</a>;</div>
-<div class="line"><a name="l00418"></a><span class="lineno">  418</span>&#160;        <span class="keyword">typedef</span> vec&lt;3, float, highp&gt;            <a class="code" href="a00282.html#gaca61dfaccbf2f58f2d8063a4e76b44a9">highp_vec3</a>;</div>
-<div class="line"><a name="l00419"></a><span class="lineno">  419</span>&#160;        <span class="keyword">typedef</span> vec&lt;4, float, highp&gt;            <a class="code" href="a00282.html#gad281decae52948b82feb3a9db8f63a7b">highp_vec4</a>;</div>
-<div class="line"><a name="l00420"></a><span class="lineno">  420</span>&#160;</div>
-<div class="line"><a name="l00421"></a><span class="lineno">  421</span>&#160;        <span class="keyword">typedef</span> vec&lt;1, float, defaultp&gt;         <a class="code" href="a00270.html#gadfc071d934d8dae7955a1d530a3cf656">vec1</a>;</div>
-<div class="line"><a name="l00422"></a><span class="lineno">  422</span>&#160;        <span class="keyword">typedef</span> vec&lt;2, float, defaultp&gt;         <a class="code" href="a00281.html#gabe65c061834f61b4f7cb6037b19006a4">vec2</a>;</div>
-<div class="line"><a name="l00423"></a><span class="lineno">  423</span>&#160;        <span class="keyword">typedef</span> vec&lt;3, float, defaultp&gt;         <a class="code" href="a00281.html#ga9c3019b13faf179e4ad3626ea66df334">vec3</a>;</div>
-<div class="line"><a name="l00424"></a><span class="lineno">  424</span>&#160;        <span class="keyword">typedef</span> vec&lt;4, float, defaultp&gt;         <a class="code" href="a00281.html#gac215a35481a6597d1bf622a382e9d6e2">vec4</a>;</div>
-<div class="line"><a name="l00425"></a><span class="lineno">  425</span>&#160;</div>
-<div class="line"><a name="l00426"></a><span class="lineno"><a class="line" href="a00304.html#ga346b2336fff168a7e0df1583aae3e5a5">  426</a></span>&#160;        <span class="keyword">typedef</span> vec&lt;1, float, lowp&gt;                     <a class="code" href="a00304.html#ga346b2336fff168a7e0df1583aae3e5a5">lowp_fvec1</a>;</div>
-<div class="line"><a name="l00427"></a><span class="lineno"><a class="line" href="a00304.html#ga62a32c31f4e2e8ca859663b6e3289a2d">  427</a></span>&#160;        <span class="keyword">typedef</span> vec&lt;2, float, lowp&gt;                     <a class="code" href="a00304.html#ga62a32c31f4e2e8ca859663b6e3289a2d">lowp_fvec2</a>;</div>
-<div class="line"><a name="l00428"></a><span class="lineno"><a class="line" href="a00304.html#ga40b5c557efebb5bb99d6b9aa81095afa">  428</a></span>&#160;        <span class="keyword">typedef</span> vec&lt;3, float, lowp&gt;                     <a class="code" href="a00304.html#ga40b5c557efebb5bb99d6b9aa81095afa">lowp_fvec3</a>;</div>
-<div class="line"><a name="l00429"></a><span class="lineno"><a class="line" href="a00304.html#ga755484ffbe39ae3db2875953ed04e7b7">  429</a></span>&#160;        <span class="keyword">typedef</span> vec&lt;4, float, lowp&gt;                     <a class="code" href="a00304.html#ga755484ffbe39ae3db2875953ed04e7b7">lowp_fvec4</a>;</div>
-<div class="line"><a name="l00430"></a><span class="lineno">  430</span>&#160;</div>
-<div class="line"><a name="l00431"></a><span class="lineno"><a class="line" href="a00304.html#ga367964fc2133d3f1b5b3755ff9cf6c9b">  431</a></span>&#160;        <span class="keyword">typedef</span> vec&lt;1, float, mediump&gt;          <a class="code" href="a00304.html#ga367964fc2133d3f1b5b3755ff9cf6c9b">mediump_fvec1</a>;</div>
-<div class="line"><a name="l00432"></a><span class="lineno"><a class="line" href="a00304.html#ga44bfa55cda5dbf53f24a1fb7610393d6">  432</a></span>&#160;        <span class="keyword">typedef</span> vec&lt;2, float, mediump&gt;          <a class="code" href="a00304.html#ga44bfa55cda5dbf53f24a1fb7610393d6">mediump_fvec2</a>;</div>
-<div class="line"><a name="l00433"></a><span class="lineno"><a class="line" href="a00304.html#ga999dc6703ad16e3d3c26b74ea8083f07">  433</a></span>&#160;        <span class="keyword">typedef</span> vec&lt;3, float, mediump&gt;          <a class="code" href="a00304.html#ga999dc6703ad16e3d3c26b74ea8083f07">mediump_fvec3</a>;</div>
-<div class="line"><a name="l00434"></a><span class="lineno"><a class="line" href="a00304.html#ga1bed890513c0f50b7e7ba4f7f359dbfb">  434</a></span>&#160;        <span class="keyword">typedef</span> vec&lt;4, float, mediump&gt;          <a class="code" href="a00304.html#ga1bed890513c0f50b7e7ba4f7f359dbfb">mediump_fvec4</a>;</div>
-<div class="line"><a name="l00435"></a><span class="lineno">  435</span>&#160;</div>
-<div class="line"><a name="l00436"></a><span class="lineno"><a class="line" href="a00304.html#gaa1040342c4efdedc8f90e6267db8d41c">  436</a></span>&#160;        <span class="keyword">typedef</span> vec&lt;1, float, highp&gt;            <a class="code" href="a00304.html#gaa1040342c4efdedc8f90e6267db8d41c">highp_fvec1</a>;</div>
-<div class="line"><a name="l00437"></a><span class="lineno"><a class="line" href="a00304.html#ga7c0d196f5fa79f7e892a2f323a0be1ae">  437</a></span>&#160;        <span class="keyword">typedef</span> vec&lt;2, float, highp&gt;            <a class="code" href="a00304.html#ga7c0d196f5fa79f7e892a2f323a0be1ae">highp_fvec2</a>;</div>
-<div class="line"><a name="l00438"></a><span class="lineno"><a class="line" href="a00304.html#ga6ef77413883f48d6b53b4169b25edbd0">  438</a></span>&#160;        <span class="keyword">typedef</span> vec&lt;3, float, highp&gt;            <a class="code" href="a00304.html#ga6ef77413883f48d6b53b4169b25edbd0">highp_fvec3</a>;</div>
-<div class="line"><a name="l00439"></a><span class="lineno"><a class="line" href="a00304.html#ga8b839abbb44f5102609eed89f6ed61f7">  439</a></span>&#160;        <span class="keyword">typedef</span> vec&lt;4, float, highp&gt;            <a class="code" href="a00304.html#ga8b839abbb44f5102609eed89f6ed61f7">highp_fvec4</a>;</div>
-<div class="line"><a name="l00440"></a><span class="lineno">  440</span>&#160;</div>
-<div class="line"><a name="l00441"></a><span class="lineno"><a class="line" href="a00304.html#ga98b9ed43cf8c5cf1d354b23c7df9119f">  441</a></span>&#160;        <span class="keyword">typedef</span> vec&lt;1, f32, defaultp&gt;           <a class="code" href="a00304.html#ga98b9ed43cf8c5cf1d354b23c7df9119f">fvec1</a>;</div>
-<div class="line"><a name="l00442"></a><span class="lineno"><a class="line" href="a00304.html#ga24273aa02abaecaab7f160bac437a339">  442</a></span>&#160;        <span class="keyword">typedef</span> vec&lt;2, f32, defaultp&gt;           <a class="code" href="a00304.html#ga24273aa02abaecaab7f160bac437a339">fvec2</a>;</div>
-<div class="line"><a name="l00443"></a><span class="lineno"><a class="line" href="a00304.html#ga89930533646b30d021759298aa6bf04a">  443</a></span>&#160;        <span class="keyword">typedef</span> vec&lt;3, f32, defaultp&gt;           <a class="code" href="a00304.html#ga89930533646b30d021759298aa6bf04a">fvec3</a>;</div>
-<div class="line"><a name="l00444"></a><span class="lineno"><a class="line" href="a00304.html#ga713c796c54875cf4092d42ff9d9096b0">  444</a></span>&#160;        <span class="keyword">typedef</span> vec&lt;4, f32, defaultp&gt;           <a class="code" href="a00304.html#ga713c796c54875cf4092d42ff9d9096b0">fvec4</a>;</div>
-<div class="line"><a name="l00445"></a><span class="lineno">  445</span>&#160;</div>
-<div class="line"><a name="l00446"></a><span class="lineno"><a class="line" href="a00304.html#ga43e5b41c834fcaf4db5a831c0e28128e">  446</a></span>&#160;        <span class="keyword">typedef</span> vec&lt;1, f32, lowp&gt;                       <a class="code" href="a00304.html#ga43e5b41c834fcaf4db5a831c0e28128e">lowp_f32vec1</a>;</div>
-<div class="line"><a name="l00447"></a><span class="lineno"><a class="line" href="a00304.html#gaf3b694b2b8ded7e0b9f07b061917e1a0">  447</a></span>&#160;        <span class="keyword">typedef</span> vec&lt;2, f32, lowp&gt;                       <a class="code" href="a00304.html#gaf3b694b2b8ded7e0b9f07b061917e1a0">lowp_f32vec2</a>;</div>
-<div class="line"><a name="l00448"></a><span class="lineno"><a class="line" href="a00304.html#gaf739a2cd7b81783a43148b53e40d983b">  448</a></span>&#160;        <span class="keyword">typedef</span> vec&lt;3, f32, lowp&gt;                       <a class="code" href="a00304.html#gaf739a2cd7b81783a43148b53e40d983b">lowp_f32vec3</a>;</div>
-<div class="line"><a name="l00449"></a><span class="lineno"><a class="line" href="a00304.html#ga4e2e1debe022074ab224c9faf856d374">  449</a></span>&#160;        <span class="keyword">typedef</span> vec&lt;4, f32, lowp&gt;                       <a class="code" href="a00304.html#ga4e2e1debe022074ab224c9faf856d374">lowp_f32vec4</a>;</div>
-<div class="line"><a name="l00450"></a><span class="lineno">  450</span>&#160;</div>
-<div class="line"><a name="l00451"></a><span class="lineno"><a class="line" href="a00304.html#gabb33cab7d7c74cc14aa95455d0690865">  451</a></span>&#160;        <span class="keyword">typedef</span> vec&lt;1, f32, mediump&gt;            <a class="code" href="a00304.html#gabb33cab7d7c74cc14aa95455d0690865">mediump_f32vec1</a>;</div>
-<div class="line"><a name="l00452"></a><span class="lineno"><a class="line" href="a00304.html#gad6eb11412a3161ca8dc1d63b2a307c4b">  452</a></span>&#160;        <span class="keyword">typedef</span> vec&lt;2, f32, mediump&gt;            <a class="code" href="a00304.html#gad6eb11412a3161ca8dc1d63b2a307c4b">mediump_f32vec2</a>;</div>
-<div class="line"><a name="l00453"></a><span class="lineno"><a class="line" href="a00304.html#ga062ffef2973bd8241df993c3b30b327c">  453</a></span>&#160;        <span class="keyword">typedef</span> vec&lt;3, f32, mediump&gt;            <a class="code" href="a00304.html#ga062ffef2973bd8241df993c3b30b327c">mediump_f32vec3</a>;</div>
-<div class="line"><a name="l00454"></a><span class="lineno"><a class="line" href="a00304.html#gad80c84bcd5f585840faa6179f6fd446c">  454</a></span>&#160;        <span class="keyword">typedef</span> vec&lt;4, f32, mediump&gt;            <a class="code" href="a00304.html#gad80c84bcd5f585840faa6179f6fd446c">mediump_f32vec4</a>;</div>
-<div class="line"><a name="l00455"></a><span class="lineno">  455</span>&#160;</div>
-<div class="line"><a name="l00456"></a><span class="lineno"><a class="line" href="a00304.html#gab1b1c9e8667902b78b2c330e4d383a61">  456</a></span>&#160;        <span class="keyword">typedef</span> vec&lt;1, f32, highp&gt;                      <a class="code" href="a00304.html#gab1b1c9e8667902b78b2c330e4d383a61">highp_f32vec1</a>;</div>
-<div class="line"><a name="l00457"></a><span class="lineno"><a class="line" href="a00304.html#ga0b8ebd4262331e139ff257d7cf2a4b77">  457</a></span>&#160;        <span class="keyword">typedef</span> vec&lt;2, f32, highp&gt;                      <a class="code" href="a00304.html#ga0b8ebd4262331e139ff257d7cf2a4b77">highp_f32vec2</a>;</div>
-<div class="line"><a name="l00458"></a><span class="lineno"><a class="line" href="a00304.html#ga522775dbcc6d96246a1c5cf02344fd8c">  458</a></span>&#160;        <span class="keyword">typedef</span> vec&lt;3, f32, highp&gt;                      <a class="code" href="a00304.html#ga522775dbcc6d96246a1c5cf02344fd8c">highp_f32vec3</a>;</div>
-<div class="line"><a name="l00459"></a><span class="lineno"><a class="line" href="a00304.html#ga0f038d4e09862a74f03d102c59eda73e">  459</a></span>&#160;        <span class="keyword">typedef</span> vec&lt;4, f32, highp&gt;                      <a class="code" href="a00304.html#ga0f038d4e09862a74f03d102c59eda73e">highp_f32vec4</a>;</div>
-<div class="line"><a name="l00460"></a><span class="lineno">  460</span>&#160;</div>
-<div class="line"><a name="l00461"></a><span class="lineno"><a class="line" href="a00304.html#ga701f32ab5b3fb06996b41f5c0d643805">  461</a></span>&#160;        <span class="keyword">typedef</span> vec&lt;1, f32, defaultp&gt;           <a class="code" href="a00304.html#ga701f32ab5b3fb06996b41f5c0d643805">f32vec1</a>;</div>
-<div class="line"><a name="l00462"></a><span class="lineno"><a class="line" href="a00304.html#ga5d6c70e080409a76a257dc55bd8ea2c8">  462</a></span>&#160;        <span class="keyword">typedef</span> vec&lt;2, f32, defaultp&gt;           <a class="code" href="a00304.html#ga5d6c70e080409a76a257dc55bd8ea2c8">f32vec2</a>;</div>
-<div class="line"><a name="l00463"></a><span class="lineno"><a class="line" href="a00304.html#gaea5c4518e175162e306d2c2b5ef5ac79">  463</a></span>&#160;        <span class="keyword">typedef</span> vec&lt;3, f32, defaultp&gt;           <a class="code" href="a00304.html#gaea5c4518e175162e306d2c2b5ef5ac79">f32vec3</a>;</div>
-<div class="line"><a name="l00464"></a><span class="lineno"><a class="line" href="a00304.html#ga31c6ca0e074a44007f49a9a3720b18c8">  464</a></span>&#160;        <span class="keyword">typedef</span> vec&lt;4, f32, defaultp&gt;           <a class="code" href="a00304.html#ga31c6ca0e074a44007f49a9a3720b18c8">f32vec4</a>;</div>
-<div class="line"><a name="l00465"></a><span class="lineno">  465</span>&#160;</div>
-<div class="line"><a name="l00466"></a><span class="lineno">  466</span>&#160;        <span class="keyword">typedef</span> vec&lt;1, f64, lowp&gt;                       <a class="code" href="a00269.html#gaf906eb86b6e96c35138d0e4928e1435a">lowp_dvec1</a>;</div>
-<div class="line"><a name="l00467"></a><span class="lineno">  467</span>&#160;        <span class="keyword">typedef</span> vec&lt;2, f64, lowp&gt;                       <a class="code" href="a00282.html#ga108086730d086b7f6f7a033955dfb9c3">lowp_dvec2</a>;</div>
-<div class="line"><a name="l00468"></a><span class="lineno">  468</span>&#160;        <span class="keyword">typedef</span> vec&lt;3, f64, lowp&gt;                       <a class="code" href="a00282.html#ga42c518b2917e19ce6946a84c64a3a4b2">lowp_dvec3</a>;</div>
-<div class="line"><a name="l00469"></a><span class="lineno">  469</span>&#160;        <span class="keyword">typedef</span> vec&lt;4, f64, lowp&gt;                       <a class="code" href="a00282.html#ga0b4432cb8d910e406576d10d802e190d">lowp_dvec4</a>;</div>
-<div class="line"><a name="l00470"></a><span class="lineno">  470</span>&#160;</div>
-<div class="line"><a name="l00471"></a><span class="lineno">  471</span>&#160;        <span class="keyword">typedef</span> vec&lt;1, f64, mediump&gt;            <a class="code" href="a00269.html#ga79a789ebb176b37a45848f7ccdd3b3dd">mediump_dvec1</a>;</div>
-<div class="line"><a name="l00472"></a><span class="lineno">  472</span>&#160;        <span class="keyword">typedef</span> vec&lt;2, f64, mediump&gt;            <a class="code" href="a00282.html#ga2f4f6e9a69a0281d06940fd0990cafc3">mediump_dvec2</a>;</div>
-<div class="line"><a name="l00473"></a><span class="lineno">  473</span>&#160;        <span class="keyword">typedef</span> vec&lt;3, f64, mediump&gt;            <a class="code" href="a00282.html#ga61c3b1dff4ec7c878af80503141b9f37">mediump_dvec3</a>;</div>
-<div class="line"><a name="l00474"></a><span class="lineno">  474</span>&#160;        <span class="keyword">typedef</span> vec&lt;4, f64, mediump&gt;            <a class="code" href="a00282.html#ga23a8bca00914a51542bfea13a4778186">mediump_dvec4</a>;</div>
-<div class="line"><a name="l00475"></a><span class="lineno">  475</span>&#160;</div>
-<div class="line"><a name="l00476"></a><span class="lineno">  476</span>&#160;        <span class="keyword">typedef</span> vec&lt;1, f64, highp&gt;                      <a class="code" href="a00269.html#ga77c22c4426da3a6865c88d3fc907e3fe">highp_dvec1</a>;</div>
-<div class="line"><a name="l00477"></a><span class="lineno">  477</span>&#160;        <span class="keyword">typedef</span> vec&lt;2, f64, highp&gt;                      <a class="code" href="a00282.html#gab98d77cca255914f5e29697fcbc2d975">highp_dvec2</a>;</div>
-<div class="line"><a name="l00478"></a><span class="lineno">  478</span>&#160;        <span class="keyword">typedef</span> vec&lt;3, f64, highp&gt;                      <a class="code" href="a00282.html#gab24dc20dcdc5b71282634bdbf6b70105">highp_dvec3</a>;</div>
-<div class="line"><a name="l00479"></a><span class="lineno">  479</span>&#160;        <span class="keyword">typedef</span> vec&lt;4, f64, highp&gt;                      <a class="code" href="a00282.html#gab654f4ed4a99d64a6cfc65320c2a7590">highp_dvec4</a>;</div>
-<div class="line"><a name="l00480"></a><span class="lineno">  480</span>&#160;</div>
-<div class="line"><a name="l00481"></a><span class="lineno">  481</span>&#160;        <span class="keyword">typedef</span> vec&lt;1, f64, defaultp&gt;           <a class="code" href="a00268.html#ga6221af17edc2d4477a4583d2cd53e569">dvec1</a>;</div>
-<div class="line"><a name="l00482"></a><span class="lineno">  482</span>&#160;        <span class="keyword">typedef</span> vec&lt;2, f64, defaultp&gt;           <a class="code" href="a00281.html#ga8b09c71aaac7da7867ae58377fe219a8">dvec2</a>;</div>
-<div class="line"><a name="l00483"></a><span class="lineno">  483</span>&#160;        <span class="keyword">typedef</span> vec&lt;3, f64, defaultp&gt;           <a class="code" href="a00281.html#ga5b83ae3d0fdec519c038e4d2cf967cf0">dvec3</a>;</div>
-<div class="line"><a name="l00484"></a><span class="lineno">  484</span>&#160;        <span class="keyword">typedef</span> vec&lt;4, f64, defaultp&gt;           <a class="code" href="a00281.html#ga57debab5d98ce618f7b2a97fe26eb3ac">dvec4</a>;</div>
-<div class="line"><a name="l00485"></a><span class="lineno">  485</span>&#160;</div>
-<div class="line"><a name="l00486"></a><span class="lineno"><a class="line" href="a00304.html#gaf2d02c5f4d59135b9bc524fe317fd26b">  486</a></span>&#160;        <span class="keyword">typedef</span> vec&lt;1, f64, lowp&gt;                       <a class="code" href="a00304.html#gaf2d02c5f4d59135b9bc524fe317fd26b">lowp_f64vec1</a>;</div>
-<div class="line"><a name="l00487"></a><span class="lineno"><a class="line" href="a00304.html#ga4e641a54d70c81eabf56c25c966d04bd">  487</a></span>&#160;        <span class="keyword">typedef</span> vec&lt;2, f64, lowp&gt;                       <a class="code" href="a00304.html#ga4e641a54d70c81eabf56c25c966d04bd">lowp_f64vec2</a>;</div>
-<div class="line"><a name="l00488"></a><span class="lineno"><a class="line" href="a00304.html#gae7a4711107b7d078fc5f03ce2227b90b">  488</a></span>&#160;        <span class="keyword">typedef</span> vec&lt;3, f64, lowp&gt;                       <a class="code" href="a00304.html#gae7a4711107b7d078fc5f03ce2227b90b">lowp_f64vec3</a>;</div>
-<div class="line"><a name="l00489"></a><span class="lineno"><a class="line" href="a00304.html#gaa666bb9e6d204d3bea0b3a39a3a335f4">  489</a></span>&#160;        <span class="keyword">typedef</span> vec&lt;4, f64, lowp&gt;                       <a class="code" href="a00304.html#gaa666bb9e6d204d3bea0b3a39a3a335f4">lowp_f64vec4</a>;</div>
-<div class="line"><a name="l00490"></a><span class="lineno">  490</span>&#160;</div>
-<div class="line"><a name="l00491"></a><span class="lineno"><a class="line" href="a00304.html#gac30fdf8afa489400053275b6a3350127">  491</a></span>&#160;        <span class="keyword">typedef</span> vec&lt;1, f64, mediump&gt;            <a class="code" href="a00304.html#gac30fdf8afa489400053275b6a3350127">mediump_f64vec1</a>;</div>
-<div class="line"><a name="l00492"></a><span class="lineno"><a class="line" href="a00304.html#ga8ebc04ecf6440c4ee24718a16600ce6b">  492</a></span>&#160;        <span class="keyword">typedef</span> vec&lt;2, f64, mediump&gt;            <a class="code" href="a00304.html#ga8ebc04ecf6440c4ee24718a16600ce6b">mediump_f64vec2</a>;</div>
-<div class="line"><a name="l00493"></a><span class="lineno"><a class="line" href="a00304.html#ga461c4c7d0757404dd0dba931760b25cf">  493</a></span>&#160;        <span class="keyword">typedef</span> vec&lt;3, f64, mediump&gt;            <a class="code" href="a00304.html#ga461c4c7d0757404dd0dba931760b25cf">mediump_f64vec3</a>;</div>
-<div class="line"><a name="l00494"></a><span class="lineno"><a class="line" href="a00304.html#gacfea053bd6bb3eddb996a4f94de22a3e">  494</a></span>&#160;        <span class="keyword">typedef</span> vec&lt;4, f64, mediump&gt;            <a class="code" href="a00304.html#gacfea053bd6bb3eddb996a4f94de22a3e">mediump_f64vec4</a>;</div>
-<div class="line"><a name="l00495"></a><span class="lineno">  495</span>&#160;</div>
-<div class="line"><a name="l00496"></a><span class="lineno"><a class="line" href="a00304.html#ga62c31b133ceee9984fbee05ac4c434a9">  496</a></span>&#160;        <span class="keyword">typedef</span> vec&lt;1, f64, highp&gt;                      <a class="code" href="a00304.html#ga62c31b133ceee9984fbee05ac4c434a9">highp_f64vec1</a>;</div>
-<div class="line"><a name="l00497"></a><span class="lineno"><a class="line" href="a00304.html#ga670ea1b0a1172bc73b1d7c1e0c26cce2">  497</a></span>&#160;        <span class="keyword">typedef</span> vec&lt;2, f64, highp&gt;                      <a class="code" href="a00304.html#ga670ea1b0a1172bc73b1d7c1e0c26cce2">highp_f64vec2</a>;</div>
-<div class="line"><a name="l00498"></a><span class="lineno"><a class="line" href="a00304.html#gacd1196090ece7a69fb5c3e43a7d4d851">  498</a></span>&#160;        <span class="keyword">typedef</span> vec&lt;3, f64, highp&gt;                      <a class="code" href="a00304.html#gacd1196090ece7a69fb5c3e43a7d4d851">highp_f64vec3</a>;</div>
-<div class="line"><a name="l00499"></a><span class="lineno"><a class="line" href="a00304.html#ga61185c44c8cc0b25d9a0f67d8a267444">  499</a></span>&#160;        <span class="keyword">typedef</span> vec&lt;4, f64, highp&gt;                      <a class="code" href="a00304.html#ga61185c44c8cc0b25d9a0f67d8a267444">highp_f64vec4</a>;</div>
-<div class="line"><a name="l00500"></a><span class="lineno">  500</span>&#160;</div>
-<div class="line"><a name="l00501"></a><span class="lineno"><a class="line" href="a00304.html#gade502df1ce14f837fae7f60a03ddb9b0">  501</a></span>&#160;        <span class="keyword">typedef</span> vec&lt;1, f64, defaultp&gt;           <a class="code" href="a00304.html#gade502df1ce14f837fae7f60a03ddb9b0">f64vec1</a>;</div>
-<div class="line"><a name="l00502"></a><span class="lineno"><a class="line" href="a00304.html#gadc4e1594f9555d919131ee02b17822a2">  502</a></span>&#160;        <span class="keyword">typedef</span> vec&lt;2, f64, defaultp&gt;           <a class="code" href="a00304.html#gadc4e1594f9555d919131ee02b17822a2">f64vec2</a>;</div>
-<div class="line"><a name="l00503"></a><span class="lineno"><a class="line" href="a00304.html#gaa7a1ddca75c5f629173bf4772db7a635">  503</a></span>&#160;        <span class="keyword">typedef</span> vec&lt;3, f64, defaultp&gt;           <a class="code" href="a00304.html#gaa7a1ddca75c5f629173bf4772db7a635">f64vec3</a>;</div>
-<div class="line"><a name="l00504"></a><span class="lineno"><a class="line" href="a00304.html#ga66e92e57260bdb910609b9a56bf83e97">  504</a></span>&#160;        <span class="keyword">typedef</span> vec&lt;4, f64, defaultp&gt;           <a class="code" href="a00304.html#ga66e92e57260bdb910609b9a56bf83e97">f64vec4</a>;</div>
-<div class="line"><a name="l00505"></a><span class="lineno">  505</span>&#160;</div>
-<div class="line"><a name="l00506"></a><span class="lineno">  506</span>&#160;        <span class="comment">// Matrix NxN</span></div>
-<div class="line"><a name="l00507"></a><span class="lineno">  507</span>&#160;</div>
-<div class="line"><a name="l00508"></a><span class="lineno">  508</span>&#160;        <span class="keyword">typedef</span> mat&lt;2, 2, f32, lowp&gt;            <a class="code" href="a00284.html#gae400c4ce1f5f3e1fa12861b2baed331a">lowp_mat2</a>;</div>
-<div class="line"><a name="l00509"></a><span class="lineno">  509</span>&#160;        <span class="keyword">typedef</span> mat&lt;3, 3, f32, lowp&gt;            <a class="code" href="a00284.html#ga6271ebc85ed778ccc15458c3d86fc854">lowp_mat3</a>;</div>
-<div class="line"><a name="l00510"></a><span class="lineno">  510</span>&#160;        <span class="keyword">typedef</span> mat&lt;4, 4, f32, lowp&gt;            <a class="code" href="a00284.html#ga2dedee030500865267cd5851c00c139d">lowp_mat4</a>;</div>
-<div class="line"><a name="l00511"></a><span class="lineno">  511</span>&#160;</div>
-<div class="line"><a name="l00512"></a><span class="lineno">  512</span>&#160;        <span class="keyword">typedef</span> mat&lt;2, 2, f32, mediump&gt;         <a class="code" href="a00284.html#ga745452bd9c89f5ad948203e4fb4b4ea3">mediump_mat2</a>;</div>
-<div class="line"><a name="l00513"></a><span class="lineno">  513</span>&#160;        <span class="keyword">typedef</span> mat&lt;3, 3, f32, mediump&gt;         <a class="code" href="a00284.html#ga5aae49834d02732942f44e61d7bce136">mediump_mat3</a>;</div>
-<div class="line"><a name="l00514"></a><span class="lineno">  514</span>&#160;        <span class="keyword">typedef</span> mat&lt;4, 4, f32, mediump&gt;         <a class="code" href="a00284.html#gab8531bc3f269aa45835cd6e1972b7fc7">mediump_mat4</a>;</div>
-<div class="line"><a name="l00515"></a><span class="lineno">  515</span>&#160;</div>
-<div class="line"><a name="l00516"></a><span class="lineno">  516</span>&#160;        <span class="keyword">typedef</span> mat&lt;2, 2, f32, highp&gt;           <a class="code" href="a00284.html#ga4d5a0055544a516237dcdace049b143d">highp_mat2</a>;</div>
-<div class="line"><a name="l00517"></a><span class="lineno">  517</span>&#160;        <span class="keyword">typedef</span> mat&lt;3, 3, f32, highp&gt;           <a class="code" href="a00284.html#ga3fd9849f3da5ed6e3decc3fb10a20b3e">highp_mat3</a>;</div>
-<div class="line"><a name="l00518"></a><span class="lineno">  518</span>&#160;        <span class="keyword">typedef</span> mat&lt;4, 4, f32, highp&gt;           <a class="code" href="a00284.html#gad72e13d669d039f12ae5afa23148adc1">highp_mat4</a>;</div>
-<div class="line"><a name="l00519"></a><span class="lineno">  519</span>&#160;</div>
-<div class="line"><a name="l00520"></a><span class="lineno">  520</span>&#160;        <span class="keyword">typedef</span> mat&lt;2, 2, f32, defaultp&gt;        <a class="code" href="a00283.html#ga8dd59e7fc6913ac5d61b86553e9148ba">mat2</a>;</div>
-<div class="line"><a name="l00521"></a><span class="lineno">  521</span>&#160;        <span class="keyword">typedef</span> mat&lt;3, 3, f32, defaultp&gt;        <a class="code" href="a00283.html#gaefb0fc7a4960b782c18708bb6b655262">mat3</a>;</div>
-<div class="line"><a name="l00522"></a><span class="lineno">  522</span>&#160;        <span class="keyword">typedef</span> mat&lt;4, 4, f32, defaultp&gt;        <a class="code" href="a00283.html#ga0db98d836c5549d31cf64ecd043b7af7">mat4</a>;</div>
-<div class="line"><a name="l00523"></a><span class="lineno">  523</span>&#160;</div>
-<div class="line"><a name="l00524"></a><span class="lineno"><a class="line" href="a00304.html#ga5bba0ce31210e274f73efacd3364c03f">  524</a></span>&#160;        <span class="keyword">typedef</span> mat&lt;2, 2, f32, lowp&gt;            <a class="code" href="a00304.html#ga5bba0ce31210e274f73efacd3364c03f">lowp_fmat2</a>;</div>
-<div class="line"><a name="l00525"></a><span class="lineno"><a class="line" href="a00304.html#ga83079315e230e8f39728f4bf0d2f9a9b">  525</a></span>&#160;        <span class="keyword">typedef</span> mat&lt;3, 3, f32, lowp&gt;            <a class="code" href="a00304.html#ga83079315e230e8f39728f4bf0d2f9a9b">lowp_fmat3</a>;</div>
-<div class="line"><a name="l00526"></a><span class="lineno"><a class="line" href="a00304.html#ga5803cb9ae26399762d8bba9e0b2fc09f">  526</a></span>&#160;        <span class="keyword">typedef</span> mat&lt;4, 4, f32, lowp&gt;            <a class="code" href="a00304.html#ga5803cb9ae26399762d8bba9e0b2fc09f">lowp_fmat4</a>;</div>
-<div class="line"><a name="l00527"></a><span class="lineno">  527</span>&#160;</div>
-<div class="line"><a name="l00528"></a><span class="lineno"><a class="line" href="a00304.html#ga74e9133378fd0b4da8ac0bc0876702ff">  528</a></span>&#160;        <span class="keyword">typedef</span> mat&lt;2, 2, f32, mediump&gt;         <a class="code" href="a00304.html#ga74e9133378fd0b4da8ac0bc0876702ff">mediump_fmat2</a>;</div>
-<div class="line"><a name="l00529"></a><span class="lineno"><a class="line" href="a00304.html#ga80823dfad5dba98512c76af498343847">  529</a></span>&#160;        <span class="keyword">typedef</span> mat&lt;3, 3, f32, mediump&gt;         <a class="code" href="a00304.html#ga80823dfad5dba98512c76af498343847">mediump_fmat3</a>;</div>
-<div class="line"><a name="l00530"></a><span class="lineno"><a class="line" href="a00304.html#gac1c38778c0b5a1263f07753c05a4f7b9">  530</a></span>&#160;        <span class="keyword">typedef</span> mat&lt;4, 4, f32, mediump&gt;         <a class="code" href="a00304.html#gac1c38778c0b5a1263f07753c05a4f7b9">mediump_fmat4</a>;</div>
-<div class="line"><a name="l00531"></a><span class="lineno">  531</span>&#160;</div>
-<div class="line"><a name="l00532"></a><span class="lineno"><a class="line" href="a00304.html#gae98c88d9a7befa9b5877f49176225535">  532</a></span>&#160;        <span class="keyword">typedef</span> mat&lt;2, 2, f32, highp&gt;           <a class="code" href="a00304.html#gae98c88d9a7befa9b5877f49176225535">highp_fmat2</a>;</div>
-<div class="line"><a name="l00533"></a><span class="lineno"><a class="line" href="a00304.html#gaed2dc69e0d507d4191092dbd44b3eb75">  533</a></span>&#160;        <span class="keyword">typedef</span> mat&lt;3, 3, f32, highp&gt;           <a class="code" href="a00304.html#gaed2dc69e0d507d4191092dbd44b3eb75">highp_fmat3</a>;</div>
-<div class="line"><a name="l00534"></a><span class="lineno"><a class="line" href="a00304.html#gabf28443ce0cc0959077ec39b21f32c39">  534</a></span>&#160;        <span class="keyword">typedef</span> mat&lt;4, 4, f32, highp&gt;           <a class="code" href="a00304.html#gabf28443ce0cc0959077ec39b21f32c39">highp_fmat4</a>;</div>
-<div class="line"><a name="l00535"></a><span class="lineno">  535</span>&#160;</div>
-<div class="line"><a name="l00536"></a><span class="lineno"><a class="line" href="a00304.html#ga4541dc2feb2a31d6ecb5a303f3dd3280">  536</a></span>&#160;        <span class="keyword">typedef</span> mat&lt;2, 2, f32, defaultp&gt;        <a class="code" href="a00304.html#ga4541dc2feb2a31d6ecb5a303f3dd3280">fmat2</a>;</div>
-<div class="line"><a name="l00537"></a><span class="lineno"><a class="line" href="a00304.html#ga253d453c20e037730023fea0215cb6f6">  537</a></span>&#160;        <span class="keyword">typedef</span> mat&lt;3, 3, f32, defaultp&gt;        <a class="code" href="a00304.html#ga253d453c20e037730023fea0215cb6f6">fmat3</a>;</div>
-<div class="line"><a name="l00538"></a><span class="lineno"><a class="line" href="a00304.html#ga8cb400c0f4438f2640035d7b9824a0ca">  538</a></span>&#160;        <span class="keyword">typedef</span> mat&lt;4, 4, f32, defaultp&gt;        <a class="code" href="a00304.html#ga8cb400c0f4438f2640035d7b9824a0ca">fmat4</a>;</div>
-<div class="line"><a name="l00539"></a><span class="lineno">  539</span>&#160;</div>
-<div class="line"><a name="l00540"></a><span class="lineno"><a class="line" href="a00304.html#ga52409bc6d4a2ce3421526c069220d685">  540</a></span>&#160;        <span class="keyword">typedef</span> mat&lt;2, 2, f32, lowp&gt;            <a class="code" href="a00304.html#ga52409bc6d4a2ce3421526c069220d685">lowp_f32mat2</a>;</div>
-<div class="line"><a name="l00541"></a><span class="lineno"><a class="line" href="a00304.html#ga4187f89f196505b40e63f516139511e5">  541</a></span>&#160;        <span class="keyword">typedef</span> mat&lt;3, 3, f32, lowp&gt;            <a class="code" href="a00304.html#ga4187f89f196505b40e63f516139511e5">lowp_f32mat3</a>;</div>
-<div class="line"><a name="l00542"></a><span class="lineno"><a class="line" href="a00304.html#ga766aed2871e6173a81011a877f398f04">  542</a></span>&#160;        <span class="keyword">typedef</span> mat&lt;4, 4, f32, lowp&gt;            <a class="code" href="a00304.html#ga766aed2871e6173a81011a877f398f04">lowp_f32mat4</a>;</div>
-<div class="line"><a name="l00543"></a><span class="lineno">  543</span>&#160;</div>
-<div class="line"><a name="l00544"></a><span class="lineno"><a class="line" href="a00304.html#gaf9020c6176a75bc84828ab01ea7dac25">  544</a></span>&#160;        <span class="keyword">typedef</span> mat&lt;2, 2, f32, mediump&gt;         <a class="code" href="a00304.html#gaf9020c6176a75bc84828ab01ea7dac25">mediump_f32mat2</a>;</div>
-<div class="line"><a name="l00545"></a><span class="lineno"><a class="line" href="a00304.html#gaaaf878d0d7bfc0aac054fe269a886ca8">  545</a></span>&#160;        <span class="keyword">typedef</span> mat&lt;3, 3, f32, mediump&gt;         <a class="code" href="a00304.html#gaaaf878d0d7bfc0aac054fe269a886ca8">mediump_f32mat3</a>;</div>
-<div class="line"><a name="l00546"></a><span class="lineno"><a class="line" href="a00304.html#ga4491baaebbc46a20f1cb5da985576bf4">  546</a></span>&#160;        <span class="keyword">typedef</span> mat&lt;4, 4, f32, mediump&gt;         <a class="code" href="a00304.html#ga4491baaebbc46a20f1cb5da985576bf4">mediump_f32mat4</a>;</div>
-<div class="line"><a name="l00547"></a><span class="lineno">  547</span>&#160;</div>
-<div class="line"><a name="l00548"></a><span class="lineno"><a class="line" href="a00304.html#ga298f7d4d273678d0282812368da27fda">  548</a></span>&#160;        <span class="keyword">typedef</span> mat&lt;2, 2, f32, highp&gt;           <a class="code" href="a00304.html#ga298f7d4d273678d0282812368da27fda">highp_f32mat2</a>;</div>
-<div class="line"><a name="l00549"></a><span class="lineno"><a class="line" href="a00304.html#ga24f9ef3263b1638564713892cc37981f">  549</a></span>&#160;        <span class="keyword">typedef</span> mat&lt;3, 3, f32, highp&gt;           <a class="code" href="a00304.html#ga24f9ef3263b1638564713892cc37981f">highp_f32mat3</a>;</div>
-<div class="line"><a name="l00550"></a><span class="lineno"><a class="line" href="a00304.html#ga14c90ca49885723f51d06e295587236f">  550</a></span>&#160;        <span class="keyword">typedef</span> mat&lt;4, 4, f32, highp&gt;           <a class="code" href="a00304.html#ga14c90ca49885723f51d06e295587236f">highp_f32mat4</a>;</div>
-<div class="line"><a name="l00551"></a><span class="lineno">  551</span>&#160;</div>
-<div class="line"><a name="l00552"></a><span class="lineno"><a class="line" href="a00304.html#gab12383ed6ac7595ed6fde4d266c58425">  552</a></span>&#160;        <span class="keyword">typedef</span> mat&lt;2, 2, f32, defaultp&gt;        <a class="code" href="a00304.html#gab12383ed6ac7595ed6fde4d266c58425">f32mat2</a>;</div>
-<div class="line"><a name="l00553"></a><span class="lineno"><a class="line" href="a00304.html#ga856f3905ee7cc2e4890a8a1d56c150be">  553</a></span>&#160;        <span class="keyword">typedef</span> mat&lt;3, 3, f32, defaultp&gt;        <a class="code" href="a00304.html#ga856f3905ee7cc2e4890a8a1d56c150be">f32mat3</a>;</div>
-<div class="line"><a name="l00554"></a><span class="lineno"><a class="line" href="a00304.html#ga99d1b85ff99956b33da7e9992aad129a">  554</a></span>&#160;        <span class="keyword">typedef</span> mat&lt;4, 4, f32, defaultp&gt;        <a class="code" href="a00304.html#ga99d1b85ff99956b33da7e9992aad129a">f32mat4</a>;</div>
-<div class="line"><a name="l00555"></a><span class="lineno">  555</span>&#160;</div>
-<div class="line"><a name="l00556"></a><span class="lineno">  556</span>&#160;        <span class="keyword">typedef</span> mat&lt;2, 2, f64, lowp&gt;            <a class="code" href="a00284.html#gad8e2727a6e7aa68280245bb0022118e1">lowp_dmat2</a>;</div>
-<div class="line"><a name="l00557"></a><span class="lineno">  557</span>&#160;        <span class="keyword">typedef</span> mat&lt;3, 3, f64, lowp&gt;            <a class="code" href="a00284.html#ga0cab80beee64a5f8d2ae4e823983063a">lowp_dmat3</a>;</div>
-<div class="line"><a name="l00558"></a><span class="lineno">  558</span>&#160;        <span class="keyword">typedef</span> mat&lt;4, 4, f64, lowp&gt;            <a class="code" href="a00284.html#ga708bc5b91bbfedd21debac8dcf2a64cd">lowp_dmat4</a>;</div>
-<div class="line"><a name="l00559"></a><span class="lineno">  559</span>&#160;</div>
-<div class="line"><a name="l00560"></a><span class="lineno">  560</span>&#160;        <span class="keyword">typedef</span> mat&lt;2, 2, f64, mediump&gt;         <a class="code" href="a00284.html#ga6205fd19be355600334edef6af0b27cb">mediump_dmat2</a>;</div>
-<div class="line"><a name="l00561"></a><span class="lineno">  561</span>&#160;        <span class="keyword">typedef</span> mat&lt;3, 3, f64, mediump&gt;         <a class="code" href="a00284.html#ga939fbf9c53008a8e84c7dd7cf8de29e2">mediump_dmat3</a>;</div>
-<div class="line"><a name="l00562"></a><span class="lineno">  562</span>&#160;        <span class="keyword">typedef</span> mat&lt;4, 4, f64, mediump&gt;         <a class="code" href="a00284.html#gaf650bc667bf2a0e496b5a9182bc8d378">mediump_dmat4</a>;</div>
-<div class="line"><a name="l00563"></a><span class="lineno">  563</span>&#160;</div>
-<div class="line"><a name="l00564"></a><span class="lineno">  564</span>&#160;        <span class="keyword">typedef</span> mat&lt;2, 2, f64, highp&gt;           <a class="code" href="a00284.html#ga369b447bb1b312449b679ea1f90f3cea">highp_dmat2</a>;</div>
-<div class="line"><a name="l00565"></a><span class="lineno">  565</span>&#160;        <span class="keyword">typedef</span> mat&lt;3, 3, f64, highp&gt;           <a class="code" href="a00284.html#ga86d6d4dbad92ffdcc759773340e15a97">highp_dmat3</a>;</div>
-<div class="line"><a name="l00566"></a><span class="lineno">  566</span>&#160;        <span class="keyword">typedef</span> mat&lt;4, 4, f64, highp&gt;           <a class="code" href="a00284.html#ga945254f459860741138bceb74da496b9">highp_dmat4</a>;</div>
-<div class="line"><a name="l00567"></a><span class="lineno">  567</span>&#160;</div>
-<div class="line"><a name="l00568"></a><span class="lineno">  568</span>&#160;        <span class="keyword">typedef</span> mat&lt;2, 2, f64, defaultp&gt;        <a class="code" href="a00283.html#ga21dbd1f987775d7cc7607c139531c7e6">dmat2</a>;</div>
-<div class="line"><a name="l00569"></a><span class="lineno">  569</span>&#160;        <span class="keyword">typedef</span> mat&lt;3, 3, f64, defaultp&gt;        <a class="code" href="a00283.html#ga6f40aa56265b4b0ccad41b86802efe33">dmat3</a>;</div>
-<div class="line"><a name="l00570"></a><span class="lineno">  570</span>&#160;        <span class="keyword">typedef</span> mat&lt;4, 4, f64, defaultp&gt;        <a class="code" href="a00283.html#ga0f34486bb7fec8e5a5b3830b6a6cbeca">dmat4</a>;</div>
-<div class="line"><a name="l00571"></a><span class="lineno">  571</span>&#160;</div>
-<div class="line"><a name="l00572"></a><span class="lineno"><a class="line" href="a00304.html#gafc730f6b4242763b0eda0ffa25150292">  572</a></span>&#160;        <span class="keyword">typedef</span> mat&lt;2, 2, f64, lowp&gt;            <a class="code" href="a00304.html#gafc730f6b4242763b0eda0ffa25150292">lowp_f64mat2</a>;</div>
-<div class="line"><a name="l00573"></a><span class="lineno"><a class="line" href="a00304.html#ga58119a41d143ebaea0df70fe882e8a40">  573</a></span>&#160;        <span class="keyword">typedef</span> mat&lt;3, 3, f64, lowp&gt;            <a class="code" href="a00304.html#ga58119a41d143ebaea0df70fe882e8a40">lowp_f64mat3</a>;</div>
-<div class="line"><a name="l00574"></a><span class="lineno"><a class="line" href="a00304.html#ga7451266e67794bd1125163502bc4a570">  574</a></span>&#160;        <span class="keyword">typedef</span> mat&lt;4, 4, f64, lowp&gt;            <a class="code" href="a00304.html#ga7451266e67794bd1125163502bc4a570">lowp_f64mat4</a>;</div>
-<div class="line"><a name="l00575"></a><span class="lineno">  575</span>&#160;</div>
-<div class="line"><a name="l00576"></a><span class="lineno"><a class="line" href="a00304.html#gac1281da5ded55047e8892b0e1f1ae965">  576</a></span>&#160;        <span class="keyword">typedef</span> mat&lt;2, 2, f64, mediump&gt;         <a class="code" href="a00304.html#gac1281da5ded55047e8892b0e1f1ae965">mediump_f64mat2</a>;</div>
-<div class="line"><a name="l00577"></a><span class="lineno"><a class="line" href="a00304.html#gad35fb67eb1d03c5a514f0bd7aed1c776">  577</a></span>&#160;        <span class="keyword">typedef</span> mat&lt;3, 3, f64, mediump&gt;         <a class="code" href="a00304.html#gad35fb67eb1d03c5a514f0bd7aed1c776">mediump_f64mat3</a>;</div>
-<div class="line"><a name="l00578"></a><span class="lineno"><a class="line" href="a00304.html#gaa805ef691c711dc41e2776cfb67f5cf5">  578</a></span>&#160;        <span class="keyword">typedef</span> mat&lt;4, 4, f64, mediump&gt;         <a class="code" href="a00304.html#gaa805ef691c711dc41e2776cfb67f5cf5">mediump_f64mat4</a>;</div>
-<div class="line"><a name="l00579"></a><span class="lineno">  579</span>&#160;</div>
-<div class="line"><a name="l00580"></a><span class="lineno"><a class="line" href="a00304.html#gaf7adb92ce8de0afaff01436b039fd924">  580</a></span>&#160;        <span class="keyword">typedef</span> mat&lt;2, 2, f64, highp&gt;           <a class="code" href="a00304.html#gaf7adb92ce8de0afaff01436b039fd924">highp_f64mat2</a>;</div>
-<div class="line"><a name="l00581"></a><span class="lineno"><a class="line" href="a00304.html#ga609bf0ace941d6ab1bb2f9522a04e546">  581</a></span>&#160;        <span class="keyword">typedef</span> mat&lt;3, 3, f64, highp&gt;           <a class="code" href="a00304.html#ga609bf0ace941d6ab1bb2f9522a04e546">highp_f64mat3</a>;</div>
-<div class="line"><a name="l00582"></a><span class="lineno"><a class="line" href="a00304.html#gad308e0ed27d64daa4213fb257fcbd5a5">  582</a></span>&#160;        <span class="keyword">typedef</span> mat&lt;4, 4, f64, highp&gt;           <a class="code" href="a00304.html#gad308e0ed27d64daa4213fb257fcbd5a5">highp_f64mat4</a>;</div>
-<div class="line"><a name="l00583"></a><span class="lineno">  583</span>&#160;</div>
-<div class="line"><a name="l00584"></a><span class="lineno"><a class="line" href="a00304.html#gad9771450a54785d13080cdde0fe20c1d">  584</a></span>&#160;        <span class="keyword">typedef</span> mat&lt;2, 2, f64, defaultp&gt;        <a class="code" href="a00304.html#gad9771450a54785d13080cdde0fe20c1d">f64mat2</a>;</div>
-<div class="line"><a name="l00585"></a><span class="lineno"><a class="line" href="a00304.html#ga9b69181efbf8f37ae934f135137b29c0">  585</a></span>&#160;        <span class="keyword">typedef</span> mat&lt;3, 3, f64, defaultp&gt;        <a class="code" href="a00304.html#ga9b69181efbf8f37ae934f135137b29c0">f64mat3</a>;</div>
-<div class="line"><a name="l00586"></a><span class="lineno"><a class="line" href="a00304.html#ga0ecd3f4952536e5ef12702b44d2626fc">  586</a></span>&#160;        <span class="keyword">typedef</span> mat&lt;4, 4, f64, defaultp&gt;        <a class="code" href="a00304.html#ga0ecd3f4952536e5ef12702b44d2626fc">f64mat4</a>;</div>
-<div class="line"><a name="l00587"></a><span class="lineno">  587</span>&#160;</div>
-<div class="line"><a name="l00588"></a><span class="lineno">  588</span>&#160;        <span class="comment">// Matrix MxN</span></div>
-<div class="line"><a name="l00589"></a><span class="lineno">  589</span>&#160;</div>
-<div class="line"><a name="l00590"></a><span class="lineno">  590</span>&#160;        <span class="keyword">typedef</span> mat&lt;2, 2, f32, lowp&gt;            <a class="code" href="a00284.html#ga2df7cdaf9a571ce7a1b09435f502c694">lowp_mat2x2</a>;</div>
-<div class="line"><a name="l00591"></a><span class="lineno">  591</span>&#160;        <span class="keyword">typedef</span> mat&lt;2, 3, f32, lowp&gt;            <a class="code" href="a00284.html#ga3eee3a74d0f1de8635d846dfb29ec4bb">lowp_mat2x3</a>;</div>
-<div class="line"><a name="l00592"></a><span class="lineno">  592</span>&#160;        <span class="keyword">typedef</span> mat&lt;2, 4, f32, lowp&gt;            <a class="code" href="a00284.html#gade27f8324a16626cbce5d3e7da66b070">lowp_mat2x4</a>;</div>
-<div class="line"><a name="l00593"></a><span class="lineno">  593</span>&#160;        <span class="keyword">typedef</span> mat&lt;3, 2, f32, lowp&gt;            <a class="code" href="a00284.html#gaabf6cf90fd31efe25c94965507e98390">lowp_mat3x2</a>;</div>
-<div class="line"><a name="l00594"></a><span class="lineno">  594</span>&#160;        <span class="keyword">typedef</span> mat&lt;3, 3, f32, lowp&gt;            <a class="code" href="a00284.html#ga63362cb4a63fc1be7d2e49cd5d574c84">lowp_mat3x3</a>;</div>
-<div class="line"><a name="l00595"></a><span class="lineno">  595</span>&#160;        <span class="keyword">typedef</span> mat&lt;3, 4, f32, lowp&gt;            <a class="code" href="a00284.html#gac5fc6786688eff02904ca5e7d6960092">lowp_mat3x4</a>;</div>
-<div class="line"><a name="l00596"></a><span class="lineno">  596</span>&#160;        <span class="keyword">typedef</span> mat&lt;4, 2, f32, lowp&gt;            <a class="code" href="a00284.html#gafa3cdb8f24d09d761ec9ae2a4c7e5e21">lowp_mat4x2</a>;</div>
-<div class="line"><a name="l00597"></a><span class="lineno">  597</span>&#160;        <span class="keyword">typedef</span> mat&lt;4, 3, f32, lowp&gt;            <a class="code" href="a00284.html#ga534c3ef5c3b8fdd8656b6afc205b4b77">lowp_mat4x3</a>;</div>
-<div class="line"><a name="l00598"></a><span class="lineno">  598</span>&#160;        <span class="keyword">typedef</span> mat&lt;4, 4, f32, lowp&gt;            <a class="code" href="a00284.html#ga686468a9a815bd4db8cddae42a6d6b87">lowp_mat4x4</a>;</div>
-<div class="line"><a name="l00599"></a><span class="lineno">  599</span>&#160;</div>
-<div class="line"><a name="l00600"></a><span class="lineno">  600</span>&#160;        <span class="keyword">typedef</span> mat&lt;2, 2, f32, mediump&gt;         <a class="code" href="a00284.html#ga0cdf57d29f9448864237b2fb3e39aa1d">mediump_mat2x2</a>;</div>
-<div class="line"><a name="l00601"></a><span class="lineno">  601</span>&#160;        <span class="keyword">typedef</span> mat&lt;2, 3, f32, mediump&gt;         <a class="code" href="a00284.html#ga497d513d552d927537d61fa11e3701ab">mediump_mat2x3</a>;</div>
-<div class="line"><a name="l00602"></a><span class="lineno">  602</span>&#160;        <span class="keyword">typedef</span> mat&lt;2, 4, f32, mediump&gt;         <a class="code" href="a00284.html#gae7b75ea2e09fa686a79bbe9b6ca68ee5">mediump_mat2x4</a>;</div>
-<div class="line"><a name="l00603"></a><span class="lineno">  603</span>&#160;        <span class="keyword">typedef</span> mat&lt;3, 2, f32, mediump&gt;         <a class="code" href="a00284.html#ga9e1c9ee65fef547bde793e69723e24eb">mediump_mat3x2</a>;</div>
-<div class="line"><a name="l00604"></a><span class="lineno">  604</span>&#160;        <span class="keyword">typedef</span> mat&lt;3, 3, f32, mediump&gt;         <a class="code" href="a00284.html#gabc0f2f4ad21c90b341881cf056f8650e">mediump_mat3x3</a>;</div>
-<div class="line"><a name="l00605"></a><span class="lineno">  605</span>&#160;        <span class="keyword">typedef</span> mat&lt;3, 4, f32, mediump&gt;         <a class="code" href="a00284.html#gaa669c6675c3405f76c0b14020d1c0d61">mediump_mat3x4</a>;</div>
-<div class="line"><a name="l00606"></a><span class="lineno">  606</span>&#160;        <span class="keyword">typedef</span> mat&lt;4, 2, f32, mediump&gt;         <a class="code" href="a00284.html#gad75706b70545412ba9ac27d5ee210f66">mediump_mat4x2</a>;</div>
-<div class="line"><a name="l00607"></a><span class="lineno">  607</span>&#160;        <span class="keyword">typedef</span> mat&lt;4, 3, f32, mediump&gt;         <a class="code" href="a00284.html#ga4a1440b5ea3cf84d5b06c79b534bd770">mediump_mat4x3</a>;</div>
-<div class="line"><a name="l00608"></a><span class="lineno">  608</span>&#160;        <span class="keyword">typedef</span> mat&lt;4, 4, f32, mediump&gt;         <a class="code" href="a00284.html#ga15bca2b70917d9752231160d9da74b01">mediump_mat4x4</a>;</div>
-<div class="line"><a name="l00609"></a><span class="lineno">  609</span>&#160;</div>
-<div class="line"><a name="l00610"></a><span class="lineno">  610</span>&#160;        <span class="keyword">typedef</span> mat&lt;2, 2, f32, highp&gt;           <a class="code" href="a00284.html#ga2352ae43b284c9f71446674c0208c05d">highp_mat2x2</a>;</div>
-<div class="line"><a name="l00611"></a><span class="lineno">  611</span>&#160;        <span class="keyword">typedef</span> mat&lt;2, 3, f32, highp&gt;           <a class="code" href="a00284.html#ga7a0e3fe41512b0494e598f5c58722f19">highp_mat2x3</a>;</div>
-<div class="line"><a name="l00612"></a><span class="lineno">  612</span>&#160;        <span class="keyword">typedef</span> mat&lt;2, 4, f32, highp&gt;           <a class="code" href="a00284.html#ga61f36a81f2ed1b5f9fc8bc3b26faec8f">highp_mat2x4</a>;</div>
-<div class="line"><a name="l00613"></a><span class="lineno">  613</span>&#160;        <span class="keyword">typedef</span> mat&lt;3, 2, f32, highp&gt;           <a class="code" href="a00284.html#ga1eda47a00027ec440eac05d63739c71b">highp_mat3x2</a>;</div>
-<div class="line"><a name="l00614"></a><span class="lineno">  614</span>&#160;        <span class="keyword">typedef</span> mat&lt;3, 3, f32, highp&gt;           <a class="code" href="a00284.html#ga2ea82e12f4d7afcfce8f59894d400230">highp_mat3x3</a>;</div>
-<div class="line"><a name="l00615"></a><span class="lineno">  615</span>&#160;        <span class="keyword">typedef</span> mat&lt;3, 4, f32, highp&gt;           <a class="code" href="a00284.html#ga6454b3a26ea30f69de8e44c08a63d1b7">highp_mat3x4</a>;</div>
-<div class="line"><a name="l00616"></a><span class="lineno">  616</span>&#160;        <span class="keyword">typedef</span> mat&lt;4, 2, f32, highp&gt;           <a class="code" href="a00284.html#gab68b66e6d2c37b804d0baf970fa4f0e5">highp_mat4x2</a>;</div>
-<div class="line"><a name="l00617"></a><span class="lineno">  617</span>&#160;        <span class="keyword">typedef</span> mat&lt;4, 3, f32, highp&gt;           <a class="code" href="a00284.html#ga8d5a4e65fb976e4553b84995b95ecb38">highp_mat4x3</a>;</div>
-<div class="line"><a name="l00618"></a><span class="lineno">  618</span>&#160;        <span class="keyword">typedef</span> mat&lt;4, 4, f32, highp&gt;           <a class="code" href="a00284.html#ga58cc504be0e3b61c48bc91554a767b9f">highp_mat4x4</a>;</div>
-<div class="line"><a name="l00619"></a><span class="lineno">  619</span>&#160;</div>
-<div class="line"><a name="l00620"></a><span class="lineno">  620</span>&#160;        <span class="keyword">typedef</span> mat&lt;2, 2, f32, defaultp&gt;        <a class="code" href="a00283.html#gaaa17ef6bfa4e4f2692348b1460c8efcb">mat2x2</a>;</div>
-<div class="line"><a name="l00621"></a><span class="lineno">  621</span>&#160;        <span class="keyword">typedef</span> mat&lt;3, 2, f32, defaultp&gt;        <a class="code" href="a00280.html#ga2c27aea32de57d58aec8e92d5d2181e2">mat3x2</a>;</div>
-<div class="line"><a name="l00622"></a><span class="lineno">  622</span>&#160;        <span class="keyword">typedef</span> mat&lt;4, 2, f32, defaultp&gt;        <a class="code" href="a00283.html#gad941c947ad6cdd117a0e8554a4754983">mat4x2</a>;</div>
-<div class="line"><a name="l00623"></a><span class="lineno">  623</span>&#160;        <span class="keyword">typedef</span> mat&lt;2, 3, f32, defaultp&gt;        <a class="code" href="a00283.html#ga493ab21243abe564b3f7d381e677d29a">mat2x3</a>;</div>
-<div class="line"><a name="l00624"></a><span class="lineno">  624</span>&#160;        <span class="keyword">typedef</span> mat&lt;3, 3, f32, defaultp&gt;        <a class="code" href="a00283.html#gab91887d7565059dac640e3a1921c914a">mat3x3</a>;</div>
-<div class="line"><a name="l00625"></a><span class="lineno">  625</span>&#160;        <span class="keyword">typedef</span> mat&lt;4, 3, f32, defaultp&gt;        <a class="code" href="a00283.html#gac7574544bb94777bdbd2eb224eb72fd0">mat4x3</a>;</div>
-<div class="line"><a name="l00626"></a><span class="lineno">  626</span>&#160;        <span class="keyword">typedef</span> mat&lt;2, 4, f32, defaultp&gt;        <a class="code" href="a00283.html#ga8e879b57ddd81e5bf5a88929844e8b40">mat2x4</a>;</div>
-<div class="line"><a name="l00627"></a><span class="lineno">  627</span>&#160;        <span class="keyword">typedef</span> mat&lt;3, 4, f32, defaultp&gt;        <a class="code" href="a00283.html#gaf991cad0b34f64e33af186326dbc4d66">mat3x4</a>;</div>
-<div class="line"><a name="l00628"></a><span class="lineno">  628</span>&#160;        <span class="keyword">typedef</span> mat&lt;4, 4, f32, defaultp&gt;        <a class="code" href="a00283.html#gab2d35cc2655f44d60958d60a1de34e81">mat4x4</a>;</div>
-<div class="line"><a name="l00629"></a><span class="lineno">  629</span>&#160;</div>
-<div class="line"><a name="l00630"></a><span class="lineno"><a class="line" href="a00304.html#gab0feb11edd0d3ab3e8ed996d349a5066">  630</a></span>&#160;        <span class="keyword">typedef</span> mat&lt;2, 2, f32, lowp&gt;            <a class="code" href="a00304.html#gab0feb11edd0d3ab3e8ed996d349a5066">lowp_fmat2x2</a>;</div>
-<div class="line"><a name="l00631"></a><span class="lineno"><a class="line" href="a00304.html#ga71cdb53801ed4c3aadb3603c04723210">  631</a></span>&#160;        <span class="keyword">typedef</span> mat&lt;2, 3, f32, lowp&gt;            <a class="code" href="a00304.html#ga71cdb53801ed4c3aadb3603c04723210">lowp_fmat2x3</a>;</div>
-<div class="line"><a name="l00632"></a><span class="lineno"><a class="line" href="a00304.html#gaab217601c74974a84acbca428123ecf7">  632</a></span>&#160;        <span class="keyword">typedef</span> mat&lt;2, 4, f32, lowp&gt;            <a class="code" href="a00304.html#gaab217601c74974a84acbca428123ecf7">lowp_fmat2x4</a>;</div>
-<div class="line"><a name="l00633"></a><span class="lineno"><a class="line" href="a00304.html#ga49b98e7d71804af45d86886a489e633c">  633</a></span>&#160;        <span class="keyword">typedef</span> mat&lt;3, 2, f32, lowp&gt;            <a class="code" href="a00304.html#ga49b98e7d71804af45d86886a489e633c">lowp_fmat3x2</a>;</div>
-<div class="line"><a name="l00634"></a><span class="lineno"><a class="line" href="a00304.html#gaba56275dd04a7a61560b0e8fa5d365b4">  634</a></span>&#160;        <span class="keyword">typedef</span> mat&lt;3, 3, f32, lowp&gt;            <a class="code" href="a00304.html#gaba56275dd04a7a61560b0e8fa5d365b4">lowp_fmat3x3</a>;</div>
-<div class="line"><a name="l00635"></a><span class="lineno"><a class="line" href="a00304.html#ga28733aec7288191b314d42154fd0b690">  635</a></span>&#160;        <span class="keyword">typedef</span> mat&lt;3, 4, f32, lowp&gt;            <a class="code" href="a00304.html#ga28733aec7288191b314d42154fd0b690">lowp_fmat3x4</a>;</div>
-<div class="line"><a name="l00636"></a><span class="lineno"><a class="line" href="a00304.html#ga5868c2dcce41cc3ea5edcaeae239f62c">  636</a></span>&#160;        <span class="keyword">typedef</span> mat&lt;4, 2, f32, lowp&gt;            <a class="code" href="a00304.html#ga5868c2dcce41cc3ea5edcaeae239f62c">lowp_fmat4x2</a>;</div>
-<div class="line"><a name="l00637"></a><span class="lineno"><a class="line" href="a00304.html#ga5e649bbdb135fbcb4bfe950f4c73a444">  637</a></span>&#160;        <span class="keyword">typedef</span> mat&lt;4, 3, f32, lowp&gt;            <a class="code" href="a00304.html#ga5e649bbdb135fbcb4bfe950f4c73a444">lowp_fmat4x3</a>;</div>
-<div class="line"><a name="l00638"></a><span class="lineno"><a class="line" href="a00304.html#gac2f5263708ac847b361a9841e74ddf9f">  638</a></span>&#160;        <span class="keyword">typedef</span> mat&lt;4, 4, f32, lowp&gt;            <a class="code" href="a00304.html#gac2f5263708ac847b361a9841e74ddf9f">lowp_fmat4x4</a>;</div>
-<div class="line"><a name="l00639"></a><span class="lineno">  639</span>&#160;</div>
-<div class="line"><a name="l00640"></a><span class="lineno"><a class="line" href="a00304.html#ga98a687c17b174ea316b5f397b64f44bc">  640</a></span>&#160;        <span class="keyword">typedef</span> mat&lt;2, 2, f32, mediump&gt;         <a class="code" href="a00304.html#ga98a687c17b174ea316b5f397b64f44bc">mediump_fmat2x2</a>;</div>
-<div class="line"><a name="l00641"></a><span class="lineno"><a class="line" href="a00304.html#gaa03f939d90d5ef157df957d93f0b9a64">  641</a></span>&#160;        <span class="keyword">typedef</span> mat&lt;2, 3, f32, mediump&gt;         <a class="code" href="a00304.html#gaa03f939d90d5ef157df957d93f0b9a64">mediump_fmat2x3</a>;</div>
-<div class="line"><a name="l00642"></a><span class="lineno"><a class="line" href="a00304.html#ga35223623e9ccebd8a281873b71b7d213">  642</a></span>&#160;        <span class="keyword">typedef</span> mat&lt;2, 4, f32, mediump&gt;         <a class="code" href="a00304.html#ga35223623e9ccebd8a281873b71b7d213">mediump_fmat2x4</a>;</div>
-<div class="line"><a name="l00643"></a><span class="lineno"><a class="line" href="a00304.html#ga42569e5b92f8635cedeadb1457ee1467">  643</a></span>&#160;        <span class="keyword">typedef</span> mat&lt;3, 2, f32, mediump&gt;         <a class="code" href="a00304.html#ga42569e5b92f8635cedeadb1457ee1467">mediump_fmat3x2</a>;</div>
-<div class="line"><a name="l00644"></a><span class="lineno"><a class="line" href="a00304.html#gaa6f526388c74a66b3d52315a14d434ae">  644</a></span>&#160;        <span class="keyword">typedef</span> mat&lt;3, 3, f32, mediump&gt;         <a class="code" href="a00304.html#gaa6f526388c74a66b3d52315a14d434ae">mediump_fmat3x3</a>;</div>
-<div class="line"><a name="l00645"></a><span class="lineno"><a class="line" href="a00304.html#gaefe8ef520c6cb78590ebbefe648da4d4">  645</a></span>&#160;        <span class="keyword">typedef</span> mat&lt;3, 4, f32, mediump&gt;         <a class="code" href="a00304.html#gaefe8ef520c6cb78590ebbefe648da4d4">mediump_fmat3x4</a>;</div>
-<div class="line"><a name="l00646"></a><span class="lineno"><a class="line" href="a00304.html#gacea38a85893e17e6834b6cb09a9ad0cf">  646</a></span>&#160;        <span class="keyword">typedef</span> mat&lt;4, 2, f32, mediump&gt;         <a class="code" href="a00304.html#gacea38a85893e17e6834b6cb09a9ad0cf">mediump_fmat4x2</a>;</div>
-<div class="line"><a name="l00647"></a><span class="lineno"><a class="line" href="a00304.html#ga41ad497f7eae211556aefd783cb02b90">  647</a></span>&#160;        <span class="keyword">typedef</span> mat&lt;4, 3, f32, mediump&gt;         <a class="code" href="a00304.html#ga41ad497f7eae211556aefd783cb02b90">mediump_fmat4x3</a>;</div>
-<div class="line"><a name="l00648"></a><span class="lineno"><a class="line" href="a00304.html#ga22e27beead07bff4d5ce9d6065a57279">  648</a></span>&#160;        <span class="keyword">typedef</span> mat&lt;4, 4, f32, mediump&gt;         <a class="code" href="a00304.html#ga22e27beead07bff4d5ce9d6065a57279">mediump_fmat4x4</a>;</div>
-<div class="line"><a name="l00649"></a><span class="lineno">  649</span>&#160;</div>
-<div class="line"><a name="l00650"></a><span class="lineno"><a class="line" href="a00304.html#ga28635abcddb2f3e92c33c3f0fcc682ad">  650</a></span>&#160;        <span class="keyword">typedef</span> mat&lt;2, 2, f32, highp&gt;           <a class="code" href="a00304.html#ga28635abcddb2f3e92c33c3f0fcc682ad">highp_fmat2x2</a>;</div>
-<div class="line"><a name="l00651"></a><span class="lineno"><a class="line" href="a00304.html#gacf111095594996fef29067b2454fccad">  651</a></span>&#160;        <span class="keyword">typedef</span> mat&lt;2, 3, f32, highp&gt;           <a class="code" href="a00304.html#gacf111095594996fef29067b2454fccad">highp_fmat2x3</a>;</div>
-<div class="line"><a name="l00652"></a><span class="lineno"><a class="line" href="a00304.html#ga4920a1536f161f7ded1d6909b7fef0d2">  652</a></span>&#160;        <span class="keyword">typedef</span> mat&lt;2, 4, f32, highp&gt;           <a class="code" href="a00304.html#ga4920a1536f161f7ded1d6909b7fef0d2">highp_fmat2x4</a>;</div>
-<div class="line"><a name="l00653"></a><span class="lineno"><a class="line" href="a00304.html#gae54e4d1aeb5a0f0c64822e6f1b299e19">  653</a></span>&#160;        <span class="keyword">typedef</span> mat&lt;3, 2, f32, highp&gt;           <a class="code" href="a00304.html#gae54e4d1aeb5a0f0c64822e6f1b299e19">highp_fmat3x2</a>;</div>
-<div class="line"><a name="l00654"></a><span class="lineno"><a class="line" href="a00304.html#gaa5b44d3ef6efcf33f44876673a7a936e">  654</a></span>&#160;        <span class="keyword">typedef</span> mat&lt;3, 3, f32, highp&gt;           <a class="code" href="a00304.html#gaa5b44d3ef6efcf33f44876673a7a936e">highp_fmat3x3</a>;</div>
-<div class="line"><a name="l00655"></a><span class="lineno"><a class="line" href="a00304.html#ga961fac2a885907ffcf4d40daac6615c5">  655</a></span>&#160;        <span class="keyword">typedef</span> mat&lt;3, 4, f32, highp&gt;           <a class="code" href="a00304.html#ga961fac2a885907ffcf4d40daac6615c5">highp_fmat3x4</a>;</div>
-<div class="line"><a name="l00656"></a><span class="lineno"><a class="line" href="a00304.html#ga076961cf2d120c7168b957cb2ed107b3">  656</a></span>&#160;        <span class="keyword">typedef</span> mat&lt;4, 2, f32, highp&gt;           <a class="code" href="a00304.html#ga076961cf2d120c7168b957cb2ed107b3">highp_fmat4x2</a>;</div>
-<div class="line"><a name="l00657"></a><span class="lineno"><a class="line" href="a00304.html#gae406ec670f64170a7437b5e302eeb2cb">  657</a></span>&#160;        <span class="keyword">typedef</span> mat&lt;4, 3, f32, highp&gt;           <a class="code" href="a00304.html#gae406ec670f64170a7437b5e302eeb2cb">highp_fmat4x3</a>;</div>
-<div class="line"><a name="l00658"></a><span class="lineno"><a class="line" href="a00304.html#gaee80c7cd3caa0f2635058656755f6f69">  658</a></span>&#160;        <span class="keyword">typedef</span> mat&lt;4, 4, f32, highp&gt;           <a class="code" href="a00304.html#gaee80c7cd3caa0f2635058656755f6f69">highp_fmat4x4</a>;</div>
-<div class="line"><a name="l00659"></a><span class="lineno">  659</span>&#160;</div>
-<div class="line"><a name="l00660"></a><span class="lineno"><a class="line" href="a00304.html#ga3350c93c3275298f940a42875388e4b4">  660</a></span>&#160;        <span class="keyword">typedef</span> mat&lt;2, 2, f32, defaultp&gt;        <a class="code" href="a00304.html#ga3350c93c3275298f940a42875388e4b4">fmat2x2</a>;</div>
-<div class="line"><a name="l00661"></a><span class="lineno"><a class="line" href="a00304.html#ga6af54d70d9beb0a7ef992a879e86b04f">  661</a></span>&#160;        <span class="keyword">typedef</span> mat&lt;3, 2, f32, defaultp&gt;        <a class="code" href="a00304.html#ga6af54d70d9beb0a7ef992a879e86b04f">fmat3x2</a>;</div>
-<div class="line"><a name="l00662"></a><span class="lineno"><a class="line" href="a00304.html#ga8c8aa45aafcc23238edb1d5aeb801774">  662</a></span>&#160;        <span class="keyword">typedef</span> mat&lt;4, 2, f32, defaultp&gt;        <a class="code" href="a00304.html#ga8c8aa45aafcc23238edb1d5aeb801774">fmat4x2</a>;</div>
-<div class="line"><a name="l00663"></a><span class="lineno"><a class="line" href="a00304.html#ga55a2d2a8eb09b5633668257eb3cad453">  663</a></span>&#160;        <span class="keyword">typedef</span> mat&lt;2, 3, f32, defaultp&gt;        <a class="code" href="a00304.html#ga55a2d2a8eb09b5633668257eb3cad453">fmat2x3</a>;</div>
-<div class="line"><a name="l00664"></a><span class="lineno"><a class="line" href="a00304.html#gaa07c86650253672a19dbfb898f3265b8">  664</a></span>&#160;        <span class="keyword">typedef</span> mat&lt;3, 3, f32, defaultp&gt;        <a class="code" href="a00304.html#gaa07c86650253672a19dbfb898f3265b8">fmat3x3</a>;</div>
-<div class="line"><a name="l00665"></a><span class="lineno"><a class="line" href="a00304.html#ga4295048a78bdf46b8a7de77ec665b497">  665</a></span>&#160;        <span class="keyword">typedef</span> mat&lt;4, 3, f32, defaultp&gt;        <a class="code" href="a00304.html#ga4295048a78bdf46b8a7de77ec665b497">fmat4x3</a>;</div>
-<div class="line"><a name="l00666"></a><span class="lineno"><a class="line" href="a00304.html#ga681381f19f11c9e5ee45cda2c56937ff">  666</a></span>&#160;        <span class="keyword">typedef</span> mat&lt;2, 4, f32, defaultp&gt;        <a class="code" href="a00304.html#ga681381f19f11c9e5ee45cda2c56937ff">fmat2x4</a>;</div>
-<div class="line"><a name="l00667"></a><span class="lineno"><a class="line" href="a00304.html#ga44e158af77a670ee1b58c03cda9e1619">  667</a></span>&#160;        <span class="keyword">typedef</span> mat&lt;3, 4, f32, defaultp&gt;        <a class="code" href="a00304.html#ga44e158af77a670ee1b58c03cda9e1619">fmat3x4</a>;</div>
-<div class="line"><a name="l00668"></a><span class="lineno"><a class="line" href="a00304.html#gad01cc6479bde1fd1870f13d3ed9530b3">  668</a></span>&#160;        <span class="keyword">typedef</span> mat&lt;4, 4, f32, defaultp&gt;        <a class="code" href="a00304.html#gad01cc6479bde1fd1870f13d3ed9530b3">fmat4x4</a>;</div>
-<div class="line"><a name="l00669"></a><span class="lineno">  669</span>&#160;</div>
-<div class="line"><a name="l00670"></a><span class="lineno"><a class="line" href="a00304.html#ga1d091b6abfba1772450e1745a06525bc">  670</a></span>&#160;        <span class="keyword">typedef</span> mat&lt;2, 2, f32, lowp&gt;            <a class="code" href="a00304.html#ga1d091b6abfba1772450e1745a06525bc">lowp_f32mat2x2</a>;</div>
-<div class="line"><a name="l00671"></a><span class="lineno"><a class="line" href="a00304.html#ga961ccb34cd1a5654c772c8709e001dc5">  671</a></span>&#160;        <span class="keyword">typedef</span> mat&lt;2, 3, f32, lowp&gt;            <a class="code" href="a00304.html#ga961ccb34cd1a5654c772c8709e001dc5">lowp_f32mat2x3</a>;</div>
-<div class="line"><a name="l00672"></a><span class="lineno"><a class="line" href="a00304.html#gacc6bf0209dda0c7c14851a646071c974">  672</a></span>&#160;        <span class="keyword">typedef</span> mat&lt;2, 4, f32, lowp&gt;            <a class="code" href="a00304.html#gacc6bf0209dda0c7c14851a646071c974">lowp_f32mat2x4</a>;</div>
-<div class="line"><a name="l00673"></a><span class="lineno"><a class="line" href="a00304.html#gac53f9d7ab04eace67adad026092fb1e8">  673</a></span>&#160;        <span class="keyword">typedef</span> mat&lt;3, 2, f32, lowp&gt;            <a class="code" href="a00304.html#gac53f9d7ab04eace67adad026092fb1e8">lowp_f32mat3x2</a>;</div>
-<div class="line"><a name="l00674"></a><span class="lineno"><a class="line" href="a00304.html#ga841211b641cff1fcf861bdb14e5e4abc">  674</a></span>&#160;        <span class="keyword">typedef</span> mat&lt;3, 3, f32, lowp&gt;            <a class="code" href="a00304.html#ga841211b641cff1fcf861bdb14e5e4abc">lowp_f32mat3x3</a>;</div>
-<div class="line"><a name="l00675"></a><span class="lineno"><a class="line" href="a00304.html#ga21b1b22dec013a72656e3644baf8a1e1">  675</a></span>&#160;        <span class="keyword">typedef</span> mat&lt;3, 4, f32, lowp&gt;            <a class="code" href="a00304.html#ga21b1b22dec013a72656e3644baf8a1e1">lowp_f32mat3x4</a>;</div>
-<div class="line"><a name="l00676"></a><span class="lineno"><a class="line" href="a00304.html#gae6f3fcb702a666de07650c149cfa845a">  676</a></span>&#160;        <span class="keyword">typedef</span> mat&lt;4, 2, f32, lowp&gt;            <a class="code" href="a00304.html#gae6f3fcb702a666de07650c149cfa845a">lowp_f32mat4x2</a>;</div>
-<div class="line"><a name="l00677"></a><span class="lineno"><a class="line" href="a00304.html#gac21eda58a1475449a5709b412ebd776c">  677</a></span>&#160;        <span class="keyword">typedef</span> mat&lt;4, 3, f32, lowp&gt;            <a class="code" href="a00304.html#gac21eda58a1475449a5709b412ebd776c">lowp_f32mat4x3</a>;</div>
-<div class="line"><a name="l00678"></a><span class="lineno"><a class="line" href="a00304.html#ga4143d129898f91545948c46859adce44">  678</a></span>&#160;        <span class="keyword">typedef</span> mat&lt;4, 4, f32, lowp&gt;            <a class="code" href="a00304.html#ga4143d129898f91545948c46859adce44">lowp_f32mat4x4</a>;</div>
-<div class="line"><a name="l00679"></a><span class="lineno">  679</span>&#160;        </div>
-<div class="line"><a name="l00680"></a><span class="lineno"><a class="line" href="a00304.html#gaa3ca74a44102035b3ffb5c9c52dfdd3f">  680</a></span>&#160;        <span class="keyword">typedef</span> mat&lt;2, 2, f32, mediump&gt;         <a class="code" href="a00304.html#gaa3ca74a44102035b3ffb5c9c52dfdd3f">mediump_f32mat2x2</a>;</div>
-<div class="line"><a name="l00681"></a><span class="lineno"><a class="line" href="a00304.html#gad4cc829ab1ad3e05ac0a24828a3c95cf">  681</a></span>&#160;        <span class="keyword">typedef</span> mat&lt;2, 3, f32, mediump&gt;         <a class="code" href="a00304.html#gad4cc829ab1ad3e05ac0a24828a3c95cf">mediump_f32mat2x3</a>;</div>
-<div class="line"><a name="l00682"></a><span class="lineno"><a class="line" href="a00304.html#gae71445ac6cd0b9fba3e5c905cd030fb1">  682</a></span>&#160;        <span class="keyword">typedef</span> mat&lt;2, 4, f32, mediump&gt;         <a class="code" href="a00304.html#gae71445ac6cd0b9fba3e5c905cd030fb1">mediump_f32mat2x4</a>;</div>
-<div class="line"><a name="l00683"></a><span class="lineno"><a class="line" href="a00304.html#gaaab39454f56cf9fc6d940358ce5e6a0f">  683</a></span>&#160;        <span class="keyword">typedef</span> mat&lt;3, 2, f32, mediump&gt;         <a class="code" href="a00304.html#gaaab39454f56cf9fc6d940358ce5e6a0f">mediump_f32mat3x2</a>;</div>
-<div class="line"><a name="l00684"></a><span class="lineno"><a class="line" href="a00304.html#gacd80ad7640e9e32f2edcb8330b1ffe4f">  684</a></span>&#160;        <span class="keyword">typedef</span> mat&lt;3, 3, f32, mediump&gt;         <a class="code" href="a00304.html#gacd80ad7640e9e32f2edcb8330b1ffe4f">mediump_f32mat3x3</a>;</div>
-<div class="line"><a name="l00685"></a><span class="lineno"><a class="line" href="a00304.html#ga8df705d775b776f5ae6b39e2ab892899">  685</a></span>&#160;        <span class="keyword">typedef</span> mat&lt;3, 4, f32, mediump&gt;         <a class="code" href="a00304.html#ga8df705d775b776f5ae6b39e2ab892899">mediump_f32mat3x4</a>;</div>
-<div class="line"><a name="l00686"></a><span class="lineno"><a class="line" href="a00304.html#gab005efe0fa4de1a928e8ddec4bc2c43f">  686</a></span>&#160;        <span class="keyword">typedef</span> mat&lt;4, 2, f32, mediump&gt;         <a class="code" href="a00304.html#gab005efe0fa4de1a928e8ddec4bc2c43f">mediump_f32mat4x2</a>;</div>
-<div class="line"><a name="l00687"></a><span class="lineno"><a class="line" href="a00304.html#gade108f16633cf95fa500b5b8c36c8b00">  687</a></span>&#160;        <span class="keyword">typedef</span> mat&lt;4, 3, f32, mediump&gt;         <a class="code" href="a00304.html#gade108f16633cf95fa500b5b8c36c8b00">mediump_f32mat4x3</a>;</div>
-<div class="line"><a name="l00688"></a><span class="lineno"><a class="line" href="a00304.html#ga936e95b881ecd2d109459ca41913fa99">  688</a></span>&#160;        <span class="keyword">typedef</span> mat&lt;4, 4, f32, mediump&gt;         <a class="code" href="a00304.html#ga936e95b881ecd2d109459ca41913fa99">mediump_f32mat4x4</a>;</div>
-<div class="line"><a name="l00689"></a><span class="lineno">  689</span>&#160;</div>
-<div class="line"><a name="l00690"></a><span class="lineno"><a class="line" href="a00304.html#gae5eb02d92b7d4605a4b7f37ae5cb2968">  690</a></span>&#160;        <span class="keyword">typedef</span> mat&lt;2, 2, f32, highp&gt;           <a class="code" href="a00304.html#gae5eb02d92b7d4605a4b7f37ae5cb2968">highp_f32mat2x2</a>;</div>
-<div class="line"><a name="l00691"></a><span class="lineno"><a class="line" href="a00304.html#ga0aeb5cb001473b08c88175012708a379">  691</a></span>&#160;        <span class="keyword">typedef</span> mat&lt;2, 3, f32, highp&gt;           <a class="code" href="a00304.html#ga0aeb5cb001473b08c88175012708a379">highp_f32mat2x3</a>;</div>
-<div class="line"><a name="l00692"></a><span class="lineno"><a class="line" href="a00304.html#ga88938ee1e7981fa3402e88da6ad74531">  692</a></span>&#160;        <span class="keyword">typedef</span> mat&lt;2, 4, f32, highp&gt;           <a class="code" href="a00304.html#ga88938ee1e7981fa3402e88da6ad74531">highp_f32mat2x4</a>;</div>
-<div class="line"><a name="l00693"></a><span class="lineno"><a class="line" href="a00304.html#ga36537e701456f12c20e73f469cac4967">  693</a></span>&#160;        <span class="keyword">typedef</span> mat&lt;3, 2, f32, highp&gt;           <a class="code" href="a00304.html#ga36537e701456f12c20e73f469cac4967">highp_f32mat3x2</a>;</div>
-<div class="line"><a name="l00694"></a><span class="lineno"><a class="line" href="a00304.html#gaab691ae40c37976d268d8cac0096e0e1">  694</a></span>&#160;        <span class="keyword">typedef</span> mat&lt;3, 3, f32, highp&gt;           <a class="code" href="a00304.html#gaab691ae40c37976d268d8cac0096e0e1">highp_f32mat3x3</a>;</div>
-<div class="line"><a name="l00695"></a><span class="lineno"><a class="line" href="a00304.html#gaa5086dbd6efb272d13fc88829330861d">  695</a></span>&#160;        <span class="keyword">typedef</span> mat&lt;3, 4, f32, highp&gt;           <a class="code" href="a00304.html#gaa5086dbd6efb272d13fc88829330861d">highp_f32mat3x4</a>;</div>
-<div class="line"><a name="l00696"></a><span class="lineno"><a class="line" href="a00304.html#ga602e119c6b246b4f6edcf66845f2aa0f">  696</a></span>&#160;        <span class="keyword">typedef</span> mat&lt;4, 2, f32, highp&gt;           <a class="code" href="a00304.html#ga602e119c6b246b4f6edcf66845f2aa0f">highp_f32mat4x2</a>;</div>
-<div class="line"><a name="l00697"></a><span class="lineno"><a class="line" href="a00304.html#ga66bffdd8e5c0d3ef9958bbab9ca1ba59">  697</a></span>&#160;        <span class="keyword">typedef</span> mat&lt;4, 3, f32, highp&gt;           <a class="code" href="a00304.html#ga66bffdd8e5c0d3ef9958bbab9ca1ba59">highp_f32mat4x3</a>;</div>
-<div class="line"><a name="l00698"></a><span class="lineno"><a class="line" href="a00304.html#gaf1b712b97b2322685fbbed28febe5f84">  698</a></span>&#160;        <span class="keyword">typedef</span> mat&lt;4, 4, f32, highp&gt;           <a class="code" href="a00304.html#gaf1b712b97b2322685fbbed28febe5f84">highp_f32mat4x4</a>;</div>
-<div class="line"><a name="l00699"></a><span class="lineno">  699</span>&#160;</div>
-<div class="line"><a name="l00700"></a><span class="lineno"><a class="line" href="a00304.html#ga04100c76f7d55a0dd0983ccf05142bff">  700</a></span>&#160;        <span class="keyword">typedef</span> mat&lt;2, 2, f32, defaultp&gt;        <a class="code" href="a00304.html#ga04100c76f7d55a0dd0983ccf05142bff">f32mat2x2</a>;</div>
-<div class="line"><a name="l00701"></a><span class="lineno"><a class="line" href="a00304.html#ga1320a08e14fdff3821241eefab6947e9">  701</a></span>&#160;        <span class="keyword">typedef</span> mat&lt;3, 2, f32, defaultp&gt;        <a class="code" href="a00304.html#ga1320a08e14fdff3821241eefab6947e9">f32mat3x2</a>;</div>
-<div class="line"><a name="l00702"></a><span class="lineno"><a class="line" href="a00304.html#ga3b32ca1e57a4ef91babbc3d35a34ea20">  702</a></span>&#160;        <span class="keyword">typedef</span> mat&lt;4, 2, f32, defaultp&gt;        <a class="code" href="a00304.html#ga3b32ca1e57a4ef91babbc3d35a34ea20">f32mat4x2</a>;</div>
-<div class="line"><a name="l00703"></a><span class="lineno"><a class="line" href="a00304.html#gab256cdab5eb582e426d749ae77b5b566">  703</a></span>&#160;        <span class="keyword">typedef</span> mat&lt;2, 3, f32, defaultp&gt;        <a class="code" href="a00304.html#gab256cdab5eb582e426d749ae77b5b566">f32mat2x3</a>;</div>
-<div class="line"><a name="l00704"></a><span class="lineno"><a class="line" href="a00304.html#ga65261fa8a21045c8646ddff114a56174">  704</a></span>&#160;        <span class="keyword">typedef</span> mat&lt;3, 3, f32, defaultp&gt;        <a class="code" href="a00304.html#ga65261fa8a21045c8646ddff114a56174">f32mat3x3</a>;</div>
-<div class="line"><a name="l00705"></a><span class="lineno"><a class="line" href="a00304.html#ga239b96198771b7add8eea7e6b59840c0">  705</a></span>&#160;        <span class="keyword">typedef</span> mat&lt;4, 3, f32, defaultp&gt;        <a class="code" href="a00304.html#ga239b96198771b7add8eea7e6b59840c0">f32mat4x3</a>;</div>
-<div class="line"><a name="l00706"></a><span class="lineno"><a class="line" href="a00304.html#gaf512b74c4400b68f9fdf9388b3d6aac8">  706</a></span>&#160;        <span class="keyword">typedef</span> mat&lt;2, 4, f32, defaultp&gt;        <a class="code" href="a00304.html#gaf512b74c4400b68f9fdf9388b3d6aac8">f32mat2x4</a>;</div>
-<div class="line"><a name="l00707"></a><span class="lineno"><a class="line" href="a00304.html#gab90ade28222f8b861d5ceaf81a3a7f5d">  707</a></span>&#160;        <span class="keyword">typedef</span> mat&lt;3, 4, f32, defaultp&gt;        <a class="code" href="a00304.html#gab90ade28222f8b861d5ceaf81a3a7f5d">f32mat3x4</a>;</div>
-<div class="line"><a name="l00708"></a><span class="lineno"><a class="line" href="a00304.html#gaee4da0e9fbd8cfa2f89cb80889719dc3">  708</a></span>&#160;        <span class="keyword">typedef</span> mat&lt;4, 4, f32, defaultp&gt;        <a class="code" href="a00304.html#gaee4da0e9fbd8cfa2f89cb80889719dc3">f32mat4x4</a>;</div>
-<div class="line"><a name="l00709"></a><span class="lineno">  709</span>&#160;</div>
-<div class="line"><a name="l00710"></a><span class="lineno">  710</span>&#160;        <span class="keyword">typedef</span> mat&lt;2, 2, double, lowp&gt;         <a class="code" href="a00284.html#gac61b94f5d9775f83f321bac899322fe2">lowp_dmat2x2</a>;</div>
-<div class="line"><a name="l00711"></a><span class="lineno">  711</span>&#160;        <span class="keyword">typedef</span> mat&lt;2, 3, double, lowp&gt;         <a class="code" href="a00284.html#gaf6bf2f5bde7ad5b9c289f777b93094af">lowp_dmat2x3</a>;</div>
-<div class="line"><a name="l00712"></a><span class="lineno">  712</span>&#160;        <span class="keyword">typedef</span> mat&lt;2, 4, double, lowp&gt;         <a class="code" href="a00284.html#ga97507a31ecee8609887d0f23bbde92c7">lowp_dmat2x4</a>;</div>
-<div class="line"><a name="l00713"></a><span class="lineno">  713</span>&#160;        <span class="keyword">typedef</span> mat&lt;3, 2, double, lowp&gt;         <a class="code" href="a00284.html#ga1e0ea3fba496bc7c6f620d2590acb66b">lowp_dmat3x2</a>;</div>
-<div class="line"><a name="l00714"></a><span class="lineno">  714</span>&#160;        <span class="keyword">typedef</span> mat&lt;3, 3, double, lowp&gt;         <a class="code" href="a00284.html#gac017848a9df570f60916a21a297b1e8e">lowp_dmat3x3</a>;</div>
-<div class="line"><a name="l00715"></a><span class="lineno">  715</span>&#160;        <span class="keyword">typedef</span> mat&lt;3, 4, double, lowp&gt;         <a class="code" href="a00284.html#ga93add35d2a44c5830978b827e8c295e8">lowp_dmat3x4</a>;</div>
-<div class="line"><a name="l00716"></a><span class="lineno">  716</span>&#160;        <span class="keyword">typedef</span> mat&lt;4, 2, double, lowp&gt;         <a class="code" href="a00284.html#ga382dc5295cead78766239a8457abfa98">lowp_dmat4x2</a>;</div>
-<div class="line"><a name="l00717"></a><span class="lineno">  717</span>&#160;        <span class="keyword">typedef</span> mat&lt;4, 3, double, lowp&gt;         <a class="code" href="a00284.html#ga3d7ea07da7c6e5c81a3f4c8b3d44056e">lowp_dmat4x3</a>;</div>
-<div class="line"><a name="l00718"></a><span class="lineno">  718</span>&#160;        <span class="keyword">typedef</span> mat&lt;4, 4, double, lowp&gt;         <a class="code" href="a00284.html#ga5b0413198b7e9f061f7534a221c9dac9">lowp_dmat4x4</a>;</div>
-<div class="line"><a name="l00719"></a><span class="lineno">  719</span>&#160;</div>
-<div class="line"><a name="l00720"></a><span class="lineno">  720</span>&#160;        <span class="keyword">typedef</span> mat&lt;2, 2, double, mediump&gt;      <a class="code" href="a00284.html#ga51dc36a7719cb458fa5114831c20d64f">mediump_dmat2x2</a>;</div>
-<div class="line"><a name="l00721"></a><span class="lineno">  721</span>&#160;        <span class="keyword">typedef</span> mat&lt;2, 3, double, mediump&gt;      <a class="code" href="a00284.html#ga741e05adf1f12d5d913f67088db1009a">mediump_dmat2x3</a>;</div>
-<div class="line"><a name="l00722"></a><span class="lineno">  722</span>&#160;        <span class="keyword">typedef</span> mat&lt;2, 4, double, mediump&gt;      <a class="code" href="a00284.html#ga685bda24922d112786af385deb4deb43">mediump_dmat2x4</a>;</div>
-<div class="line"><a name="l00723"></a><span class="lineno">  723</span>&#160;        <span class="keyword">typedef</span> mat&lt;3, 2, double, mediump&gt;      <a class="code" href="a00284.html#ga2076157df85e49b8c021e03e46a376c1">mediump_dmat3x2</a>;</div>
-<div class="line"><a name="l00724"></a><span class="lineno">  724</span>&#160;        <span class="keyword">typedef</span> mat&lt;3, 3, double, mediump&gt;      <a class="code" href="a00284.html#ga47bd2aae4701ee2fc865674a9df3d7a6">mediump_dmat3x3</a>;</div>
-<div class="line"><a name="l00725"></a><span class="lineno">  725</span>&#160;        <span class="keyword">typedef</span> mat&lt;3, 4, double, mediump&gt;      <a class="code" href="a00284.html#ga3a132bd05675c2e46556f67cf738600b">mediump_dmat3x4</a>;</div>
-<div class="line"><a name="l00726"></a><span class="lineno">  726</span>&#160;        <span class="keyword">typedef</span> mat&lt;4, 2, double, mediump&gt;      <a class="code" href="a00284.html#gae220fa4c5a7b13ef2ab0420340de645c">mediump_dmat4x2</a>;</div>
-<div class="line"><a name="l00727"></a><span class="lineno">  727</span>&#160;        <span class="keyword">typedef</span> mat&lt;4, 3, double, mediump&gt;      <a class="code" href="a00284.html#ga43ef60e4d996db15c9c8f069a96ff763">mediump_dmat4x3</a>;</div>
-<div class="line"><a name="l00728"></a><span class="lineno">  728</span>&#160;        <span class="keyword">typedef</span> mat&lt;4, 4, double, mediump&gt;      <a class="code" href="a00284.html#ga5389b3ab32dc0d72bea00057ab6d1dd3">mediump_dmat4x4</a>;</div>
-<div class="line"><a name="l00729"></a><span class="lineno">  729</span>&#160;</div>
-<div class="line"><a name="l00730"></a><span class="lineno">  730</span>&#160;        <span class="keyword">typedef</span> mat&lt;2, 2, double, highp&gt;        <a class="code" href="a00284.html#gae27ac20302c2e39b6c78e7fe18e62ef7">highp_dmat2x2</a>;</div>
-<div class="line"><a name="l00731"></a><span class="lineno">  731</span>&#160;        <span class="keyword">typedef</span> mat&lt;2, 3, double, highp&gt;        <a class="code" href="a00284.html#gad4689ec33bc2c26e10132b174b49001a">highp_dmat2x3</a>;</div>
-<div class="line"><a name="l00732"></a><span class="lineno">  732</span>&#160;        <span class="keyword">typedef</span> mat&lt;2, 4, double, highp&gt;        <a class="code" href="a00284.html#ga5ceeb46670fdc000a0701910cc5061c9">highp_dmat2x4</a>;</div>
-<div class="line"><a name="l00733"></a><span class="lineno">  733</span>&#160;        <span class="keyword">typedef</span> mat&lt;3, 2, double, highp&gt;        <a class="code" href="a00284.html#ga3647309010a2160e9ec89bc6f7c95c35">highp_dmat3x2</a>;</div>
-<div class="line"><a name="l00734"></a><span class="lineno">  734</span>&#160;        <span class="keyword">typedef</span> mat&lt;3, 3, double, highp&gt;        <a class="code" href="a00284.html#gae367ea93c4ad8a7c101dd27b8b2b04ce">highp_dmat3x3</a>;</div>
-<div class="line"><a name="l00735"></a><span class="lineno">  735</span>&#160;        <span class="keyword">typedef</span> mat&lt;3, 4, double, highp&gt;        <a class="code" href="a00284.html#ga6543eeeb64f48d79a0b96484308c50f0">highp_dmat3x4</a>;</div>
-<div class="line"><a name="l00736"></a><span class="lineno">  736</span>&#160;        <span class="keyword">typedef</span> mat&lt;4, 2, double, highp&gt;        <a class="code" href="a00284.html#gaeda1f474c668eaecc443bea85a4a4eca">highp_dmat4x2</a>;</div>
-<div class="line"><a name="l00737"></a><span class="lineno">  737</span>&#160;        <span class="keyword">typedef</span> mat&lt;4, 3, double, highp&gt;        <a class="code" href="a00284.html#gacf237c2d8832fe8db2d7e187585d34bd">highp_dmat4x3</a>;</div>
-<div class="line"><a name="l00738"></a><span class="lineno">  738</span>&#160;        <span class="keyword">typedef</span> mat&lt;4, 4, double, highp&gt;        <a class="code" href="a00284.html#ga118d24a3d12c034e7cccef7bf2f01b8a">highp_dmat4x4</a>;</div>
-<div class="line"><a name="l00739"></a><span class="lineno">  739</span>&#160;</div>
-<div class="line"><a name="l00740"></a><span class="lineno">  740</span>&#160;        <span class="keyword">typedef</span> mat&lt;2, 2, double, defaultp&gt;     <a class="code" href="a00283.html#ga66b6a9af787e468a46dfe24189e87f9b">dmat2x2</a>;</div>
-<div class="line"><a name="l00741"></a><span class="lineno">  741</span>&#160;        <span class="keyword">typedef</span> mat&lt;3, 2, double, defaultp&gt;     <a class="code" href="a00283.html#ga001e3e0638fbf8719788fc64c5b8cf39">dmat3x2</a>;</div>
-<div class="line"><a name="l00742"></a><span class="lineno">  742</span>&#160;        <span class="keyword">typedef</span> mat&lt;4, 2, double, defaultp&gt;     <a class="code" href="a00283.html#ga9bc0b3ab8b6ba2cb6782e179ad7ad156">dmat4x2</a>;</div>
-<div class="line"><a name="l00743"></a><span class="lineno">  743</span>&#160;        <span class="keyword">typedef</span> mat&lt;2, 3, double, defaultp&gt;     <a class="code" href="a00283.html#ga92cd388753d48e20de69ea2dbedf826a">dmat2x3</a>;</div>
-<div class="line"><a name="l00744"></a><span class="lineno">  744</span>&#160;        <span class="keyword">typedef</span> mat&lt;3, 3, double, defaultp&gt;     <a class="code" href="a00283.html#ga970cb3306be25a5ca5db5a9456831228">dmat3x3</a>;</div>
-<div class="line"><a name="l00745"></a><span class="lineno">  745</span>&#160;        <span class="keyword">typedef</span> mat&lt;4, 3, double, defaultp&gt;     <a class="code" href="a00283.html#gacd18864049f8c83799babe7e596ca05b">dmat4x3</a>;</div>
-<div class="line"><a name="l00746"></a><span class="lineno">  746</span>&#160;        <span class="keyword">typedef</span> mat&lt;2, 4, double, defaultp&gt;     <a class="code" href="a00283.html#gaef2198807e937072803ae0ae45e1965e">dmat2x4</a>;</div>
-<div class="line"><a name="l00747"></a><span class="lineno">  747</span>&#160;        <span class="keyword">typedef</span> mat&lt;3, 4, double, defaultp&gt;     <a class="code" href="a00283.html#ga0412a634d183587e6188e9b11869f8f4">dmat3x4</a>;</div>
-<div class="line"><a name="l00748"></a><span class="lineno">  748</span>&#160;        <span class="keyword">typedef</span> mat&lt;4, 4, double, defaultp&gt;     <a class="code" href="a00283.html#gad5a6484b983b74f9d801cab8bc4e6a10">dmat4x4</a>;</div>
-<div class="line"><a name="l00749"></a><span class="lineno">  749</span>&#160;</div>
-<div class="line"><a name="l00750"></a><span class="lineno"><a class="line" href="a00304.html#ga771fda9109933db34f808d92b9b84d7e">  750</a></span>&#160;        <span class="keyword">typedef</span> mat&lt;2, 2, f64, lowp&gt;            <a class="code" href="a00304.html#ga771fda9109933db34f808d92b9b84d7e">lowp_f64mat2x2</a>;</div>
-<div class="line"><a name="l00751"></a><span class="lineno"><a class="line" href="a00304.html#ga39e90adcffe33264bd608fa9c6bd184b">  751</a></span>&#160;        <span class="keyword">typedef</span> mat&lt;2, 3, f64, lowp&gt;            <a class="code" href="a00304.html#ga39e90adcffe33264bd608fa9c6bd184b">lowp_f64mat2x3</a>;</div>
-<div class="line"><a name="l00752"></a><span class="lineno"><a class="line" href="a00304.html#ga50265a202fbfe0a25fc70066c31d9336">  752</a></span>&#160;        <span class="keyword">typedef</span> mat&lt;2, 4, f64, lowp&gt;            <a class="code" href="a00304.html#ga50265a202fbfe0a25fc70066c31d9336">lowp_f64mat2x4</a>;</div>
-<div class="line"><a name="l00753"></a><span class="lineno"><a class="line" href="a00304.html#gab0eb2d65514ee3e49905aa2caad8c0ad">  753</a></span>&#160;        <span class="keyword">typedef</span> mat&lt;3, 2, f64, lowp&gt;            <a class="code" href="a00304.html#gab0eb2d65514ee3e49905aa2caad8c0ad">lowp_f64mat3x2</a>;</div>
-<div class="line"><a name="l00754"></a><span class="lineno"><a class="line" href="a00304.html#gac8f8a12ee03105ef8861dc652434e3b7">  754</a></span>&#160;        <span class="keyword">typedef</span> mat&lt;3, 3, f64, lowp&gt;            <a class="code" href="a00304.html#gac8f8a12ee03105ef8861dc652434e3b7">lowp_f64mat3x3</a>;</div>
-<div class="line"><a name="l00755"></a><span class="lineno"><a class="line" href="a00304.html#gade8d1edfb23996ab6c622e65e3893271">  755</a></span>&#160;        <span class="keyword">typedef</span> mat&lt;3, 4, f64, lowp&gt;            <a class="code" href="a00304.html#gade8d1edfb23996ab6c622e65e3893271">lowp_f64mat3x4</a>;</div>
-<div class="line"><a name="l00756"></a><span class="lineno"><a class="line" href="a00304.html#gab0cecb80fd106bc369b9e46a165815ce">  756</a></span>&#160;        <span class="keyword">typedef</span> mat&lt;4, 2, f64, lowp&gt;            <a class="code" href="a00304.html#gab0cecb80fd106bc369b9e46a165815ce">lowp_f64mat4x2</a>;</div>
-<div class="line"><a name="l00757"></a><span class="lineno"><a class="line" href="a00304.html#gae731613b25db3a5ef5a05d21e57a57d3">  757</a></span>&#160;        <span class="keyword">typedef</span> mat&lt;4, 3, f64, lowp&gt;            <a class="code" href="a00304.html#gae731613b25db3a5ef5a05d21e57a57d3">lowp_f64mat4x3</a>;</div>
-<div class="line"><a name="l00758"></a><span class="lineno"><a class="line" href="a00304.html#ga8c9cd734e03cd49674f3e287aa4a6f95">  758</a></span>&#160;        <span class="keyword">typedef</span> mat&lt;4, 4, f64, lowp&gt;            <a class="code" href="a00304.html#ga8c9cd734e03cd49674f3e287aa4a6f95">lowp_f64mat4x4</a>;</div>
-<div class="line"><a name="l00759"></a><span class="lineno">  759</span>&#160;</div>
-<div class="line"><a name="l00760"></a><span class="lineno"><a class="line" href="a00304.html#ga4fd527644cccbca4cb205320eab026f3">  760</a></span>&#160;        <span class="keyword">typedef</span> mat&lt;2, 2, f64, mediump&gt;         <a class="code" href="a00304.html#ga4fd527644cccbca4cb205320eab026f3">mediump_f64mat2x2</a>;</div>
-<div class="line"><a name="l00761"></a><span class="lineno"><a class="line" href="a00304.html#gafd9a6ebc0c7b95f5c581d00d16a17c54">  761</a></span>&#160;        <span class="keyword">typedef</span> mat&lt;2, 3, f64, mediump&gt;         <a class="code" href="a00304.html#gafd9a6ebc0c7b95f5c581d00d16a17c54">mediump_f64mat2x3</a>;</div>
-<div class="line"><a name="l00762"></a><span class="lineno"><a class="line" href="a00304.html#gaf306dd69e53633636aee38cea79d4cb7">  762</a></span>&#160;        <span class="keyword">typedef</span> mat&lt;2, 4, f64, mediump&gt;         <a class="code" href="a00304.html#gaf306dd69e53633636aee38cea79d4cb7">mediump_f64mat2x4</a>;</div>
-<div class="line"><a name="l00763"></a><span class="lineno"><a class="line" href="a00304.html#gacd926d36a72433f6cac51dd60fa13107">  763</a></span>&#160;        <span class="keyword">typedef</span> mat&lt;3, 2, f64, mediump&gt;         <a class="code" href="a00304.html#gacd926d36a72433f6cac51dd60fa13107">mediump_f64mat3x2</a>;</div>
-<div class="line"><a name="l00764"></a><span class="lineno"><a class="line" href="a00304.html#ga84d88a6e3a54ccd2b67e195af4a4c23e">  764</a></span>&#160;        <span class="keyword">typedef</span> mat&lt;3, 3, f64, mediump&gt;         <a class="code" href="a00304.html#ga84d88a6e3a54ccd2b67e195af4a4c23e">mediump_f64mat3x3</a>;</div>
-<div class="line"><a name="l00765"></a><span class="lineno"><a class="line" href="a00304.html#gad38c544d332b8c4bd0b70b1bd9feccc2">  765</a></span>&#160;        <span class="keyword">typedef</span> mat&lt;3, 4, f64, mediump&gt;         <a class="code" href="a00304.html#gad38c544d332b8c4bd0b70b1bd9feccc2">mediump_f64mat3x4</a>;</div>
-<div class="line"><a name="l00766"></a><span class="lineno"><a class="line" href="a00304.html#ga17d36f0ea22314117e1cec9594b33945">  766</a></span>&#160;        <span class="keyword">typedef</span> mat&lt;4, 2, f64, mediump&gt;         <a class="code" href="a00304.html#ga17d36f0ea22314117e1cec9594b33945">mediump_f64mat4x2</a>;</div>
-<div class="line"><a name="l00767"></a><span class="lineno"><a class="line" href="a00304.html#ga54697a78f9a4643af6a57fc2e626ec0d">  767</a></span>&#160;        <span class="keyword">typedef</span> mat&lt;4, 3, f64, mediump&gt;         <a class="code" href="a00304.html#ga54697a78f9a4643af6a57fc2e626ec0d">mediump_f64mat4x3</a>;</div>
-<div class="line"><a name="l00768"></a><span class="lineno"><a class="line" href="a00304.html#ga66edb8de17b9235029472f043ae107e9">  768</a></span>&#160;        <span class="keyword">typedef</span> mat&lt;4, 4, f64, mediump&gt;         <a class="code" href="a00304.html#ga66edb8de17b9235029472f043ae107e9">mediump_f64mat4x4</a>;</div>
-<div class="line"><a name="l00769"></a><span class="lineno">  769</span>&#160;</div>
-<div class="line"><a name="l00770"></a><span class="lineno"><a class="line" href="a00304.html#ga773ea237a051827cfc20de960bc73ff0">  770</a></span>&#160;        <span class="keyword">typedef</span> mat&lt;2, 2, f64, highp&gt;           <a class="code" href="a00304.html#ga773ea237a051827cfc20de960bc73ff0">highp_f64mat2x2</a>;</div>
-<div class="line"><a name="l00771"></a><span class="lineno"><a class="line" href="a00304.html#ga8342c7469384c6d769cacc9e309278d9">  771</a></span>&#160;        <span class="keyword">typedef</span> mat&lt;2, 3, f64, highp&gt;           <a class="code" href="a00304.html#ga8342c7469384c6d769cacc9e309278d9">highp_f64mat2x3</a>;</div>
-<div class="line"><a name="l00772"></a><span class="lineno"><a class="line" href="a00304.html#ga5a67a7440b9c0d1538533540f99036a5">  772</a></span>&#160;        <span class="keyword">typedef</span> mat&lt;2, 4, f64, highp&gt;           <a class="code" href="a00304.html#ga5a67a7440b9c0d1538533540f99036a5">highp_f64mat2x4</a>;</div>
-<div class="line"><a name="l00773"></a><span class="lineno"><a class="line" href="a00304.html#ga5bdbfb4ce7d05ce1e1b663f50be17e8a">  773</a></span>&#160;        <span class="keyword">typedef</span> mat&lt;3, 2, f64, highp&gt;           <a class="code" href="a00304.html#ga5bdbfb4ce7d05ce1e1b663f50be17e8a">highp_f64mat3x2</a>;</div>
-<div class="line"><a name="l00774"></a><span class="lineno"><a class="line" href="a00304.html#ga7c2cadb9b85cc7e0d125db21ca19dea4">  774</a></span>&#160;        <span class="keyword">typedef</span> mat&lt;3, 3, f64, highp&gt;           <a class="code" href="a00304.html#ga7c2cadb9b85cc7e0d125db21ca19dea4">highp_f64mat3x3</a>;</div>
-<div class="line"><a name="l00775"></a><span class="lineno"><a class="line" href="a00304.html#gad310b1dddeec9ec837a104e7db8de580">  775</a></span>&#160;        <span class="keyword">typedef</span> mat&lt;3, 4, f64, highp&gt;           <a class="code" href="a00304.html#gad310b1dddeec9ec837a104e7db8de580">highp_f64mat3x4</a>;</div>
-<div class="line"><a name="l00776"></a><span class="lineno"><a class="line" href="a00304.html#ga58c4631421e323e252fc716b6103e38c">  776</a></span>&#160;        <span class="keyword">typedef</span> mat&lt;4, 2, f64, highp&gt;           <a class="code" href="a00304.html#ga58c4631421e323e252fc716b6103e38c">highp_f64mat4x2</a>;</div>
-<div class="line"><a name="l00777"></a><span class="lineno"><a class="line" href="a00304.html#gae94823d65648e44d972863c6caa13103">  777</a></span>&#160;        <span class="keyword">typedef</span> mat&lt;4, 3, f64, highp&gt;           <a class="code" href="a00304.html#gae94823d65648e44d972863c6caa13103">highp_f64mat4x3</a>;</div>
-<div class="line"><a name="l00778"></a><span class="lineno"><a class="line" href="a00304.html#ga09a2374b725c4246d263ee36fb66434c">  778</a></span>&#160;        <span class="keyword">typedef</span> mat&lt;4, 4, f64, highp&gt;           <a class="code" href="a00304.html#ga09a2374b725c4246d263ee36fb66434c">highp_f64mat4x4</a>;</div>
-<div class="line"><a name="l00779"></a><span class="lineno">  779</span>&#160;</div>
-<div class="line"><a name="l00780"></a><span class="lineno"><a class="line" href="a00304.html#ga9ec7c4c79e303c053e30729a95fb2c37">  780</a></span>&#160;        <span class="keyword">typedef</span> mat&lt;2, 2, f64, defaultp&gt;        <a class="code" href="a00304.html#ga9ec7c4c79e303c053e30729a95fb2c37">f64mat2x2</a>;</div>
-<div class="line"><a name="l00781"></a><span class="lineno"><a class="line" href="a00304.html#ga2473d8bf3f4abf967c4d0e18175be6f7">  781</a></span>&#160;        <span class="keyword">typedef</span> mat&lt;3, 2, f64, defaultp&gt;        <a class="code" href="a00304.html#ga2473d8bf3f4abf967c4d0e18175be6f7">f64mat3x2</a>;</div>
-<div class="line"><a name="l00782"></a><span class="lineno"><a class="line" href="a00304.html#gab7daf79d6bc06a68bea1c6f5e11b5512">  782</a></span>&#160;        <span class="keyword">typedef</span> mat&lt;4, 2, f64, defaultp&gt;        <a class="code" href="a00304.html#gab7daf79d6bc06a68bea1c6f5e11b5512">f64mat4x2</a>;</div>
-<div class="line"><a name="l00783"></a><span class="lineno"><a class="line" href="a00304.html#gae3ab5719fc4c1e966631dbbcba8d412a">  783</a></span>&#160;        <span class="keyword">typedef</span> mat&lt;2, 3, f64, defaultp&gt;        <a class="code" href="a00304.html#gae3ab5719fc4c1e966631dbbcba8d412a">f64mat2x3</a>;</div>
-<div class="line"><a name="l00784"></a><span class="lineno"><a class="line" href="a00304.html#ga916c1aed91cf91f7b41399ebe7c6e185">  784</a></span>&#160;        <span class="keyword">typedef</span> mat&lt;3, 3, f64, defaultp&gt;        <a class="code" href="a00304.html#ga916c1aed91cf91f7b41399ebe7c6e185">f64mat3x3</a>;</div>
-<div class="line"><a name="l00785"></a><span class="lineno"><a class="line" href="a00304.html#ga3e2e66ffbe341a80bc005ba2b9552110">  785</a></span>&#160;        <span class="keyword">typedef</span> mat&lt;4, 3, f64, defaultp&gt;        <a class="code" href="a00304.html#ga3e2e66ffbe341a80bc005ba2b9552110">f64mat4x3</a>;</div>
-<div class="line"><a name="l00786"></a><span class="lineno"><a class="line" href="a00304.html#gac87278e0c702ba8afff76316d4eeb769">  786</a></span>&#160;        <span class="keyword">typedef</span> mat&lt;2, 4, f64, defaultp&gt;        <a class="code" href="a00304.html#gac87278e0c702ba8afff76316d4eeb769">f64mat2x4</a>;</div>
-<div class="line"><a name="l00787"></a><span class="lineno"><a class="line" href="a00304.html#gaab239fa9e35b65a67cbaa6ac082f3675">  787</a></span>&#160;        <span class="keyword">typedef</span> mat&lt;3, 4, f64, defaultp&gt;        <a class="code" href="a00304.html#gaab239fa9e35b65a67cbaa6ac082f3675">f64mat3x4</a>;</div>
-<div class="line"><a name="l00788"></a><span class="lineno"><a class="line" href="a00304.html#gae52e2b7077a9ff928a06ab5ce600b81e">  788</a></span>&#160;        <span class="keyword">typedef</span> mat&lt;4, 4, f64, defaultp&gt;        <a class="code" href="a00304.html#gae52e2b7077a9ff928a06ab5ce600b81e">f64mat4x4</a>;</div>
-<div class="line"><a name="l00789"></a><span class="lineno">  789</span>&#160;</div>
-<div class="line"><a name="l00790"></a><span class="lineno">  790</span>&#160;        <span class="comment">// Quaternion</span></div>
-<div class="line"><a name="l00791"></a><span class="lineno">  791</span>&#160;</div>
-<div class="line"><a name="l00792"></a><span class="lineno">  792</span>&#160;        <span class="keyword">typedef</span> qua&lt;float, lowp&gt;                        <a class="code" href="a00253.html#gade62c5316c1c11a79c34c00c189558eb">lowp_quat</a>;</div>
-<div class="line"><a name="l00793"></a><span class="lineno">  793</span>&#160;        <span class="keyword">typedef</span> qua&lt;float, mediump&gt;                     <a class="code" href="a00253.html#gad2a59409de1bb12ccb6eb692ee7e9d8d">mediump_quat</a>;</div>
-<div class="line"><a name="l00794"></a><span class="lineno">  794</span>&#160;        <span class="keyword">typedef</span> qua&lt;float, highp&gt;                       <a class="code" href="a00253.html#gaa2fd8085774376310aeb80588e0eab6e">highp_quat</a>;</div>
-<div class="line"><a name="l00795"></a><span class="lineno">  795</span>&#160;        <span class="keyword">typedef</span> qua&lt;float, defaultp&gt;            <a class="code" href="a00252.html#gab0b441adb4509bc58d2946c2239a8942">quat</a>;</div>
-<div class="line"><a name="l00796"></a><span class="lineno">  796</span>&#160;</div>
-<div class="line"><a name="l00797"></a><span class="lineno">  797</span>&#160;        <span class="keyword">typedef</span> qua&lt;float, lowp&gt;                        lowp_fquat;</div>
-<div class="line"><a name="l00798"></a><span class="lineno">  798</span>&#160;        <span class="keyword">typedef</span> qua&lt;float, mediump&gt;                     mediump_fquat;</div>
-<div class="line"><a name="l00799"></a><span class="lineno">  799</span>&#160;        <span class="keyword">typedef</span> qua&lt;float, highp&gt;                       highp_fquat;</div>
-<div class="line"><a name="l00800"></a><span class="lineno">  800</span>&#160;        <span class="keyword">typedef</span> qua&lt;float, defaultp&gt;            fquat;</div>
-<div class="line"><a name="l00801"></a><span class="lineno">  801</span>&#160;</div>
-<div class="line"><a name="l00802"></a><span class="lineno"><a class="line" href="a00304.html#gaa3ba60ef8f69c6aeb1629594eaa95347">  802</a></span>&#160;        <span class="keyword">typedef</span> qua&lt;f32, lowp&gt;                          <a class="code" href="a00304.html#gaa3ba60ef8f69c6aeb1629594eaa95347">lowp_f32quat</a>;</div>
-<div class="line"><a name="l00803"></a><span class="lineno"><a class="line" href="a00304.html#gaa40c03d52dbfbfaf03e75773b9606ff3">  803</a></span>&#160;        <span class="keyword">typedef</span> qua&lt;f32, mediump&gt;                       <a class="code" href="a00304.html#gaa40c03d52dbfbfaf03e75773b9606ff3">mediump_f32quat</a>;</div>
-<div class="line"><a name="l00804"></a><span class="lineno"><a class="line" href="a00304.html#ga4252cf7f5b0e3cd47c3d3badf0ef43b3">  804</a></span>&#160;        <span class="keyword">typedef</span> qua&lt;f32, highp&gt;                         <a class="code" href="a00304.html#ga4252cf7f5b0e3cd47c3d3badf0ef43b3">highp_f32quat</a>;</div>
-<div class="line"><a name="l00805"></a><span class="lineno"><a class="line" href="a00304.html#ga38e674196ba411d642be40c47bf33939">  805</a></span>&#160;        <span class="keyword">typedef</span> qua&lt;f32, defaultp&gt;                      <a class="code" href="a00304.html#ga38e674196ba411d642be40c47bf33939">f32quat</a>;</div>
-<div class="line"><a name="l00806"></a><span class="lineno">  806</span>&#160;</div>
-<div class="line"><a name="l00807"></a><span class="lineno">  807</span>&#160;        <span class="keyword">typedef</span> qua&lt;double, lowp&gt;                       <a class="code" href="a00250.html#ga9e6e5f42e67dd5877350ba485c191f1c">lowp_dquat</a>;</div>
-<div class="line"><a name="l00808"></a><span class="lineno">  808</span>&#160;        <span class="keyword">typedef</span> qua&lt;double, mediump&gt;            <a class="code" href="a00250.html#gacdf73b1f7fd8f5a0c79a3934e99c1a14">mediump_dquat</a>;</div>
-<div class="line"><a name="l00809"></a><span class="lineno">  809</span>&#160;        <span class="keyword">typedef</span> qua&lt;double, highp&gt;                      <a class="code" href="a00250.html#gaf13a25f41afc03480b40fc71bd249cec">highp_dquat</a>;</div>
-<div class="line"><a name="l00810"></a><span class="lineno">  810</span>&#160;        <span class="keyword">typedef</span> qua&lt;double, defaultp&gt;           <a class="code" href="a00249.html#ga1181459aa5d640a3ea43861b118f3f0b">dquat</a>;</div>
-<div class="line"><a name="l00811"></a><span class="lineno">  811</span>&#160;</div>
-<div class="line"><a name="l00812"></a><span class="lineno"><a class="line" href="a00304.html#gaa3ee2bc4af03cc06578b66b3e3f878ae">  812</a></span>&#160;        <span class="keyword">typedef</span> qua&lt;f64, lowp&gt;                          <a class="code" href="a00304.html#gaa3ee2bc4af03cc06578b66b3e3f878ae">lowp_f64quat</a>;</div>
-<div class="line"><a name="l00813"></a><span class="lineno"><a class="line" href="a00304.html#ga5e52f485059ce6e3010c590b882602c9">  813</a></span>&#160;        <span class="keyword">typedef</span> qua&lt;f64, mediump&gt;                       <a class="code" href="a00304.html#ga5e52f485059ce6e3010c590b882602c9">mediump_f64quat</a>;</div>
-<div class="line"><a name="l00814"></a><span class="lineno"><a class="line" href="a00304.html#gafcfdd74a115163af2ce1093551747352">  814</a></span>&#160;        <span class="keyword">typedef</span> qua&lt;f64, highp&gt;                         <a class="code" href="a00304.html#gafcfdd74a115163af2ce1093551747352">highp_f64quat</a>;</div>
-<div class="line"><a name="l00815"></a><span class="lineno"><a class="line" href="a00304.html#ga2b114a2f2af0fe1dfeb569c767822940">  815</a></span>&#160;        <span class="keyword">typedef</span> qua&lt;f64, defaultp&gt;                      <a class="code" href="a00304.html#ga2b114a2f2af0fe1dfeb569c767822940">f64quat</a>;</div>
-<div class="line"><a name="l00816"></a><span class="lineno">  816</span>&#160;}<span class="comment">//namespace glm</span></div>
-<div class="line"><a name="l00817"></a><span class="lineno">  817</span>&#160;</div>
-<div class="line"><a name="l00818"></a><span class="lineno">  818</span>&#160;</div>
-<div class="ttc" id="a00304_html_gad064202b4cf9a2972475c03de657cb39"><div class="ttname"><a href="a00304.html#gad064202b4cf9a2972475c03de657cb39">glm::highp_u16vec1</a></div><div class="ttdeci">vec&lt; 1, u16, highp &gt; highp_u16vec1</div><div class="ttdoc">High qualifier 16 bit unsigned integer scalar type. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00354">fwd.hpp:354</a></div></div>
-<div class="ttc" id="a00284_html_gad75706b70545412ba9ac27d5ee210f66"><div class="ttname"><a href="a00284.html#gad75706b70545412ba9ac27d5ee210f66">glm::mediump_mat4x2</a></div><div class="ttdeci">mat&lt; 4, 2, float, mediump &gt; mediump_mat4x2</div><div class="ttdoc">4 columns of 2 components matrix of single-precision floating-point numbers using medium precision ar...</div><div class="ttdef"><b>Definition:</b> <a href="a00095_source.html#l00022">matrix_float4x2_precision.hpp:22</a></div></div>
-<div class="ttc" id="a00304_html_ga602e119c6b246b4f6edcf66845f2aa0f"><div class="ttname"><a href="a00304.html#ga602e119c6b246b4f6edcf66845f2aa0f">glm::highp_f32mat4x2</a></div><div class="ttdeci">mat&lt; 4, 2, f32, highp &gt; highp_f32mat4x2</div><div class="ttdoc">High single-qualifier floating-point 4x2 matrix. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00696">fwd.hpp:696</a></div></div>
-<div class="ttc" id="a00284_html_ga8d5a4e65fb976e4553b84995b95ecb38"><div class="ttname"><a href="a00284.html#ga8d5a4e65fb976e4553b84995b95ecb38">glm::highp_mat4x3</a></div><div class="ttdeci">mat&lt; 4, 3, float, highp &gt; highp_mat4x3</div><div class="ttdoc">4 columns of 3 components matrix of single-precision floating-point numbers using high precision arit...</div><div class="ttdef"><b>Definition:</b> <a href="a00097_source.html#l00028">matrix_float4x3_precision.hpp:28</a></div></div>
-<div class="ttc" id="a00283_html_gab2d35cc2655f44d60958d60a1de34e81"><div class="ttname"><a href="a00283.html#gab2d35cc2655f44d60958d60a1de34e81">glm::mat4x4</a></div><div class="ttdeci">mat&lt; 4, 4, float, defaultp &gt; mat4x4</div><div class="ttdoc">4 columns of 4 components matrix of single-precision floating-point numbers. </div><div class="ttdef"><b>Definition:</b> <a href="a00098_source.html#l00015">matrix_float4x4.hpp:15</a></div></div>
-<div class="ttc" id="a00282_html_ga64ed0deb6573375b7016daf82ffd53a7"><div class="ttname"><a href="a00282.html#ga64ed0deb6573375b7016daf82ffd53a7">glm::mediump_uvec4</a></div><div class="ttdeci">vec&lt; 4, unsigned int, mediump &gt; mediump_uvec4</div><div class="ttdoc">4 components vector of medium qualifier unsigned integer numbers. </div><div class="ttdef"><b>Definition:</b> <a href="a00233_source.html#l00022">vector_uint4_precision.hpp:22</a></div></div>
-<div class="ttc" id="a00304_html_ga0c181fdf06a309691999926b6690c969"><div class="ttname"><a href="a00304.html#ga0c181fdf06a309691999926b6690c969">glm::highp_u64</a></div><div class="ttdeci">uint64 highp_u64</div><div class="ttdoc">High qualifier 64 bit unsigned integer type. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00133">fwd.hpp:133</a></div></div>
-<div class="ttc" id="a00304_html_gac30fdf8afa489400053275b6a3350127"><div class="ttname"><a href="a00304.html#gac30fdf8afa489400053275b6a3350127">glm::mediump_f64vec1</a></div><div class="ttdeci">vec&lt; 1, f64, mediump &gt; mediump_f64vec1</div><div class="ttdoc">Medium double-qualifier floating-point vector of 1 component. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00491">fwd.hpp:491</a></div></div>
-<div class="ttc" id="a00304_html_gaea5c4518e175162e306d2c2b5ef5ac79"><div class="ttname"><a href="a00304.html#gaea5c4518e175162e306d2c2b5ef5ac79">glm::f32vec3</a></div><div class="ttdeci">vec&lt; 3, f32, defaultp &gt; f32vec3</div><div class="ttdoc">Single-qualifier floating-point vector of 3 components. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00463">fwd.hpp:463</a></div></div>
-<div class="ttc" id="a00304_html_ga74e9133378fd0b4da8ac0bc0876702ff"><div class="ttname"><a href="a00304.html#ga74e9133378fd0b4da8ac0bc0876702ff">glm::mediump_fmat2</a></div><div class="ttdeci">mat&lt; 2, 2, f32, mediump &gt; mediump_fmat2</div><div class="ttdoc">Medium single-qualifier floating-point 1x1 matrix. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00528">fwd.hpp:528</a></div></div>
-<div class="ttc" id="a00304_html_gaaeeb0077198cff40e3f48b1108ece139"><div class="ttname"><a href="a00304.html#gaaeeb0077198cff40e3f48b1108ece139">glm::highp_float64_t</a></div><div class="ttdeci">double highp_float64_t</div><div class="ttdoc">High 64 bit double-qualifier floating-point scalar. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00175">fwd.hpp:175</a></div></div>
-<div class="ttc" id="a00304_html_ga0ecd3f4952536e5ef12702b44d2626fc"><div class="ttname"><a href="a00304.html#ga0ecd3f4952536e5ef12702b44d2626fc">glm::f64mat4</a></div><div class="ttdeci">mat&lt; 4, 4, f64, defaultp &gt; f64mat4</div><div class="ttdoc">Double-qualifier floating-point 4x4 matrix. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00586">fwd.hpp:586</a></div></div>
-<div class="ttc" id="a00273_html_gad628c608970b3d0aa6cfb63ce6e53e56"><div class="ttname"><a href="a00273.html#gad628c608970b3d0aa6cfb63ce6e53e56">glm::mediump_ivec1</a></div><div class="ttdeci">vec&lt; 1, int, mediump &gt; mediump_ivec1</div><div class="ttdoc">1 component vector of signed integer values. </div><div class="ttdef"><b>Definition:</b> <a href="a00215_source.html#l00028">vector_int1_precision.hpp:28</a></div></div>
-<div class="ttc" id="a00282_html_ga23a8bca00914a51542bfea13a4778186"><div class="ttname"><a href="a00282.html#ga23a8bca00914a51542bfea13a4778186">glm::mediump_dvec4</a></div><div class="ttdeci">vec&lt; 4, double, mediump &gt; mediump_dvec4</div><div class="ttdoc">4 components vector of medium double-qualifier floating-point numbers. </div><div class="ttdef"><b>Definition:</b> <a href="a00205_source.html#l00025">vector_double4_precision.hpp:25</a></div></div>
-<div class="ttc" id="a00282_html_gaca61dfaccbf2f58f2d8063a4e76b44a9"><div class="ttname"><a href="a00282.html#gaca61dfaccbf2f58f2d8063a4e76b44a9">glm::highp_vec3</a></div><div class="ttdeci">vec&lt; 3, float, highp &gt; highp_vec3</div><div class="ttdoc">3 components vector of high single-qualifier floating-point numbers. </div><div class="ttdef"><b>Definition:</b> <a href="a00211_source.html#l00016">vector_float3_precision.hpp:16</a></div></div>
-<div class="ttc" id="a00284_html_ga382dc5295cead78766239a8457abfa98"><div class="ttname"><a href="a00284.html#ga382dc5295cead78766239a8457abfa98">glm::lowp_dmat4x2</a></div><div class="ttdeci">mat&lt; 4, 2, double, lowp &gt; lowp_dmat4x2</div><div class="ttdoc">4 columns of 2 components matrix of double-precision floating-point numbers using low precision arith...</div><div class="ttdef"><b>Definition:</b> <a href="a00076_source.html#l00016">matrix_double4x2_precision.hpp:16</a></div></div>
-<div class="ttc" id="a00283_html_gaaa17ef6bfa4e4f2692348b1460c8efcb"><div class="ttname"><a href="a00283.html#gaaa17ef6bfa4e4f2692348b1460c8efcb">glm::mat2x2</a></div><div class="ttdeci">mat&lt; 2, 2, float, defaultp &gt; mat2x2</div><div class="ttdoc">2 columns of 2 components matrix of single-precision floating-point numbers. </div><div class="ttdef"><b>Definition:</b> <a href="a00082_source.html#l00015">matrix_float2x2.hpp:15</a></div></div>
-<div class="ttc" id="a00304_html_gad9771450a54785d13080cdde0fe20c1d"><div class="ttname"><a href="a00304.html#gad9771450a54785d13080cdde0fe20c1d">glm::f64mat2</a></div><div class="ttdeci">mat&lt; 2, 2, f64, defaultp &gt; f64mat2</div><div class="ttdoc">Double-qualifier floating-point 1x1 matrix. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00584">fwd.hpp:584</a></div></div>
-<div class="ttc" id="a00304_html_ga41ad497f7eae211556aefd783cb02b90"><div class="ttname"><a href="a00304.html#ga41ad497f7eae211556aefd783cb02b90">glm::mediump_fmat4x3</a></div><div class="ttdeci">mat&lt; 4, 3, f32, mediump &gt; mediump_fmat4x3</div><div class="ttdoc">Medium single-qualifier floating-point 4x3 matrix. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00647">fwd.hpp:647</a></div></div>
-<div class="ttc" id="a00304_html_gaaaf878d0d7bfc0aac054fe269a886ca8"><div class="ttname"><a href="a00304.html#gaaaf878d0d7bfc0aac054fe269a886ca8">glm::mediump_f32mat3</a></div><div class="ttdeci">mat&lt; 3, 3, f32, mediump &gt; mediump_f32mat3</div><div class="ttdoc">Medium single-qualifier floating-point 3x3 matrix. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00545">fwd.hpp:545</a></div></div>
-<div class="ttc" id="a00304_html_gaf4dae276fd29623950de14a6ca2586b5"><div class="ttname"><a href="a00304.html#gaf4dae276fd29623950de14a6ca2586b5">glm::mediump_uint32_t</a></div><div class="ttdeci">uint32 mediump_uint32_t</div><div class="ttdoc">Medium qualifier 32 bit unsigned integer type. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00127">fwd.hpp:127</a></div></div>
-<div class="ttc" id="a00304_html_gaa212b805736a759998e312cbdd550fae"><div class="ttname"><a href="a00304.html#gaa212b805736a759998e312cbdd550fae">glm::lowp_uint64</a></div><div class="ttdeci">uint64 lowp_uint64</div><div class="ttdoc">Low qualifier 64 bit unsigned integer type. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00136">fwd.hpp:136</a></div></div>
-<div class="ttc" id="a00284_html_gabc0f2f4ad21c90b341881cf056f8650e"><div class="ttname"><a href="a00284.html#gabc0f2f4ad21c90b341881cf056f8650e">glm::mediump_mat3x3</a></div><div class="ttdeci">mat&lt; 3, 3, float, mediump &gt; mediump_mat3x3</div><div class="ttdoc">3 columns of 3 components matrix of single-precision floating-point numbers using medium precision ar...</div><div class="ttdef"><b>Definition:</b> <a href="a00091_source.html#l00040">matrix_float3x3_precision.hpp:40</a></div></div>
-<div class="ttc" id="a00304_html_ga98a687c17b174ea316b5f397b64f44bc"><div class="ttname"><a href="a00304.html#ga98a687c17b174ea316b5f397b64f44bc">glm::mediump_fmat2x2</a></div><div class="ttdeci">mat&lt; 2, 2, f32, mediump &gt; mediump_fmat2x2</div><div class="ttdoc">Medium single-qualifier floating-point 1x1 matrix. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00640">fwd.hpp:640</a></div></div>
-<div class="ttc" id="a00304_html_ga701f32ab5b3fb06996b41f5c0d643805"><div class="ttname"><a href="a00304.html#ga701f32ab5b3fb06996b41f5c0d643805">glm::f32vec1</a></div><div class="ttdeci">vec&lt; 1, f32, defaultp &gt; f32vec1</div><div class="ttdoc">Single-qualifier floating-point vector of 1 component. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00461">fwd.hpp:461</a></div></div>
-<div class="ttc" id="a00304_html_ga14c90ca49885723f51d06e295587236f"><div class="ttname"><a href="a00304.html#ga14c90ca49885723f51d06e295587236f">glm::highp_f32mat4</a></div><div class="ttdeci">mat&lt; 4, 4, f32, highp &gt; highp_f32mat4</div><div class="ttdoc">High single-qualifier floating-point 4x4 matrix. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00550">fwd.hpp:550</a></div></div>
-<div class="ttc" id="a00253_html_gaa2fd8085774376310aeb80588e0eab6e"><div class="ttname"><a href="a00253.html#gaa2fd8085774376310aeb80588e0eab6e">glm::highp_quat</a></div><div class="ttdeci">qua&lt; float, highp &gt; highp_quat</div><div class="ttdoc">Quaternion of single-precision floating-point numbers using high precision arithmetic in term of ULPs...</div><div class="ttdef"><b>Definition:</b> <a href="a00132_source.html#l00032">quaternion_float_precision.hpp:32</a></div></div>
-<div class="ttc" id="a00304_html_gadbb198a4d7aad82a0f4dc466ef6f6215"><div class="ttname"><a href="a00304.html#gadbb198a4d7aad82a0f4dc466ef6f6215">glm::highp_float64</a></div><div class="ttdeci">double highp_float64</div><div class="ttdoc">High 64 bit double-qualifier floating-point scalar. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00170">fwd.hpp:170</a></div></div>
-<div class="ttc" id="a00284_html_ga2076157df85e49b8c021e03e46a376c1"><div class="ttname"><a href="a00284.html#ga2076157df85e49b8c021e03e46a376c1">glm::mediump_dmat3x2</a></div><div class="ttdeci">mat&lt; 3, 2, double, mediump &gt; mediump_dmat3x2</div><div class="ttdoc">3 columns of 2 components matrix of double-precision floating-point numbers using medium precision ar...</div><div class="ttdef"><b>Definition:</b> <a href="a00070_source.html#l00022">matrix_double3x2_precision.hpp:22</a></div></div>
-<div class="ttc" id="a00304_html_ga1b09f03da7ac43055c68a349d5445083"><div class="ttname"><a href="a00304.html#ga1b09f03da7ac43055c68a349d5445083">glm::lowp_u8</a></div><div class="ttdeci">uint8 lowp_u8</div><div class="ttdoc">Low qualifier 8 bit unsigned integer type. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00089">fwd.hpp:89</a></div></div>
-<div class="ttc" id="a00284_html_ga1e0ea3fba496bc7c6f620d2590acb66b"><div class="ttname"><a href="a00284.html#ga1e0ea3fba496bc7c6f620d2590acb66b">glm::lowp_dmat3x2</a></div><div class="ttdeci">mat&lt; 3, 2, double, lowp &gt; lowp_dmat3x2</div><div class="ttdoc">3 columns of 2 components matrix of double-precision floating-point numbers using low precision arith...</div><div class="ttdef"><b>Definition:</b> <a href="a00070_source.html#l00016">matrix_double3x2_precision.hpp:16</a></div></div>
-<div class="ttc" id="a00304_html_ga8165913e068444f7842302d40ba897b9"><div class="ttname"><a href="a00304.html#ga8165913e068444f7842302d40ba897b9">glm::u32</a></div><div class="ttdeci">uint32 u32</div><div class="ttdoc">Default qualifier 32 bit unsigned integer type. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00120">fwd.hpp:120</a></div></div>
-<div class="ttc" id="a00304_html_ga9b69181efbf8f37ae934f135137b29c0"><div class="ttname"><a href="a00304.html#ga9b69181efbf8f37ae934f135137b29c0">glm::f64mat3</a></div><div class="ttdeci">mat&lt; 3, 3, f64, defaultp &gt; f64mat3</div><div class="ttdoc">Double-qualifier floating-point 3x3 matrix. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00585">fwd.hpp:585</a></div></div>
-<div class="ttc" id="a00282_html_gaa18f6b80b41c214f10666948539c1f93"><div class="ttname"><a href="a00282.html#gaa18f6b80b41c214f10666948539c1f93">glm::highp_ivec2</a></div><div class="ttdeci">vec&lt; 2, int, highp &gt; highp_ivec2</div><div class="ttdoc">2 components vector of high qualifier signed integer numbers. </div><div class="ttdef"><b>Definition:</b> <a href="a00217_source.html#l00016">vector_int2_precision.hpp:16</a></div></div>
-<div class="ttc" id="a00284_html_gacf237c2d8832fe8db2d7e187585d34bd"><div class="ttname"><a href="a00284.html#gacf237c2d8832fe8db2d7e187585d34bd">glm::highp_dmat4x3</a></div><div class="ttdeci">mat&lt; 4, 3, double, highp &gt; highp_dmat4x3</div><div class="ttdoc">4 columns of 3 components matrix of double-precision floating-point numbers using medium precision ar...</div><div class="ttdef"><b>Definition:</b> <a href="a00078_source.html#l00028">matrix_double4x3_precision.hpp:28</a></div></div>
-<div class="ttc" id="a00284_html_ga497d513d552d927537d61fa11e3701ab"><div class="ttname"><a href="a00284.html#ga497d513d552d927537d61fa11e3701ab">glm::mediump_mat2x3</a></div><div class="ttdeci">mat&lt; 2, 3, float, mediump &gt; mediump_mat2x3</div><div class="ttdoc">2 columns of 3 components matrix of single-precision floating-point numbers using medium precision ar...</div><div class="ttdef"><b>Definition:</b> <a href="a00085_source.html#l00022">matrix_float2x3_precision.hpp:22</a></div></div>
-<div class="ttc" id="a00304_html_ga3714dab2c16a6545a405cb0c3b3aaa6f"><div class="ttname"><a href="a00304.html#ga3714dab2c16a6545a405cb0c3b3aaa6f">glm::lowp_float64</a></div><div class="ttdeci">double lowp_float64</div><div class="ttdoc">Low 64 bit double-qualifier floating-point scalar. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00168">fwd.hpp:168</a></div></div>
-<div class="ttc" id="a00304_html_ga54b8a4e0f5a7203a821bf8e9c1265bcf"><div class="ttname"><a href="a00304.html#ga54b8a4e0f5a7203a821bf8e9c1265bcf">glm::i32vec1</a></div><div class="ttdeci">vec&lt; 1, i32, defaultp &gt; i32vec1</div><div class="ttdoc">32 bit signed integer scalar type. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00277">fwd.hpp:277</a></div></div>
-<div class="ttc" id="a00304_html_ga746dc6da204f5622e395f492997dbf57"><div class="ttname"><a href="a00304.html#ga746dc6da204f5622e395f492997dbf57">glm::highp_uint16</a></div><div class="ttdeci">uint16 highp_uint16</div><div class="ttdoc">High qualifier 16 bit unsigned integer type. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00110">fwd.hpp:110</a></div></div>
-<div class="ttc" id="a00304_html_gaf306dd69e53633636aee38cea79d4cb7"><div class="ttname"><a href="a00304.html#gaf306dd69e53633636aee38cea79d4cb7">glm::mediump_f64mat2x4</a></div><div class="ttdeci">mat&lt; 2, 4, f64, mediump &gt; mediump_f64mat2x4</div><div class="ttdoc">Medium double-qualifier floating-point 2x4 matrix. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00762">fwd.hpp:762</a></div></div>
-<div class="ttc" id="a00304_html_gad23b1be9b3bf20352089a6b738f0ebba"><div class="ttname"><a href="a00304.html#gad23b1be9b3bf20352089a6b738f0ebba">glm::highp_i64vec4</a></div><div class="ttdeci">vec&lt; 4, i64, highp &gt; highp_i64vec4</div><div class="ttdoc">High qualifier 64 bit signed integer vector of 4 components type. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00295">fwd.hpp:295</a></div></div>
-<div class="ttc" id="a00284_html_ga5389b3ab32dc0d72bea00057ab6d1dd3"><div class="ttname"><a href="a00284.html#ga5389b3ab32dc0d72bea00057ab6d1dd3">glm::mediump_dmat4x4</a></div><div class="ttdeci">mat&lt; 4, 4, double, mediump &gt; mediump_dmat4x4</div><div class="ttdoc">4 columns of 4 components matrix of double-precision floating-point numbers using medium precision ar...</div><div class="ttdef"><b>Definition:</b> <a href="a00080_source.html#l00040">matrix_double4x4_precision.hpp:40</a></div></div>
-<div class="ttc" id="a00304_html_gaab239fa9e35b65a67cbaa6ac082f3675"><div class="ttname"><a href="a00304.html#gaab239fa9e35b65a67cbaa6ac082f3675">glm::f64mat3x4</a></div><div class="ttdeci">mat&lt; 3, 4, f64, defaultp &gt; f64mat3x4</div><div class="ttdoc">Double-qualifier floating-point 3x4 matrix. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00787">fwd.hpp:787</a></div></div>
-<div class="ttc" id="a00282_html_gab654f4ed4a99d64a6cfc65320c2a7590"><div class="ttname"><a href="a00282.html#gab654f4ed4a99d64a6cfc65320c2a7590">glm::highp_dvec4</a></div><div class="ttdeci">vec&lt; 4, double, highp &gt; highp_dvec4</div><div class="ttdoc">4 components vector of high double-qualifier floating-point numbers. </div><div class="ttdef"><b>Definition:</b> <a href="a00205_source.html#l00018">vector_double4_precision.hpp:18</a></div></div>
-<div class="ttc" id="a00304_html_ga4541dc2feb2a31d6ecb5a303f3dd3280"><div class="ttname"><a href="a00304.html#ga4541dc2feb2a31d6ecb5a303f3dd3280">glm::fmat2</a></div><div class="ttdeci">mat&lt; 2, 2, f32, defaultp &gt; fmat2</div><div class="ttdoc">Single-qualifier floating-point 1x1 matrix. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00536">fwd.hpp:536</a></div></div>
-<div class="ttc" id="a00284_html_ga93add35d2a44c5830978b827e8c295e8"><div class="ttname"><a href="a00284.html#ga93add35d2a44c5830978b827e8c295e8">glm::lowp_dmat3x4</a></div><div class="ttdeci">mat&lt; 3, 4, double, lowp &gt; lowp_dmat3x4</div><div class="ttdoc">3 columns of 4 components matrix of double-precision floating-point numbers using low precision arith...</div><div class="ttdef"><b>Definition:</b> <a href="a00074_source.html#l00016">matrix_double3x4_precision.hpp:16</a></div></div>
-<div class="ttc" id="a00304_html_gae9c90a867a6026b1f6eab00456f3fb8b"><div class="ttname"><a href="a00304.html#gae9c90a867a6026b1f6eab00456f3fb8b">glm::i16vec3</a></div><div class="ttdeci">vec&lt; 3, i16, defaultp &gt; i16vec3</div><div class="ttdoc">16 bit signed integer vector of 3 components type. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00259">fwd.hpp:259</a></div></div>
-<div class="ttc" id="a00304_html_gaf1b735b4b1145174f4e4167d13778f9b"><div class="ttname"><a href="a00304.html#gaf1b735b4b1145174f4e4167d13778f9b">glm::lowp_uint32_t</a></div><div class="ttdeci">uint32 lowp_uint32_t</div><div class="ttdoc">Low qualifier 32 bit unsigned integer type. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00126">fwd.hpp:126</a></div></div>
-<div class="ttc" id="a00304_html_ga62a32c31f4e2e8ca859663b6e3289a2d"><div class="ttname"><a href="a00304.html#ga62a32c31f4e2e8ca859663b6e3289a2d">glm::lowp_fvec2</a></div><div class="ttdeci">vec&lt; 2, float, lowp &gt; lowp_fvec2</div><div class="ttdoc">Low single-qualifier floating-point vector of 2 components. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00427">fwd.hpp:427</a></div></div>
-<div class="ttc" id="a00304_html_ga34dd5ec1988c443bae80f1b20a8ade5f"><div class="ttname"><a href="a00304.html#ga34dd5ec1988c443bae80f1b20a8ade5f">glm::mediump_uint32</a></div><div class="ttdeci">uint32 mediump_uint32</div><div class="ttdoc">Medium qualifier 32 bit unsigned integer type. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00123">fwd.hpp:123</a></div></div>
-<div class="ttc" id="a00304_html_gac1c38778c0b5a1263f07753c05a4f7b9"><div class="ttname"><a href="a00304.html#gac1c38778c0b5a1263f07753c05a4f7b9">glm::mediump_fmat4</a></div><div class="ttdeci">mat&lt; 4, 4, f32, mediump &gt; mediump_fmat4</div><div class="ttdoc">Medium single-qualifier floating-point 4x4 matrix. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00530">fwd.hpp:530</a></div></div>
-<div class="ttc" id="a00304_html_gaa38d732f5d4a7bc42a1b43b9d3c141ce"><div class="ttname"><a href="a00304.html#gaa38d732f5d4a7bc42a1b43b9d3c141ce">glm::highp_uint64</a></div><div class="ttdeci">uint64 highp_uint64</div><div class="ttdoc">High qualifier 64 bit unsigned integer type. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00138">fwd.hpp:138</a></div></div>
-<div class="ttc" id="a00304_html_ga5bba0ce31210e274f73efacd3364c03f"><div class="ttname"><a href="a00304.html#ga5bba0ce31210e274f73efacd3364c03f">glm::lowp_fmat2</a></div><div class="ttdeci">mat&lt; 2, 2, f32, lowp &gt; lowp_fmat2</div><div class="ttdoc">Low single-qualifier floating-point 1x1 matrix. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00524">fwd.hpp:524</a></div></div>
-<div class="ttc" id="a00304_html_gaa6a5b461bbf5fe20982472aa51896d4b"><div class="ttname"><a href="a00304.html#gaa6a5b461bbf5fe20982472aa51896d4b">glm::lowp_uint32</a></div><div class="ttdeci">uint32 lowp_uint32</div><div class="ttdoc">Low qualifier 32 bit unsigned integer type. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00122">fwd.hpp:122</a></div></div>
-<div class="ttc" id="a00304_html_ga40b5c557efebb5bb99d6b9aa81095afa"><div class="ttname"><a href="a00304.html#ga40b5c557efebb5bb99d6b9aa81095afa">glm::lowp_fvec3</a></div><div class="ttdeci">vec&lt; 3, float, lowp &gt; lowp_fvec3</div><div class="ttdoc">Low single-qualifier floating-point vector of 3 components. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00428">fwd.hpp:428</a></div></div>
-<div class="ttc" id="a00304_html_ga44bfa55cda5dbf53f24a1fb7610393d6"><div class="ttname"><a href="a00304.html#ga44bfa55cda5dbf53f24a1fb7610393d6">glm::mediump_fvec2</a></div><div class="ttdeci">vec&lt; 2, float, mediump &gt; mediump_fvec2</div><div class="ttdoc">Medium Single-qualifier floating-point vector of 2 components. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00432">fwd.hpp:432</a></div></div>
-<div class="ttc" id="a00284_html_ga7a0e3fe41512b0494e598f5c58722f19"><div class="ttname"><a href="a00284.html#ga7a0e3fe41512b0494e598f5c58722f19">glm::highp_mat2x3</a></div><div class="ttdeci">mat&lt; 2, 3, float, highp &gt; highp_mat2x3</div><div class="ttdoc">2 columns of 3 components matrix of single-precision floating-point numbers using high precision arit...</div><div class="ttdef"><b>Definition:</b> <a href="a00085_source.html#l00028">matrix_float2x3_precision.hpp:28</a></div></div>
-<div class="ttc" id="a00304_html_ga28733aec7288191b314d42154fd0b690"><div class="ttname"><a href="a00304.html#ga28733aec7288191b314d42154fd0b690">glm::lowp_fmat3x4</a></div><div class="ttdeci">mat&lt; 3, 4, f32, lowp &gt; lowp_fmat3x4</div><div class="ttdoc">Low single-qualifier floating-point 3x4 matrix. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00635">fwd.hpp:635</a></div></div>
-<div class="ttc" id="a00281_html_gabe65c061834f61b4f7cb6037b19006a4"><div class="ttname"><a href="a00281.html#gabe65c061834f61b4f7cb6037b19006a4">glm::vec2</a></div><div class="ttdeci">vec&lt; 2, float, defaultp &gt; vec2</div><div class="ttdoc">2 components vector of single-precision floating-point numbers. </div><div class="ttdef"><b>Definition:</b> <a href="a00208_source.html#l00015">vector_float2.hpp:15</a></div></div>
-<div class="ttc" id="a00304_html_ga771fda9109933db34f808d92b9b84d7e"><div class="ttname"><a href="a00304.html#ga771fda9109933db34f808d92b9b84d7e">glm::lowp_f64mat2x2</a></div><div class="ttdeci">mat&lt; 2, 2, f64, lowp &gt; lowp_f64mat2x2</div><div class="ttdoc">Low double-qualifier floating-point 1x1 matrix. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00750">fwd.hpp:750</a></div></div>
-<div class="ttc" id="a00304_html_gaa4e31c3d9de067029efeb161a44b0232"><div class="ttname"><a href="a00304.html#gaa4e31c3d9de067029efeb161a44b0232">glm::i64vec4</a></div><div class="ttdeci">vec&lt; 4, i64, defaultp &gt; i64vec4</div><div class="ttdoc">64 bit signed integer vector of 4 components type. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00300">fwd.hpp:300</a></div></div>
-<div class="ttc" id="a00304_html_ga1c522ca821c27b862fe51cf4024b064b"><div class="ttname"><a href="a00304.html#ga1c522ca821c27b862fe51cf4024b064b">glm::u16vec3</a></div><div class="ttdeci">vec&lt; 3, u16, defaultp &gt; u16vec3</div><div class="ttdoc">Default qualifier 16 bit unsigned integer vector of 3 components type. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00361">fwd.hpp:361</a></div></div>
-<div class="ttc" id="a00304_html_ga859be7b9d3a3765c1cafc14dbcf249a6"><div class="ttname"><a href="a00304.html#ga859be7b9d3a3765c1cafc14dbcf249a6">glm::lowp_u64vec1</a></div><div class="ttdeci">vec&lt; 1, u64, lowp &gt; lowp_u64vec1</div><div class="ttdoc">Low qualifier 64 bit unsigned integer scalar type. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00384">fwd.hpp:384</a></div></div>
-<div class="ttc" id="a00284_html_ga6205fd19be355600334edef6af0b27cb"><div class="ttname"><a href="a00284.html#ga6205fd19be355600334edef6af0b27cb">glm::mediump_dmat2</a></div><div class="ttdeci">mat&lt; 2, 2, double, mediump &gt; mediump_dmat2</div><div class="ttdoc">2 columns of 2 components matrix of double-precision floating-point numbers using medium precision ar...</div><div class="ttdef"><b>Definition:</b> <a href="a00064_source.html#l00022">matrix_double2x2_precision.hpp:22</a></div></div>
-<div class="ttc" id="a00304_html_ga400ce8cc566de093a9b28e59e220d6e4"><div class="ttname"><a href="a00304.html#ga400ce8cc566de093a9b28e59e220d6e4">glm::mediump_u16vec1</a></div><div class="ttdeci">vec&lt; 1, u16, mediump &gt; mediump_u16vec1</div><div class="ttdoc">Medium qualifier 16 bit unsigned integer scalar type. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00349">fwd.hpp:349</a></div></div>
-<div class="ttc" id="a00282_html_gaa92c1954d71b1e7914874bd787b43d1c"><div class="ttname"><a href="a00282.html#gaa92c1954d71b1e7914874bd787b43d1c">glm::highp_vec2</a></div><div class="ttdeci">vec&lt; 2, float, highp &gt; highp_vec2</div><div class="ttdoc">2 components vector of high single-qualifier floating-point numbers. </div><div class="ttdef"><b>Definition:</b> <a href="a00209_source.html#l00016">vector_float2_precision.hpp:16</a></div></div>
-<div class="ttc" id="a00304_html_gad06935764d78f43f9d542c784c2212ec"><div class="ttname"><a href="a00304.html#gad06935764d78f43f9d542c784c2212ec">glm::i8vec2</a></div><div class="ttdeci">vec&lt; 2, i8, defaultp &gt; i8vec2</div><div class="ttdoc">8 bit signed integer vector of 2 components type. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00238">fwd.hpp:238</a></div></div>
-<div class="ttc" id="a00304_html_gafd9a6ebc0c7b95f5c581d00d16a17c54"><div class="ttname"><a href="a00304.html#gafd9a6ebc0c7b95f5c581d00d16a17c54">glm::mediump_f64mat2x3</a></div><div class="ttdeci">mat&lt; 2, 3, f64, mediump &gt; mediump_f64mat2x3</div><div class="ttdoc">Medium double-qualifier floating-point 2x3 matrix. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00761">fwd.hpp:761</a></div></div>
-<div class="ttc" id="a00304_html_ga4502885718742aa238c36a312c3f3f20"><div class="ttname"><a href="a00304.html#ga4502885718742aa238c36a312c3f3f20">glm::lowp_u32vec4</a></div><div class="ttdeci">vec&lt; 4, u32, lowp &gt; lowp_u32vec4</div><div class="ttdoc">Low qualifier 32 bit unsigned integer vector of 4 components type. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00367">fwd.hpp:367</a></div></div>
-<div class="ttc" id="a00304_html_ga0f038d4e09862a74f03d102c59eda73e"><div class="ttname"><a href="a00304.html#ga0f038d4e09862a74f03d102c59eda73e">glm::highp_f32vec4</a></div><div class="ttdeci">vec&lt; 4, f32, highp &gt; highp_f32vec4</div><div class="ttdoc">High single-qualifier floating-point vector of 4 components. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00459">fwd.hpp:459</a></div></div>
-<div class="ttc" id="a00281_html_ga3d3e55874babd4bf93baa7bbc83ae418"><div class="ttname"><a href="a00281.html#ga3d3e55874babd4bf93baa7bbc83ae418">glm::uvec3</a></div><div class="ttdeci">vec&lt; 3, unsigned int, defaultp &gt; uvec3</div><div class="ttdoc">3 components vector of unsigned integer numbers. </div><div class="ttdef"><b>Definition:</b> <a href="a00230_source.html#l00015">vector_uint3.hpp:15</a></div></div>
-<div class="ttc" id="a00304_html_ga43e5b41c834fcaf4db5a831c0e28128e"><div class="ttname"><a href="a00304.html#ga43e5b41c834fcaf4db5a831c0e28128e">glm::lowp_f32vec1</a></div><div class="ttdeci">vec&lt; 1, f32, lowp &gt; lowp_f32vec1</div><div class="ttdoc">Low single-qualifier floating-point vector of 1 component. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00446">fwd.hpp:446</a></div></div>
-<div class="ttc" id="a00304_html_ga0aeb5cb001473b08c88175012708a379"><div class="ttname"><a href="a00304.html#ga0aeb5cb001473b08c88175012708a379">glm::highp_f32mat2x3</a></div><div class="ttdeci">mat&lt; 2, 3, f32, highp &gt; highp_f32mat2x3</div><div class="ttdoc">High single-qualifier floating-point 2x3 matrix. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00691">fwd.hpp:691</a></div></div>
-<div class="ttc" id="a00304_html_ga226a8d52b4e3f77aaa6231135e886aac"><div class="ttname"><a href="a00304.html#ga226a8d52b4e3f77aaa6231135e886aac">glm::highp_int64</a></div><div class="ttdeci">int64 highp_int64</div><div class="ttdoc">High qualifier 64 bit signed integer type. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00080">fwd.hpp:80</a></div></div>
-<div class="ttc" id="a00304_html_ga20bf224bd4f8a24ecc4ed2004a40c219"><div class="ttname"><a href="a00304.html#ga20bf224bd4f8a24ecc4ed2004a40c219">glm::mediump_i32vec2</a></div><div class="ttdeci">vec&lt; 2, i32, mediump &gt; mediump_i32vec2</div><div class="ttdoc">Medium qualifier 32 bit signed integer vector of 2 components type. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00268">fwd.hpp:268</a></div></div>
-<div class="ttc" id="a00269_html_gaf906eb86b6e96c35138d0e4928e1435a"><div class="ttname"><a href="a00269.html#gaf906eb86b6e96c35138d0e4928e1435a">glm::lowp_dvec1</a></div><div class="ttdeci">vec&lt; 1, double, lowp &gt; lowp_dvec1</div><div class="ttdoc">1 component vector of double-precision floating-point numbers using low precision arithmetic in term ...</div><div class="ttdef"><b>Definition:</b> <a href="a00199_source.html#l00033">vector_double1_precision.hpp:33</a></div></div>
-<div class="ttc" id="a00304_html_ga7451266e67794bd1125163502bc4a570"><div class="ttname"><a href="a00304.html#ga7451266e67794bd1125163502bc4a570">glm::lowp_f64mat4</a></div><div class="ttdeci">mat&lt; 4, 4, f64, lowp &gt; lowp_f64mat4</div><div class="ttdoc">Low double-qualifier floating-point 4x4 matrix. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00574">fwd.hpp:574</a></div></div>
-<div class="ttc" id="a00304_html_ga8cb400c0f4438f2640035d7b9824a0ca"><div class="ttname"><a href="a00304.html#ga8cb400c0f4438f2640035d7b9824a0ca">glm::fmat4</a></div><div class="ttdeci">mat&lt; 4, 4, f32, defaultp &gt; fmat4</div><div class="ttdoc">Single-qualifier floating-point 4x4 matrix. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00538">fwd.hpp:538</a></div></div>
-<div class="ttc" id="a00304_html_gaefe8ef520c6cb78590ebbefe648da4d4"><div class="ttname"><a href="a00304.html#gaefe8ef520c6cb78590ebbefe648da4d4">glm::mediump_fmat3x4</a></div><div class="ttdeci">mat&lt; 3, 4, f32, mediump &gt; mediump_fmat3x4</div><div class="ttdoc">Medium single-qualifier floating-point 3x4 matrix. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00645">fwd.hpp:645</a></div></div>
-<div class="ttc" id="a00284_html_ga0cab80beee64a5f8d2ae4e823983063a"><div class="ttname"><a href="a00284.html#ga0cab80beee64a5f8d2ae4e823983063a">glm::lowp_dmat3</a></div><div class="ttdeci">mat&lt; 3, 3, double, lowp &gt; lowp_dmat3</div><div class="ttdoc">3 columns of 3 components matrix of double-precision floating-point numbers using low precision arith...</div><div class="ttdef"><b>Definition:</b> <a href="a00072_source.html#l00016">matrix_double3x3_precision.hpp:16</a></div></div>
-<div class="ttc" id="a00304_html_ga8b2cd8d31eb345b2d641d9261c38db1a"><div class="ttname"><a href="a00304.html#ga8b2cd8d31eb345b2d641d9261c38db1a">glm::lowp_int16_t</a></div><div class="ttdeci">int16 lowp_int16_t</div><div class="ttdoc">Low qualifier 16 bit signed integer type. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00054">fwd.hpp:54</a></div></div>
-<div class="ttc" id="a00304_html_gadf70eaaa230aeed5a4c9f4c9c5c55902"><div class="ttname"><a href="a00304.html#gadf70eaaa230aeed5a4c9f4c9c5c55902">glm::highp_i32vec4</a></div><div class="ttdeci">vec&lt; 4, i32, highp &gt; highp_i32vec4</div><div class="ttdoc">High qualifier 32 bit signed integer vector of 4 components type. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00275">fwd.hpp:275</a></div></div>
-<div class="ttc" id="a00304_html_ga3b32ca1e57a4ef91babbc3d35a34ea20"><div class="ttname"><a href="a00304.html#ga3b32ca1e57a4ef91babbc3d35a34ea20">glm::f32mat4x2</a></div><div class="ttdeci">mat&lt; 4, 2, f32, defaultp &gt; f32mat4x2</div><div class="ttdoc">Single-qualifier floating-point 4x2 matrix. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00702">fwd.hpp:702</a></div></div>
-<div class="ttc" id="a00304_html_gae54e4d1aeb5a0f0c64822e6f1b299e19"><div class="ttname"><a href="a00304.html#gae54e4d1aeb5a0f0c64822e6f1b299e19">glm::highp_fmat3x2</a></div><div class="ttdeci">mat&lt; 3, 2, f32, highp &gt; highp_fmat3x2</div><div class="ttdoc">High single-qualifier floating-point 3x2 matrix. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00653">fwd.hpp:653</a></div></div>
-<div class="ttc" id="a00283_html_ga8e879b57ddd81e5bf5a88929844e8b40"><div class="ttname"><a href="a00283.html#ga8e879b57ddd81e5bf5a88929844e8b40">glm::mat2x4</a></div><div class="ttdeci">mat&lt; 2, 4, float, defaultp &gt; mat2x4</div><div class="ttdoc">2 columns of 4 components matrix of single-precision floating-point numbers. </div><div class="ttdef"><b>Definition:</b> <a href="a00086_source.html#l00015">matrix_float2x4.hpp:15</a></div></div>
-<div class="ttc" id="a00304_html_gaa03f939d90d5ef157df957d93f0b9a64"><div class="ttname"><a href="a00304.html#gaa03f939d90d5ef157df957d93f0b9a64">glm::mediump_fmat2x3</a></div><div class="ttdeci">mat&lt; 2, 3, f32, mediump &gt; mediump_fmat2x3</div><div class="ttdoc">Medium single-qualifier floating-point 2x3 matrix. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00641">fwd.hpp:641</a></div></div>
-<div class="ttc" id="a00304_html_ga1bd0e914158bf03135f8a317de6debe9"><div class="ttname"><a href="a00304.html#ga1bd0e914158bf03135f8a317de6debe9">glm::mediump_u32</a></div><div class="ttdeci">uint32 mediump_u32</div><div class="ttdoc">Medium qualifier 32 bit unsigned integer type. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00118">fwd.hpp:118</a></div></div>
-<div class="ttc" id="a00304_html_ga49b98e7d71804af45d86886a489e633c"><div class="ttname"><a href="a00304.html#ga49b98e7d71804af45d86886a489e633c">glm::lowp_fmat3x2</a></div><div class="ttdeci">mat&lt; 3, 2, f32, lowp &gt; lowp_fmat3x2</div><div class="ttdoc">Low single-qualifier floating-point 3x2 matrix. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00633">fwd.hpp:633</a></div></div>
-<div class="ttc" id="a00284_html_ga3eee3a74d0f1de8635d846dfb29ec4bb"><div class="ttname"><a href="a00284.html#ga3eee3a74d0f1de8635d846dfb29ec4bb">glm::lowp_mat2x3</a></div><div class="ttdeci">mat&lt; 2, 3, float, lowp &gt; lowp_mat2x3</div><div class="ttdoc">2 columns of 3 components matrix of single-precision floating-point numbers using low precision arith...</div><div class="ttdef"><b>Definition:</b> <a href="a00085_source.html#l00016">matrix_float2x3_precision.hpp:16</a></div></div>
-<div class="ttc" id="a00284_html_gae400c4ce1f5f3e1fa12861b2baed331a"><div class="ttname"><a href="a00284.html#gae400c4ce1f5f3e1fa12861b2baed331a">glm::lowp_mat2</a></div><div class="ttdeci">mat&lt; 2, 2, float, lowp &gt; lowp_mat2</div><div class="ttdoc">2 columns of 2 components matrix of single-precision floating-point numbers using low precision arith...</div><div class="ttdef"><b>Definition:</b> <a href="a00083_source.html#l00016">matrix_float2x2_precision.hpp:16</a></div></div>
-<div class="ttc" id="a00304_html_ga17d36f0ea22314117e1cec9594b33945"><div class="ttname"><a href="a00304.html#ga17d36f0ea22314117e1cec9594b33945">glm::mediump_f64mat4x2</a></div><div class="ttdeci">mat&lt; 4, 2, f64, mediump &gt; mediump_f64mat4x2</div><div class="ttdoc">Medium double-qualifier floating-point 4x2 matrix. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00766">fwd.hpp:766</a></div></div>
-<div class="ttc" id="a00282_html_ga15ac87724048ab7169bb5d3572939dd3"><div class="ttname"><a href="a00282.html#ga15ac87724048ab7169bb5d3572939dd3">glm::lowp_bvec4</a></div><div class="ttdeci">vec&lt; 4, bool, lowp &gt; lowp_bvec4</div><div class="ttdoc">4 components vector of low qualifier bool numbers. </div><div class="ttdef"><b>Definition:</b> <a href="a00196_source.html#l00028">vector_bool4_precision.hpp:28</a></div></div>
-<div class="ttc" id="a00304_html_ga791b15ceb3f1e09d1a0ec6f3057ca159"><div class="ttname"><a href="a00304.html#ga791b15ceb3f1e09d1a0ec6f3057ca159">glm::highp_u16vec2</a></div><div class="ttdeci">vec&lt; 2, u16, highp &gt; highp_u16vec2</div><div class="ttdoc">High qualifier 16 bit unsigned integer vector of 2 components type. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00355">fwd.hpp:355</a></div></div>
-<div class="ttc" id="a00304_html_ga62c31b133ceee9984fbee05ac4c434a9"><div class="ttname"><a href="a00304.html#ga62c31b133ceee9984fbee05ac4c434a9">glm::highp_f64vec1</a></div><div class="ttdeci">vec&lt; 1, f64, highp &gt; highp_f64vec1</div><div class="ttdoc">High double-qualifier floating-point vector of 1 component. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00496">fwd.hpp:496</a></div></div>
-<div class="ttc" id="a00281_html_gad0d784d8eee201aca362484d2daee46c"><div class="ttname"><a href="a00281.html#gad0d784d8eee201aca362484d2daee46c">glm::ivec3</a></div><div class="ttdeci">vec&lt; 3, int, defaultp &gt; ivec3</div><div class="ttdoc">3 components vector of signed integer numbers. </div><div class="ttdef"><b>Definition:</b> <a href="a00218_source.html#l00015">vector_int3.hpp:15</a></div></div>
-<div class="ttc" id="a00304_html_ga4b5e2c9aaa5d7717bf71179aefa12e88"><div class="ttname"><a href="a00304.html#ga4b5e2c9aaa5d7717bf71179aefa12e88">glm::mediump_i16vec2</a></div><div class="ttdeci">vec&lt; 2, i16, mediump &gt; mediump_i16vec2</div><div class="ttdoc">Medium qualifier 16 bit signed integer vector of 2 components type. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00248">fwd.hpp:248</a></div></div>
-<div class="ttc" id="a00304_html_ga4920a1536f161f7ded1d6909b7fef0d2"><div class="ttname"><a href="a00304.html#ga4920a1536f161f7ded1d6909b7fef0d2">glm::highp_fmat2x4</a></div><div class="ttdeci">mat&lt; 2, 4, f32, highp &gt; highp_fmat2x4</div><div class="ttdoc">High single-qualifier floating-point 2x4 matrix. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00652">fwd.hpp:652</a></div></div>
-<div class="ttc" id="a00304_html_ga489b89ba93d4f7b3934df78debc52276"><div class="ttname"><a href="a00304.html#ga489b89ba93d4f7b3934df78debc52276">glm::u64vec3</a></div><div class="ttdeci">vec&lt; 3, u64, defaultp &gt; u64vec3</div><div class="ttdoc">Default qualifier 64 bit unsigned integer vector of 3 components type. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00401">fwd.hpp:401</a></div></div>
-<div class="ttc" id="a00304_html_gaf49470869e9be2c059629b250619804e"><div class="ttname"><a href="a00304.html#gaf49470869e9be2c059629b250619804e">glm::lowp_uint8</a></div><div class="ttdeci">uint8 lowp_uint8</div><div class="ttdoc">Low qualifier 8 bit unsigned integer type. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00094">fwd.hpp:94</a></div></div>
-<div class="ttc" id="a00304_html_gac53f9d7ab04eace67adad026092fb1e8"><div class="ttname"><a href="a00304.html#gac53f9d7ab04eace67adad026092fb1e8">glm::lowp_f32mat3x2</a></div><div class="ttdeci">mat&lt; 3, 2, f32, lowp &gt; lowp_f32mat3x2</div><div class="ttdoc">Low single-qualifier floating-point 3x2 matrix. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00673">fwd.hpp:673</a></div></div>
-<div class="ttc" id="a00282_html_ga0be2c682258604a35004f088782a9645"><div class="ttname"><a href="a00282.html#ga0be2c682258604a35004f088782a9645">glm::mediump_bvec4</a></div><div class="ttdeci">vec&lt; 4, bool, mediump &gt; mediump_bvec4</div><div class="ttdoc">4 components vector of medium qualifier bool numbers. </div><div class="ttdef"><b>Definition:</b> <a href="a00196_source.html#l00022">vector_bool4_precision.hpp:22</a></div></div>
-<div class="ttc" id="a00280_html_ga2c27aea32de57d58aec8e92d5d2181e2"><div class="ttname"><a href="a00280.html#ga2c27aea32de57d58aec8e92d5d2181e2">glm::mat3x2</a></div><div class="ttdeci">mat&lt; 3, 2, float, defaultp &gt; mat3x2</div><div class="ttdoc">3 columns of 2 components matrix of single-precision floating-point numbers. </div><div class="ttdef"><b>Definition:</b> <a href="a00088_source.html#l00015">matrix_float3x2.hpp:15</a></div></div>
-<div class="ttc" id="a00304_html_ga30069d1f02b19599cbfadf98c23ac6ed"><div class="ttname"><a href="a00304.html#ga30069d1f02b19599cbfadf98c23ac6ed">glm::lowp_u64</a></div><div class="ttdeci">uint64 lowp_u64</div><div class="ttdoc">Low qualifier 64 bit unsigned integer type. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00131">fwd.hpp:131</a></div></div>
-<div class="ttc" id="a00277_html_ga38fde73aaf1420175ece8d4882558a3f"><div class="ttname"><a href="a00277.html#ga38fde73aaf1420175ece8d4882558a3f">glm::mediump_uvec1</a></div><div class="ttdeci">vec&lt; 1, unsigned int, mediump &gt; mediump_uvec1</div><div class="ttdoc">1 component vector of unsigned integer values. </div><div class="ttdef"><b>Definition:</b> <a href="a00227_source.html#l00032">vector_uint1_precision.hpp:32</a></div></div>
-<div class="ttc" id="a00304_html_ga62324224b9c6cce9c6b4db96bb704a8a"><div class="ttname"><a href="a00304.html#ga62324224b9c6cce9c6b4db96bb704a8a">glm::highp_i64vec3</a></div><div class="ttdeci">vec&lt; 3, i64, highp &gt; highp_i64vec3</div><div class="ttdoc">High qualifier 64 bit signed integer vector of 3 components type. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00294">fwd.hpp:294</a></div></div>
-<div class="ttc" id="a00304_html_ga6fbd69cbdaa44345bff923a2cf63de7e"><div class="ttname"><a href="a00304.html#ga6fbd69cbdaa44345bff923a2cf63de7e">glm::mediump_int8</a></div><div class="ttdeci">int8 mediump_int8</div><div class="ttdoc">Medium qualifier 8 bit signed integer type. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00037">fwd.hpp:37</a></div></div>
-<div class="ttc" id="a00304_html_gaf645b1a60203b39c0207baff5e3d8c3c"><div class="ttname"><a href="a00304.html#gaf645b1a60203b39c0207baff5e3d8c3c">glm::lowp_int64</a></div><div class="ttdeci">int64 lowp_int64</div><div class="ttdoc">Low qualifier 64 bit signed integer type. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00078">fwd.hpp:78</a></div></div>
-<div class="ttc" id="a00271_html_ga0a57630f03031706b1d26a7d70d9184c"><div class="ttname"><a href="a00271.html#ga0a57630f03031706b1d26a7d70d9184c">glm::lowp_vec1</a></div><div class="ttdeci">vec&lt; 1, float, lowp &gt; lowp_vec1</div><div class="ttdoc">1 component vector of single-precision floating-point numbers using low precision arithmetic in term ...</div><div class="ttdef"><b>Definition:</b> <a href="a00207_source.html#l00033">vector_float1_precision.hpp:33</a></div></div>
-<div class="ttc" id="a00304_html_gab005efe0fa4de1a928e8ddec4bc2c43f"><div class="ttname"><a href="a00304.html#gab005efe0fa4de1a928e8ddec4bc2c43f">glm::mediump_f32mat4x2</a></div><div class="ttdeci">mat&lt; 4, 2, f32, mediump &gt; mediump_f32mat4x2</div><div class="ttdoc">Medium single-qualifier floating-point 4x2 matrix. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00686">fwd.hpp:686</a></div></div>
-<div class="ttc" id="a00284_html_ga2ea82e12f4d7afcfce8f59894d400230"><div class="ttname"><a href="a00284.html#ga2ea82e12f4d7afcfce8f59894d400230">glm::highp_mat3x3</a></div><div class="ttdeci">mat&lt; 3, 3, float, highp &gt; highp_mat3x3</div><div class="ttdoc">3 columns of 3 components matrix of single-precision floating-point numbers using high precision arit...</div><div class="ttdef"><b>Definition:</b> <a href="a00091_source.html#l00046">matrix_float3x3_precision.hpp:46</a></div></div>
-<div class="ttc" id="a00304_html_gae7a4711107b7d078fc5f03ce2227b90b"><div class="ttname"><a href="a00304.html#gae7a4711107b7d078fc5f03ce2227b90b">glm::lowp_f64vec3</a></div><div class="ttdeci">vec&lt; 3, f64, lowp &gt; lowp_f64vec3</div><div class="ttdoc">Low double-qualifier floating-point vector of 3 components. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00488">fwd.hpp:488</a></div></div>
-<div class="ttc" id="a00283_html_gaf991cad0b34f64e33af186326dbc4d66"><div class="ttname"><a href="a00283.html#gaf991cad0b34f64e33af186326dbc4d66">glm::mat3x4</a></div><div class="ttdeci">mat&lt; 3, 4, float, defaultp &gt; mat3x4</div><div class="ttdoc">3 columns of 4 components matrix of single-precision floating-point numbers. </div><div class="ttdef"><b>Definition:</b> <a href="a00092_source.html#l00015">matrix_float3x4.hpp:15</a></div></div>
-<div class="ttc" id="a00284_html_ga63362cb4a63fc1be7d2e49cd5d574c84"><div class="ttname"><a href="a00284.html#ga63362cb4a63fc1be7d2e49cd5d574c84">glm::lowp_mat3x3</a></div><div class="ttdeci">mat&lt; 3, 3, float, lowp &gt; lowp_mat3x3</div><div class="ttdoc">3 columns of 3 components matrix of single-precision floating-point numbers using low precision arith...</div><div class="ttdef"><b>Definition:</b> <a href="a00091_source.html#l00034">matrix_float3x3_precision.hpp:34</a></div></div>
-<div class="ttc" id="a00304_html_gaef3824ed4fe435a019c5b9dddf53fec5"><div class="ttname"><a href="a00304.html#gaef3824ed4fe435a019c5b9dddf53fec5">glm::u64vec2</a></div><div class="ttdeci">vec&lt; 2, u64, defaultp &gt; u64vec2</div><div class="ttdoc">Default qualifier 64 bit unsigned integer vector of 2 components type. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00400">fwd.hpp:400</a></div></div>
-<div class="ttc" id="a00304_html_ga5cb1dc9e8d300c2cdb0d7ff2308fa36c"><div class="ttname"><a href="a00304.html#ga5cb1dc9e8d300c2cdb0d7ff2308fa36c">glm::lowp_i64vec3</a></div><div class="ttdeci">vec&lt; 3, i64, lowp &gt; lowp_i64vec3</div><div class="ttdoc">Low qualifier 64 bit signed integer vector of 3 components type. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00284">fwd.hpp:284</a></div></div>
-<div class="ttc" id="a00304_html_ga2a8bdc32184ea0a522ef7bd90640cf67"><div class="ttname"><a href="a00304.html#ga2a8bdc32184ea0a522ef7bd90640cf67">glm::mediump_i8vec2</a></div><div class="ttdeci">vec&lt; 2, i8, mediump &gt; mediump_i8vec2</div><div class="ttdoc">Medium qualifier 8 bit signed integer vector of 2 components type. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00228">fwd.hpp:228</a></div></div>
-<div class="ttc" id="a00282_html_gace3acb313c800552a9411953eb8b2ed7"><div class="ttname"><a href="a00282.html#gace3acb313c800552a9411953eb8b2ed7">glm::lowp_vec4</a></div><div class="ttdeci">vec&lt; 4, float, lowp &gt; lowp_vec4</div><div class="ttdoc">4 components vector of low single-qualifier floating-point numbers. </div><div class="ttdef"><b>Definition:</b> <a href="a00213_source.html#l00028">vector_float4_precision.hpp:28</a></div></div>
-<div class="ttc" id="a00283_html_gac7574544bb94777bdbd2eb224eb72fd0"><div class="ttname"><a href="a00283.html#gac7574544bb94777bdbd2eb224eb72fd0">glm::mat4x3</a></div><div class="ttdeci">mat&lt; 4, 3, float, defaultp &gt; mat4x3</div><div class="ttdoc">4 columns of 3 components matrix of single-precision floating-point numbers. </div><div class="ttdef"><b>Definition:</b> <a href="a00096_source.html#l00015">matrix_float4x3.hpp:15</a></div></div>
-<div class="ttc" id="a00304_html_gab90ade28222f8b861d5ceaf81a3a7f5d"><div class="ttname"><a href="a00304.html#gab90ade28222f8b861d5ceaf81a3a7f5d">glm::f32mat3x4</a></div><div class="ttdeci">mat&lt; 3, 4, f32, defaultp &gt; f32mat3x4</div><div class="ttdoc">Single-qualifier floating-point 3x4 matrix. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00707">fwd.hpp:707</a></div></div>
-<div class="ttc" id="a00284_html_gae220fa4c5a7b13ef2ab0420340de645c"><div class="ttname"><a href="a00284.html#gae220fa4c5a7b13ef2ab0420340de645c">glm::mediump_dmat4x2</a></div><div class="ttdeci">mat&lt; 4, 2, double, mediump &gt; mediump_dmat4x2</div><div class="ttdoc">4 columns of 2 components matrix of double-precision floating-point numbers using medium precision ar...</div><div class="ttdef"><b>Definition:</b> <a href="a00076_source.html#l00022">matrix_double4x2_precision.hpp:22</a></div></div>
-<div class="ttc" id="a00282_html_ga30e8baef5d56d5c166872a2bc00f36e9"><div class="ttname"><a href="a00282.html#ga30e8baef5d56d5c166872a2bc00f36e9">glm::lowp_vec2</a></div><div class="ttdeci">vec&lt; 2, float, lowp &gt; lowp_vec2</div><div class="ttdoc">2 components vector of low single-qualifier floating-point numbers. </div><div class="ttdef"><b>Definition:</b> <a href="a00209_source.html#l00028">vector_float2_precision.hpp:28</a></div></div>
-<div class="ttc" id="a00304_html_ga5609c8fa2b7eac3dec337d321cb0ca96"><div class="ttname"><a href="a00304.html#ga5609c8fa2b7eac3dec337d321cb0ca96">glm::highp_i16vec3</a></div><div class="ttdeci">vec&lt; 3, i16, highp &gt; highp_i16vec3</div><div class="ttdoc">High qualifier 16 bit signed integer vector of 3 components type. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00254">fwd.hpp:254</a></div></div>
-<div class="ttc" id="a00284_html_ga741e05adf1f12d5d913f67088db1009a"><div class="ttname"><a href="a00284.html#ga741e05adf1f12d5d913f67088db1009a">glm::mediump_dmat2x3</a></div><div class="ttdeci">mat&lt; 2, 3, double, mediump &gt; mediump_dmat2x3</div><div class="ttdoc">2 columns of 3 components matrix of double-precision floating-point numbers using medium precision ar...</div><div class="ttdef"><b>Definition:</b> <a href="a00066_source.html#l00022">matrix_double2x3_precision.hpp:22</a></div></div>
-<div class="ttc" id="a00304_html_ga3be6c7fc5fe08fa2274bdb001d5f2633"><div class="ttname"><a href="a00304.html#ga3be6c7fc5fe08fa2274bdb001d5f2633">glm::mediump_i16vec3</a></div><div class="ttdeci">vec&lt; 3, i16, mediump &gt; mediump_i16vec3</div><div class="ttdoc">Medium qualifier 16 bit signed integer vector of 3 components type. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00249">fwd.hpp:249</a></div></div>
-<div class="ttc" id="a00304_html_gaf3f312156984c365e9f65620354da70b"><div class="ttname"><a href="a00304.html#gaf3f312156984c365e9f65620354da70b">glm::u64</a></div><div class="ttdeci">uint64 u64</div><div class="ttdoc">Default qualifier 64 bit unsigned integer type. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00134">fwd.hpp:134</a></div></div>
-<div class="ttc" id="a00282_html_gac57496299d276ed97044074097bd5e2c"><div class="ttname"><a href="a00282.html#gac57496299d276ed97044074097bd5e2c">glm::mediump_ivec2</a></div><div class="ttdeci">vec&lt; 2, int, mediump &gt; mediump_ivec2</div><div class="ttdoc">2 components vector of medium qualifier signed integer numbers. </div><div class="ttdef"><b>Definition:</b> <a href="a00217_source.html#l00022">vector_int2_precision.hpp:22</a></div></div>
-<div class="ttc" id="a00304_html_ga42569e5b92f8635cedeadb1457ee1467"><div class="ttname"><a href="a00304.html#ga42569e5b92f8635cedeadb1457ee1467">glm::mediump_fmat3x2</a></div><div class="ttdeci">mat&lt; 3, 2, f32, mediump &gt; mediump_fmat3x2</div><div class="ttdoc">Medium single-qualifier floating-point 3x2 matrix. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00643">fwd.hpp:643</a></div></div>
-<div class="ttc" id="a00304_html_gade502df1ce14f837fae7f60a03ddb9b0"><div class="ttname"><a href="a00304.html#gade502df1ce14f837fae7f60a03ddb9b0">glm::f64vec1</a></div><div class="ttdeci">vec&lt; 1, f64, defaultp &gt; f64vec1</div><div class="ttdoc">Double-qualifier floating-point vector of 1 component. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00501">fwd.hpp:501</a></div></div>
-<div class="ttc" id="a00304_html_ga8343e9d244fb17a5bbf0d94d36b3695e"><div class="ttname"><a href="a00304.html#ga8343e9d244fb17a5bbf0d94d36b3695e">glm::mediump_i64vec1</a></div><div class="ttdeci">vec&lt; 1, i64, mediump &gt; mediump_i64vec1</div><div class="ttdoc">Medium qualifier 64 bit signed integer scalar type. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00287">fwd.hpp:287</a></div></div>
-<div class="ttc" id="a00304_html_gafe730798732aa7b0647096a004db1b1c"><div class="ttname"><a href="a00304.html#gafe730798732aa7b0647096a004db1b1c">glm::i16vec1</a></div><div class="ttdeci">vec&lt; 1, i16, defaultp &gt; i16vec1</div><div class="ttdoc">16 bit signed integer scalar type. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00257">fwd.hpp:257</a></div></div>
-<div class="ttc" id="a00284_html_gad8e2727a6e7aa68280245bb0022118e1"><div class="ttname"><a href="a00284.html#gad8e2727a6e7aa68280245bb0022118e1">glm::lowp_dmat2</a></div><div class="ttdeci">mat&lt; 2, 2, double, lowp &gt; lowp_dmat2</div><div class="ttdoc">2 columns of 2 components matrix of double-precision floating-point numbers using low precision arith...</div><div class="ttdef"><b>Definition:</b> <a href="a00064_source.html#l00016">matrix_double2x2_precision.hpp:16</a></div></div>
-<div class="ttc" id="a00284_html_ga5ceeb46670fdc000a0701910cc5061c9"><div class="ttname"><a href="a00284.html#ga5ceeb46670fdc000a0701910cc5061c9">glm::highp_dmat2x4</a></div><div class="ttdeci">mat&lt; 2, 4, double, highp &gt; highp_dmat2x4</div><div class="ttdoc">2 columns of 4 components matrix of double-precision floating-point numbers using medium precision ar...</div><div class="ttdef"><b>Definition:</b> <a href="a00068_source.html#l00028">matrix_double2x4_precision.hpp:28</a></div></div>
-<div class="ttc" id="a00304_html_gac8f8a12ee03105ef8861dc652434e3b7"><div class="ttname"><a href="a00304.html#gac8f8a12ee03105ef8861dc652434e3b7">glm::lowp_f64mat3x3</a></div><div class="ttdeci">mat&lt; 3, 3, f64, lowp &gt; lowp_f64mat3x3</div><div class="ttdoc">Low double-qualifier floating-point 3x3 matrix. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00754">fwd.hpp:754</a></div></div>
-<div class="ttc" id="a00304_html_ga4e641a54d70c81eabf56c25c966d04bd"><div class="ttname"><a href="a00304.html#ga4e641a54d70c81eabf56c25c966d04bd">glm::lowp_f64vec2</a></div><div class="ttdeci">vec&lt; 2, f64, lowp &gt; lowp_f64vec2</div><div class="ttdoc">Low double-qualifier floating-point vector of 2 components. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00487">fwd.hpp:487</a></div></div>
-<div class="ttc" id="a00304_html_gacf111095594996fef29067b2454fccad"><div class="ttname"><a href="a00304.html#gacf111095594996fef29067b2454fccad">glm::highp_fmat2x3</a></div><div class="ttdeci">mat&lt; 2, 3, f32, highp &gt; highp_fmat2x3</div><div class="ttdoc">High single-qualifier floating-point 2x3 matrix. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00651">fwd.hpp:651</a></div></div>
-<div class="ttc" id="a00304_html_gac21eda58a1475449a5709b412ebd776c"><div class="ttname"><a href="a00304.html#gac21eda58a1475449a5709b412ebd776c">glm::lowp_f32mat4x3</a></div><div class="ttdeci">mat&lt; 4, 3, f32, lowp &gt; lowp_f32mat4x3</div><div class="ttdoc">Low single-qualifier floating-point 4x3 matrix. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00677">fwd.hpp:677</a></div></div>
-<div class="ttc" id="a00304_html_ga58119a41d143ebaea0df70fe882e8a40"><div class="ttname"><a href="a00304.html#ga58119a41d143ebaea0df70fe882e8a40">glm::lowp_f64mat3</a></div><div class="ttdeci">mat&lt; 3, 3, f64, lowp &gt; lowp_f64mat3</div><div class="ttdoc">Low double-qualifier floating-point 3x3 matrix. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00573">fwd.hpp:573</a></div></div>
-<div class="ttc" id="a00304_html_ga1900c6ab74acd392809425953359ef52"><div class="ttname"><a href="a00304.html#ga1900c6ab74acd392809425953359ef52">glm::mediump_u64vec3</a></div><div class="ttdeci">vec&lt; 3, u64, mediump &gt; mediump_u64vec3</div><div class="ttdoc">Medium qualifier 64 bit unsigned integer vector of 3 components type. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00391">fwd.hpp:391</a></div></div>
-<div class="ttc" id="a00304_html_gab83d8aae6e4f115e97a785e8574a115f"><div class="ttname"><a href="a00304.html#gab83d8aae6e4f115e97a785e8574a115f">glm::mediump_float64</a></div><div class="ttdeci">double mediump_float64</div><div class="ttdoc">Medium 64 bit double-qualifier floating-point scalar. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00169">fwd.hpp:169</a></div></div>
-<div class="ttc" id="a00304_html_ga232fad1b0d6dcc7c16aabde98b2e2a80"><div class="ttname"><a href="a00304.html#ga232fad1b0d6dcc7c16aabde98b2e2a80">glm::float64</a></div><div class="ttdeci">double float64</div><div class="ttdoc">Double-qualifier floating-point scalar. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00171">fwd.hpp:171</a></div></div>
-<div class="ttc" id="a00282_html_gac6c781a85f012d77a75310a3058702c2"><div class="ttname"><a href="a00282.html#gac6c781a85f012d77a75310a3058702c2">glm::highp_bvec2</a></div><div class="ttdeci">vec&lt; 2, bool, highp &gt; highp_bvec2</div><div class="ttdoc">2 components vector of high qualifier bool numbers. </div><div class="ttdef"><b>Definition:</b> <a href="a00192_source.html#l00016">vector_bool2_precision.hpp:16</a></div></div>
-<div class="ttc" id="a00304_html_gaa7db3ad10947cf70cae6474d05ebd227"><div class="ttname"><a href="a00304.html#gaa7db3ad10947cf70cae6474d05ebd227">glm::highp_i16vec2</a></div><div class="ttdeci">vec&lt; 2, i16, highp &gt; highp_i16vec2</div><div class="ttdoc">High qualifier 16 bit signed integer vector of 2 components type. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00253">fwd.hpp:253</a></div></div>
-<div class="ttc" id="a00304_html_ga8c8aa45aafcc23238edb1d5aeb801774"><div class="ttname"><a href="a00304.html#ga8c8aa45aafcc23238edb1d5aeb801774">glm::fmat4x2</a></div><div class="ttdeci">mat&lt; 4, 2, f32, defaultp &gt; fmat4x2</div><div class="ttdoc">Single-qualifier floating-point 4x2 matrix. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00662">fwd.hpp:662</a></div></div>
-<div class="ttc" id="a00304_html_ga39e90adcffe33264bd608fa9c6bd184b"><div class="ttname"><a href="a00304.html#ga39e90adcffe33264bd608fa9c6bd184b">glm::lowp_f64mat2x3</a></div><div class="ttdeci">mat&lt; 2, 3, f64, lowp &gt; lowp_f64mat2x3</div><div class="ttdoc">Low double-qualifier floating-point 2x3 matrix. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00751">fwd.hpp:751</a></div></div>
-<div class="ttc" id="a00304_html_ga44e158af77a670ee1b58c03cda9e1619"><div class="ttname"><a href="a00304.html#ga44e158af77a670ee1b58c03cda9e1619">glm::fmat3x4</a></div><div class="ttdeci">mat&lt; 3, 4, f32, defaultp &gt; fmat3x4</div><div class="ttdoc">Single-qualifier floating-point 3x4 matrix. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00667">fwd.hpp:667</a></div></div>
-<div class="ttc" id="a00284_html_gac017848a9df570f60916a21a297b1e8e"><div class="ttname"><a href="a00284.html#gac017848a9df570f60916a21a297b1e8e">glm::lowp_dmat3x3</a></div><div class="ttdeci">mat&lt; 3, 3, double, lowp &gt; lowp_dmat3x3</div><div class="ttdoc">3 columns of 3 components matrix of double-precision floating-point numbers using low precision arith...</div><div class="ttdef"><b>Definition:</b> <a href="a00072_source.html#l00034">matrix_double3x3_precision.hpp:34</a></div></div>
-<div class="ttc" id="a00304_html_gad3ad390560a671b1f676fbf03cd3aa15"><div class="ttname"><a href="a00304.html#gad3ad390560a671b1f676fbf03cd3aa15">glm::lowp_u32vec3</a></div><div class="ttdeci">vec&lt; 3, u32, lowp &gt; lowp_u32vec3</div><div class="ttdoc">Low qualifier 32 bit unsigned integer vector of 3 components type. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00366">fwd.hpp:366</a></div></div>
-<div class="ttc" id="a00304_html_gaf512b74c4400b68f9fdf9388b3d6aac8"><div class="ttname"><a href="a00304.html#gaf512b74c4400b68f9fdf9388b3d6aac8">glm::f32mat2x4</a></div><div class="ttdeci">mat&lt; 2, 4, f32, defaultp &gt; f32mat2x4</div><div class="ttdoc">Single-qualifier floating-point 2x4 matrix. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00706">fwd.hpp:706</a></div></div>
-<div class="ttc" id="a00304_html_ga755484ffbe39ae3db2875953ed04e7b7"><div class="ttname"><a href="a00304.html#ga755484ffbe39ae3db2875953ed04e7b7">glm::lowp_fvec4</a></div><div class="ttdeci">vec&lt; 4, float, lowp &gt; lowp_fvec4</div><div class="ttdoc">Low single-qualifier floating-point vector of 4 components. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00429">fwd.hpp:429</a></div></div>
-<div class="ttc" id="a00304_html_gad80c84bcd5f585840faa6179f6fd446c"><div class="ttname"><a href="a00304.html#gad80c84bcd5f585840faa6179f6fd446c">glm::mediump_f32vec4</a></div><div class="ttdeci">vec&lt; 4, f32, mediump &gt; mediump_f32vec4</div><div class="ttdoc">Medium single-qualifier floating-point vector of 4 components. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00454">fwd.hpp:454</a></div></div>
-<div class="ttc" id="a00304_html_ga550831bfc26d1e0101c1cb3d79938c06"><div class="ttname"><a href="a00304.html#ga550831bfc26d1e0101c1cb3d79938c06">glm::i16vec4</a></div><div class="ttdeci">vec&lt; 4, i16, defaultp &gt; i16vec4</div><div class="ttdoc">16 bit signed integer vector of 4 components type. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00260">fwd.hpp:260</a></div></div>
-<div class="ttc" id="a00304_html_ga667b2ece2b258be898812dc2177995d1"><div class="ttname"><a href="a00304.html#ga667b2ece2b258be898812dc2177995d1">glm::lowp_uint8_t</a></div><div class="ttdeci">uint8 lowp_uint8_t</div><div class="ttdoc">Low qualifier 8 bit unsigned integer type. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00098">fwd.hpp:98</a></div></div>
-<div class="ttc" id="a00304_html_gae978599c9711ac263ba732d4ac225b0e"><div class="ttname"><a href="a00304.html#gae978599c9711ac263ba732d4ac225b0e">glm::highp_uint32_t</a></div><div class="ttdeci">uint32 highp_uint32_t</div><div class="ttdoc">High qualifier 32 bit unsigned integer type. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00128">fwd.hpp:128</a></div></div>
-<div class="ttc" id="a00304_html_gaa07c86650253672a19dbfb898f3265b8"><div class="ttname"><a href="a00304.html#gaa07c86650253672a19dbfb898f3265b8">glm::fmat3x3</a></div><div class="ttdeci">mat&lt; 3, 3, f32, defaultp &gt; fmat3x3</div><div class="ttdoc">Single-qualifier floating-point 3x3 matrix. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00664">fwd.hpp:664</a></div></div>
-<div class="ttc" id="a00304_html_gad38c544d332b8c4bd0b70b1bd9feccc2"><div class="ttname"><a href="a00304.html#gad38c544d332b8c4bd0b70b1bd9feccc2">glm::mediump_f64mat3x4</a></div><div class="ttdeci">mat&lt; 3, 4, f64, mediump &gt; mediump_f64mat3x4</div><div class="ttdoc">Medium double-qualifier floating-point 3x4 matrix. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00765">fwd.hpp:765</a></div></div>
-<div class="ttc" id="a00304_html_ga71cdb53801ed4c3aadb3603c04723210"><div class="ttname"><a href="a00304.html#ga71cdb53801ed4c3aadb3603c04723210">glm::lowp_fmat2x3</a></div><div class="ttdeci">mat&lt; 2, 3, f32, lowp &gt; lowp_fmat2x3</div><div class="ttdoc">Low single-qualifier floating-point 2x3 matrix. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00631">fwd.hpp:631</a></div></div>
-<div class="ttc" id="a00304_html_gabed3be8dfdc4a0df4bf3271dbd7344c4"><div class="ttname"><a href="a00304.html#gabed3be8dfdc4a0df4bf3271dbd7344c4">glm::lowp_u32vec1</a></div><div class="ttdeci">vec&lt; 1, u32, lowp &gt; lowp_u32vec1</div><div class="ttdoc">Low qualifier 32 bit unsigned integer scalar type. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00364">fwd.hpp:364</a></div></div>
-<div class="ttc" id="a00284_html_gaabf6cf90fd31efe25c94965507e98390"><div class="ttname"><a href="a00284.html#gaabf6cf90fd31efe25c94965507e98390">glm::lowp_mat3x2</a></div><div class="ttdeci">mat&lt; 3, 2, float, lowp &gt; lowp_mat3x2</div><div class="ttdoc">3 columns of 2 components matrix of single-precision floating-point numbers using low precision arith...</div><div class="ttdef"><b>Definition:</b> <a href="a00089_source.html#l00016">matrix_float3x2_precision.hpp:16</a></div></div>
-<div class="ttc" id="a00304_html_gab256cdab5eb582e426d749ae77b5b566"><div class="ttname"><a href="a00304.html#gab256cdab5eb582e426d749ae77b5b566">glm::f32mat2x3</a></div><div class="ttdeci">mat&lt; 2, 3, f32, defaultp &gt; f32mat2x3</div><div class="ttdoc">Single-qualifier floating-point 2x3 matrix. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00703">fwd.hpp:703</a></div></div>
-<div class="ttc" id="a00304_html_ga46a57f71e430637559097a732b550a7e"><div class="ttname"><a href="a00304.html#ga46a57f71e430637559097a732b550a7e">glm::mediump_i32vec1</a></div><div class="ttdeci">vec&lt; 1, i32, mediump &gt; mediump_i32vec1</div><div class="ttdoc">Medium qualifier 32 bit signed integer scalar type. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00267">fwd.hpp:267</a></div></div>
-<div class="ttc" id="a00304_html_ga8a85a3d54a8a9e14fe7a1f96196c4f61"><div class="ttname"><a href="a00304.html#ga8a85a3d54a8a9e14fe7a1f96196c4f61">glm::highp_u16vec4</a></div><div class="ttdeci">vec&lt; 4, u16, highp &gt; highp_u16vec4</div><div class="ttdoc">High qualifier 16 bit unsigned integer vector of 4 components type. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00357">fwd.hpp:357</a></div></div>
-<div class="ttc" id="a00304_html_gae31ac3608cf643ceffd6554874bec4a0"><div class="ttname"><a href="a00304.html#gae31ac3608cf643ceffd6554874bec4a0">glm::lowp_i32vec1</a></div><div class="ttdeci">vec&lt; 1, i32, lowp &gt; lowp_i32vec1</div><div class="ttdoc">Low qualifier 32 bit signed integer scalar type. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00262">fwd.hpp:262</a></div></div>
-<div class="ttc" id="a00304_html_gab0f7d875db5f3cc9f3168c5a0ed56437"><div class="ttname"><a href="a00304.html#gab0f7d875db5f3cc9f3168c5a0ed56437">glm::lowp_i64vec1</a></div><div class="ttdeci">vec&lt; 1, i64, lowp &gt; lowp_i64vec1</div><div class="ttdoc">Low qualifier 64 bit signed integer scalar type. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00282">fwd.hpp:282</a></div></div>
-<div class="ttc" id="a00304_html_ga0e35a565b9036bfc3989f5e23a0792e3"><div class="ttname"><a href="a00304.html#ga0e35a565b9036bfc3989f5e23a0792e3">glm::highp_u32vec1</a></div><div class="ttdeci">vec&lt; 1, u32, highp &gt; highp_u32vec1</div><div class="ttdoc">High qualifier 32 bit unsigned integer scalar type. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00374">fwd.hpp:374</a></div></div>
-<div class="ttc" id="a00266_html_gae8a1e14abae1387274f57741750c06a2"><div class="ttname"><a href="a00266.html#gae8a1e14abae1387274f57741750c06a2">glm::highp_bvec1</a></div><div class="ttdeci">vec&lt; 1, bool, highp &gt; highp_bvec1</div><div class="ttdoc">1 component vector of bool values. </div><div class="ttdef"><b>Definition:</b> <a href="a00190_source.html#l00025">vector_bool1_precision.hpp:25</a></div></div>
-<div class="ttc" id="a00304_html_gadff3608baa4b5bd3ed28f95c1c2c345d"><div class="ttname"><a href="a00304.html#gadff3608baa4b5bd3ed28f95c1c2c345d">glm::mediump_int16</a></div><div class="ttdeci">int16 mediump_int16</div><div class="ttdoc">Medium qualifier 16 bit signed integer type. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00051">fwd.hpp:51</a></div></div>
-<div class="ttc" id="a00304_html_ga9df98857be695d5a30cb30f5bfa38a80"><div class="ttname"><a href="a00304.html#ga9df98857be695d5a30cb30f5bfa38a80">glm::mediump_u16</a></div><div class="ttdeci">uint16 mediump_u16</div><div class="ttdoc">Medium qualifier 16 bit unsigned integer type. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00104">fwd.hpp:104</a></div></div>
-<div class="ttc" id="a00304_html_ga2b114a2f2af0fe1dfeb569c767822940"><div class="ttname"><a href="a00304.html#ga2b114a2f2af0fe1dfeb569c767822940">glm::f64quat</a></div><div class="ttdeci">qua&lt; f64, defaultp &gt; f64quat</div><div class="ttdoc">Double-qualifier floating-point quaternion. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00815">fwd.hpp:815</a></div></div>
-<div class="ttc" id="a00282_html_ga5c6978d3ffba06738416a33083853fc0"><div class="ttname"><a href="a00282.html#ga5c6978d3ffba06738416a33083853fc0">glm::mediump_vec4</a></div><div class="ttdeci">vec&lt; 4, float, mediump &gt; mediump_vec4</div><div class="ttdoc">4 components vector of medium single-qualifier floating-point numbers. </div><div class="ttdef"><b>Definition:</b> <a href="a00213_source.html#l00022">vector_float4_precision.hpp:22</a></div></div>
-<div class="ttc" id="a00304_html_ga461c4c7d0757404dd0dba931760b25cf"><div class="ttname"><a href="a00304.html#ga461c4c7d0757404dd0dba931760b25cf">glm::mediump_f64vec3</a></div><div class="ttdeci">vec&lt; 3, f64, mediump &gt; mediump_f64vec3</div><div class="ttdoc">Medium double-qualifier floating-point vector of 3 components. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00493">fwd.hpp:493</a></div></div>
-<div class="ttc" id="a00249_html_ga1181459aa5d640a3ea43861b118f3f0b"><div class="ttname"><a href="a00249.html#ga1181459aa5d640a3ea43861b118f3f0b">glm::dquat</a></div><div class="ttdeci">qua&lt; double, defaultp &gt; dquat</div><div class="ttdoc">Quaternion of double-precision floating-point numbers. </div><div class="ttdef"><b>Definition:</b> <a href="a00128_source.html#l00035">quaternion_double.hpp:35</a></div></div>
-<div class="ttc" id="a00304_html_gaf09f3ca4b671a4a4f84505eb4cc865fd"><div class="ttname"><a href="a00304.html#gaf09f3ca4b671a4a4f84505eb4cc865fd">glm::u64vec1</a></div><div class="ttdeci">vec&lt; 1, u64, defaultp &gt; u64vec1</div><div class="ttdoc">Default qualifier 64 bit unsigned integer scalar type. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00399">fwd.hpp:399</a></div></div>
-<div class="ttc" id="a00304_html_ga322a7d7d2c2c68994dc872a33de63c61"><div class="ttname"><a href="a00304.html#ga322a7d7d2c2c68994dc872a33de63c61">glm::int64_t</a></div><div class="ttdeci">int64 int64_t</div><div class="ttdoc">64 bit signed integer type. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00085">fwd.hpp:85</a></div></div>
-<div class="ttc" id="a00304_html_ga29b349e037f0b24320b4548a143daee2"><div class="ttname"><a href="a00304.html#ga29b349e037f0b24320b4548a143daee2">glm::u8vec1</a></div><div class="ttdeci">vec&lt; 1, u8, defaultp &gt; u8vec1</div><div class="ttdoc">Default qualifier 8 bit unsigned integer scalar type. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00339">fwd.hpp:339</a></div></div>
-<div class="ttc" id="a00304_html_ga1d8c10949691b0fd990253476f47beb3"><div class="ttname"><a href="a00304.html#ga1d8c10949691b0fd990253476f47beb3">glm::highp_i8vec1</a></div><div class="ttdeci">vec&lt; 1, i8, highp &gt; highp_i8vec1</div><div class="ttdoc">High qualifier 8 bit signed integer scalar type. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00232">fwd.hpp:232</a></div></div>
-<div class="ttc" id="a00304_html_ga20779a61de2fd526a17f12fe53ec46b1"><div class="ttname"><a href="a00304.html#ga20779a61de2fd526a17f12fe53ec46b1">glm::u8vec4</a></div><div class="ttdeci">vec&lt; 4, u8, defaultp &gt; u8vec4</div><div class="ttdoc">Default qualifier 8 bit unsigned integer vector of 4 components type. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00342">fwd.hpp:342</a></div></div>
-<div class="ttc" id="a00304_html_ga4bf09d8838a86866b39ee6e109341645"><div class="ttname"><a href="a00304.html#ga4bf09d8838a86866b39ee6e109341645">glm::int8_t</a></div><div class="ttdeci">int8 int8_t</div><div class="ttdoc">8 bit signed integer type. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00043">fwd.hpp:43</a></div></div>
-<div class="ttc" id="a00304_html_ga96faea43ac5f875d2d3ffbf8d213e3eb"><div class="ttname"><a href="a00304.html#ga96faea43ac5f875d2d3ffbf8d213e3eb">glm::i32</a></div><div class="ttdeci">int32 i32</div><div class="ttdoc">32 bit signed integer type. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00062">fwd.hpp:62</a></div></div>
-<div class="ttc" id="a00304_html_ga8a11ccd2e38f674bbf3c2d1afc232aee"><div class="ttname"><a href="a00304.html#ga8a11ccd2e38f674bbf3c2d1afc232aee">glm::mediump_u32vec1</a></div><div class="ttdeci">vec&lt; 1, u32, mediump &gt; mediump_u32vec1</div><div class="ttdoc">Medium qualifier 32 bit unsigned integer scalar type. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00369">fwd.hpp:369</a></div></div>
-<div class="ttc" id="a00304_html_ga9ec7c4c79e303c053e30729a95fb2c37"><div class="ttname"><a href="a00304.html#ga9ec7c4c79e303c053e30729a95fb2c37">glm::f64mat2x2</a></div><div class="ttdeci">mat&lt; 2, 2, f64, defaultp &gt; f64mat2x2</div><div class="ttdoc">Double-qualifier floating-point 1x1 matrix. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00780">fwd.hpp:780</a></div></div>
-<div class="ttc" id="a00304_html_ga1d091b6abfba1772450e1745a06525bc"><div class="ttname"><a href="a00304.html#ga1d091b6abfba1772450e1745a06525bc">glm::lowp_f32mat2x2</a></div><div class="ttdeci">mat&lt; 2, 2, f32, lowp &gt; lowp_f32mat2x2</div><div class="ttdoc">Low single-qualifier floating-point 1x1 matrix. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00670">fwd.hpp:670</a></div></div>
-<div class="ttc" id="a00304_html_ga4e2e1debe022074ab224c9faf856d374"><div class="ttname"><a href="a00304.html#ga4e2e1debe022074ab224c9faf856d374">glm::lowp_f32vec4</a></div><div class="ttdeci">vec&lt; 4, f32, lowp &gt; lowp_f32vec4</div><div class="ttdoc">Low single-qualifier floating-point vector of 4 components. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00449">fwd.hpp:449</a></div></div>
-<div class="ttc" id="a00304_html_ga6ef77413883f48d6b53b4169b25edbd0"><div class="ttname"><a href="a00304.html#ga6ef77413883f48d6b53b4169b25edbd0">glm::highp_fvec3</a></div><div class="ttdeci">vec&lt; 3, float, highp &gt; highp_fvec3</div><div class="ttdoc">High Single-qualifier floating-point vector of 3 components. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00438">fwd.hpp:438</a></div></div>
-<div class="ttc" id="a00304_html_gab0cecb80fd106bc369b9e46a165815ce"><div class="ttname"><a href="a00304.html#gab0cecb80fd106bc369b9e46a165815ce">glm::lowp_f64mat4x2</a></div><div class="ttdeci">mat&lt; 4, 2, f64, lowp &gt; lowp_f64mat4x2</div><div class="ttdoc">Low double-qualifier floating-point 4x2 matrix. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00756">fwd.hpp:756</a></div></div>
-<div class="ttc" id="a00304_html_gaa6f526388c74a66b3d52315a14d434ae"><div class="ttname"><a href="a00304.html#gaa6f526388c74a66b3d52315a14d434ae">glm::mediump_fmat3x3</a></div><div class="ttdeci">mat&lt; 3, 3, f32, mediump &gt; mediump_fmat3x3</div><div class="ttdoc">Medium single-qualifier floating-point 3x3 matrix. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00644">fwd.hpp:644</a></div></div>
-<div class="ttc" id="a00304_html_gabd2fda3cd208acf5a370ec9b5b3c58d4"><div class="ttname"><a href="a00304.html#gabd2fda3cd208acf5a370ec9b5b3c58d4">glm::highp_i64vec1</a></div><div class="ttdeci">vec&lt; 1, i64, highp &gt; highp_i64vec1</div><div class="ttdoc">High qualifier 64 bit signed integer scalar type. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00292">fwd.hpp:292</a></div></div>
-<div class="ttc" id="a00304_html_ga4177a44206121dabc8c4ff1c0f544574"><div class="ttname"><a href="a00304.html#ga4177a44206121dabc8c4ff1c0f544574">glm::i8vec4</a></div><div class="ttdeci">vec&lt; 4, i8, defaultp &gt; i8vec4</div><div class="ttdoc">8 bit signed integer vector of 4 components type. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00240">fwd.hpp:240</a></div></div>
-<div class="ttc" id="a00273_html_ga7e02566f2bd2caa68e61be45a477c77e"><div class="ttname"><a href="a00273.html#ga7e02566f2bd2caa68e61be45a477c77e">glm::highp_ivec1</a></div><div class="ttdeci">vec&lt; 1, int, highp &gt; highp_ivec1</div><div class="ttdoc">1 component vector of signed integer values. </div><div class="ttdef"><b>Definition:</b> <a href="a00215_source.html#l00025">vector_int1_precision.hpp:25</a></div></div>
-<div class="ttc" id="a00282_html_ga50c783c25082882ef00fe2e5cddba4aa"><div class="ttname"><a href="a00282.html#ga50c783c25082882ef00fe2e5cddba4aa">glm::mediump_bvec3</a></div><div class="ttdeci">vec&lt; 3, bool, mediump &gt; mediump_bvec3</div><div class="ttdoc">3 components vector of medium qualifier bool numbers. </div><div class="ttdef"><b>Definition:</b> <a href="a00194_source.html#l00022">vector_bool3_precision.hpp:22</a></div></div>
-<div class="ttc" id="a00304_html_ga84ed04b4e0de18c977e932d617e7c223"><div class="ttname"><a href="a00304.html#ga84ed04b4e0de18c977e932d617e7c223">glm::highp_int32</a></div><div class="ttdeci">int32 highp_int32</div><div class="ttdoc">High qualifier 32 bit signed integer type. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00066">fwd.hpp:66</a></div></div>
-<div class="ttc" id="a00304_html_gad4cc829ab1ad3e05ac0a24828a3c95cf"><div class="ttname"><a href="a00304.html#gad4cc829ab1ad3e05ac0a24828a3c95cf">glm::mediump_f32mat2x3</a></div><div class="ttdeci">mat&lt; 2, 3, f32, mediump &gt; mediump_f32mat2x3</div><div class="ttdoc">Medium single-qualifier floating-point 2x3 matrix. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00681">fwd.hpp:681</a></div></div>
-<div class="ttc" id="a00284_html_ga3a132bd05675c2e46556f67cf738600b"><div class="ttname"><a href="a00284.html#ga3a132bd05675c2e46556f67cf738600b">glm::mediump_dmat3x4</a></div><div class="ttdeci">mat&lt; 3, 4, double, mediump &gt; mediump_dmat3x4</div><div class="ttdoc">3 columns of 4 components matrix of double-precision floating-point numbers using medium precision ar...</div><div class="ttdef"><b>Definition:</b> <a href="a00074_source.html#l00022">matrix_double3x4_precision.hpp:22</a></div></div>
-<div class="ttc" id="a00304_html_gab0eb2d65514ee3e49905aa2caad8c0ad"><div class="ttname"><a href="a00304.html#gab0eb2d65514ee3e49905aa2caad8c0ad">glm::lowp_f64mat3x2</a></div><div class="ttdeci">mat&lt; 3, 2, f64, lowp &gt; lowp_f64mat3x2</div><div class="ttdoc">Low double-qualifier floating-point 3x2 matrix. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00753">fwd.hpp:753</a></div></div>
-<div class="ttc" id="a00283_html_gad941c947ad6cdd117a0e8554a4754983"><div class="ttname"><a href="a00283.html#gad941c947ad6cdd117a0e8554a4754983">glm::mat4x2</a></div><div class="ttdeci">mat&lt; 4, 2, float, defaultp &gt; mat4x2</div><div class="ttdoc">4 columns of 2 components matrix of single-precision floating-point numbers. </div><div class="ttdef"><b>Definition:</b> <a href="a00094_source.html#l00015">matrix_float4x2.hpp:15</a></div></div>
-<div class="ttc" id="a00271_html_ga645f53e6b8056609023a894b4e2beef4"><div class="ttname"><a href="a00271.html#ga645f53e6b8056609023a894b4e2beef4">glm::mediump_vec1</a></div><div class="ttdeci">vec&lt; 1, float, mediump &gt; mediump_vec1</div><div class="ttdoc">1 component vector of single-precision floating-point numbers using medium precision arithmetic in te...</div><div class="ttdef"><b>Definition:</b> <a href="a00207_source.html#l00030">vector_float1_precision.hpp:30</a></div></div>
-<div class="ttc" id="a00304_html_ga7a6f1929464dcc680b16381a4ee5f2cf"><div class="ttname"><a href="a00304.html#ga7a6f1929464dcc680b16381a4ee5f2cf">glm::highp_u32</a></div><div class="ttdeci">uint32 highp_u32</div><div class="ttdoc">High qualifier 32 bit unsigned integer type. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00119">fwd.hpp:119</a></div></div>
-<div class="ttc" id="a00304_html_ga727675ac6b5d2fc699520e0059735e25"><div class="ttname"><a href="a00304.html#ga727675ac6b5d2fc699520e0059735e25">glm::highp_i32</a></div><div class="ttdeci">int32 highp_i32</div><div class="ttdoc">High qualifier 32 bit signed integer type. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00061">fwd.hpp:61</a></div></div>
-<div class="ttc" id="a00281_html_ga5abb4603dae0ce58c595e66d9123d812"><div class="ttname"><a href="a00281.html#ga5abb4603dae0ce58c595e66d9123d812">glm::ivec4</a></div><div class="ttdeci">vec&lt; 4, int, defaultp &gt; ivec4</div><div class="ttdoc">4 components vector of signed integer numbers. </div><div class="ttdef"><b>Definition:</b> <a href="a00220_source.html#l00015">vector_int4.hpp:15</a></div></div>
-<div class="ttc" id="a00284_html_ga15bca2b70917d9752231160d9da74b01"><div class="ttname"><a href="a00284.html#ga15bca2b70917d9752231160d9da74b01">glm::mediump_mat4x4</a></div><div class="ttdeci">mat&lt; 4, 4, float, mediump &gt; mediump_mat4x4</div><div class="ttdoc">4 columns of 4 components matrix of single-precision floating-point numbers using medium precision ar...</div><div class="ttdef"><b>Definition:</b> <a href="a00099_source.html#l00040">matrix_float4x4_precision.hpp:40</a></div></div>
-<div class="ttc" id="a00304_html_ga3945dd6515d4498cb603e65ff867ab03"><div class="ttname"><a href="a00304.html#ga3945dd6515d4498cb603e65ff867ab03">glm::u64vec4</a></div><div class="ttdeci">vec&lt; 4, u64, defaultp &gt; u64vec4</div><div class="ttdoc">Default qualifier 64 bit unsigned integer vector of 4 components type. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00402">fwd.hpp:402</a></div></div>
-<div class="ttc" id="a00282_html_ga8433c6c1fdd80c0a83941d94aff73fa0"><div class="ttname"><a href="a00282.html#ga8433c6c1fdd80c0a83941d94aff73fa0">glm::lowp_ivec2</a></div><div class="ttdeci">vec&lt; 2, int, lowp &gt; lowp_ivec2</div><div class="ttdoc">2 components vector of low qualifier signed integer numbers. </div><div class="ttdef"><b>Definition:</b> <a href="a00217_source.html#l00028">vector_int2_precision.hpp:28</a></div></div>
-<div class="ttc" id="a00304_html_ga31c6ca0e074a44007f49a9a3720b18c8"><div class="ttname"><a href="a00304.html#ga31c6ca0e074a44007f49a9a3720b18c8">glm::f32vec4</a></div><div class="ttdeci">vec&lt; 4, f32, defaultp &gt; f32vec4</div><div class="ttdoc">Single-qualifier floating-point vector of 4 components. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00464">fwd.hpp:464</a></div></div>
-<div class="ttc" id="a00304_html_gae3ab5719fc4c1e966631dbbcba8d412a"><div class="ttname"><a href="a00304.html#gae3ab5719fc4c1e966631dbbcba8d412a">glm::f64mat2x3</a></div><div class="ttdeci">mat&lt; 2, 3, f64, defaultp &gt; f64mat2x3</div><div class="ttdoc">Double-qualifier floating-point 2x3 matrix. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00783">fwd.hpp:783</a></div></div>
-<div class="ttc" id="a00304_html_ga66edb8de17b9235029472f043ae107e9"><div class="ttname"><a href="a00304.html#ga66edb8de17b9235029472f043ae107e9">glm::mediump_f64mat4x4</a></div><div class="ttdeci">mat&lt; 4, 4, f64, mediump &gt; mediump_f64mat4x4</div><div class="ttdoc">Medium double-qualifier floating-point 4x4 matrix. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00768">fwd.hpp:768</a></div></div>
-<div class="ttc" id="a00284_html_ga51dc36a7719cb458fa5114831c20d64f"><div class="ttname"><a href="a00284.html#ga51dc36a7719cb458fa5114831c20d64f">glm::mediump_dmat2x2</a></div><div class="ttdeci">mat&lt; 2, 2, double, mediump &gt; mediump_dmat2x2</div><div class="ttdoc">2 columns of 2 components matrix of double-precision floating-point numbers using medium precision ar...</div><div class="ttdef"><b>Definition:</b> <a href="a00064_source.html#l00040">matrix_double2x2_precision.hpp:40</a></div></div>
-<div class="ttc" id="a00304_html_gaa7f00459b9a2e5b2757e70afc0c189e1"><div class="ttname"><a href="a00304.html#gaa7f00459b9a2e5b2757e70afc0c189e1">glm::lowp_u16vec4</a></div><div class="ttdeci">vec&lt; 4, u16, lowp &gt; lowp_u16vec4</div><div class="ttdoc">Low qualifier 16 bit unsigned integer vector of 4 components type. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00347">fwd.hpp:347</a></div></div>
-<div class="ttc" id="a00282_html_gaeebd7dd9f3e678691f8620241e5f9221"><div class="ttname"><a href="a00282.html#gaeebd7dd9f3e678691f8620241e5f9221">glm::highp_uvec4</a></div><div class="ttdeci">vec&lt; 4, unsigned int, highp &gt; highp_uvec4</div><div class="ttdoc">4 components vector of high qualifier unsigned integer numbers. </div><div class="ttdef"><b>Definition:</b> <a href="a00233_source.html#l00016">vector_uint4_precision.hpp:16</a></div></div>
-<div class="ttc" id="a00304_html_ga256b12b650c3f2fb86878fd1c5db8bc3"><div class="ttname"><a href="a00304.html#ga256b12b650c3f2fb86878fd1c5db8bc3">glm::highp_uint32</a></div><div class="ttdeci">uint32 highp_uint32</div><div class="ttdoc">High qualifier 32 bit unsigned integer type. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00124">fwd.hpp:124</a></div></div>
-<div class="ttc" id="a00304_html_ga766aed2871e6173a81011a877f398f04"><div class="ttname"><a href="a00304.html#ga766aed2871e6173a81011a877f398f04">glm::lowp_f32mat4</a></div><div class="ttdeci">mat&lt; 4, 4, f32, lowp &gt; lowp_f32mat4</div><div class="ttdoc">Low single-qualifier floating-point 4x4 matrix. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00542">fwd.hpp:542</a></div></div>
-<div class="ttc" id="a00304_html_ga2473d8bf3f4abf967c4d0e18175be6f7"><div class="ttname"><a href="a00304.html#ga2473d8bf3f4abf967c4d0e18175be6f7">glm::f64mat3x2</a></div><div class="ttdeci">mat&lt; 3, 2, f64, defaultp &gt; f64mat3x2</div><div class="ttdoc">Double-qualifier floating-point 3x2 matrix. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00781">fwd.hpp:781</a></div></div>
-<div class="ttc" id="a00304_html_ga7812bf00676fb1a86dcd62cca354d2c7"><div class="ttname"><a href="a00304.html#ga7812bf00676fb1a86dcd62cca354d2c7">glm::mediump_float32</a></div><div class="ttdeci">float mediump_float32</div><div class="ttdoc">Medium 32 bit single-qualifier floating-point scalar. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00153">fwd.hpp:153</a></div></div>
-<div class="ttc" id="a00304_html_gae627372cfd5f20dd87db490387b71195"><div class="ttname"><a href="a00304.html#gae627372cfd5f20dd87db490387b71195">glm::u32vec1</a></div><div class="ttdeci">vec&lt; 1, u32, defaultp &gt; u32vec1</div><div class="ttdoc">Default qualifier 32 bit unsigned integer scalar type. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00379">fwd.hpp:379</a></div></div>
-<div class="ttc" id="a00284_html_gafa3cdb8f24d09d761ec9ae2a4c7e5e21"><div class="ttname"><a href="a00284.html#gafa3cdb8f24d09d761ec9ae2a4c7e5e21">glm::lowp_mat4x2</a></div><div class="ttdeci">mat&lt; 4, 2, float, lowp &gt; lowp_mat4x2</div><div class="ttdoc">4 columns of 2 components matrix of single-precision floating-point numbers using low precision arith...</div><div class="ttdef"><b>Definition:</b> <a href="a00095_source.html#l00016">matrix_float4x2_precision.hpp:16</a></div></div>
-<div class="ttc" id="a00304_html_gacfea053bd6bb3eddb996a4f94de22a3e"><div class="ttname"><a href="a00304.html#gacfea053bd6bb3eddb996a4f94de22a3e">glm::mediump_f64vec4</a></div><div class="ttdeci">vec&lt; 4, f64, mediump &gt; mediump_f64vec4</div><div class="ttdoc">Medium double-qualifier floating-point vector of 4 components. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00494">fwd.hpp:494</a></div></div>
-<div class="ttc" id="a00304_html_ga916c1aed91cf91f7b41399ebe7c6e185"><div class="ttname"><a href="a00304.html#ga916c1aed91cf91f7b41399ebe7c6e185">glm::f64mat3x3</a></div><div class="ttdeci">mat&lt; 3, 3, f64, defaultp &gt; f64mat3x3</div><div class="ttdoc">Double-qualifier floating-point 3x3 matrix. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00784">fwd.hpp:784</a></div></div>
-<div class="ttc" id="a00304_html_gac5a7f21136e0a78d0a1b9f60ef2f8aea"><div class="ttname"><a href="a00304.html#gac5a7f21136e0a78d0a1b9f60ef2f8aea">glm::highp_float32</a></div><div class="ttdeci">float highp_float32</div><div class="ttdoc">High 32 bit single-qualifier floating-point scalar. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00154">fwd.hpp:154</a></div></div>
-<div class="ttc" id="a00304_html_ga97432f9979e73e66567361fd01e4cffb"><div class="ttname"><a href="a00304.html#ga97432f9979e73e66567361fd01e4cffb">glm::highp_uint8</a></div><div class="ttdeci">uint8 highp_uint8</div><div class="ttdoc">High qualifier 8 bit unsigned integer type. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00096">fwd.hpp:96</a></div></div>
-<div class="ttc" id="a00304_html_gacb88796f2d08ef253d0345aff20c3aee"><div class="ttname"><a href="a00304.html#gacb88796f2d08ef253d0345aff20c3aee">glm::highp_i8</a></div><div class="ttdeci">int8 highp_i8</div><div class="ttdoc">High qualifier 8 bit signed integer type. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00033">fwd.hpp:33</a></div></div>
-<div class="ttc" id="a00304_html_ga50265a202fbfe0a25fc70066c31d9336"><div class="ttname"><a href="a00304.html#ga50265a202fbfe0a25fc70066c31d9336">glm::lowp_f64mat2x4</a></div><div class="ttdeci">mat&lt; 2, 4, f64, lowp &gt; lowp_f64mat2x4</div><div class="ttdoc">Low double-qualifier floating-point 2x4 matrix. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00752">fwd.hpp:752</a></div></div>
-<div class="ttc" id="a00304_html_gade8d1edfb23996ab6c622e65e3893271"><div class="ttname"><a href="a00304.html#gade8d1edfb23996ab6c622e65e3893271">glm::lowp_f64mat3x4</a></div><div class="ttdeci">mat&lt; 3, 4, f64, lowp &gt; lowp_f64mat3x4</div><div class="ttdoc">Low double-qualifier floating-point 3x4 matrix. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00755">fwd.hpp:755</a></div></div>
-<div class="ttc" id="a00282_html_ga868e8e4470a3ef97c7ee3032bf90dc79"><div class="ttname"><a href="a00282.html#ga868e8e4470a3ef97c7ee3032bf90dc79">glm::lowp_vec3</a></div><div class="ttdeci">vec&lt; 3, float, lowp &gt; lowp_vec3</div><div class="ttdoc">3 components vector of low single-qualifier floating-point numbers. </div><div class="ttdef"><b>Definition:</b> <a href="a00211_source.html#l00028">vector_float3_precision.hpp:28</a></div></div>
-<div class="ttc" id="a00284_html_ga6454b3a26ea30f69de8e44c08a63d1b7"><div class="ttname"><a href="a00284.html#ga6454b3a26ea30f69de8e44c08a63d1b7">glm::highp_mat3x4</a></div><div class="ttdeci">mat&lt; 3, 4, float, highp &gt; highp_mat3x4</div><div class="ttdoc">3 columns of 4 components matrix of single-precision floating-point numbers using high precision arit...</div><div class="ttdef"><b>Definition:</b> <a href="a00093_source.html#l00028">matrix_float3x4_precision.hpp:28</a></div></div>
-<div class="ttc" id="a00284_html_ga2dedee030500865267cd5851c00c139d"><div class="ttname"><a href="a00284.html#ga2dedee030500865267cd5851c00c139d">glm::lowp_mat4</a></div><div class="ttdeci">mat&lt; 4, 4, float, lowp &gt; lowp_mat4</div><div class="ttdoc">4 columns of 4 components matrix of single-precision floating-point numbers using low precision arith...</div><div class="ttdef"><b>Definition:</b> <a href="a00099_source.html#l00016">matrix_float4x4_precision.hpp:16</a></div></div>
-<div class="ttc" id="a00304_html_gacf1ded173e1e2d049c511d095b259e21"><div class="ttname"><a href="a00304.html#gacf1ded173e1e2d049c511d095b259e21">glm::mediump_i8</a></div><div class="ttdeci">int8 mediump_i8</div><div class="ttdoc">Medium qualifier 8 bit signed integer type. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00032">fwd.hpp:32</a></div></div>
-<div class="ttc" id="a00304_html_ga73c6abb280a45feeff60f9accaee91f3"><div class="ttname"><a href="a00304.html#ga73c6abb280a45feeff60f9accaee91f3">glm::highp_int64_t</a></div><div class="ttdeci">int64 highp_int64_t</div><div class="ttdoc">High qualifier 64 bit signed integer type. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00084">fwd.hpp:84</a></div></div>
-<div class="ttc" id="a00304_html_gaee4da0e9fbd8cfa2f89cb80889719dc3"><div class="ttname"><a href="a00304.html#gaee4da0e9fbd8cfa2f89cb80889719dc3">glm::f32mat4x4</a></div><div class="ttdeci">mat&lt; 4, 4, f32, defaultp &gt; f32mat4x4</div><div class="ttdoc">Single-qualifier floating-point 4x4 matrix. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00708">fwd.hpp:708</a></div></div>
-<div class="ttc" id="a00304_html_gaa4947bc8b47c72fceea9bda730ecf603"><div class="ttname"><a href="a00304.html#gaa4947bc8b47c72fceea9bda730ecf603">glm::float32_t</a></div><div class="ttdeci">float float32_t</div><div class="ttdoc">Default 32 bit single-qualifier floating-point scalar. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00160">fwd.hpp:160</a></div></div>
-<div class="ttc" id="a00304_html_ga04100c76f7d55a0dd0983ccf05142bff"><div class="ttname"><a href="a00304.html#ga04100c76f7d55a0dd0983ccf05142bff">glm::f32mat2x2</a></div><div class="ttdeci">mat&lt; 2, 2, f32, defaultp &gt; f32mat2x2</div><div class="ttdoc">Single-qualifier floating-point 1x1 matrix. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00700">fwd.hpp:700</a></div></div>
-<div class="ttc" id="a00304_html_gab485c48f06a4fdd6b8d58d343bb49f3c"><div class="ttname"><a href="a00304.html#gab485c48f06a4fdd6b8d58d343bb49f3c">glm::lowp_i64vec2</a></div><div class="ttdeci">vec&lt; 2, i64, lowp &gt; lowp_i64vec2</div><div class="ttdoc">Low qualifier 64 bit signed integer vector of 2 components type. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00283">fwd.hpp:283</a></div></div>
-<div class="ttc" id="a00304_html_gacc6bf0209dda0c7c14851a646071c974"><div class="ttname"><a href="a00304.html#gacc6bf0209dda0c7c14851a646071c974">glm::lowp_f32mat2x4</a></div><div class="ttdeci">mat&lt; 2, 4, f32, lowp &gt; lowp_f32mat2x4</div><div class="ttdoc">Low single-qualifier floating-point 2x4 matrix. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00672">fwd.hpp:672</a></div></div>
-<div class="ttc" id="a00282_html_gaee663ff64429443ab07a5327074192f6"><div class="ttname"><a href="a00282.html#gaee663ff64429443ab07a5327074192f6">glm::highp_bvec4</a></div><div class="ttdeci">vec&lt; 4, bool, highp &gt; highp_bvec4</div><div class="ttdoc">4 components vector of high qualifier bool numbers. </div><div class="ttdef"><b>Definition:</b> <a href="a00196_source.html#l00016">vector_bool4_precision.hpp:16</a></div></div>
-<div class="ttc" id="a00304_html_ga2171d9dc1fefb1c82e2817f45b622eac"><div class="ttname"><a href="a00304.html#ga2171d9dc1fefb1c82e2817f45b622eac">glm::uint32_t</a></div><div class="ttdeci">uint32 uint32_t</div><div class="ttdoc">Default qualifier 32 bit unsigned integer type. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00129">fwd.hpp:129</a></div></div>
-<div class="ttc" id="a00304_html_ga24f9ef3263b1638564713892cc37981f"><div class="ttname"><a href="a00304.html#ga24f9ef3263b1638564713892cc37981f">glm::highp_f32mat3</a></div><div class="ttdeci">mat&lt; 3, 3, f32, highp &gt; highp_f32mat3</div><div class="ttdoc">High single-qualifier floating-point 3x3 matrix. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00549">fwd.hpp:549</a></div></div>
-<div class="ttc" id="a00304_html_ga84d88a6e3a54ccd2b67e195af4a4c23e"><div class="ttname"><a href="a00304.html#ga84d88a6e3a54ccd2b67e195af4a4c23e">glm::mediump_f64mat3x3</a></div><div class="ttdeci">mat&lt; 3, 3, f64, mediump &gt; mediump_f64mat3x3</div><div class="ttdoc">Medium double-qualifier floating-point 3x3 matrix. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00764">fwd.hpp:764</a></div></div>
-<div class="ttc" id="a00281_html_ga0b6123e03653cc1bbe366fc55238a934"><div class="ttname"><a href="a00281.html#ga0b6123e03653cc1bbe366fc55238a934">glm::bvec2</a></div><div class="ttdeci">vec&lt; 2, bool, defaultp &gt; bvec2</div><div class="ttdoc">2 components vector of boolean. </div><div class="ttdef"><b>Definition:</b> <a href="a00191_source.html#l00015">vector_bool2.hpp:15</a></div></div>
-<div class="ttc" id="a00281_html_gac215a35481a6597d1bf622a382e9d6e2"><div class="ttname"><a href="a00281.html#gac215a35481a6597d1bf622a382e9d6e2">glm::vec4</a></div><div class="ttdeci">vec&lt; 4, float, defaultp &gt; vec4</div><div class="ttdoc">4 components vector of single-precision floating-point numbers. </div><div class="ttdef"><b>Definition:</b> <a href="a00212_source.html#l00015">vector_float4.hpp:15</a></div></div>
-<div class="ttc" id="a00304_html_gaecc7082561fc9028b844b6cf3d305d36"><div class="ttname"><a href="a00304.html#gaecc7082561fc9028b844b6cf3d305d36">glm::u8</a></div><div class="ttdeci">uint8 u8</div><div class="ttdoc">Default qualifier 8 bit unsigned integer type. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00092">fwd.hpp:92</a></div></div>
-<div class="ttc" id="a00304_html_ga31e070ea3bdee623e6e18a61ba5718b1"><div class="ttname"><a href="a00304.html#ga31e070ea3bdee623e6e18a61ba5718b1">glm::highp_i32vec3</a></div><div class="ttdeci">vec&lt; 3, i32, highp &gt; highp_i32vec3</div><div class="ttdoc">High qualifier 32 bit signed integer vector of 3 components type. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00274">fwd.hpp:274</a></div></div>
-<div class="ttc" id="a00304_html_gaacdc525d6f7bddb3ae95d5c311bd06a1"><div class="ttname"><a href="a00304.html#gaacdc525d6f7bddb3ae95d5c311bd06a1">glm::float32</a></div><div class="ttdeci">float float32</div><div class="ttdoc">Single-qualifier floating-point scalar. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00155">fwd.hpp:155</a></div></div>
-<div class="ttc" id="a00304_html_ga713c796c54875cf4092d42ff9d9096b0"><div class="ttname"><a href="a00304.html#ga713c796c54875cf4092d42ff9d9096b0">glm::fvec4</a></div><div class="ttdeci">vec&lt; 4, f32, defaultp &gt; fvec4</div><div class="ttdoc">Single-qualifier floating-point vector of 4 components. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00444">fwd.hpp:444</a></div></div>
-<div class="ttc" id="a00304_html_ga6a9d71cc62745302f70422b7dc98755c"><div class="ttname"><a href="a00304.html#ga6a9d71cc62745302f70422b7dc98755c">glm::highp_i32vec1</a></div><div class="ttdeci">vec&lt; 1, i32, highp &gt; highp_i32vec1</div><div class="ttdoc">High qualifier 32 bit signed integer scalar type. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00272">fwd.hpp:272</a></div></div>
-<div class="ttc" id="a00284_html_ga86d6d4dbad92ffdcc759773340e15a97"><div class="ttname"><a href="a00284.html#ga86d6d4dbad92ffdcc759773340e15a97">glm::highp_dmat3</a></div><div class="ttdeci">mat&lt; 3, 3, double, highp &gt; highp_dmat3</div><div class="ttdoc">3 columns of 3 components matrix of double-precision floating-point numbers using medium precision ar...</div><div class="ttdef"><b>Definition:</b> <a href="a00072_source.html#l00028">matrix_double3x3_precision.hpp:28</a></div></div>
-<div class="ttc" id="a00304_html_ga4187f89f196505b40e63f516139511e5"><div class="ttname"><a href="a00304.html#ga4187f89f196505b40e63f516139511e5">glm::lowp_f32mat3</a></div><div class="ttdeci">mat&lt; 3, 3, f32, lowp &gt; lowp_f32mat3</div><div class="ttdoc">Low single-qualifier floating-point 3x3 matrix. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00541">fwd.hpp:541</a></div></div>
-<div class="ttc" id="a00304_html_ga08c05ba8ffb19f5d14ab584e1e9e9ee5"><div class="ttname"><a href="a00304.html#ga08c05ba8ffb19f5d14ab584e1e9e9ee5">glm::u16vec1</a></div><div class="ttdeci">vec&lt; 1, u16, defaultp &gt; u16vec1</div><div class="ttdoc">Default qualifier 16 bit unsigned integer scalar type. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00359">fwd.hpp:359</a></div></div>
-<div class="ttc" id="a00284_html_gade27f8324a16626cbce5d3e7da66b070"><div class="ttname"><a href="a00284.html#gade27f8324a16626cbce5d3e7da66b070">glm::lowp_mat2x4</a></div><div class="ttdeci">mat&lt; 2, 4, float, lowp &gt; lowp_mat2x4</div><div class="ttdoc">2 columns of 4 components matrix of single-precision floating-point numbers using low precision arith...</div><div class="ttdef"><b>Definition:</b> <a href="a00087_source.html#l00016">matrix_float2x4_precision.hpp:16</a></div></div>
-<div class="ttc" id="a00268_html_ga6221af17edc2d4477a4583d2cd53e569"><div class="ttname"><a href="a00268.html#ga6221af17edc2d4477a4583d2cd53e569">glm::dvec1</a></div><div class="ttdeci">vec&lt; 1, double, defaultp &gt; dvec1</div><div class="ttdoc">1 components vector of double-precision floating-point numbers. </div><div class="ttdef"><b>Definition:</b> <a href="a00198_source.html#l00028">vector_double1.hpp:28</a></div></div>
-<div class="ttc" id="a00304_html_ga7e80d927ff0a3861ced68dfff8a4020b"><div class="ttname"><a href="a00304.html#ga7e80d927ff0a3861ced68dfff8a4020b">glm::i8vec1</a></div><div class="ttdeci">vec&lt; 1, i8, defaultp &gt; i8vec1</div><div class="ttdoc">8 bit signed integer scalar type. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00237">fwd.hpp:237</a></div></div>
-<div class="ttc" id="a00304_html_ga13a221b910aa9eb1b04ca1c86e81015a"><div class="ttname"><a href="a00304.html#ga13a221b910aa9eb1b04ca1c86e81015a">glm::mediump_i32vec3</a></div><div class="ttdeci">vec&lt; 3, i32, mediump &gt; mediump_i32vec3</div><div class="ttdoc">Medium qualifier 32 bit signed integer vector of 3 components type. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00269">fwd.hpp:269</a></div></div>
-<div class="ttc" id="a00304_html_ga8b44026374982dcd1e52d22bac99247e"><div class="ttname"><a href="a00304.html#ga8b44026374982dcd1e52d22bac99247e">glm::i32vec2</a></div><div class="ttdeci">vec&lt; 2, i32, defaultp &gt; i32vec2</div><div class="ttdoc">32 bit signed integer vector of 2 components type. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00278">fwd.hpp:278</a></div></div>
-<div class="ttc" id="a00282_html_ga1e743764869efa9223c2bcefccedaddc"><div class="ttname"><a href="a00282.html#ga1e743764869efa9223c2bcefccedaddc">glm::mediump_bvec2</a></div><div class="ttdeci">vec&lt; 2, bool, mediump &gt; mediump_bvec2</div><div class="ttdoc">2 components vector of medium qualifier bool numbers. </div><div class="ttdef"><b>Definition:</b> <a href="a00192_source.html#l00022">vector_bool2_precision.hpp:22</a></div></div>
-<div class="ttc" id="a00304_html_ga7cac84b520a6b57f2fbd880d3d63c51b"><div class="ttname"><a href="a00304.html#ga7cac84b520a6b57f2fbd880d3d63c51b">glm::lowp_i16vec2</a></div><div class="ttdeci">vec&lt; 2, i16, lowp &gt; lowp_i16vec2</div><div class="ttdoc">Low qualifier 16 bit signed integer vector of 2 components type. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00243">fwd.hpp:243</a></div></div>
-<div class="ttc" id="a00282_html_gabc61976261c406520c7a8e4d946dc3f0"><div class="ttname"><a href="a00282.html#gabc61976261c406520c7a8e4d946dc3f0">glm::mediump_vec2</a></div><div class="ttdeci">vec&lt; 2, float, mediump &gt; mediump_vec2</div><div class="ttdoc">2 components vector of medium single-qualifier floating-point numbers. </div><div class="ttdef"><b>Definition:</b> <a href="a00209_source.html#l00022">vector_float2_precision.hpp:22</a></div></div>
-<div class="ttc" id="a00304_html_ga73a08ef5a74798f3a1a99250b5f86a7d"><div class="ttname"><a href="a00304.html#ga73a08ef5a74798f3a1a99250b5f86a7d">glm::mediump_u64vec2</a></div><div class="ttdeci">vec&lt; 2, u64, mediump &gt; mediump_u64vec2</div><div class="ttdoc">Medium qualifier 64 bit unsigned integer vector of 2 components type. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00390">fwd.hpp:390</a></div></div>
-<div class="ttc" id="a00304_html_ga9910927f3a4d1addb3da6a82542a8287"><div class="ttname"><a href="a00304.html#ga9910927f3a4d1addb3da6a82542a8287">glm::lowp_u8vec4</a></div><div class="ttdeci">vec&lt; 4, u8, lowp &gt; lowp_u8vec4</div><div class="ttdoc">Low qualifier 8 bit unsigned integer vector of 4 components type. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00327">fwd.hpp:327</a></div></div>
-<div class="ttc" id="a00304_html_gaab691ae40c37976d268d8cac0096e0e1"><div class="ttname"><a href="a00304.html#gaab691ae40c37976d268d8cac0096e0e1">glm::highp_f32mat3x3</a></div><div class="ttdeci">mat&lt; 3, 3, f32, highp &gt; highp_f32mat3x3</div><div class="ttdoc">High single-qualifier floating-point 3x3 matrix. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00694">fwd.hpp:694</a></div></div>
-<div class="ttc" id="a00304_html_ga8408cb76b6550ff01fa0a3024e7b68d2"><div class="ttname"><a href="a00304.html#ga8408cb76b6550ff01fa0a3024e7b68d2">glm::highp_u8vec1</a></div><div class="ttdeci">vec&lt; 1, u8, highp &gt; highp_u8vec1</div><div class="ttdoc">High qualifier 8 bit unsigned integer scalar type. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00334">fwd.hpp:334</a></div></div>
-<div class="ttc" id="a00304_html_gac4e00a26a2adb5f2c0a7096810df29e5"><div class="ttname"><a href="a00304.html#gac4e00a26a2adb5f2c0a7096810df29e5">glm::highp_uint8_t</a></div><div class="ttdeci">uint8 highp_uint8_t</div><div class="ttdoc">High qualifier 8 bit unsigned integer type. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00100">fwd.hpp:100</a></div></div>
-<div class="ttc" id="a00304_html_ga5d43ee8b5dbaa06c327b03b83682598a"><div class="ttname"><a href="a00304.html#ga5d43ee8b5dbaa06c327b03b83682598a">glm::mediump_u32vec4</a></div><div class="ttdeci">vec&lt; 4, u32, mediump &gt; mediump_u32vec4</div><div class="ttdoc">Medium qualifier 32 bit unsigned integer vector of 4 components type. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00372">fwd.hpp:372</a></div></div>
-<div class="ttc" id="a00304_html_gae5eb02d92b7d4605a4b7f37ae5cb2968"><div class="ttname"><a href="a00304.html#gae5eb02d92b7d4605a4b7f37ae5cb2968">glm::highp_f32mat2x2</a></div><div class="ttdeci">mat&lt; 2, 2, f32, highp &gt; highp_f32mat2x2</div><div class="ttdoc">High single-qualifier floating-point 1x1 matrix. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00690">fwd.hpp:690</a></div></div>
-<div class="ttc" id="a00304_html_ga61185c44c8cc0b25d9a0f67d8a267444"><div class="ttname"><a href="a00304.html#ga61185c44c8cc0b25d9a0f67d8a267444">glm::highp_f64vec4</a></div><div class="ttdeci">vec&lt; 4, f64, highp &gt; highp_f64vec4</div><div class="ttdoc">High double-qualifier floating-point vector of 4 components. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00499">fwd.hpp:499</a></div></div>
-<div class="ttc" id="a00284_html_gae367ea93c4ad8a7c101dd27b8b2b04ce"><div class="ttname"><a href="a00284.html#gae367ea93c4ad8a7c101dd27b8b2b04ce">glm::highp_dmat3x3</a></div><div class="ttdeci">mat&lt; 3, 3, double, highp &gt; highp_dmat3x3</div><div class="ttdoc">3 columns of 3 components matrix of double-precision floating-point numbers using medium precision ar...</div><div class="ttdef"><b>Definition:</b> <a href="a00072_source.html#l00046">matrix_double3x3_precision.hpp:46</a></div></div>
-<div class="ttc" id="a00304_html_ga150dc47e31c6b8cf8461803c8d56f7bd"><div class="ttname"><a href="a00304.html#ga150dc47e31c6b8cf8461803c8d56f7bd">glm::lowp_u8vec3</a></div><div class="ttdeci">vec&lt; 3, u8, lowp &gt; lowp_u8vec3</div><div class="ttdoc">Low qualifier 8 bit unsigned integer vector of 3 components type. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00326">fwd.hpp:326</a></div></div>
-<div class="ttc" id="a00304_html_ga6906e1ef0b34064b4b675489c5c38725"><div class="ttname"><a href="a00304.html#ga6906e1ef0b34064b4b675489c5c38725">glm::highp_f32</a></div><div class="ttdeci">float highp_f32</div><div class="ttdoc">High 32 bit single-qualifier floating-point scalar. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00149">fwd.hpp:149</a></div></div>
-<div class="ttc" id="a00304_html_ga30652709815ad9404272a31957daa59e"><div class="ttname"><a href="a00304.html#ga30652709815ad9404272a31957daa59e">glm::mediump_uint64</a></div><div class="ttdeci">uint64 mediump_uint64</div><div class="ttdoc">Medium qualifier 64 bit unsigned integer type. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00137">fwd.hpp:137</a></div></div>
-<div class="ttc" id="a00304_html_ga2c71c8bd9e2fe7d2e93ca250d8b6157f"><div class="ttname"><a href="a00304.html#ga2c71c8bd9e2fe7d2e93ca250d8b6157f">glm::highp_int32_t</a></div><div class="ttdeci">int32 highp_int32_t</div><div class="ttdoc">32 bit signed integer type. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00070">fwd.hpp:70</a></div></div>
-<div class="ttc" id="a00304_html_ga961ccb34cd1a5654c772c8709e001dc5"><div class="ttname"><a href="a00304.html#ga961ccb34cd1a5654c772c8709e001dc5">glm::lowp_f32mat2x3</a></div><div class="ttdeci">mat&lt; 2, 3, f32, lowp &gt; lowp_f32mat2x3</div><div class="ttdoc">Low single-qualifier floating-point 2x3 matrix. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00671">fwd.hpp:671</a></div></div>
-<div class="ttc" id="a00304_html_gaa7a1ddca75c5f629173bf4772db7a635"><div class="ttname"><a href="a00304.html#gaa7a1ddca75c5f629173bf4772db7a635">glm::f64vec3</a></div><div class="ttdeci">vec&lt; 3, f64, defaultp &gt; f64vec3</div><div class="ttdoc">Double-qualifier floating-point vector of 3 components. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00503">fwd.hpp:503</a></div></div>
-<div class="ttc" id="a00304_html_gac9ba20234b0c3751d45ce575fc71e551"><div class="ttname"><a href="a00304.html#gac9ba20234b0c3751d45ce575fc71e551">glm::mediump_u16vec3</a></div><div class="ttdeci">vec&lt; 3, u16, mediump &gt; mediump_u16vec3</div><div class="ttdoc">Medium qualifier 16 bit unsigned integer vector of 3 components type. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00351">fwd.hpp:351</a></div></div>
-<div class="ttc" id="a00304_html_gac87278e0c702ba8afff76316d4eeb769"><div class="ttname"><a href="a00304.html#gac87278e0c702ba8afff76316d4eeb769">glm::f64mat2x4</a></div><div class="ttdeci">mat&lt; 2, 4, f64, defaultp &gt; f64mat2x4</div><div class="ttdoc">Double-qualifier floating-point 2x4 matrix. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00786">fwd.hpp:786</a></div></div>
-<div class="ttc" id="a00250_html_gacdf73b1f7fd8f5a0c79a3934e99c1a14"><div class="ttname"><a href="a00250.html#gacdf73b1f7fd8f5a0c79a3934e99c1a14">glm::mediump_dquat</a></div><div class="ttdeci">qua&lt; double, mediump &gt; mediump_dquat</div><div class="ttdoc">Quaternion of medium double-qualifier floating-point numbers using high precision arithmetic in term ...</div><div class="ttdef"><b>Definition:</b> <a href="a00129_source.html#l00033">quaternion_double_precision.hpp:33</a></div></div>
-<div class="ttc" id="a00304_html_ga856f3905ee7cc2e4890a8a1d56c150be"><div class="ttname"><a href="a00304.html#ga856f3905ee7cc2e4890a8a1d56c150be">glm::f32mat3</a></div><div class="ttdeci">mat&lt; 3, 3, f32, defaultp &gt; f32mat3</div><div class="ttdoc">Single-qualifier floating-point 3x3 matrix. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00553">fwd.hpp:553</a></div></div>
-<div class="ttc" id="a00304_html_ga4fd527644cccbca4cb205320eab026f3"><div class="ttname"><a href="a00304.html#ga4fd527644cccbca4cb205320eab026f3">glm::mediump_f64mat2x2</a></div><div class="ttdeci">mat&lt; 2, 2, f64, mediump &gt; mediump_f64mat2x2</div><div class="ttdoc">Medium double-qualifier floating-point 1x1 matrix. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00760">fwd.hpp:760</a></div></div>
-<div class="ttc" id="a00269_html_ga77c22c4426da3a6865c88d3fc907e3fe"><div class="ttname"><a href="a00269.html#ga77c22c4426da3a6865c88d3fc907e3fe">glm::highp_dvec1</a></div><div class="ttdeci">vec&lt; 1, double, highp &gt; highp_dvec1</div><div class="ttdoc">1 component vector of double-precision floating-point numbers using high precision arithmetic in term...</div><div class="ttdef"><b>Definition:</b> <a href="a00199_source.html#l00027">vector_double1_precision.hpp:27</a></div></div>
-<div class="ttc" id="a00283_html_gab91887d7565059dac640e3a1921c914a"><div class="ttname"><a href="a00283.html#gab91887d7565059dac640e3a1921c914a">glm::mat3x3</a></div><div class="ttdeci">mat&lt; 3, 3, float, defaultp &gt; mat3x3</div><div class="ttdoc">3 columns of 3 components matrix of single-precision floating-point numbers. </div><div class="ttdef"><b>Definition:</b> <a href="a00090_source.html#l00015">matrix_float3x3.hpp:15</a></div></div>
-<div class="ttc" id="a00304_html_ga2af9490085ae3bdf36a544e9dd073610"><div class="ttname"><a href="a00304.html#ga2af9490085ae3bdf36a544e9dd073610">glm::mediump_u64</a></div><div class="ttdeci">uint64 mediump_u64</div><div class="ttdoc">Medium qualifier 64 bit unsigned integer type. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00132">fwd.hpp:132</a></div></div>
-<div class="ttc" id="a00284_html_gab8531bc3f269aa45835cd6e1972b7fc7"><div class="ttname"><a href="a00284.html#gab8531bc3f269aa45835cd6e1972b7fc7">glm::mediump_mat4</a></div><div class="ttdeci">mat&lt; 4, 4, float, mediump &gt; mediump_mat4</div><div class="ttdoc">4 columns of 4 components matrix of single-precision floating-point numbers using medium precision ar...</div><div class="ttdef"><b>Definition:</b> <a href="a00099_source.html#l00022">matrix_float4x4_precision.hpp:22</a></div></div>
-<div class="ttc" id="a00304_html_ga7a18659438828f91ccca28f1a1e067b4"><div class="ttname"><a href="a00304.html#ga7a18659438828f91ccca28f1a1e067b4">glm::highp_i16vec4</a></div><div class="ttdeci">vec&lt; 4, i16, highp &gt; highp_i16vec4</div><div class="ttdoc">High qualifier 16 bit signed integer vector of 4 components type. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00255">fwd.hpp:255</a></div></div>
-<div class="ttc" id="a00304_html_ga5803cb9ae26399762d8bba9e0b2fc09f"><div class="ttname"><a href="a00304.html#ga5803cb9ae26399762d8bba9e0b2fc09f">glm::lowp_fmat4</a></div><div class="ttdeci">mat&lt; 4, 4, f32, lowp &gt; lowp_fmat4</div><div class="ttdoc">Low single-qualifier floating-point 4x4 matrix. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00526">fwd.hpp:526</a></div></div>
-<div class="ttc" id="a00304_html_ga94f74851fce338549c705b5f0d601c4f"><div class="ttname"><a href="a00304.html#ga94f74851fce338549c705b5f0d601c4f">glm::mediump_u32vec2</a></div><div class="ttdeci">vec&lt; 2, u32, mediump &gt; mediump_u32vec2</div><div class="ttdoc">Medium qualifier 32 bit unsigned integer vector of 2 components type. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00370">fwd.hpp:370</a></div></div>
-<div class="ttc" id="a00304_html_ga41bdabea6e589029659331ba47eb78c1"><div class="ttname"><a href="a00304.html#ga41bdabea6e589029659331ba47eb78c1">glm::highp_u64vec3</a></div><div class="ttdeci">vec&lt; 3, u64, highp &gt; highp_u64vec3</div><div class="ttdoc">High qualifier 64 bit unsigned integer vector of 3 components type. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00396">fwd.hpp:396</a></div></div>
-<div class="ttc" id="a00281_html_ga2f6d9ec3ae14813ade37d6aee3715fdb"><div class="ttname"><a href="a00281.html#ga2f6d9ec3ae14813ade37d6aee3715fdb">glm::uvec2</a></div><div class="ttdeci">vec&lt; 2, unsigned int, defaultp &gt; uvec2</div><div class="ttdoc">2 components vector of unsigned integer numbers. </div><div class="ttdef"><b>Definition:</b> <a href="a00228_source.html#l00015">vector_uint2.hpp:15</a></div></div>
-<div class="ttc" id="a00304_html_ga504ce1631cb2ac02fcf1d44d8c2aa126"><div class="ttname"><a href="a00304.html#ga504ce1631cb2ac02fcf1d44d8c2aa126">glm::lowp_u16</a></div><div class="ttdeci">uint16 lowp_u16</div><div class="ttdoc">Low qualifier 16 bit unsigned integer type. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00103">fwd.hpp:103</a></div></div>
-<div class="ttc" id="a00304_html_gab69ef9cbc2a9214bf5596c528c801b72"><div class="ttname"><a href="a00304.html#gab69ef9cbc2a9214bf5596c528c801b72">glm::lowp_i16vec3</a></div><div class="ttdeci">vec&lt; 3, i16, lowp &gt; lowp_i16vec3</div><div class="ttdoc">Low qualifier 16 bit signed integer vector of 3 components type. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00244">fwd.hpp:244</a></div></div>
-<div class="ttc" id="a00304_html_gac0253db6c3d3bae1f591676307a9dd8c"><div class="ttname"><a href="a00304.html#gac0253db6c3d3bae1f591676307a9dd8c">glm::lowp_u16vec3</a></div><div class="ttdeci">vec&lt; 3, u16, lowp &gt; lowp_u16vec3</div><div class="ttdoc">Low qualifier 16 bit unsigned integer vector of 3 components type. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00346">fwd.hpp:346</a></div></div>
-<div class="ttc" id="a00276_html_gac3bdd96183d23876c58a1424585fefe7"><div class="ttname"><a href="a00276.html#gac3bdd96183d23876c58a1424585fefe7">glm::uvec1</a></div><div class="ttdeci">vec&lt; 1, unsigned int, defaultp &gt; uvec1</div><div class="ttdoc">1 component vector of unsigned integer numbers. </div><div class="ttdef"><b>Definition:</b> <a href="a00226_source.html#l00028">vector_uint1.hpp:28</a></div></div>
-<div class="ttc" id="a00304_html_gaf739a2cd7b81783a43148b53e40d983b"><div class="ttname"><a href="a00304.html#gaf739a2cd7b81783a43148b53e40d983b">glm::lowp_f32vec3</a></div><div class="ttdeci">vec&lt; 3, f32, lowp &gt; lowp_f32vec3</div><div class="ttdoc">Low single-qualifier floating-point vector of 3 components. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00448">fwd.hpp:448</a></div></div>
-<div class="ttc" id="a00304_html_gabf28443ce0cc0959077ec39b21f32c39"><div class="ttname"><a href="a00304.html#gabf28443ce0cc0959077ec39b21f32c39">glm::highp_fmat4</a></div><div class="ttdeci">mat&lt; 4, 4, f32, highp &gt; highp_fmat4</div><div class="ttdoc">High single-qualifier floating-point 4x4 matrix. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00534">fwd.hpp:534</a></div></div>
-<div class="ttc" id="a00304_html_ga83079315e230e8f39728f4bf0d2f9a9b"><div class="ttname"><a href="a00304.html#ga83079315e230e8f39728f4bf0d2f9a9b">glm::lowp_fmat3</a></div><div class="ttdeci">mat&lt; 3, 3, f32, lowp &gt; lowp_fmat3</div><div class="ttdoc">Low single-qualifier floating-point 3x3 matrix. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00525">fwd.hpp:525</a></div></div>
-<div class="ttc" id="a00304_html_ga0336abc2604dd2c20c30e036454b64f8"><div class="ttname"><a href="a00304.html#ga0336abc2604dd2c20c30e036454b64f8">glm::highp_i16</a></div><div class="ttdeci">int16 highp_i16</div><div class="ttdoc">High qualifier 16 bit signed integer type. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00047">fwd.hpp:47</a></div></div>
-<div class="ttc" id="a00304_html_gaa40c03d52dbfbfaf03e75773b9606ff3"><div class="ttname"><a href="a00304.html#gaa40c03d52dbfbfaf03e75773b9606ff3">glm::mediump_f32quat</a></div><div class="ttdeci">qua&lt; f32, mediump &gt; mediump_f32quat</div><div class="ttdoc">Medium single-qualifier floating-point quaternion. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00803">fwd.hpp:803</a></div></div>
-<div class="ttc" id="a00304_html_gad0549c902a96a7164e4ac858d5f39dbf"><div class="ttname"><a href="a00304.html#gad0549c902a96a7164e4ac858d5f39dbf">glm::highp_int8</a></div><div class="ttdeci">int8 highp_int8</div><div class="ttdoc">High qualifier 8 bit signed integer type. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00038">fwd.hpp:38</a></div></div>
-<div class="ttc" id="a00304_html_gae52e2b7077a9ff928a06ab5ce600b81e"><div class="ttname"><a href="a00304.html#gae52e2b7077a9ff928a06ab5ce600b81e">glm::f64mat4x4</a></div><div class="ttdeci">mat&lt; 4, 4, f64, defaultp &gt; f64mat4x4</div><div class="ttdoc">Double-qualifier floating-point 4x4 matrix. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00788">fwd.hpp:788</a></div></div>
-<div class="ttc" id="a00304_html_ga4295048a78bdf46b8a7de77ec665b497"><div class="ttname"><a href="a00304.html#ga4295048a78bdf46b8a7de77ec665b497">glm::fmat4x3</a></div><div class="ttdeci">mat&lt; 4, 3, f32, defaultp &gt; fmat4x3</div><div class="ttdoc">Single-qualifier floating-point 4x3 matrix. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00665">fwd.hpp:665</a></div></div>
-<div class="ttc" id="a00304_html_gaab217601c74974a84acbca428123ecf7"><div class="ttname"><a href="a00304.html#gaab217601c74974a84acbca428123ecf7">glm::lowp_fmat2x4</a></div><div class="ttdeci">mat&lt; 2, 4, f32, lowp &gt; lowp_fmat2x4</div><div class="ttdoc">Low single-qualifier floating-point 2x4 matrix. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00632">fwd.hpp:632</a></div></div>
-<div class="ttc" id="a00304_html_ga609bf0ace941d6ab1bb2f9522a04e546"><div class="ttname"><a href="a00304.html#ga609bf0ace941d6ab1bb2f9522a04e546">glm::highp_f64mat3</a></div><div class="ttdeci">mat&lt; 3, 3, f64, highp &gt; highp_f64mat3</div><div class="ttdoc">High double-qualifier floating-point 3x3 matrix. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00581">fwd.hpp:581</a></div></div>
-<div class="ttc" id="a00304_html_ga6dd1c1618378c6f94d522a61c28773c9"><div class="ttname"><a href="a00304.html#ga6dd1c1618378c6f94d522a61c28773c9">glm::mediump_i8vec3</a></div><div class="ttdeci">vec&lt; 3, i8, mediump &gt; mediump_i8vec3</div><div class="ttdoc">Medium qualifier 8 bit signed integer vector of 3 components type. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00229">fwd.hpp:229</a></div></div>
-<div class="ttc" id="a00304_html_gab1b1c9e8667902b78b2c330e4d383a61"><div class="ttname"><a href="a00304.html#gab1b1c9e8667902b78b2c330e4d383a61">glm::highp_f32vec1</a></div><div class="ttdeci">vec&lt; 1, f32, highp &gt; highp_f32vec1</div><div class="ttdoc">High single-qualifier floating-point vector of 1 component. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00456">fwd.hpp:456</a></div></div>
-<div class="ttc" id="a00304_html_gae2f43ace6b5b33ab49516d9e40af1845"><div class="ttname"><a href="a00304.html#gae2f43ace6b5b33ab49516d9e40af1845">glm::lowp_i8vec3</a></div><div class="ttdeci">vec&lt; 3, i8, lowp &gt; lowp_i8vec3</div><div class="ttdoc">Low qualifier 8 bit signed integer vector of 3 components type. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00224">fwd.hpp:224</a></div></div>
-<div class="ttc" id="a00284_html_ga47bd2aae4701ee2fc865674a9df3d7a6"><div class="ttname"><a href="a00284.html#ga47bd2aae4701ee2fc865674a9df3d7a6">glm::mediump_dmat3x3</a></div><div class="ttdeci">mat&lt; 3, 3, double, mediump &gt; mediump_dmat3x3</div><div class="ttdoc">3 columns of 3 components matrix of double-precision floating-point numbers using medium precision ar...</div><div class="ttdef"><b>Definition:</b> <a href="a00072_source.html#l00040">matrix_double3x3_precision.hpp:40</a></div></div>
-<div class="ttc" id="a00304_html_gae731613b25db3a5ef5a05d21e57a57d3"><div class="ttname"><a href="a00304.html#gae731613b25db3a5ef5a05d21e57a57d3">glm::lowp_f64mat4x3</a></div><div class="ttdeci">mat&lt; 4, 3, f64, lowp &gt; lowp_f64mat4x3</div><div class="ttdoc">Low double-qualifier floating-point 4x3 matrix. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00757">fwd.hpp:757</a></div></div>
-<div class="ttc" id="a00304_html_ga4f15b41aa24b11cc42ad5798c04a2325"><div class="ttname"><a href="a00304.html#ga4f15b41aa24b11cc42ad5798c04a2325">glm::highp_u64vec4</a></div><div class="ttdeci">vec&lt; 4, u64, highp &gt; highp_u64vec4</div><div class="ttdoc">High qualifier 64 bit unsigned integer vector of 4 components type. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00397">fwd.hpp:397</a></div></div>
-<div class="ttc" id="a00284_html_ga5aae49834d02732942f44e61d7bce136"><div class="ttname"><a href="a00284.html#ga5aae49834d02732942f44e61d7bce136">glm::mediump_mat3</a></div><div class="ttdeci">mat&lt; 3, 3, float, mediump &gt; mediump_mat3</div><div class="ttdoc">3 columns of 3 components matrix of single-precision floating-point numbers using medium precision ar...</div><div class="ttdef"><b>Definition:</b> <a href="a00091_source.html#l00022">matrix_float3x3_precision.hpp:22</a></div></div>
-<div class="ttc" id="a00304_html_ga89930533646b30d021759298aa6bf04a"><div class="ttname"><a href="a00304.html#ga89930533646b30d021759298aa6bf04a">glm::fvec3</a></div><div class="ttdeci">vec&lt; 3, f32, defaultp &gt; fvec3</div><div class="ttdoc">Single-qualifier floating-point vector of 3 components. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00443">fwd.hpp:443</a></div></div>
-<div class="ttc" id="a00304_html_ga2996630ba7b10535af8e065cf326f761"><div class="ttname"><a href="a00304.html#ga2996630ba7b10535af8e065cf326f761">glm::i16vec2</a></div><div class="ttdeci">vec&lt; 2, i16, defaultp &gt; i16vec2</div><div class="ttdoc">16 bit signed integer vector of 2 components type. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00258">fwd.hpp:258</a></div></div>
-<div class="ttc" id="a00266_html_ga7b4ccb989ba179fa44f7b0879c782621"><div class="ttname"><a href="a00266.html#ga7b4ccb989ba179fa44f7b0879c782621">glm::mediump_bvec1</a></div><div class="ttdeci">vec&lt; 1, bool, mediump &gt; mediump_bvec1</div><div class="ttdoc">1 component vector of bool values. </div><div class="ttdef"><b>Definition:</b> <a href="a00190_source.html#l00028">vector_bool1_precision.hpp:28</a></div></div>
-<div class="ttc" id="a00284_html_ga708bc5b91bbfedd21debac8dcf2a64cd"><div class="ttname"><a href="a00284.html#ga708bc5b91bbfedd21debac8dcf2a64cd">glm::lowp_dmat4</a></div><div class="ttdeci">mat&lt; 4, 4, double, lowp &gt; lowp_dmat4</div><div class="ttdoc">4 columns of 4 components matrix of double-precision floating-point numbers using low precision arith...</div><div class="ttdef"><b>Definition:</b> <a href="a00080_source.html#l00016">matrix_double4x4_precision.hpp:16</a></div></div>
-<div class="ttc" id="a00284_html_ga6543eeeb64f48d79a0b96484308c50f0"><div class="ttname"><a href="a00284.html#ga6543eeeb64f48d79a0b96484308c50f0">glm::highp_dmat3x4</a></div><div class="ttdeci">mat&lt; 3, 4, double, highp &gt; highp_dmat3x4</div><div class="ttdoc">3 columns of 4 components matrix of double-precision floating-point numbers using medium precision ar...</div><div class="ttdef"><b>Definition:</b> <a href="a00074_source.html#l00028">matrix_double3x4_precision.hpp:28</a></div></div>
-<div class="ttc" id="a00304_html_ga239b96198771b7add8eea7e6b59840c0"><div class="ttname"><a href="a00304.html#ga239b96198771b7add8eea7e6b59840c0">glm::f32mat4x3</a></div><div class="ttdeci">mat&lt; 4, 3, f32, defaultp &gt; f32mat4x3</div><div class="ttdoc">Single-qualifier floating-point 4x3 matrix. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00705">fwd.hpp:705</a></div></div>
-<div class="ttc" id="a00304_html_gab12383ed6ac7595ed6fde4d266c58425"><div class="ttname"><a href="a00304.html#gab12383ed6ac7595ed6fde4d266c58425">glm::f32mat2</a></div><div class="ttdeci">mat&lt; 2, 2, f32, defaultp &gt; f32mat2</div><div class="ttdoc">Single-qualifier floating-point 1x1 matrix. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00552">fwd.hpp:552</a></div></div>
-<div class="ttc" id="a00304_html_ga35223623e9ccebd8a281873b71b7d213"><div class="ttname"><a href="a00304.html#ga35223623e9ccebd8a281873b71b7d213">glm::mediump_fmat2x4</a></div><div class="ttdeci">mat&lt; 2, 4, f32, mediump &gt; mediump_fmat2x4</div><div class="ttdoc">Medium single-qualifier floating-point 2x4 matrix. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00642">fwd.hpp:642</a></div></div>
-<div class="ttc" id="a00304_html_ga429c201b3e92c90b4ef4356f2be52ee1"><div class="ttname"><a href="a00304.html#ga429c201b3e92c90b4ef4356f2be52ee1">glm::mediump_u16vec2</a></div><div class="ttdeci">vec&lt; 2, u16, mediump &gt; mediump_u16vec2</div><div class="ttdoc">Medium qualifier 16 bit unsigned integer vector of 2 components type. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00350">fwd.hpp:350</a></div></div>
-<div class="ttc" id="a00304_html_ga4143d129898f91545948c46859adce44"><div class="ttname"><a href="a00304.html#ga4143d129898f91545948c46859adce44">glm::lowp_f32mat4x4</a></div><div class="ttdeci">mat&lt; 4, 4, f32, lowp &gt; lowp_f32mat4x4</div><div class="ttdoc">Low single-qualifier floating-point 4x4 matrix. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00678">fwd.hpp:678</a></div></div>
-<div class="ttc" id="a00282_html_ga752ee45136011301b64afd8c310c47a4"><div class="ttname"><a href="a00282.html#ga752ee45136011301b64afd8c310c47a4">glm::lowp_uvec2</a></div><div class="ttdeci">vec&lt; 2, unsigned int, lowp &gt; lowp_uvec2</div><div class="ttdoc">2 components vector of low qualifier unsigned integer numbers. </div><div class="ttdef"><b>Definition:</b> <a href="a00229_source.html#l00028">vector_uint2_precision.hpp:28</a></div></div>
-<div class="ttc" id="a00284_html_ga6271ebc85ed778ccc15458c3d86fc854"><div class="ttname"><a href="a00284.html#ga6271ebc85ed778ccc15458c3d86fc854">glm::lowp_mat3</a></div><div class="ttdeci">mat&lt; 3, 3, float, lowp &gt; lowp_mat3</div><div class="ttdoc">3 columns of 3 components matrix of single-precision floating-point numbers using low precision arith...</div><div class="ttdef"><b>Definition:</b> <a href="a00091_source.html#l00016">matrix_float3x3_precision.hpp:16</a></div></div>
-<div class="ttc" id="a00304_html_gae6f63fa38635431e51a8f2602f15c566"><div class="ttname"><a href="a00304.html#gae6f63fa38635431e51a8f2602f15c566">glm::lowp_u8vec2</a></div><div class="ttdeci">vec&lt; 2, u8, lowp &gt; lowp_u8vec2</div><div class="ttdoc">Low qualifier 8 bit unsigned integer vector of 2 components type. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00325">fwd.hpp:325</a></div></div>
-<div class="ttc" id="a00282_html_ga108086730d086b7f6f7a033955dfb9c3"><div class="ttname"><a href="a00282.html#ga108086730d086b7f6f7a033955dfb9c3">glm::lowp_dvec2</a></div><div class="ttdeci">vec&lt; 2, double, lowp &gt; lowp_dvec2</div><div class="ttdoc">2 components vector of low double-qualifier floating-point numbers. </div><div class="ttdef"><b>Definition:</b> <a href="a00201_source.html#l00028">vector_double2_precision.hpp:28</a></div></div>
-<div class="ttc" id="a00304_html_gad35fb67eb1d03c5a514f0bd7aed1c776"><div class="ttname"><a href="a00304.html#gad35fb67eb1d03c5a514f0bd7aed1c776">glm::mediump_f64mat3</a></div><div class="ttdeci">mat&lt; 3, 3, f64, mediump &gt; mediump_f64mat3</div><div class="ttdoc">Medium double-qualifier floating-point 3x3 matrix. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00577">fwd.hpp:577</a></div></div>
-<div class="ttc" id="a00304_html_ga392b673fd10847bfb78fb808c6cf8ff7"><div class="ttname"><a href="a00304.html#ga392b673fd10847bfb78fb808c6cf8ff7">glm::lowp_i16</a></div><div class="ttdeci">int16 lowp_i16</div><div class="ttdoc">Low qualifier 16 bit signed integer type. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00045">fwd.hpp:45</a></div></div>
-<div class="ttc" id="a00270_html_gadfc071d934d8dae7955a1d530a3cf656"><div class="ttname"><a href="a00270.html#gadfc071d934d8dae7955a1d530a3cf656">glm::vec1</a></div><div class="ttdeci">vec&lt; 1, float, defaultp &gt; vec1</div><div class="ttdoc">1 components vector of single-precision floating-point numbers. </div><div class="ttdef"><b>Definition:</b> <a href="a00206_source.html#l00028">vector_float1.hpp:28</a></div></div>
-<div class="ttc" id="a00282_html_ga83b7df38feefbb357f3673d950fafef7"><div class="ttname"><a href="a00282.html#ga83b7df38feefbb357f3673d950fafef7">glm::mediump_uvec3</a></div><div class="ttdeci">vec&lt; 3, unsigned int, mediump &gt; mediump_uvec3</div><div class="ttdoc">3 components vector of medium qualifier unsigned integer numbers. </div><div class="ttdef"><b>Definition:</b> <a href="a00231_source.html#l00022">vector_uint3_precision.hpp:22</a></div></div>
-<div class="ttc" id="a00304_html_ga961fac2a885907ffcf4d40daac6615c5"><div class="ttname"><a href="a00304.html#ga961fac2a885907ffcf4d40daac6615c5">glm::highp_fmat3x4</a></div><div class="ttdeci">mat&lt; 3, 4, f32, highp &gt; highp_fmat3x4</div><div class="ttdoc">High single-qualifier floating-point 3x4 matrix. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00655">fwd.hpp:655</a></div></div>
-<div class="ttc" id="a00304_html_ga728366fef72cd96f0a5fa6429f05469e"><div class="ttname"><a href="a00304.html#ga728366fef72cd96f0a5fa6429f05469e">glm::float64_t</a></div><div class="ttdeci">double float64_t</div><div class="ttdoc">Default 64 bit double-qualifier floating-point scalar. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00176">fwd.hpp:176</a></div></div>
-<div class="ttc" id="a00304_html_ga09a2374b725c4246d263ee36fb66434c"><div class="ttname"><a href="a00304.html#ga09a2374b725c4246d263ee36fb66434c">glm::highp_f64mat4x4</a></div><div class="ttdeci">mat&lt; 4, 4, f64, highp &gt; highp_f64mat4x4</div><div class="ttdoc">High double-qualifier floating-point 4x4 matrix. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00778">fwd.hpp:778</a></div></div>
-<div class="ttc" id="a00284_html_ga4d5a0055544a516237dcdace049b143d"><div class="ttname"><a href="a00284.html#ga4d5a0055544a516237dcdace049b143d">glm::highp_mat2</a></div><div class="ttdeci">mat&lt; 2, 2, float, highp &gt; highp_mat2</div><div class="ttdoc">2 columns of 2 components matrix of single-precision floating-point numbers using high precision arit...</div><div class="ttdef"><b>Definition:</b> <a href="a00083_source.html#l00028">matrix_float2x2_precision.hpp:28</a></div></div>
-<div class="ttc" id="a00304_html_gade108f16633cf95fa500b5b8c36c8b00"><div class="ttname"><a href="a00304.html#gade108f16633cf95fa500b5b8c36c8b00">glm::mediump_f32mat4x3</a></div><div class="ttdeci">mat&lt; 4, 3, f32, mediump &gt; mediump_f32mat4x3</div><div class="ttdoc">Medium single-qualifier floating-point 4x3 matrix. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00687">fwd.hpp:687</a></div></div>
-<div class="ttc" id="a00304_html_ga698e36b01167fc0f037889334dce8def"><div class="ttname"><a href="a00304.html#ga698e36b01167fc0f037889334dce8def">glm::lowp_int16</a></div><div class="ttdeci">int16 lowp_int16</div><div class="ttdoc">Low qualifier 16 bit signed integer type. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00050">fwd.hpp:50</a></div></div>
-<div class="ttc" id="a00282_html_gac1a86a75b3c68ebb704d7094043669d6"><div class="ttname"><a href="a00282.html#gac1a86a75b3c68ebb704d7094043669d6">glm::lowp_ivec3</a></div><div class="ttdeci">vec&lt; 3, int, lowp &gt; lowp_ivec3</div><div class="ttdoc">3 components vector of low qualifier signed integer numbers. </div><div class="ttdef"><b>Definition:</b> <a href="a00219_source.html#l00028">vector_int3_precision.hpp:28</a></div></div>
-<div class="ttc" id="a00304_html_ga80823dfad5dba98512c76af498343847"><div class="ttname"><a href="a00304.html#ga80823dfad5dba98512c76af498343847">glm::mediump_fmat3</a></div><div class="ttdeci">mat&lt; 3, 3, f32, mediump &gt; mediump_fmat3</div><div class="ttdoc">Medium single-qualifier floating-point 3x3 matrix. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00529">fwd.hpp:529</a></div></div>
-<div class="ttc" id="a00284_html_gaf650bc667bf2a0e496b5a9182bc8d378"><div class="ttname"><a href="a00284.html#gaf650bc667bf2a0e496b5a9182bc8d378">glm::mediump_dmat4</a></div><div class="ttdeci">mat&lt; 4, 4, double, mediump &gt; mediump_dmat4</div><div class="ttdoc">4 columns of 4 components matrix of double-precision floating-point numbers using medium precision ar...</div><div class="ttdef"><b>Definition:</b> <a href="a00080_source.html#l00022">matrix_double4x4_precision.hpp:22</a></div></div>
-<div class="ttc" id="a00304_html_gaf1b712b97b2322685fbbed28febe5f84"><div class="ttname"><a href="a00304.html#gaf1b712b97b2322685fbbed28febe5f84">glm::highp_f32mat4x4</a></div><div class="ttdeci">mat&lt; 4, 4, f32, highp &gt; highp_f32mat4x4</div><div class="ttdoc">High single-qualifier floating-point 4x4 matrix. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00698">fwd.hpp:698</a></div></div>
-<div class="ttc" id="a00304_html_gaebf341fc4a5be233f7dde962c2e33847"><div class="ttname"><a href="a00304.html#gaebf341fc4a5be233f7dde962c2e33847">glm::lowp_int64_t</a></div><div class="ttdeci">int64 lowp_int64_t</div><div class="ttdoc">Low qualifier 64 bit signed integer type. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00082">fwd.hpp:82</a></div></div>
-<div class="ttc" id="a00282_html_ga27fc23da61859cd6356326c5f1c796de"><div class="ttname"><a href="a00282.html#ga27fc23da61859cd6356326c5f1c796de">glm::lowp_ivec4</a></div><div class="ttdeci">vec&lt; 4, int, lowp &gt; lowp_ivec4</div><div class="ttdoc">4 components vector of low qualifier signed integer numbers. </div><div class="ttdef"><b>Definition:</b> <a href="a00221_source.html#l00028">vector_int4_precision.hpp:28</a></div></div>
-<div class="ttc" id="a00304_html_ga91f91f411080c37730856ff5887f5bcf"><div class="ttname"><a href="a00304.html#ga91f91f411080c37730856ff5887f5bcf">glm::uint16_t</a></div><div class="ttdeci">uint16 uint16_t</div><div class="ttdoc">Default qualifier 16 bit unsigned integer type. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00115">fwd.hpp:115</a></div></div>
-<div class="ttc" id="a00282_html_ga5e6a632ec1165cf9f54ceeaa5e9b2b1e"><div class="ttname"><a href="a00282.html#ga5e6a632ec1165cf9f54ceeaa5e9b2b1e">glm::lowp_uvec4</a></div><div class="ttdeci">vec&lt; 4, unsigned int, lowp &gt; lowp_uvec4</div><div class="ttdoc">4 components vector of low qualifier unsigned integer numbers. </div><div class="ttdef"><b>Definition:</b> <a href="a00233_source.html#l00028">vector_uint4_precision.hpp:28</a></div></div>
-<div class="ttc" id="a00304_html_ga670ea1b0a1172bc73b1d7c1e0c26cce2"><div class="ttname"><a href="a00304.html#ga670ea1b0a1172bc73b1d7c1e0c26cce2">glm::highp_f64vec2</a></div><div class="ttdeci">vec&lt; 2, f64, highp &gt; highp_f64vec2</div><div class="ttdoc">High double-qualifier floating-point vector of 2 components. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00497">fwd.hpp:497</a></div></div>
-<div class="ttc" id="a00304_html_ga581485db4ba6ddb501505ee711fd8e42"><div class="ttname"><a href="a00304.html#ga581485db4ba6ddb501505ee711fd8e42">glm::lowp_u64vec2</a></div><div class="ttdeci">vec&lt; 2, u64, lowp &gt; lowp_u64vec2</div><div class="ttdoc">Low qualifier 64 bit unsigned integer vector of 2 components type. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00385">fwd.hpp:385</a></div></div>
-<div class="ttc" id="a00304_html_ga253d453c20e037730023fea0215cb6f6"><div class="ttname"><a href="a00304.html#ga253d453c20e037730023fea0215cb6f6">glm::fmat3</a></div><div class="ttdeci">mat&lt; 3, 3, f32, defaultp &gt; fmat3</div><div class="ttdoc">Single-qualifier floating-point 3x3 matrix. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00537">fwd.hpp:537</a></div></div>
-<div class="ttc" id="a00304_html_gaaab39454f56cf9fc6d940358ce5e6a0f"><div class="ttname"><a href="a00304.html#gaaab39454f56cf9fc6d940358ce5e6a0f">glm::mediump_f32mat3x2</a></div><div class="ttdeci">mat&lt; 3, 2, f32, mediump &gt; mediump_f32mat3x2</div><div class="ttdoc">Medium single-qualifier floating-point 3x2 matrix. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00683">fwd.hpp:683</a></div></div>
-<div class="ttc" id="a00283_html_ga970cb3306be25a5ca5db5a9456831228"><div class="ttname"><a href="a00283.html#ga970cb3306be25a5ca5db5a9456831228">glm::dmat3x3</a></div><div class="ttdeci">mat&lt; 3, 3, double, defaultp &gt; dmat3x3</div><div class="ttdoc">3 columns of 3 components matrix of double-precision floating-point numbers. </div><div class="ttdef"><b>Definition:</b> <a href="a00071_source.html#l00015">matrix_double3x3.hpp:15</a></div></div>
-<div class="ttc" id="a00283_html_ga6f40aa56265b4b0ccad41b86802efe33"><div class="ttname"><a href="a00283.html#ga6f40aa56265b4b0ccad41b86802efe33">glm::dmat3</a></div><div class="ttdeci">mat&lt; 3, 3, double, defaultp &gt; dmat3</div><div class="ttdoc">3 columns of 3 components matrix of double-precision floating-point numbers. </div><div class="ttdef"><b>Definition:</b> <a href="a00071_source.html#l00020">matrix_double3x3.hpp:20</a></div></div>
-<div class="ttc" id="a00304_html_gae6f3fcb702a666de07650c149cfa845a"><div class="ttname"><a href="a00304.html#gae6f3fcb702a666de07650c149cfa845a">glm::lowp_f32mat4x2</a></div><div class="ttdeci">mat&lt; 4, 2, f32, lowp &gt; lowp_f32mat4x2</div><div class="ttdoc">Low single-qualifier floating-point 4x2 matrix. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00676">fwd.hpp:676</a></div></div>
-<div class="ttc" id="a00304_html_ga864aabca5f3296e176e0c3ed9cc16b02"><div class="ttname"><a href="a00304.html#ga864aabca5f3296e176e0c3ed9cc16b02">glm::lowp_int32</a></div><div class="ttdeci">int32 lowp_int32</div><div class="ttdoc">Low qualifier 32 bit signed integer type. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00064">fwd.hpp:64</a></div></div>
-<div class="ttc" id="a00304_html_gabf1f16c5ab8cb0484bd1e846ae4368f1"><div class="ttname"><a href="a00304.html#gabf1f16c5ab8cb0484bd1e846ae4368f1">glm::mediump_i64vec4</a></div><div class="ttdeci">vec&lt; 4, i64, mediump &gt; mediump_i64vec4</div><div class="ttdoc">Medium qualifier 64 bit signed integer vector of 4 components type. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00290">fwd.hpp:290</a></div></div>
-<div class="ttc" id="a00281_html_ga9f7b9712373ff4342d9114619b55f5e3"><div class="ttname"><a href="a00281.html#ga9f7b9712373ff4342d9114619b55f5e3">glm::bvec4</a></div><div class="ttdeci">vec&lt; 4, bool, defaultp &gt; bvec4</div><div class="ttdoc">4 components vector of boolean. </div><div class="ttdef"><b>Definition:</b> <a href="a00195_source.html#l00015">vector_bool4.hpp:15</a></div></div>
-<div class="ttc" id="a00304_html_ga28d97808322d3c92186e4a0c067d7e8e"><div class="ttname"><a href="a00304.html#ga28d97808322d3c92186e4a0c067d7e8e">glm::uint8_t</a></div><div class="ttdeci">uint8 uint8_t</div><div class="ttdoc">Default qualifier 8 bit unsigned integer type. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00101">fwd.hpp:101</a></div></div>
-<div class="ttc" id="a00304_html_ga85e8893f4ae3630065690a9000c0c483"><div class="ttname"><a href="a00304.html#ga85e8893f4ae3630065690a9000c0c483">glm::mediump_i8vec1</a></div><div class="ttdeci">vec&lt; 1, i8, mediump &gt; mediump_i8vec1</div><div class="ttdoc">Medium qualifier 8 bit signed integer scalar type. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00227">fwd.hpp:227</a></div></div>
-<div class="ttc" id="a00304_html_ga26fc7ced1ad7ca5024f1c973c8dc9180"><div class="ttname"><a href="a00304.html#ga26fc7ced1ad7ca5024f1c973c8dc9180">glm::mediump_int32_t</a></div><div class="ttdeci">int32 mediump_int32_t</div><div class="ttdoc">Medium qualifier 32 bit signed integer type. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00069">fwd.hpp:69</a></div></div>
-<div class="ttc" id="a00284_html_ga43ef60e4d996db15c9c8f069a96ff763"><div class="ttname"><a href="a00284.html#ga43ef60e4d996db15c9c8f069a96ff763">glm::mediump_dmat4x3</a></div><div class="ttdeci">mat&lt; 4, 3, double, mediump &gt; mediump_dmat4x3</div><div class="ttdoc">4 columns of 3 components matrix of double-precision floating-point numbers using medium precision ar...</div><div class="ttdef"><b>Definition:</b> <a href="a00078_source.html#l00022">matrix_double4x3_precision.hpp:22</a></div></div>
-<div class="ttc" id="a00304_html_ga5376ef18dca9d248897c3363ef5a06b2"><div class="ttname"><a href="a00304.html#ga5376ef18dca9d248897c3363ef5a06b2">glm::highp_float32_t</a></div><div class="ttdeci">float highp_float32_t</div><div class="ttdoc">High 32 bit single-qualifier floating-point scalar. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00159">fwd.hpp:159</a></div></div>
-<div class="ttc" id="a00304_html_ga65261fa8a21045c8646ddff114a56174"><div class="ttname"><a href="a00304.html#ga65261fa8a21045c8646ddff114a56174">glm::f32mat3x3</a></div><div class="ttdeci">mat&lt; 3, 3, f32, defaultp &gt; f32mat3x3</div><div class="ttdoc">Single-qualifier floating-point 3x3 matrix. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00704">fwd.hpp:704</a></div></div>
-<div class="ttc" id="a00284_html_ga118d24a3d12c034e7cccef7bf2f01b8a"><div class="ttname"><a href="a00284.html#ga118d24a3d12c034e7cccef7bf2f01b8a">glm::highp_dmat4x4</a></div><div class="ttdeci">mat&lt; 4, 4, double, highp &gt; highp_dmat4x4</div><div class="ttdoc">4 columns of 4 components matrix of double-precision floating-point numbers using medium precision ar...</div><div class="ttdef"><b>Definition:</b> <a href="a00080_source.html#l00046">matrix_double4x4_precision.hpp:46</a></div></div>
-<div class="ttc" id="a00304_html_gacd1259f3a9e8d2a9df5be2d74322ef9c"><div class="ttname"><a href="a00304.html#gacd1259f3a9e8d2a9df5be2d74322ef9c">glm::highp_u8</a></div><div class="ttdeci">uint8 highp_u8</div><div class="ttdoc">High qualifier 8 bit unsigned integer type. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00091">fwd.hpp:91</a></div></div>
-<div class="ttc" id="a00284_html_gad4689ec33bc2c26e10132b174b49001a"><div class="ttname"><a href="a00284.html#gad4689ec33bc2c26e10132b174b49001a">glm::highp_dmat2x3</a></div><div class="ttdeci">mat&lt; 2, 3, double, highp &gt; highp_dmat2x3</div><div class="ttdoc">2 columns of 3 components matrix of double-precision floating-point numbers using medium precision ar...</div><div class="ttdef"><b>Definition:</b> <a href="a00066_source.html#l00028">matrix_double2x3_precision.hpp:28</a></div></div>
-<div class="ttc" id="a00304_html_ga1fa92a233b9110861cdbc8c2ccf0b5a3"><div class="ttname"><a href="a00304.html#ga1fa92a233b9110861cdbc8c2ccf0b5a3">glm::mediump_uint8</a></div><div class="ttdeci">uint8 mediump_uint8</div><div class="ttdoc">Medium qualifier 8 bit unsigned integer type. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00095">fwd.hpp:95</a></div></div>
-<div class="ttc" id="a00304_html_ga076961cf2d120c7168b957cb2ed107b3"><div class="ttname"><a href="a00304.html#ga076961cf2d120c7168b957cb2ed107b3">glm::highp_fmat4x2</a></div><div class="ttdeci">mat&lt; 4, 2, f32, highp &gt; highp_fmat4x2</div><div class="ttdoc">High single-qualifier floating-point 4x2 matrix. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00656">fwd.hpp:656</a></div></div>
-<div class="ttc" id="a00304_html_ga0b8ebd4262331e139ff257d7cf2a4b77"><div class="ttname"><a href="a00304.html#ga0b8ebd4262331e139ff257d7cf2a4b77">glm::highp_f32vec2</a></div><div class="ttdeci">vec&lt; 2, f32, highp &gt; highp_f32vec2</div><div class="ttdoc">High single-qualifier floating-point vector of 2 components. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00457">fwd.hpp:457</a></div></div>
-<div class="ttc" id="a00284_html_ga685bda24922d112786af385deb4deb43"><div class="ttname"><a href="a00284.html#ga685bda24922d112786af385deb4deb43">glm::mediump_dmat2x4</a></div><div class="ttdeci">mat&lt; 2, 4, double, mediump &gt; mediump_dmat2x4</div><div class="ttdoc">2 columns of 4 components matrix of double-precision floating-point numbers using medium precision ar...</div><div class="ttdef"><b>Definition:</b> <a href="a00068_source.html#l00022">matrix_double2x4_precision.hpp:22</a></div></div>
-<div class="ttc" id="a00283_html_ga21dbd1f987775d7cc7607c139531c7e6"><div class="ttname"><a href="a00283.html#ga21dbd1f987775d7cc7607c139531c7e6">glm::dmat2</a></div><div class="ttdeci">mat&lt; 2, 2, double, defaultp &gt; dmat2</div><div class="ttdoc">2 columns of 2 components matrix of double-precision floating-point numbers. </div><div class="ttdef"><b>Definition:</b> <a href="a00063_source.html#l00020">matrix_double2x2.hpp:20</a></div></div>
-<div class="ttc" id="a00282_html_gad281decae52948b82feb3a9db8f63a7b"><div class="ttname"><a href="a00282.html#gad281decae52948b82feb3a9db8f63a7b">glm::highp_vec4</a></div><div class="ttdeci">vec&lt; 4, float, highp &gt; highp_vec4</div><div class="ttdoc">4 components vector of high single-qualifier floating-point numbers. </div><div class="ttdef"><b>Definition:</b> <a href="a00213_source.html#l00016">vector_float4_precision.hpp:16</a></div></div>
-<div class="ttc" id="a00304_html_gac3bc41bcac61d1ba8f02a6f68ce23f64"><div class="ttname"><a href="a00304.html#gac3bc41bcac61d1ba8f02a6f68ce23f64">glm::mediump_int64_t</a></div><div class="ttdeci">int64 mediump_int64_t</div><div class="ttdoc">Medium qualifier 64 bit signed integer type. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00083">fwd.hpp:83</a></div></div>
-<div class="ttc" id="a00304_html_gaa4a8682bec7ec8af666ef87fae38d5d1"><div class="ttname"><a href="a00304.html#gaa4a8682bec7ec8af666ef87fae38d5d1">glm::lowp_u64vec3</a></div><div class="ttdeci">vec&lt; 3, u64, lowp &gt; lowp_u64vec3</div><div class="ttdoc">Low qualifier 64 bit unsigned integer vector of 3 components type. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00386">fwd.hpp:386</a></div></div>
-<div class="ttc" id="a00283_html_gad5a6484b983b74f9d801cab8bc4e6a10"><div class="ttname"><a href="a00283.html#gad5a6484b983b74f9d801cab8bc4e6a10">glm::dmat4x4</a></div><div class="ttdeci">mat&lt; 4, 4, double, defaultp &gt; dmat4x4</div><div class="ttdoc">4 columns of 4 components matrix of double-precision floating-point numbers. </div><div class="ttdef"><b>Definition:</b> <a href="a00079_source.html#l00015">matrix_double4x4.hpp:15</a></div></div>
-<div class="ttc" id="a00266_html_ga24a3d364e2ddd444f5b9e7975bbef8f9"><div class="ttname"><a href="a00266.html#ga24a3d364e2ddd444f5b9e7975bbef8f9">glm::lowp_bvec1</a></div><div class="ttdeci">vec&lt; 1, bool, lowp &gt; lowp_bvec1</div><div class="ttdoc">1 component vector of bool values. </div><div class="ttdef"><b>Definition:</b> <a href="a00190_source.html#l00031">vector_bool1_precision.hpp:31</a></div></div>
-<div class="ttc" id="a00304_html_ga773ea237a051827cfc20de960bc73ff0"><div class="ttname"><a href="a00304.html#ga773ea237a051827cfc20de960bc73ff0">glm::highp_f64mat2x2</a></div><div class="ttdeci">mat&lt; 2, 2, f64, highp &gt; highp_f64mat2x2</div><div class="ttdoc">High double-qualifier floating-point 1x1 matrix. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00770">fwd.hpp:770</a></div></div>
-<div class="ttc" id="a00304_html_gaf14d7a50502464e7cbfa074f24684cb1"><div class="ttname"><a href="a00304.html#gaf14d7a50502464e7cbfa074f24684cb1">glm::highp_u32vec3</a></div><div class="ttdeci">vec&lt; 3, u32, highp &gt; highp_u32vec3</div><div class="ttdoc">High qualifier 32 bit unsigned integer vector of 3 components type. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00376">fwd.hpp:376</a></div></div>
-<div class="ttc" id="a00282_html_gaedb70027d89a0a405046aefda4eabaa6"><div class="ttname"><a href="a00282.html#gaedb70027d89a0a405046aefda4eabaa6">glm::highp_bvec3</a></div><div class="ttdeci">vec&lt; 3, bool, highp &gt; highp_bvec3</div><div class="ttdoc">3 components vector of high qualifier bool numbers. </div><div class="ttdef"><b>Definition:</b> <a href="a00194_source.html#l00016">vector_bool3_precision.hpp:16</a></div></div>
-<div class="ttc" id="a00304_html_ga1085c50dd8fbeb5e7e609b1c127492a5"><div class="ttname"><a href="a00304.html#ga1085c50dd8fbeb5e7e609b1c127492a5">glm::highp_int8_t</a></div><div class="ttdeci">int8 highp_int8_t</div><div class="ttdoc">High qualifier 8 bit signed integer type. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00042">fwd.hpp:42</a></div></div>
-<div class="ttc" id="a00304_html_gaa3ba60ef8f69c6aeb1629594eaa95347"><div class="ttname"><a href="a00304.html#gaa3ba60ef8f69c6aeb1629594eaa95347">glm::lowp_f32quat</a></div><div class="ttdeci">qua&lt; f32, lowp &gt; lowp_f32quat</div><div class="ttdoc">Low single-qualifier floating-point quaternion. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00802">fwd.hpp:802</a></div></div>
-<div class="ttc" id="a00304_html_gac9b2eb4296ffe50a32eacca9ed932c08"><div class="ttname"><a href="a00304.html#gac9b2eb4296ffe50a32eacca9ed932c08">glm::lowp_i32vec4</a></div><div class="ttdeci">vec&lt; 4, i32, lowp &gt; lowp_i32vec4</div><div class="ttdoc">Low qualifier 32 bit signed integer vector of 4 components type. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00265">fwd.hpp:265</a></div></div>
-<div class="ttc" id="a00304_html_ga70fdfcc1fd38084bde83c3f06a8b9f19"><div class="ttname"><a href="a00304.html#ga70fdfcc1fd38084bde83c3f06a8b9f19">glm::highp_i16vec1</a></div><div class="ttdeci">vec&lt; 1, i16, highp &gt; highp_i16vec1</div><div class="ttdoc">High qualifier 16 bit signed integer scalar type. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00252">fwd.hpp:252</a></div></div>
-<div class="ttc" id="a00304_html_gac2f5263708ac847b361a9841e74ddf9f"><div class="ttname"><a href="a00304.html#gac2f5263708ac847b361a9841e74ddf9f">glm::lowp_fmat4x4</a></div><div class="ttdeci">mat&lt; 4, 4, f32, lowp &gt; lowp_fmat4x4</div><div class="ttdoc">Low single-qualifier floating-point 4x4 matrix. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00638">fwd.hpp:638</a></div></div>
-<div class="ttc" id="a00284_html_ga3d7ea07da7c6e5c81a3f4c8b3d44056e"><div class="ttname"><a href="a00284.html#ga3d7ea07da7c6e5c81a3f4c8b3d44056e">glm::lowp_dmat4x3</a></div><div class="ttdeci">mat&lt; 4, 3, double, lowp &gt; lowp_dmat4x3</div><div class="ttdoc">4 columns of 3 components matrix of double-precision floating-point numbers using low precision arith...</div><div class="ttdef"><b>Definition:</b> <a href="a00078_source.html#l00016">matrix_double4x3_precision.hpp:16</a></div></div>
-<div class="ttc" id="a00304_html_ga1320a08e14fdff3821241eefab6947e9"><div class="ttname"><a href="a00304.html#ga1320a08e14fdff3821241eefab6947e9">glm::f32mat3x2</a></div><div class="ttdeci">mat&lt; 3, 2, f32, defaultp &gt; f32mat3x2</div><div class="ttdoc">Single-qualifier floating-point 3x2 matrix. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00701">fwd.hpp:701</a></div></div>
-<div class="ttc" id="a00304_html_ga841211b641cff1fcf861bdb14e5e4abc"><div class="ttname"><a href="a00304.html#ga841211b641cff1fcf861bdb14e5e4abc">glm::lowp_f32mat3x3</a></div><div class="ttdeci">mat&lt; 3, 3, f32, lowp &gt; lowp_f32mat3x3</div><div class="ttdoc">Low single-qualifier floating-point 3x3 matrix. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00674">fwd.hpp:674</a></div></div>
-<div class="ttc" id="a00304_html_gac03e5099d27eeaa74b6016ea435a1df2"><div class="ttname"><a href="a00304.html#gac03e5099d27eeaa74b6016ea435a1df2">glm::lowp_i8vec2</a></div><div class="ttdeci">vec&lt; 2, i8, lowp &gt; lowp_i8vec2</div><div class="ttdoc">Low qualifier 8 bit signed integer vector of 2 components type. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00223">fwd.hpp:223</a></div></div>
-<div class="ttc" id="a00304_html_ga866a05905c49912309ed1fa5f5980e61"><div class="ttname"><a href="a00304.html#ga866a05905c49912309ed1fa5f5980e61">glm::i32vec4</a></div><div class="ttdeci">vec&lt; 4, i32, defaultp &gt; i32vec4</div><div class="ttdoc">32 bit signed integer vector of 4 components type. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00280">fwd.hpp:280</a></div></div>
-<div class="ttc" id="a00304_html_ga298f7d4d273678d0282812368da27fda"><div class="ttname"><a href="a00304.html#ga298f7d4d273678d0282812368da27fda">glm::highp_f32mat2</a></div><div class="ttdeci">mat&lt; 2, 2, f32, highp &gt; highp_f32mat2</div><div class="ttdoc">High single-qualifier floating-point 1x1 matrix. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00548">fwd.hpp:548</a></div></div>
-<div class="ttc" id="a00304_html_gaeea53879fc327293cf3352a409b7867b"><div class="ttname"><a href="a00304.html#gaeea53879fc327293cf3352a409b7867b">glm::lowp_f32</a></div><div class="ttdeci">float lowp_f32</div><div class="ttdoc">Low 32 bit single-qualifier floating-point scalar. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00147">fwd.hpp:147</a></div></div>
-<div class="ttc" id="a00277_html_gacda57dd8c2bff4934c7f09ddd87c0f39"><div class="ttname"><a href="a00277.html#gacda57dd8c2bff4934c7f09ddd87c0f39">glm::highp_uvec1</a></div><div class="ttdeci">vec&lt; 1, unsigned int, highp &gt; highp_uvec1</div><div class="ttdoc">1 component vector of unsigned integer values. </div><div class="ttdef"><b>Definition:</b> <a href="a00227_source.html#l00027">vector_uint1_precision.hpp:27</a></div></div>
-<div class="ttc" id="a00304_html_ga5793393686ce5bd2d5968ff9144762b8"><div class="ttname"><a href="a00304.html#ga5793393686ce5bd2d5968ff9144762b8">glm::mediump_u16vec4</a></div><div class="ttdeci">vec&lt; 4, u16, mediump &gt; mediump_u16vec4</div><div class="ttdoc">Medium qualifier 16 bit unsigned integer vector of 4 components type. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00352">fwd.hpp:352</a></div></div>
-<div class="ttc" id="a00282_html_gaef61508dd40ec523416697982f9ceaae"><div class="ttname"><a href="a00282.html#gaef61508dd40ec523416697982f9ceaae">glm::highp_uvec3</a></div><div class="ttdeci">vec&lt; 3, unsigned int, highp &gt; highp_uvec3</div><div class="ttdoc">3 components vector of high qualifier unsigned integer numbers. </div><div class="ttdef"><b>Definition:</b> <a href="a00231_source.html#l00016">vector_uint3_precision.hpp:16</a></div></div>
-<div class="ttc" id="a00304_html_gae267358ff2a41d156d97f5762630235a"><div class="ttname"><a href="a00304.html#gae267358ff2a41d156d97f5762630235a">glm::u32vec3</a></div><div class="ttdeci">vec&lt; 3, u32, defaultp &gt; u32vec3</div><div class="ttdoc">Default qualifier 32 bit unsigned integer vector of 3 components type. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00381">fwd.hpp:381</a></div></div>
-<div class="ttc" id="a00304_html_ga518b8d948a6b4ddb72f84d5c3b7b6611"><div class="ttname"><a href="a00304.html#ga518b8d948a6b4ddb72f84d5c3b7b6611">glm::u8vec2</a></div><div class="ttdeci">vec&lt; 2, u8, defaultp &gt; u8vec2</div><div class="ttdoc">Default qualifier 8 bit unsigned integer vector of 2 components type. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00340">fwd.hpp:340</a></div></div>
-<div class="ttc" id="a00282_html_ga61c3b1dff4ec7c878af80503141b9f37"><div class="ttname"><a href="a00282.html#ga61c3b1dff4ec7c878af80503141b9f37">glm::mediump_dvec3</a></div><div class="ttdeci">vec&lt; 3, double, mediump &gt; mediump_dvec3</div><div class="ttdoc">3 components vector of medium double-qualifier floating-point numbers. </div><div class="ttdef"><b>Definition:</b> <a href="a00203_source.html#l00024">vector_double3_precision.hpp:24</a></div></div>
-<div class="ttc" id="a00304_html_ga62a17cddeb4dffb4e18fe3aea23f051a"><div class="ttname"><a href="a00304.html#ga62a17cddeb4dffb4e18fe3aea23f051a">glm::mediump_i16</a></div><div class="ttdeci">int16 mediump_i16</div><div class="ttdoc">Medium qualifier 16 bit signed integer type. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00046">fwd.hpp:46</a></div></div>
-<div class="ttc" id="a00304_html_ga78f77b8b2d17b431ac5a68c0b5d7050d"><div class="ttname"><a href="a00304.html#ga78f77b8b2d17b431ac5a68c0b5d7050d">glm::highp_u64vec2</a></div><div class="ttdeci">vec&lt; 2, u64, highp &gt; highp_u64vec2</div><div class="ttdoc">High qualifier 64 bit unsigned integer vector of 2 components type. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00395">fwd.hpp:395</a></div></div>
-<div class="ttc" id="a00273_html_ga836dbb1dc516c233b7f5fe9763bc15dc"><div class="ttname"><a href="a00273.html#ga836dbb1dc516c233b7f5fe9763bc15dc">glm::lowp_ivec1</a></div><div class="ttdeci">vec&lt; 1, int, lowp &gt; lowp_ivec1</div><div class="ttdoc">1 component vector of signed integer values. </div><div class="ttdef"><b>Definition:</b> <a href="a00215_source.html#l00031">vector_int1_precision.hpp:31</a></div></div>
-<div class="ttc" id="a00304_html_ga5a08d36cf7917cd19d081a603d0eae3e"><div class="ttname"><a href="a00304.html#ga5a08d36cf7917cd19d081a603d0eae3e">glm::i8vec3</a></div><div class="ttdeci">vec&lt; 3, i8, defaultp &gt; i8vec3</div><div class="ttdoc">8 bit signed integer vector of 3 components type. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00239">fwd.hpp:239</a></div></div>
-<div class="ttc" id="a00304_html_gaa3ca74a44102035b3ffb5c9c52dfdd3f"><div class="ttname"><a href="a00304.html#gaa3ca74a44102035b3ffb5c9c52dfdd3f">glm::mediump_f32mat2x2</a></div><div class="ttdeci">mat&lt; 2, 2, f32, mediump &gt; mediump_f32mat2x2</div><div class="ttdoc">High single-qualifier floating-point 1x1 matrix. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00680">fwd.hpp:680</a></div></div>
-<div class="ttc" id="a00283_html_ga0db98d836c5549d31cf64ecd043b7af7"><div class="ttname"><a href="a00283.html#ga0db98d836c5549d31cf64ecd043b7af7">glm::mat4</a></div><div class="ttdeci">mat&lt; 4, 4, float, defaultp &gt; mat4</div><div class="ttdoc">4 columns of 4 components matrix of single-precision floating-point numbers. </div><div class="ttdef"><b>Definition:</b> <a href="a00098_source.html#l00020">matrix_float4x4.hpp:20</a></div></div>
-<div class="ttc" id="a00304_html_ga3963b1050fc65a383ee28e3f827b6e3e"><div class="ttname"><a href="a00304.html#ga3963b1050fc65a383ee28e3f827b6e3e">glm::mediump_uint16_t</a></div><div class="ttdeci">uint16 mediump_uint16_t</div><div class="ttdoc">Medium qualifier 16 bit unsigned integer type. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00113">fwd.hpp:113</a></div></div>
-<div class="ttc" id="a00304_html_ga54697a78f9a4643af6a57fc2e626ec0d"><div class="ttname"><a href="a00304.html#ga54697a78f9a4643af6a57fc2e626ec0d">glm::mediump_f64mat4x3</a></div><div class="ttdeci">mat&lt; 4, 3, f64, mediump &gt; mediump_f64mat4x3</div><div class="ttdoc">Medium double-qualifier floating-point 4x3 matrix. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00767">fwd.hpp:767</a></div></div>
-<div class="ttc" id="a00304_html_ga7c5706f6bbe5282e5598acf7e7b377e2"><div class="ttname"><a href="a00304.html#ga7c5706f6bbe5282e5598acf7e7b377e2">glm::u8vec3</a></div><div class="ttdeci">vec&lt; 3, u8, defaultp &gt; u8vec3</div><div class="ttdoc">Default qualifier 8 bit unsigned integer vector of 3 components type. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00341">fwd.hpp:341</a></div></div>
-<div class="ttc" id="a00304_html_ga51d5266017d88f62737c1973923a7cf4"><div class="ttname"><a href="a00304.html#ga51d5266017d88f62737c1973923a7cf4">glm::highp_f64</a></div><div class="ttdeci">double highp_f64</div><div class="ttdoc">High 64 bit double-qualifier floating-point scalar. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00165">fwd.hpp:165</a></div></div>
-<div class="ttc" id="a00304_html_ga999dc6703ad16e3d3c26b74ea8083f07"><div class="ttname"><a href="a00304.html#ga999dc6703ad16e3d3c26b74ea8083f07">glm::mediump_fvec3</a></div><div class="ttdeci">vec&lt; 3, float, mediump &gt; mediump_fvec3</div><div class="ttdoc">Medium Single-qualifier floating-point vector of 3 components. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00433">fwd.hpp:433</a></div></div>
-<div class="ttc" id="a00304_html_ga7b968f2b86a0442a89c7359171e1d866"><div class="ttname"><a href="a00304.html#ga7b968f2b86a0442a89c7359171e1d866">glm::mediump_int64</a></div><div class="ttdeci">int64 mediump_int64</div><div class="ttdoc">Medium qualifier 64 bit signed integer type. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00079">fwd.hpp:79</a></div></div>
-<div class="ttc" id="a00304_html_gaec7ee455cb379ec2993e81482123e1cc"><div class="ttname"><a href="a00304.html#gaec7ee455cb379ec2993e81482123e1cc">glm::mediump_u64vec4</a></div><div class="ttdeci">vec&lt; 4, u64, mediump &gt; mediump_u64vec4</div><div class="ttdoc">Medium qualifier 64 bit unsigned integer vector of 4 components type. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00392">fwd.hpp:392</a></div></div>
-<div class="ttc" id="a00284_html_gae27ac20302c2e39b6c78e7fe18e62ef7"><div class="ttname"><a href="a00284.html#gae27ac20302c2e39b6c78e7fe18e62ef7">glm::highp_dmat2x2</a></div><div class="ttdeci">mat&lt; 2, 2, double, highp &gt; highp_dmat2x2</div><div class="ttdoc">2 columns of 2 components matrix of double-precision floating-point numbers using medium precision ar...</div><div class="ttdef"><b>Definition:</b> <a href="a00064_source.html#l00046">matrix_double2x2_precision.hpp:46</a></div></div>
-<div class="ttc" id="a00304_html_ga3999d3e7ff22025c16ddb601e14dfdee"><div class="ttname"><a href="a00304.html#ga3999d3e7ff22025c16ddb601e14dfdee">glm::uint64_t</a></div><div class="ttdeci">uint64 uint64_t</div><div class="ttdoc">Default qualifier 64 bit unsigned integer type. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00143">fwd.hpp:143</a></div></div>
-<div class="ttc" id="a00304_html_ga2f256334f83fba4c2d219e414b51df6c"><div class="ttname"><a href="a00304.html#ga2f256334f83fba4c2d219e414b51df6c">glm::highp_u32vec2</a></div><div class="ttdeci">vec&lt; 2, u32, highp &gt; highp_u32vec2</div><div class="ttdoc">High qualifier 32 bit unsigned integer vector of 2 components type. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00375">fwd.hpp:375</a></div></div>
-<div class="ttc" id="a00269_html_ga79a789ebb176b37a45848f7ccdd3b3dd"><div class="ttname"><a href="a00269.html#ga79a789ebb176b37a45848f7ccdd3b3dd">glm::mediump_dvec1</a></div><div class="ttdeci">vec&lt; 1, double, mediump &gt; mediump_dvec1</div><div class="ttdoc">1 component vector of double-precision floating-point numbers using medium precision arithmetic in te...</div><div class="ttdef"><b>Definition:</b> <a href="a00199_source.html#l00030">vector_double1_precision.hpp:30</a></div></div>
-<div class="ttc" id="a00304_html_gaa1040342c4efdedc8f90e6267db8d41c"><div class="ttname"><a href="a00304.html#gaa1040342c4efdedc8f90e6267db8d41c">glm::highp_fvec1</a></div><div class="ttdeci">vec&lt; 1, float, highp &gt; highp_fvec1</div><div class="ttdoc">High single-qualifier floating-point vector of 1 component. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00436">fwd.hpp:436</a></div></div>
-<div class="ttc" id="a00304_html_gabb4229a4c1488bf063eed0c45355bb9c"><div class="ttname"><a href="a00304.html#gabb4229a4c1488bf063eed0c45355bb9c">glm::lowp_i64vec4</a></div><div class="ttdeci">vec&lt; 4, i64, lowp &gt; lowp_i64vec4</div><div class="ttdoc">Low qualifier 64 bit signed integer vector of 4 components type. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00285">fwd.hpp:285</a></div></div>
-<div class="ttc" id="a00282_html_gafb84dccdf5d82443df3ffc8428dcaf3e"><div class="ttname"><a href="a00282.html#gafb84dccdf5d82443df3ffc8428dcaf3e">glm::highp_ivec4</a></div><div class="ttdeci">vec&lt; 4, int, highp &gt; highp_ivec4</div><div class="ttdoc">4 components vector of high qualifier signed integer numbers. </div><div class="ttdef"><b>Definition:</b> <a href="a00221_source.html#l00016">vector_int4_precision.hpp:16</a></div></div>
-<div class="ttc" id="a00304_html_ga7f526b5cccef126a2ebcf9bdd890394e"><div class="ttname"><a href="a00304.html#ga7f526b5cccef126a2ebcf9bdd890394e">glm::i32vec3</a></div><div class="ttdeci">vec&lt; 3, i32, defaultp &gt; i32vec3</div><div class="ttdoc">32 bit signed integer vector of 3 components type. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00279">fwd.hpp:279</a></div></div>
-<div class="ttc" id="a00304_html_ga88938ee1e7981fa3402e88da6ad74531"><div class="ttname"><a href="a00304.html#ga88938ee1e7981fa3402e88da6ad74531">glm::highp_f32mat2x4</a></div><div class="ttdeci">mat&lt; 2, 4, f32, highp &gt; highp_f32mat2x4</div><div class="ttdoc">High single-qualifier floating-point 2x4 matrix. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00692">fwd.hpp:692</a></div></div>
-<div class="ttc" id="a00304_html_ga036d6c7ca9fbbdc5f3871bfcb937c85c"><div class="ttname"><a href="a00304.html#ga036d6c7ca9fbbdc5f3871bfcb937c85c">glm::lowp_i8vec1</a></div><div class="ttdeci">vec&lt; 1, i8, lowp &gt; lowp_i8vec1</div><div class="ttdoc">Low qualifier 8 bit signed integer scalar type. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00222">fwd.hpp:222</a></div></div>
-<div class="ttc" id="a00304_html_gaf7adb92ce8de0afaff01436b039fd924"><div class="ttname"><a href="a00304.html#gaf7adb92ce8de0afaff01436b039fd924">glm::highp_f64mat2</a></div><div class="ttdeci">mat&lt; 2, 2, f64, highp &gt; highp_f64mat2</div><div class="ttdoc">High double-qualifier floating-point 1x1 matrix. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00580">fwd.hpp:580</a></div></div>
-<div class="ttc" id="a00282_html_ga42c518b2917e19ce6946a84c64a3a4b2"><div class="ttname"><a href="a00282.html#ga42c518b2917e19ce6946a84c64a3a4b2">glm::lowp_dvec3</a></div><div class="ttdeci">vec&lt; 3, double, lowp &gt; lowp_dvec3</div><div class="ttdoc">3 components vector of low double-qualifier floating-point numbers. </div><div class="ttdef"><b>Definition:</b> <a href="a00203_source.html#l00031">vector_double3_precision.hpp:31</a></div></div>
-<div class="ttc" id="a00304_html_ga91c4815f93177eb423362fd296a87e9f"><div class="ttname"><a href="a00304.html#ga91c4815f93177eb423362fd296a87e9f">glm::lowp_uint16_t</a></div><div class="ttdeci">uint16 lowp_uint16_t</div><div class="ttdoc">Low qualifier 16 bit unsigned integer type. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00112">fwd.hpp:112</a></div></div>
-<div class="ttc" id="a00281_html_ga8b09c71aaac7da7867ae58377fe219a8"><div class="ttname"><a href="a00281.html#ga8b09c71aaac7da7867ae58377fe219a8">glm::dvec2</a></div><div class="ttdeci">vec&lt; 2, double, defaultp &gt; dvec2</div><div class="ttdoc">2 components vector of double-precision floating-point numbers. </div><div class="ttdef"><b>Definition:</b> <a href="a00200_source.html#l00015">vector_double2.hpp:15</a></div></div>
-<div class="ttc" id="a00304_html_ga5bdbfb4ce7d05ce1e1b663f50be17e8a"><div class="ttname"><a href="a00304.html#ga5bdbfb4ce7d05ce1e1b663f50be17e8a">glm::highp_f64mat3x2</a></div><div class="ttdeci">mat&lt; 3, 2, f64, highp &gt; highp_f64mat3x2</div><div class="ttdoc">High double-qualifier floating-point 3x2 matrix. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00773">fwd.hpp:773</a></div></div>
-<div class="ttc" id="a00304_html_ga012c24c8fc69707b90260474c70275a2"><div class="ttname"><a href="a00304.html#ga012c24c8fc69707b90260474c70275a2">glm::mediump_u32vec3</a></div><div class="ttdeci">vec&lt; 3, u32, mediump &gt; mediump_u32vec3</div><div class="ttdoc">Medium qualifier 32 bit unsigned integer vector of 3 components type. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00371">fwd.hpp:371</a></div></div>
-<div class="ttc" id="a00304_html_gad68bfd9f881856fc863a6ebca0b67f78"><div class="ttname"><a href="a00304.html#gad68bfd9f881856fc863a6ebca0b67f78">glm::lowp_uint16</a></div><div class="ttdeci">uint16 lowp_uint16</div><div class="ttdoc">Low qualifier 16 bit unsigned integer type. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00108">fwd.hpp:108</a></div></div>
-<div class="ttc" id="a00284_html_ga3fd9849f3da5ed6e3decc3fb10a20b3e"><div class="ttname"><a href="a00284.html#ga3fd9849f3da5ed6e3decc3fb10a20b3e">glm::highp_mat3</a></div><div class="ttdeci">mat&lt; 3, 3, float, highp &gt; highp_mat3</div><div class="ttdoc">3 columns of 3 components matrix of single-precision floating-point numbers using high precision arit...</div><div class="ttdef"><b>Definition:</b> <a href="a00091_source.html#l00028">matrix_float3x3_precision.hpp:28</a></div></div>
-<div class="ttc" id="a00304_html_ga45721c13b956eb691cbd6c6c1429167a"><div class="ttname"><a href="a00304.html#ga45721c13b956eb691cbd6c6c1429167a">glm::highp_u8vec3</a></div><div class="ttdeci">vec&lt; 3, u8, highp &gt; highp_u8vec3</div><div class="ttdoc">High qualifier 8 bit unsigned integer vector of 3 components type. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00336">fwd.hpp:336</a></div></div>
-<div class="ttc" id="a00304_html_ga66e92e57260bdb910609b9a56bf83e97"><div class="ttname"><a href="a00304.html#ga66e92e57260bdb910609b9a56bf83e97">glm::f64vec4</a></div><div class="ttdeci">vec&lt; 4, f64, defaultp &gt; f64vec4</div><div class="ttdoc">Double-qualifier floating-point vector of 4 components. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00504">fwd.hpp:504</a></div></div>
-<div class="ttc" id="a00304_html_ga50542e4cb9b2f9bec213b66e06145d07"><div class="ttname"><a href="a00304.html#ga50542e4cb9b2f9bec213b66e06145d07">glm::highp_i8vec2</a></div><div class="ttdeci">vec&lt; 2, i8, highp &gt; highp_i8vec2</div><div class="ttdoc">High qualifier 8 bit signed integer vector of 2 components type. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00233">fwd.hpp:233</a></div></div>
-<div class="ttc" id="a00284_html_ga369b447bb1b312449b679ea1f90f3cea"><div class="ttname"><a href="a00284.html#ga369b447bb1b312449b679ea1f90f3cea">glm::highp_dmat2</a></div><div class="ttdeci">mat&lt; 2, 2, double, highp &gt; highp_dmat2</div><div class="ttdoc">2 columns of 2 components matrix of double-precision floating-point numbers using medium precision ar...</div><div class="ttdef"><b>Definition:</b> <a href="a00064_source.html#l00028">matrix_double2x2_precision.hpp:28</a></div></div>
-<div class="ttc" id="a00304_html_ga5fe17c87ede1b1b4d92454cff4da076d"><div class="ttname"><a href="a00304.html#ga5fe17c87ede1b1b4d92454cff4da076d">glm::lowp_i32vec3</a></div><div class="ttdeci">vec&lt; 3, i32, lowp &gt; lowp_i32vec3</div><div class="ttdoc">Low qualifier 32 bit signed integer vector of 3 components type. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00264">fwd.hpp:264</a></div></div>
-<div class="ttc" id="a00304_html_ga7ff73a45cea9613ebf1a9fad0b9f82ac"><div class="ttname"><a href="a00304.html#ga7ff73a45cea9613ebf1a9fad0b9f82ac">glm::lowp_i32</a></div><div class="ttdeci">int32 lowp_i32</div><div class="ttdoc">Low qualifier 32 bit signed integer type. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00059">fwd.hpp:59</a></div></div>
-<div class="ttc" id="a00304_html_ga22e27beead07bff4d5ce9d6065a57279"><div class="ttname"><a href="a00304.html#ga22e27beead07bff4d5ce9d6065a57279">glm::mediump_fmat4x4</a></div><div class="ttdeci">mat&lt; 4, 4, f32, mediump &gt; mediump_fmat4x4</div><div class="ttdoc">Medium single-qualifier floating-point 4x4 matrix. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00648">fwd.hpp:648</a></div></div>
-<div class="ttc" id="a00281_html_ga9c3019b13faf179e4ad3626ea66df334"><div class="ttname"><a href="a00281.html#ga9c3019b13faf179e4ad3626ea66df334">glm::vec3</a></div><div class="ttdeci">vec&lt; 3, float, defaultp &gt; vec3</div><div class="ttdoc">3 components vector of single-precision floating-point numbers. </div><div class="ttdef"><b>Definition:</b> <a href="a00210_source.html#l00015">vector_float3.hpp:15</a></div></div>
-<div class="ttc" id="a00284_html_ga5b0413198b7e9f061f7534a221c9dac9"><div class="ttname"><a href="a00284.html#ga5b0413198b7e9f061f7534a221c9dac9">glm::lowp_dmat4x4</a></div><div class="ttdeci">mat&lt; 4, 4, double, lowp &gt; lowp_dmat4x4</div><div class="ttdoc">4 columns of 4 components matrix of double-precision floating-point numbers using low precision arith...</div><div class="ttdef"><b>Definition:</b> <a href="a00080_source.html#l00034">matrix_double4x4_precision.hpp:34</a></div></div>
-<div class="ttc" id="a00304_html_ga3ebcb1f6d8d8387253de8bccb058d77f"><div class="ttname"><a href="a00304.html#ga3ebcb1f6d8d8387253de8bccb058d77f">glm::mediump_i64</a></div><div class="ttdeci">int64 mediump_i64</div><div class="ttdoc">Medium qualifier 64 bit signed integer type. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00074">fwd.hpp:74</a></div></div>
-<div class="ttc" id="a00284_html_ga945254f459860741138bceb74da496b9"><div class="ttname"><a href="a00284.html#ga945254f459860741138bceb74da496b9">glm::highp_dmat4</a></div><div class="ttdeci">mat&lt; 4, 4, double, highp &gt; highp_dmat4</div><div class="ttdoc">4 columns of 4 components matrix of double-precision floating-point numbers using medium precision ar...</div><div class="ttdef"><b>Definition:</b> <a href="a00080_source.html#l00028">matrix_double4x4_precision.hpp:28</a></div></div>
-<div class="ttc" id="a00304_html_ga1d47d94d17c2406abdd1f087a816e387"><div class="ttname"><a href="a00304.html#ga1d47d94d17c2406abdd1f087a816e387">glm::lowp_i16vec4</a></div><div class="ttdeci">vec&lt; 4, i16, lowp &gt; lowp_i16vec4</div><div class="ttdoc">Low qualifier 16 bit signed integer vector of 4 components type. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00245">fwd.hpp:245</a></div></div>
-<div class="ttc" id="a00265_html_ga067af382616d93f8e850baae5154cdcc"><div class="ttname"><a href="a00265.html#ga067af382616d93f8e850baae5154cdcc">glm::bvec1</a></div><div class="ttdeci">vec&lt; 1, bool, defaultp &gt; bvec1</div><div class="ttdoc">1 components vector of boolean. </div><div class="ttdef"><b>Definition:</b> <a href="a00189_source.html#l00027">vector_bool1.hpp:27</a></div></div>
-<div class="ttc" id="a00304_html_gae94823d65648e44d972863c6caa13103"><div class="ttname"><a href="a00304.html#gae94823d65648e44d972863c6caa13103">glm::highp_f64mat4x3</a></div><div class="ttdeci">mat&lt; 4, 3, f64, highp &gt; highp_f64mat4x3</div><div class="ttdoc">High double-qualifier floating-point 4x3 matrix. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00777">fwd.hpp:777</a></div></div>
-<div class="ttc" id="a00304_html_ga27585b7c3ab300059f11fcba465f6fd2"><div class="ttname"><a href="a00304.html#ga27585b7c3ab300059f11fcba465f6fd2">glm::highp_u8vec2</a></div><div class="ttdeci">vec&lt; 2, u8, highp &gt; highp_u8vec2</div><div class="ttdoc">High qualifier 8 bit unsigned integer vector of 2 components type. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00335">fwd.hpp:335</a></div></div>
-<div class="ttc" id="a00282_html_ga27cfb51e0dbe15bba27a14a8590e8466"><div class="ttname"><a href="a00282.html#ga27cfb51e0dbe15bba27a14a8590e8466">glm::mediump_ivec3</a></div><div class="ttdeci">vec&lt; 3, int, mediump &gt; mediump_ivec3</div><div class="ttdoc">3 components vector of medium qualifier signed integer numbers. </div><div class="ttdef"><b>Definition:</b> <a href="a00219_source.html#l00022">vector_int3_precision.hpp:22</a></div></div>
-<div class="ttc" id="a00304_html_ga8396bfdc081d9113190d0c39c9f67084"><div class="ttname"><a href="a00304.html#ga8396bfdc081d9113190d0c39c9f67084">glm::highp_i8vec3</a></div><div class="ttdeci">vec&lt; 3, i8, highp &gt; highp_i8vec3</div><div class="ttdoc">High qualifier 8 bit signed integer vector of 3 components type. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00234">fwd.hpp:234</a></div></div>
-<div class="ttc" id="a00304_html_gacd1196090ece7a69fb5c3e43a7d4d851"><div class="ttname"><a href="a00304.html#gacd1196090ece7a69fb5c3e43a7d4d851">glm::highp_f64vec3</a></div><div class="ttdeci">vec&lt; 3, f64, highp &gt; highp_f64vec3</div><div class="ttdoc">High double-qualifier floating-point vector of 3 components. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00498">fwd.hpp:498</a></div></div>
-<div class="ttc" id="a00304_html_ga24273aa02abaecaab7f160bac437a339"><div class="ttname"><a href="a00304.html#ga24273aa02abaecaab7f160bac437a339">glm::fvec2</a></div><div class="ttdeci">vec&lt; 2, f32, defaultp &gt; fvec2</div><div class="ttdoc">Single-qualifier floating-point vector of 2 components. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00442">fwd.hpp:442</a></div></div>
-<div class="ttc" id="a00304_html_gaa666bb9e6d204d3bea0b3a39a3a335f4"><div class="ttname"><a href="a00304.html#gaa666bb9e6d204d3bea0b3a39a3a335f4">glm::lowp_f64vec4</a></div><div class="ttdeci">vec&lt; 4, f64, lowp &gt; lowp_f64vec4</div><div class="ttdoc">Low double-qualifier floating-point vector of 4 components. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00489">fwd.hpp:489</a></div></div>
-<div class="ttc" id="a00250_html_gaf13a25f41afc03480b40fc71bd249cec"><div class="ttname"><a href="a00250.html#gaf13a25f41afc03480b40fc71bd249cec">glm::highp_dquat</a></div><div class="ttdeci">qua&lt; double, highp &gt; highp_dquat</div><div class="ttdoc">Quaternion of high double-qualifier floating-point numbers using high precision arithmetic in term of...</div><div class="ttdef"><b>Definition:</b> <a href="a00129_source.html#l00038">quaternion_double_precision.hpp:38</a></div></div>
-<div class="ttc" id="a00304_html_ga062ffef2973bd8241df993c3b30b327c"><div class="ttname"><a href="a00304.html#ga062ffef2973bd8241df993c3b30b327c">glm::mediump_f32vec3</a></div><div class="ttdeci">vec&lt; 3, f32, mediump &gt; mediump_f32vec3</div><div class="ttdoc">Medium single-qualifier floating-point vector of 3 components. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00453">fwd.hpp:453</a></div></div>
-<div class="ttc" id="a00304_html_gabc7a97c07cbfac8e35eb5e63beb4b679"><div class="ttname"><a href="a00304.html#gabc7a97c07cbfac8e35eb5e63beb4b679">glm::lowp_f64</a></div><div class="ttdeci">double lowp_f64</div><div class="ttdoc">Low 64 bit double-qualifier floating-point scalar. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00163">fwd.hpp:163</a></div></div>
-<div class="ttc" id="a00304_html_ga5868c2dcce41cc3ea5edcaeae239f62c"><div class="ttname"><a href="a00304.html#ga5868c2dcce41cc3ea5edcaeae239f62c">glm::lowp_fmat4x2</a></div><div class="ttdeci">mat&lt; 4, 2, f32, lowp &gt; lowp_fmat4x2</div><div class="ttdoc">Low single-qualifier floating-point 4x2 matrix. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00636">fwd.hpp:636</a></div></div>
-<div class="ttc" id="a00282_html_ga7dd782c3ef5719bc6d5c3ca826b8ad18"><div class="ttname"><a href="a00282.html#ga7dd782c3ef5719bc6d5c3ca826b8ad18">glm::highp_ivec3</a></div><div class="ttdeci">vec&lt; 3, int, highp &gt; highp_ivec3</div><div class="ttdoc">3 components vector of high qualifier signed integer numbers. </div><div class="ttdef"><b>Definition:</b> <a href="a00219_source.html#l00016">vector_int3_precision.hpp:16</a></div></div>
-<div class="ttc" id="a00304_html_ga5a67a7440b9c0d1538533540f99036a5"><div class="ttname"><a href="a00304.html#ga5a67a7440b9c0d1538533540f99036a5">glm::highp_f64mat2x4</a></div><div class="ttdeci">mat&lt; 2, 4, f64, highp &gt; highp_f64mat2x4</div><div class="ttdoc">High double-qualifier floating-point 2x4 matrix. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00772">fwd.hpp:772</a></div></div>
-<div class="ttc" id="a00304_html_gad308e0ed27d64daa4213fb257fcbd5a5"><div class="ttname"><a href="a00304.html#gad308e0ed27d64daa4213fb257fcbd5a5">glm::highp_f64mat4</a></div><div class="ttdeci">mat&lt; 4, 4, f64, highp &gt; highp_f64mat4</div><div class="ttdoc">High double-qualifier floating-point 4x4 matrix. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00582">fwd.hpp:582</a></div></div>
-<div class="ttc" id="a00304_html_ga6addd4dfee87fc09ab9525e3d07db4c8"><div class="ttname"><a href="a00304.html#ga6addd4dfee87fc09ab9525e3d07db4c8">glm::mediump_i32vec4</a></div><div class="ttdeci">vec&lt; 4, i32, mediump &gt; mediump_i32vec4</div><div class="ttdoc">Medium qualifier 32 bit signed integer vector of 4 components type. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00270">fwd.hpp:270</a></div></div>
-<div class="ttc" id="a00304_html_ga52409bc6d4a2ce3421526c069220d685"><div class="ttname"><a href="a00304.html#ga52409bc6d4a2ce3421526c069220d685">glm::lowp_f32mat2</a></div><div class="ttdeci">mat&lt; 2, 2, f32, lowp &gt; lowp_f32mat2</div><div class="ttdoc">Low single-qualifier floating-point 1x1 matrix. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00540">fwd.hpp:540</a></div></div>
-<div class="ttc" id="a00304_html_gae8f5e3e964ca2ae240adc2c0d74adede"><div class="ttname"><a href="a00304.html#gae8f5e3e964ca2ae240adc2c0d74adede">glm::int16_t</a></div><div class="ttdeci">int16 int16_t</div><div class="ttdoc">16 bit signed integer type. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00057">fwd.hpp:57</a></div></div>
-<div class="ttc" id="a00283_html_ga0412a634d183587e6188e9b11869f8f4"><div class="ttname"><a href="a00283.html#ga0412a634d183587e6188e9b11869f8f4">glm::dmat3x4</a></div><div class="ttdeci">mat&lt; 3, 4, double, defaultp &gt; dmat3x4</div><div class="ttdoc">3 columns of 4 components matrix of double-precision floating-point numbers. </div><div class="ttdef"><b>Definition:</b> <a href="a00073_source.html#l00015">matrix_double3x4.hpp:15</a></div></div>
-<div class="ttc" id="a00284_html_gaf6bf2f5bde7ad5b9c289f777b93094af"><div class="ttname"><a href="a00284.html#gaf6bf2f5bde7ad5b9c289f777b93094af">glm::lowp_dmat2x3</a></div><div class="ttdeci">mat&lt; 2, 3, double, lowp &gt; lowp_dmat2x3</div><div class="ttdoc">2 columns of 3 components matrix of double-precision floating-point numbers using low precision arith...</div><div class="ttdef"><b>Definition:</b> <a href="a00066_source.html#l00016">matrix_double2x3_precision.hpp:16</a></div></div>
-<div class="ttc" id="a00304_html_gac25db6d2b1e2a0f351b77ba3409ac4cd"><div class="ttname"><a href="a00304.html#gac25db6d2b1e2a0f351b77ba3409ac4cd">glm::highp_i64</a></div><div class="ttdeci">int64 highp_i64</div><div class="ttdoc">High qualifier 64 bit signed integer type. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00075">fwd.hpp:75</a></div></div>
-<div class="ttc" id="a00284_html_gae7b75ea2e09fa686a79bbe9b6ca68ee5"><div class="ttname"><a href="a00284.html#gae7b75ea2e09fa686a79bbe9b6ca68ee5">glm::mediump_mat2x4</a></div><div class="ttdeci">mat&lt; 2, 4, float, mediump &gt; mediump_mat2x4</div><div class="ttdoc">2 columns of 4 components matrix of single-precision floating-point numbers using medium precision ar...</div><div class="ttdef"><b>Definition:</b> <a href="a00087_source.html#l00022">matrix_float2x4_precision.hpp:22</a></div></div>
-<div class="ttc" id="a00304_html_gad310b1dddeec9ec837a104e7db8de580"><div class="ttname"><a href="a00304.html#gad310b1dddeec9ec837a104e7db8de580">glm::highp_f64mat3x4</a></div><div class="ttdeci">mat&lt; 3, 4, f64, highp &gt; highp_f64mat3x4</div><div class="ttdoc">High double-qualifier floating-point 3x4 matrix. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00775">fwd.hpp:775</a></div></div>
-<div class="ttc" id="a00304_html_gaed2dc69e0d507d4191092dbd44b3eb75"><div class="ttname"><a href="a00304.html#gaed2dc69e0d507d4191092dbd44b3eb75">glm::highp_fmat3</a></div><div class="ttdeci">mat&lt; 3, 3, f32, highp &gt; highp_fmat3</div><div class="ttdoc">High single-qualifier floating-point 3x3 matrix. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00533">fwd.hpp:533</a></div></div>
-<div class="ttc" id="a00304_html_gacd80ad7640e9e32f2edcb8330b1ffe4f"><div class="ttname"><a href="a00304.html#gacd80ad7640e9e32f2edcb8330b1ffe4f">glm::mediump_f32mat3x3</a></div><div class="ttdeci">mat&lt; 3, 3, f32, mediump &gt; mediump_f32mat3x3</div><div class="ttdoc">Medium single-qualifier floating-point 3x3 matrix. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00684">fwd.hpp:684</a></div></div>
-<div class="ttc" id="a00304_html_ga5e52f485059ce6e3010c590b882602c9"><div class="ttname"><a href="a00304.html#ga5e52f485059ce6e3010c590b882602c9">glm::mediump_f64quat</a></div><div class="ttdeci">qua&lt; f64, mediump &gt; mediump_f64quat</div><div class="ttdoc">Medium double-qualifier floating-point quaternion. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00813">fwd.hpp:813</a></div></div>
-<div class="ttc" id="a00304_html_ga042ef09ff2f0cb24a36f541bcb3a3710"><div class="ttname"><a href="a00304.html#ga042ef09ff2f0cb24a36f541bcb3a3710">glm::int32_t</a></div><div class="ttdeci">int32 int32_t</div><div class="ttdoc">32 bit signed integer type. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00071">fwd.hpp:71</a></div></div>
-<div class="ttc" id="a00304_html_gadc4e1594f9555d919131ee02b17822a2"><div class="ttname"><a href="a00304.html#gadc4e1594f9555d919131ee02b17822a2">glm::f64vec2</a></div><div class="ttdeci">vec&lt; 2, f64, defaultp &gt; f64vec2</div><div class="ttdoc">Double-qualifier floating-point vector of 2 components. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00502">fwd.hpp:502</a></div></div>
-<div class="ttc" id="a00281_html_gaa57e96bb337867329d5f43bcc27c1095"><div class="ttname"><a href="a00281.html#gaa57e96bb337867329d5f43bcc27c1095">glm::uvec4</a></div><div class="ttdeci">vec&lt; 4, unsigned int, defaultp &gt; uvec4</div><div class="ttdoc">4 components vector of unsigned integer numbers. </div><div class="ttdef"><b>Definition:</b> <a href="a00232_source.html#l00015">vector_uint4.hpp:15</a></div></div>
-<div class="ttc" id="a00304_html_ga8dd3a3281ae5c970ffe0c41d538aa153"><div class="ttname"><a href="a00304.html#ga8dd3a3281ae5c970ffe0c41d538aa153">glm::lowp_uint64_t</a></div><div class="ttdeci">uint64 lowp_uint64_t</div><div class="ttdoc">Low qualifier 64 bit unsigned integer type. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00140">fwd.hpp:140</a></div></div>
-<div class="ttc" id="a00263_html_gab630f76c26b50298187f7889104d4b9c"><div class="ttname"><a href="a00263.html#gab630f76c26b50298187f7889104d4b9c">glm::uint64</a></div><div class="ttdeci">detail::uint64 uint64</div><div class="ttdoc">64 bit unsigned integer type. </div><div class="ttdef"><b>Definition:</b> <a href="a00151_source.html#l00067">scalar_uint_sized.hpp:67</a></div></div>
-<div class="ttc" id="a00304_html_ga5fde0fa4a3852a9dd5d637a92ee74718"><div class="ttname"><a href="a00304.html#ga5fde0fa4a3852a9dd5d637a92ee74718">glm::highp_int16</a></div><div class="ttdeci">int16 highp_int16</div><div class="ttdoc">High qualifier 16 bit signed integer type. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00052">fwd.hpp:52</a></div></div>
-<div class="ttc" id="a00283_html_ga66b6a9af787e468a46dfe24189e87f9b"><div class="ttname"><a href="a00283.html#ga66b6a9af787e468a46dfe24189e87f9b">glm::dmat2x2</a></div><div class="ttdeci">mat&lt; 2, 2, double, defaultp &gt; dmat2x2</div><div class="ttdoc">2 columns of 2 components matrix of double-precision floating-point numbers. </div><div class="ttdef"><b>Definition:</b> <a href="a00063_source.html#l00015">matrix_double2x2.hpp:15</a></div></div>
-<div class="ttc" id="a00304_html_gacc44265ed440bf5e6e566782570de842"><div class="ttname"><a href="a00304.html#gacc44265ed440bf5e6e566782570de842">glm::mediump_i16vec1</a></div><div class="ttdeci">vec&lt; 1, i16, mediump &gt; mediump_i16vec1</div><div class="ttdoc">Medium qualifier 16 bit signed integer scalar type. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00247">fwd.hpp:247</a></div></div>
-<div class="ttc" id="a00283_html_gaef2198807e937072803ae0ae45e1965e"><div class="ttname"><a href="a00283.html#gaef2198807e937072803ae0ae45e1965e">glm::dmat2x4</a></div><div class="ttdeci">mat&lt; 2, 4, double, defaultp &gt; dmat2x4</div><div class="ttdoc">2 columns of 4 components matrix of double-precision floating-point numbers. </div><div class="ttdef"><b>Definition:</b> <a href="a00067_source.html#l00015">matrix_double2x4.hpp:15</a></div></div>
-<div class="ttc" id="a00284_html_ga3647309010a2160e9ec89bc6f7c95c35"><div class="ttname"><a href="a00284.html#ga3647309010a2160e9ec89bc6f7c95c35">glm::highp_dmat3x2</a></div><div class="ttdeci">mat&lt; 3, 2, double, highp &gt; highp_dmat3x2</div><div class="ttdoc">3 columns of 2 components matrix of double-precision floating-point numbers using medium precision ar...</div><div class="ttdef"><b>Definition:</b> <a href="a00070_source.html#l00028">matrix_double3x2_precision.hpp:28</a></div></div>
-<div class="ttc" id="a00304_html_ga681381f19f11c9e5ee45cda2c56937ff"><div class="ttname"><a href="a00304.html#ga681381f19f11c9e5ee45cda2c56937ff">glm::fmat2x4</a></div><div class="ttdeci">mat&lt; 2, 4, f32, defaultp &gt; fmat2x4</div><div class="ttdoc">Single-qualifier floating-point 2x4 matrix. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00666">fwd.hpp:666</a></div></div>
-<div class="ttc" id="a00304_html_ga28635abcddb2f3e92c33c3f0fcc682ad"><div class="ttname"><a href="a00304.html#ga28635abcddb2f3e92c33c3f0fcc682ad">glm::highp_fmat2x2</a></div><div class="ttdeci">mat&lt; 2, 2, f32, highp &gt; highp_fmat2x2</div><div class="ttdoc">High single-qualifier floating-point 1x1 matrix. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00650">fwd.hpp:650</a></div></div>
-<div class="ttc" id="a00304_html_ga8b839abbb44f5102609eed89f6ed61f7"><div class="ttname"><a href="a00304.html#ga8b839abbb44f5102609eed89f6ed61f7">glm::highp_fvec4</a></div><div class="ttdeci">vec&lt; 4, float, highp &gt; highp_fvec4</div><div class="ttdoc">High Single-qualifier floating-point vector of 4 components. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00439">fwd.hpp:439</a></div></div>
-<div class="ttc" id="a00304_html_ga7c2cadb9b85cc7e0d125db21ca19dea4"><div class="ttname"><a href="a00304.html#ga7c2cadb9b85cc7e0d125db21ca19dea4">glm::highp_f64mat3x3</a></div><div class="ttdeci">mat&lt; 3, 3, f64, highp &gt; highp_f64mat3x3</div><div class="ttdoc">High double-qualifier floating-point 3x3 matrix. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00774">fwd.hpp:774</a></div></div>
-<div class="ttc" id="a00304_html_gaf5e94bf2a20af7601787c154751dc2e1"><div class="ttname"><a href="a00304.html#gaf5e94bf2a20af7601787c154751dc2e1">glm::mediump_i32</a></div><div class="ttdeci">int32 mediump_i32</div><div class="ttdoc">Medium qualifier 32 bit signed integer type. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00060">fwd.hpp:60</a></div></div>
-<div class="ttc" id="a00282_html_ga2384e263df19f1404b733016eff78fca"><div class="ttname"><a href="a00282.html#ga2384e263df19f1404b733016eff78fca">glm::mediump_vec3</a></div><div class="ttdeci">vec&lt; 3, float, mediump &gt; mediump_vec3</div><div class="ttdoc">3 components vector of medium single-qualifier floating-point numbers. </div><div class="ttdef"><b>Definition:</b> <a href="a00211_source.html#l00022">vector_float3_precision.hpp:22</a></div></div>
-<div class="ttc" id="a00304_html_ga2a7d997da9ac29cb931e35bd399f58df"><div class="ttname"><a href="a00304.html#ga2a7d997da9ac29cb931e35bd399f58df">glm::lowp_u16vec2</a></div><div class="ttdeci">vec&lt; 2, u16, lowp &gt; lowp_u16vec2</div><div class="ttdoc">Low qualifier 16 bit unsigned integer vector of 2 components type. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00345">fwd.hpp:345</a></div></div>
-<div class="ttc" id="a00304_html_ga22166f0da65038b447f3c5e534fff1c2"><div class="ttname"><a href="a00304.html#ga22166f0da65038b447f3c5e534fff1c2">glm::highp_u32vec4</a></div><div class="ttdeci">vec&lt; 4, u32, highp &gt; highp_u32vec4</div><div class="ttdoc">High qualifier 32 bit unsigned integer vector of 4 components type. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00377">fwd.hpp:377</a></div></div>
-<div class="ttc" id="a00283_html_ga9bc0b3ab8b6ba2cb6782e179ad7ad156"><div class="ttname"><a href="a00283.html#ga9bc0b3ab8b6ba2cb6782e179ad7ad156">glm::dmat4x2</a></div><div class="ttdeci">mat&lt; 4, 2, double, defaultp &gt; dmat4x2</div><div class="ttdoc">4 columns of 2 components matrix of double-precision floating-point numbers. </div><div class="ttdef"><b>Definition:</b> <a href="a00075_source.html#l00015">matrix_double4x2.hpp:15</a></div></div>
-<div class="ttc" id="a00282_html_ga0b4432cb8d910e406576d10d802e190d"><div class="ttname"><a href="a00282.html#ga0b4432cb8d910e406576d10d802e190d">glm::lowp_dvec4</a></div><div class="ttdeci">vec&lt; 4, double, lowp &gt; lowp_dvec4</div><div class="ttdoc">4 components vector of low double-qualifier floating-point numbers. </div><div class="ttdef"><b>Definition:</b> <a href="a00205_source.html#l00032">vector_double4_precision.hpp:32</a></div></div>
-<div class="ttc" id="a00304_html_gaea881cae4ddc6c0fbf7cc5b08177ca5b"><div class="ttname"><a href="a00304.html#gaea881cae4ddc6c0fbf7cc5b08177ca5b">glm::lowp_float32_t</a></div><div class="ttdeci">float lowp_float32_t</div><div class="ttdoc">Low 32 bit single-qualifier floating-point scalar. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00157">fwd.hpp:157</a></div></div>
-<div class="ttc" id="a00304_html_gaa46172d7dc1c7ffe3e78107ff88adf08"><div class="ttname"><a href="a00304.html#gaa46172d7dc1c7ffe3e78107ff88adf08">glm::highp_uint64_t</a></div><div class="ttdeci">uint64 highp_uint64_t</div><div class="ttdoc">High qualifier 64 bit unsigned integer type. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00142">fwd.hpp:142</a></div></div>
-<div class="ttc" id="a00304_html_gaf3b694b2b8ded7e0b9f07b061917e1a0"><div class="ttname"><a href="a00304.html#gaf3b694b2b8ded7e0b9f07b061917e1a0">glm::lowp_f32vec2</a></div><div class="ttdeci">vec&lt; 2, f32, lowp &gt; lowp_f32vec2</div><div class="ttdoc">Low single-qualifier floating-point vector of 2 components. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00447">fwd.hpp:447</a></div></div>
-<div class="ttc" id="a00304_html_ga31cef34e4cd04840c54741ff2f7005f0"><div class="ttname"><a href="a00304.html#ga31cef34e4cd04840c54741ff2f7005f0">glm::u32vec4</a></div><div class="ttdeci">vec&lt; 4, u32, defaultp &gt; u32vec4</div><div class="ttdoc">Default qualifier 32 bit unsigned integer vector of 4 components type. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00382">fwd.hpp:382</a></div></div>
-<div class="ttc" id="a00304_html_gac1281da5ded55047e8892b0e1f1ae965"><div class="ttname"><a href="a00304.html#gac1281da5ded55047e8892b0e1f1ae965">glm::mediump_f64mat2</a></div><div class="ttdeci">mat&lt; 2, 2, f64, mediump &gt; mediump_f64mat2</div><div class="ttdoc">Medium double-qualifier floating-point 1x1 matrix. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00576">fwd.hpp:576</a></div></div>
-<div class="ttc" id="a00253_html_gad2a59409de1bb12ccb6eb692ee7e9d8d"><div class="ttname"><a href="a00253.html#gad2a59409de1bb12ccb6eb692ee7e9d8d">glm::mediump_quat</a></div><div class="ttdeci">qua&lt; float, mediump &gt; mediump_quat</div><div class="ttdoc">Quaternion of single-precision floating-point numbers using high precision arithmetic in term of ULPs...</div><div class="ttdef"><b>Definition:</b> <a href="a00132_source.html#l00029">quaternion_float_precision.hpp:29</a></div></div>
-<div class="ttc" id="a00304_html_ga66bffdd8e5c0d3ef9958bbab9ca1ba59"><div class="ttname"><a href="a00304.html#ga66bffdd8e5c0d3ef9958bbab9ca1ba59">glm::highp_f32mat4x3</a></div><div class="ttdeci">mat&lt; 4, 3, f32, highp &gt; highp_f32mat4x3</div><div class="ttdoc">High single-qualifier floating-point 4x3 matrix. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00697">fwd.hpp:697</a></div></div>
-<div class="ttc" id="a00282_html_ga7b2efbdd6bdc2f8250c57f3e5dc9a292"><div class="ttname"><a href="a00282.html#ga7b2efbdd6bdc2f8250c57f3e5dc9a292">glm::lowp_uvec3</a></div><div class="ttdeci">vec&lt; 3, unsigned int, lowp &gt; lowp_uvec3</div><div class="ttdoc">3 components vector of low qualifier unsigned integer numbers. </div><div class="ttdef"><b>Definition:</b> <a href="a00231_source.html#l00028">vector_uint3_precision.hpp:28</a></div></div>
-<div class="ttc" id="a00284_html_ga2df7cdaf9a571ce7a1b09435f502c694"><div class="ttname"><a href="a00284.html#ga2df7cdaf9a571ce7a1b09435f502c694">glm::lowp_mat2x2</a></div><div class="ttdeci">mat&lt; 2, 2, float, lowp &gt; lowp_mat2x2</div><div class="ttdoc">2 columns of 2 components matrix of single-precision floating-point numbers using low precision arith...</div><div class="ttdef"><b>Definition:</b> <a href="a00083_source.html#l00034">matrix_float2x2_precision.hpp:34</a></div></div>
-<div class="ttc" id="a00304_html_ga38e674196ba411d642be40c47bf33939"><div class="ttname"><a href="a00304.html#ga38e674196ba411d642be40c47bf33939">glm::f32quat</a></div><div class="ttdeci">qua&lt; f32, defaultp &gt; f32quat</div><div class="ttdoc">Single-qualifier floating-point quaternion. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00805">fwd.hpp:805</a></div></div>
-<div class="ttc" id="a00260_html_gaff5189f97f9e842d9636a0f240001b2e"><div class="ttname"><a href="a00260.html#gaff5189f97f9e842d9636a0f240001b2e">glm::int64</a></div><div class="ttdeci">detail::int64 int64</div><div class="ttdoc">64 bit signed integer type. </div><div class="ttdef"><b>Definition:</b> <a href="a00146_source.html#l00067">scalar_int_sized.hpp:67</a></div></div>
-<div class="ttc" id="a00250_html_ga9e6e5f42e67dd5877350ba485c191f1c"><div class="ttname"><a href="a00250.html#ga9e6e5f42e67dd5877350ba485c191f1c">glm::lowp_dquat</a></div><div class="ttdeci">qua&lt; double, lowp &gt; lowp_dquat</div><div class="ttdoc">Quaternion of double-precision floating-point numbers using high precision arithmetic in term of ULPs...</div><div class="ttdef"><b>Definition:</b> <a href="a00129_source.html#l00028">quaternion_double_precision.hpp:28</a></div></div>
-<div class="ttc" id="a00304_html_gae4fe774744852c4d7d069be2e05257ab"><div class="ttname"><a href="a00304.html#gae4fe774744852c4d7d069be2e05257ab">glm::highp_u64vec1</a></div><div class="ttdeci">vec&lt; 1, u64, highp &gt; highp_u64vec1</div><div class="ttdoc">High qualifier 64 bit unsigned integer scalar type. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00394">fwd.hpp:394</a></div></div>
-<div class="ttc" id="a00284_html_gaa669c6675c3405f76c0b14020d1c0d61"><div class="ttname"><a href="a00284.html#gaa669c6675c3405f76c0b14020d1c0d61">glm::mediump_mat3x4</a></div><div class="ttdeci">mat&lt; 3, 4, float, mediump &gt; mediump_mat3x4</div><div class="ttdoc">3 columns of 4 components matrix of single-precision floating-point numbers using medium precision ar...</div><div class="ttdef"><b>Definition:</b> <a href="a00093_source.html#l00022">matrix_float3x4_precision.hpp:22</a></div></div>
-<div class="ttc" id="a00304_html_ga8342c7469384c6d769cacc9e309278d9"><div class="ttname"><a href="a00304.html#ga8342c7469384c6d769cacc9e309278d9">glm::highp_f64mat2x3</a></div><div class="ttdeci">mat&lt; 2, 3, f64, highp &gt; highp_f64mat2x3</div><div class="ttdoc">High double-qualifier floating-point 2x3 matrix. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00771">fwd.hpp:771</a></div></div>
-<div class="ttc" id="a00304_html_ga6d388e9b9aa1b389f0672d9c7dfc61c5"><div class="ttname"><a href="a00304.html#ga6d388e9b9aa1b389f0672d9c7dfc61c5">glm::lowp_i8vec4</a></div><div class="ttdeci">vec&lt; 4, i8, lowp &gt; lowp_i8vec4</div><div class="ttdoc">Low qualifier 8 bit signed integer vector of 4 components type. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00225">fwd.hpp:225</a></div></div>
-<div class="ttc" id="a00304_html_ga5e649bbdb135fbcb4bfe950f4c73a444"><div class="ttname"><a href="a00304.html#ga5e649bbdb135fbcb4bfe950f4c73a444">glm::lowp_fmat4x3</a></div><div class="ttdeci">mat&lt; 4, 3, f32, lowp &gt; lowp_fmat4x3</div><div class="ttdoc">Low single-qualifier floating-point 4x3 matrix. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00637">fwd.hpp:637</a></div></div>
-<div class="ttc" id="a00304_html_gabe6a542dd6c1d5ffd847f1b9b4c9c9b7"><div class="ttname"><a href="a00304.html#gabe6a542dd6c1d5ffd847f1b9b4c9c9b7">glm::f32</a></div><div class="ttdeci">float f32</div><div class="ttdoc">Default 32 bit single-qualifier floating-point scalar. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00150">fwd.hpp:150</a></div></div>
-<div class="ttc" id="a00304_html_gaa9b4579f8e6f3d9b649a965bcb785530"><div class="ttname"><a href="a00304.html#gaa9b4579f8e6f3d9b649a965bcb785530">glm::highp_i32vec2</a></div><div class="ttdeci">vec&lt; 2, i32, highp &gt; highp_i32vec2</div><div class="ttdoc">High qualifier 32 bit signed integer vector of 2 components type. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00273">fwd.hpp:273</a></div></div>
-<div class="ttc" id="a00304_html_ga4a43050843b141bdc7e85437faef6f55"><div class="ttname"><a href="a00304.html#ga4a43050843b141bdc7e85437faef6f55">glm::mediump_u8vec1</a></div><div class="ttdeci">vec&lt; 1, u8, mediump &gt; mediump_u8vec1</div><div class="ttdoc">Medium qualifier 8 bit unsigned integer scalar type. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00329">fwd.hpp:329</a></div></div>
-<div class="ttc" id="a00304_html_gae406ec670f64170a7437b5e302eeb2cb"><div class="ttname"><a href="a00304.html#gae406ec670f64170a7437b5e302eeb2cb">glm::highp_fmat4x3</a></div><div class="ttdeci">mat&lt; 4, 3, f32, highp &gt; highp_fmat4x3</div><div class="ttdoc">High single-qualifier floating-point 4x3 matrix. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00657">fwd.hpp:657</a></div></div>
-<div class="ttc" id="a00283_html_ga001e3e0638fbf8719788fc64c5b8cf39"><div class="ttname"><a href="a00283.html#ga001e3e0638fbf8719788fc64c5b8cf39">glm::dmat3x2</a></div><div class="ttdeci">mat&lt; 3, 2, double, defaultp &gt; dmat3x2</div><div class="ttdoc">3 columns of 2 components matrix of double-precision floating-point numbers. </div><div class="ttdef"><b>Definition:</b> <a href="a00069_source.html#l00015">matrix_double3x2.hpp:15</a></div></div>
-<div class="ttc" id="a00304_html_gaf52982bb23e3a3772649b2c5bb84b107"><div class="ttname"><a href="a00304.html#gaf52982bb23e3a3772649b2c5bb84b107">glm::mediump_i16vec4</a></div><div class="ttdeci">vec&lt; 4, i16, mediump &gt; mediump_i16vec4</div><div class="ttdoc">Medium qualifier 16 bit signed integer vector of 4 components type. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00250">fwd.hpp:250</a></div></div>
-<div class="ttc" id="a00304_html_gab7daf79d6bc06a68bea1c6f5e11b5512"><div class="ttname"><a href="a00304.html#gab7daf79d6bc06a68bea1c6f5e11b5512">glm::f64mat4x2</a></div><div class="ttdeci">mat&lt; 4, 2, f64, defaultp &gt; f64mat4x2</div><div class="ttdoc">Double-qualifier floating-point 4x2 matrix. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00782">fwd.hpp:782</a></div></div>
-<div class="ttc" id="a00304_html_ga55a2d2a8eb09b5633668257eb3cad453"><div class="ttname"><a href="a00304.html#ga55a2d2a8eb09b5633668257eb3cad453">glm::fmat2x3</a></div><div class="ttdeci">mat&lt; 2, 3, f32, defaultp &gt; fmat2x3</div><div class="ttdoc">Single-qualifier floating-point 2x3 matrix. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00663">fwd.hpp:663</a></div></div>
-<div class="ttc" id="a00304_html_gaa805ef691c711dc41e2776cfb67f5cf5"><div class="ttname"><a href="a00304.html#gaa805ef691c711dc41e2776cfb67f5cf5">glm::mediump_f64mat4</a></div><div class="ttdeci">mat&lt; 4, 4, f64, mediump &gt; mediump_f64mat4</div><div class="ttdoc">Medium double-qualifier floating-point 4x4 matrix. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00578">fwd.hpp:578</a></div></div>
-<div class="ttc" id="a00304_html_gaaf4ee3b76d43d98da02ec399b99bda4b"><div class="ttname"><a href="a00304.html#gaaf4ee3b76d43d98da02ec399b99bda4b">glm::mediump_u8vec4</a></div><div class="ttdeci">vec&lt; 4, u8, mediump &gt; mediump_u8vec4</div><div class="ttdoc">Medium qualifier 8 bit unsigned integer vector of 4 components type. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00332">fwd.hpp:332</a></div></div>
-<div class="ttc" id="a00282_html_gab24dc20dcdc5b71282634bdbf6b70105"><div class="ttname"><a href="a00282.html#gab24dc20dcdc5b71282634bdbf6b70105">glm::highp_dvec3</a></div><div class="ttdeci">vec&lt; 3, double, highp &gt; highp_dvec3</div><div class="ttdoc">3 components vector of high double-qualifier floating-point numbers. </div><div class="ttdef"><b>Definition:</b> <a href="a00203_source.html#l00017">vector_double3_precision.hpp:17</a></div></div>
-<div class="ttc" id="a00304_html_ga21b1b22dec013a72656e3644baf8a1e1"><div class="ttname"><a href="a00304.html#ga21b1b22dec013a72656e3644baf8a1e1">glm::lowp_f32mat3x4</a></div><div class="ttdeci">mat&lt; 3, 4, f32, lowp &gt; lowp_f32mat3x4</div><div class="ttdoc">Low single-qualifier floating-point 3x4 matrix. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00675">fwd.hpp:675</a></div></div>
-<div class="ttc" id="a00304_html_gac61843e4fa96c1f4e9d8316454f32a8e"><div class="ttname"><a href="a00304.html#gac61843e4fa96c1f4e9d8316454f32a8e">glm::mediump_float64_t</a></div><div class="ttdeci">double mediump_float64_t</div><div class="ttdoc">Medium 64 bit double-qualifier floating-point scalar. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00174">fwd.hpp:174</a></div></div>
-<div class="ttc" id="a00284_html_ga2352ae43b284c9f71446674c0208c05d"><div class="ttname"><a href="a00284.html#ga2352ae43b284c9f71446674c0208c05d">glm::highp_mat2x2</a></div><div class="ttdeci">mat&lt; 2, 2, float, highp &gt; highp_mat2x2</div><div class="ttdoc">2 columns of 2 components matrix of single-precision floating-point numbers using high precision arit...</div><div class="ttdef"><b>Definition:</b> <a href="a00083_source.html#l00046">matrix_float2x2_precision.hpp:46</a></div></div>
-<div class="ttc" id="a00284_html_ga534c3ef5c3b8fdd8656b6afc205b4b77"><div class="ttname"><a href="a00284.html#ga534c3ef5c3b8fdd8656b6afc205b4b77">glm::lowp_mat4x3</a></div><div class="ttdeci">mat&lt; 4, 3, float, lowp &gt; lowp_mat4x3</div><div class="ttdoc">4 columns of 3 components matrix of single-precision floating-point numbers using low precision arith...</div><div class="ttdef"><b>Definition:</b> <a href="a00097_source.html#l00016">matrix_float4x3_precision.hpp:16</a></div></div>
-<div class="ttc" id="a00304_html_ga7c0d196f5fa79f7e892a2f323a0be1ae"><div class="ttname"><a href="a00304.html#ga7c0d196f5fa79f7e892a2f323a0be1ae">glm::highp_fvec2</a></div><div class="ttdeci">vec&lt; 2, float, highp &gt; highp_fvec2</div><div class="ttdoc">High Single-qualifier floating-point vector of 2 components. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00437">fwd.hpp:437</a></div></div>
-<div class="ttc" id="a00304_html_gaa2d7acc0adb536fab71fe261232a40ff"><div class="ttname"><a href="a00304.html#gaa2d7acc0adb536fab71fe261232a40ff">glm::u16</a></div><div class="ttdeci">uint16 u16</div><div class="ttdoc">Default qualifier 16 bit unsigned integer type. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00106">fwd.hpp:106</a></div></div>
-<div class="ttc" id="a00304_html_ga354736e0c645099cd44c42fb2f87c2b8"><div class="ttname"><a href="a00304.html#ga354736e0c645099cd44c42fb2f87c2b8">glm::lowp_i64</a></div><div class="ttdeci">int64 lowp_i64</div><div class="ttdoc">Low qualifier 64 bit signed integer type. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00073">fwd.hpp:73</a></div></div>
-<div class="ttc" id="a00277_html_ga8bf3fc8a7863d140f48b29341c750402"><div class="ttname"><a href="a00277.html#ga8bf3fc8a7863d140f48b29341c750402">glm::lowp_uvec1</a></div><div class="ttdeci">vec&lt; 1, unsigned int, lowp &gt; lowp_uvec1</div><div class="ttdoc">1 component vector of unsigned integer values. </div><div class="ttdef"><b>Definition:</b> <a href="a00227_source.html#l00037">vector_uint1_precision.hpp:37</a></div></div>
-<div class="ttc" id="a00281_html_ga6f9269106d91b2d2b91bcf27cd5f5560"><div class="ttname"><a href="a00281.html#ga6f9269106d91b2d2b91bcf27cd5f5560">glm::ivec2</a></div><div class="ttdeci">vec&lt; 2, int, defaultp &gt; ivec2</div><div class="ttdoc">2 components vector of signed integer numbers. </div><div class="ttdef"><b>Definition:</b> <a href="a00216_source.html#l00015">vector_int2.hpp:15</a></div></div>
-<div class="ttc" id="a00304_html_ga99d1b85ff99956b33da7e9992aad129a"><div class="ttname"><a href="a00304.html#ga99d1b85ff99956b33da7e9992aad129a">glm::f32mat4</a></div><div class="ttdeci">mat&lt; 4, 4, f32, defaultp &gt; f32mat4</div><div class="ttdoc">Single-qualifier floating-point 4x4 matrix. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00554">fwd.hpp:554</a></div></div>
-<div class="ttc" id="a00304_html_gacea38a85893e17e6834b6cb09a9ad0cf"><div class="ttname"><a href="a00304.html#gacea38a85893e17e6834b6cb09a9ad0cf">glm::mediump_fmat4x2</a></div><div class="ttdeci">mat&lt; 4, 2, f32, mediump &gt; mediump_fmat4x2</div><div class="ttdoc">Medium single-qualifier floating-point 4x2 matrix. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00646">fwd.hpp:646</a></div></div>
-<div class="ttc" id="a00304_html_gafc730f6b4242763b0eda0ffa25150292"><div class="ttname"><a href="a00304.html#gafc730f6b4242763b0eda0ffa25150292">glm::lowp_f64mat2</a></div><div class="ttdeci">mat&lt; 2, 2, f64, lowp &gt; lowp_f64mat2</div><div class="ttdoc">Low double-qualifier floating-point 1x1 matrix. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00572">fwd.hpp:572</a></div></div>
-<div class="ttc" id="a00304_html_ga6d7b3789ecb932c26430009478cac7ae"><div class="ttname"><a href="a00304.html#ga6d7b3789ecb932c26430009478cac7ae">glm::mediump_int8_t</a></div><div class="ttdeci">int8 mediump_int8_t</div><div class="ttdoc">Medium qualifier 8 bit signed integer type. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00041">fwd.hpp:41</a></div></div>
-<div class="ttc" id="a00304_html_gaba56275dd04a7a61560b0e8fa5d365b4"><div class="ttname"><a href="a00304.html#gaba56275dd04a7a61560b0e8fa5d365b4">glm::lowp_fmat3x3</a></div><div class="ttdeci">mat&lt; 3, 3, f32, lowp &gt; lowp_fmat3x3</div><div class="ttdoc">Low single-qualifier floating-point 3x3 matrix. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00634">fwd.hpp:634</a></div></div>
-<div class="ttc" id="a00304_html_ga7286a37076a09da140df18bfa75d4e38"><div class="ttname"><a href="a00304.html#ga7286a37076a09da140df18bfa75d4e38">glm::lowp_float64_t</a></div><div class="ttdeci">double lowp_float64_t</div><div class="ttdoc">Low 64 bit double-qualifier floating-point scalar. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00173">fwd.hpp:173</a></div></div>
-<div class="ttc" id="a00304_html_gacaea06d0a79ef3172e887a7a6ba434ff"><div class="ttname"><a href="a00304.html#gacaea06d0a79ef3172e887a7a6ba434ff">glm::highp_int16_t</a></div><div class="ttdeci">int16 highp_int16_t</div><div class="ttdoc">High qualifier 16 bit signed integer type. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00056">fwd.hpp:56</a></div></div>
-<div class="ttc" id="a00304_html_gaa5b44d3ef6efcf33f44876673a7a936e"><div class="ttname"><a href="a00304.html#gaa5b44d3ef6efcf33f44876673a7a936e">glm::highp_fmat3x3</a></div><div class="ttdeci">mat&lt; 3, 3, f32, highp &gt; highp_fmat3x3</div><div class="ttdoc">High single-qualifier floating-point 3x3 matrix. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00654">fwd.hpp:654</a></div></div>
-<div class="ttc" id="a00283_html_ga0f34486bb7fec8e5a5b3830b6a6cbeca"><div class="ttname"><a href="a00283.html#ga0f34486bb7fec8e5a5b3830b6a6cbeca">glm::dmat4</a></div><div class="ttdeci">mat&lt; 4, 4, double, defaultp &gt; dmat4</div><div class="ttdoc">4 columns of 4 components matrix of double-precision floating-point numbers. </div><div class="ttdef"><b>Definition:</b> <a href="a00079_source.html#l00020">matrix_double4x4.hpp:20</a></div></div>
-<div class="ttc" id="a00304_html_ga2b65767f8b5aed1bd1cf86c541662b50"><div class="ttname"><a href="a00304.html#ga2b65767f8b5aed1bd1cf86c541662b50">glm::i64vec1</a></div><div class="ttdeci">vec&lt; 1, i64, defaultp &gt; i64vec1</div><div class="ttdoc">64 bit signed integer scalar type. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00297">fwd.hpp:297</a></div></div>
-<div class="ttc" id="a00304_html_ga4f072ada9552e1e480bbb3b1acde5250"><div class="ttname"><a href="a00304.html#ga4f072ada9552e1e480bbb3b1acde5250">glm::lowp_u32</a></div><div class="ttdeci">uint32 lowp_u32</div><div class="ttdoc">Low qualifier 32 bit unsigned integer type. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00117">fwd.hpp:117</a></div></div>
-<div class="ttc" id="a00284_html_ga4a1440b5ea3cf84d5b06c79b534bd770"><div class="ttname"><a href="a00284.html#ga4a1440b5ea3cf84d5b06c79b534bd770">glm::mediump_mat4x3</a></div><div class="ttdeci">mat&lt; 4, 3, float, mediump &gt; mediump_mat4x3</div><div class="ttdoc">4 columns of 3 components matrix of single-precision floating-point numbers using medium precision ar...</div><div class="ttdef"><b>Definition:</b> <a href="a00097_source.html#l00022">matrix_float4x3_precision.hpp:22</a></div></div>
-<div class="ttc" id="a00304_html_ga4b2e0e10d8d154fec9cab50e216588ec"><div class="ttname"><a href="a00304.html#ga4b2e0e10d8d154fec9cab50e216588ec">glm::lowp_u8vec1</a></div><div class="ttdeci">vec&lt; 1, u8, lowp &gt; lowp_u8vec1</div><div class="ttdoc">Low qualifier 8 bit unsigned integer scalar type. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00324">fwd.hpp:324</a></div></div>
-<div class="ttc" id="a00304_html_ga8089722ffdf868cdfe721dea1fb6a90e"><div class="ttname"><a href="a00304.html#ga8089722ffdf868cdfe721dea1fb6a90e">glm::mediump_i64vec3</a></div><div class="ttdeci">vec&lt; 3, i64, mediump &gt; mediump_i64vec3</div><div class="ttdoc">Medium qualifier 64 bit signed integer vector of 3 components type. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00289">fwd.hpp:289</a></div></div>
-<div class="ttc" id="a00272_html_gaedd0562c2e77714929d7723a7e2e0dba"><div class="ttname"><a href="a00272.html#gaedd0562c2e77714929d7723a7e2e0dba">glm::ivec1</a></div><div class="ttdeci">vec&lt; 1, int, defaultp &gt; ivec1</div><div class="ttdoc">1 component vector of signed integer numbers. </div><div class="ttdef"><b>Definition:</b> <a href="a00214_source.html#l00028">vector_int1.hpp:28</a></div></div>
-<div class="ttc" id="a00304_html_ga4252cf7f5b0e3cd47c3d3badf0ef43b3"><div class="ttname"><a href="a00304.html#ga4252cf7f5b0e3cd47c3d3badf0ef43b3">glm::highp_f32quat</a></div><div class="ttdeci">qua&lt; f32, highp &gt; highp_f32quat</div><div class="ttdoc">High single-qualifier floating-point quaternion. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00804">fwd.hpp:804</a></div></div>
-<div class="ttc" id="a00304_html_ga8e62c883d13f47015f3b70ed88751369"><div class="ttname"><a href="a00304.html#ga8e62c883d13f47015f3b70ed88751369">glm::highp_u16</a></div><div class="ttdeci">uint16 highp_u16</div><div class="ttdoc">High qualifier 16 bit unsigned integer type. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00105">fwd.hpp:105</a></div></div>
-<div class="ttc" id="a00304_html_ga98b9ed43cf8c5cf1d354b23c7df9119f"><div class="ttname"><a href="a00304.html#ga98b9ed43cf8c5cf1d354b23c7df9119f">glm::fvec1</a></div><div class="ttdeci">vec&lt; 1, f32, defaultp &gt; fvec1</div><div class="ttdoc">Single-qualifier floating-point vector of 1 component. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00441">fwd.hpp:441</a></div></div>
-<div class="ttc" id="a00284_html_ga9e1c9ee65fef547bde793e69723e24eb"><div class="ttname"><a href="a00284.html#ga9e1c9ee65fef547bde793e69723e24eb">glm::mediump_mat3x2</a></div><div class="ttdeci">mat&lt; 3, 2, float, mediump &gt; mediump_mat3x2</div><div class="ttdoc">3 columns of 2 components matrix of single-precision floating-point numbers using medium precision ar...</div><div class="ttdef"><b>Definition:</b> <a href="a00089_source.html#l00022">matrix_float3x2_precision.hpp:22</a></div></div>
-<div class="ttc" id="a00282_html_ga5a5452140650988b94d5716e4d872465"><div class="ttname"><a href="a00282.html#ga5a5452140650988b94d5716e4d872465">glm::lowp_bvec2</a></div><div class="ttdeci">vec&lt; 2, bool, lowp &gt; lowp_bvec2</div><div class="ttdoc">2 components vector of low qualifier bool numbers. </div><div class="ttdef"><b>Definition:</b> <a href="a00192_source.html#l00028">vector_bool2_precision.hpp:28</a></div></div>
-<div class="ttc" id="a00304_html_ga907f85d4a0eac3d8aaf571e5c2647194"><div class="ttname"><a href="a00304.html#ga907f85d4a0eac3d8aaf571e5c2647194">glm::mediump_u8vec2</a></div><div class="ttdeci">vec&lt; 2, u8, mediump &gt; mediump_u8vec2</div><div class="ttdoc">Medium qualifier 8 bit unsigned integer vector of 2 components type. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00330">fwd.hpp:330</a></div></div>
-<div class="ttc" id="a00304_html_ga0350631d35ff800e6133ac6243b13cbc"><div class="ttname"><a href="a00304.html#ga0350631d35ff800e6133ac6243b13cbc">glm::lowp_int32_t</a></div><div class="ttdeci">int32 lowp_int32_t</div><div class="ttdoc">Low qualifier 32 bit signed integer type. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00068">fwd.hpp:68</a></div></div>
-<div class="ttc" id="a00304_html_gaa6aab4ee7189b86716f5d7015d43021d"><div class="ttname"><a href="a00304.html#gaa6aab4ee7189b86716f5d7015d43021d">glm::lowp_u16vec1</a></div><div class="ttdeci">vec&lt; 1, u16, lowp &gt; lowp_u16vec1</div><div class="ttdoc">Low qualifier 16 bit unsigned integer scalar type. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00344">fwd.hpp:344</a></div></div>
-<div class="ttc" id="a00304_html_gaee80c7cd3caa0f2635058656755f6f69"><div class="ttname"><a href="a00304.html#gaee80c7cd3caa0f2635058656755f6f69">glm::highp_fmat4x4</a></div><div class="ttdeci">mat&lt; 4, 4, f32, highp &gt; highp_fmat4x4</div><div class="ttdoc">High single-qualifier floating-point 4x4 matrix. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00658">fwd.hpp:658</a></div></div>
-<div class="ttc" id="a00304_html_gaa5086dbd6efb272d13fc88829330861d"><div class="ttname"><a href="a00304.html#gaa5086dbd6efb272d13fc88829330861d">glm::highp_f32mat3x4</a></div><div class="ttdeci">mat&lt; 3, 4, f32, highp &gt; highp_f32mat3x4</div><div class="ttdoc">High single-qualifier floating-point 3x4 matrix. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00695">fwd.hpp:695</a></div></div>
-<div class="ttc" id="a00281_html_ga197151b72dfaf289daf98b361760ffe7"><div class="ttname"><a href="a00281.html#ga197151b72dfaf289daf98b361760ffe7">glm::bvec3</a></div><div class="ttdeci">vec&lt; 3, bool, defaultp &gt; bvec3</div><div class="ttdoc">3 components vector of boolean. </div><div class="ttdef"><b>Definition:</b> <a href="a00193_source.html#l00015">vector_bool3.hpp:15</a></div></div>
-<div class="ttc" id="a00304_html_ga5d6c70e080409a76a257dc55bd8ea2c8"><div class="ttname"><a href="a00304.html#ga5d6c70e080409a76a257dc55bd8ea2c8">glm::f32vec2</a></div><div class="ttdeci">vec&lt; 2, f32, defaultp &gt; f32vec2</div><div class="ttdoc">Single-qualifier floating-point vector of 2 components. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00462">fwd.hpp:462</a></div></div>
-<div class="ttc" id="a00304_html_gacfd806749008f0ade6ac4bb9dd91082f"><div class="ttname"><a href="a00304.html#gacfd806749008f0ade6ac4bb9dd91082f">glm::highp_u16vec3</a></div><div class="ttdeci">vec&lt; 3, u16, highp &gt; highp_u16vec3</div><div class="ttdoc">High qualifier 16 bit unsigned integer vector of 3 components type. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00356">fwd.hpp:356</a></div></div>
-<div class="ttc" id="a00304_html_gae4dee61f8fe1caccec309fbed02faf12"><div class="ttname"><a href="a00304.html#gae4dee61f8fe1caccec309fbed02faf12">glm::mediump_float32_t</a></div><div class="ttdeci">float mediump_float32_t</div><div class="ttdoc">Medium 32 bit single-qualifier floating-point scalar. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00158">fwd.hpp:158</a></div></div>
-<div class="ttc" id="a00304_html_ga3350c93c3275298f940a42875388e4b4"><div class="ttname"><a href="a00304.html#ga3350c93c3275298f940a42875388e4b4">glm::fmat2x2</a></div><div class="ttdeci">mat&lt; 2, 2, f32, defaultp &gt; fmat2x2</div><div class="ttdoc">Single-qualifier floating-point 1x1 matrix. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00660">fwd.hpp:660</a></div></div>
-<div class="ttc" id="a00304_html_ga3b27fcd9eaa2757f0aaf6b0ce0d85c80"><div class="ttname"><a href="a00304.html#ga3b27fcd9eaa2757f0aaf6b0ce0d85c80">glm::mediump_f32</a></div><div class="ttdeci">float mediump_f32</div><div class="ttdoc">Medium 32 bit single-qualifier floating-point scalar. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00148">fwd.hpp:148</a></div></div>
-<div class="ttc" id="a00304_html_ga936e95b881ecd2d109459ca41913fa99"><div class="ttname"><a href="a00304.html#ga936e95b881ecd2d109459ca41913fa99">glm::mediump_f32mat4x4</a></div><div class="ttdeci">mat&lt; 4, 4, f32, mediump &gt; mediump_f32mat4x4</div><div class="ttdoc">Medium single-qualifier floating-point 4x4 matrix. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00688">fwd.hpp:688</a></div></div>
-<div class="ttc" id="a00253_html_gade62c5316c1c11a79c34c00c189558eb"><div class="ttname"><a href="a00253.html#gade62c5316c1c11a79c34c00c189558eb">glm::lowp_quat</a></div><div class="ttdeci">qua&lt; float, lowp &gt; lowp_quat</div><div class="ttdoc">Quaternion of single-precision floating-point numbers using high precision arithmetic in term of ULPs...</div><div class="ttdef"><b>Definition:</b> <a href="a00132_source.html#l00026">quaternion_float_precision.hpp:26</a></div></div>
-<div class="ttc" id="a00304_html_gad6eb11412a3161ca8dc1d63b2a307c4b"><div class="ttname"><a href="a00304.html#gad6eb11412a3161ca8dc1d63b2a307c4b">glm::mediump_f32vec2</a></div><div class="ttdeci">vec&lt; 2, f32, mediump &gt; mediump_f32vec2</div><div class="ttdoc">Medium single-qualifier floating-point vector of 2 components. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00452">fwd.hpp:452</a></div></div>
-<div class="ttc" id="a00304_html_ga760bcf26fdb23a2c3ecad3c928a19ae6"><div class="ttname"><a href="a00304.html#ga760bcf26fdb23a2c3ecad3c928a19ae6">glm::lowp_int8</a></div><div class="ttdeci">int8 lowp_int8</div><div class="ttdoc">Low qualifier 8 bit signed integer type. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00036">fwd.hpp:36</a></div></div>
-<div class="ttc" id="a00283_html_ga493ab21243abe564b3f7d381e677d29a"><div class="ttname"><a href="a00283.html#ga493ab21243abe564b3f7d381e677d29a">glm::mat2x3</a></div><div class="ttdeci">mat&lt; 2, 3, float, defaultp &gt; mat2x3</div><div class="ttdoc">2 columns of 3 components matrix of single-precision floating-point numbers. </div><div class="ttdef"><b>Definition:</b> <a href="a00084_source.html#l00015">matrix_float2x3.hpp:15</a></div></div>
-<div class="ttc" id="a00304_html_gaf2d02c5f4d59135b9bc524fe317fd26b"><div class="ttname"><a href="a00304.html#gaf2d02c5f4d59135b9bc524fe317fd26b">glm::lowp_f64vec1</a></div><div class="ttdeci">vec&lt; 1, f64, lowp &gt; lowp_f64vec1</div><div class="ttdoc">Low double-qualifier floating-point vector of 1 component. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00486">fwd.hpp:486</a></div></div>
-<div class="ttc" id="a00304_html_ga36537e701456f12c20e73f469cac4967"><div class="ttname"><a href="a00304.html#ga36537e701456f12c20e73f469cac4967">glm::highp_f32mat3x2</a></div><div class="ttdeci">mat&lt; 3, 2, f32, highp &gt; highp_f32mat3x2</div><div class="ttdoc">High single-qualifier floating-point 3x2 matrix. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00693">fwd.hpp:693</a></div></div>
-<div class="ttc" id="a00304_html_gacd926d36a72433f6cac51dd60fa13107"><div class="ttname"><a href="a00304.html#gacd926d36a72433f6cac51dd60fa13107">glm::mediump_f64mat3x2</a></div><div class="ttdeci">mat&lt; 3, 2, f64, mediump &gt; mediump_f64mat3x2</div><div class="ttdoc">Medium double-qualifier floating-point 3x2 matrix. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00763">fwd.hpp:763</a></div></div>
-<div class="ttc" id="a00284_html_ga939fbf9c53008a8e84c7dd7cf8de29e2"><div class="ttname"><a href="a00284.html#ga939fbf9c53008a8e84c7dd7cf8de29e2">glm::mediump_dmat3</a></div><div class="ttdeci">mat&lt; 3, 3, double, mediump &gt; mediump_dmat3</div><div class="ttdoc">3 columns of 3 components matrix of double-precision floating-point numbers using medium precision ar...</div><div class="ttdef"><b>Definition:</b> <a href="a00072_source.html#l00022">matrix_double3x3_precision.hpp:22</a></div></div>
-<div class="ttc" id="a00304_html_gaddc6f7748b699254942c5216b68f8f7f"><div class="ttname"><a href="a00304.html#gaddc6f7748b699254942c5216b68f8f7f">glm::mediump_u8vec3</a></div><div class="ttdeci">vec&lt; 3, u8, mediump &gt; mediump_u8vec3</div><div class="ttdoc">Medium qualifier 8 bit unsigned integer vector of 3 components type. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00331">fwd.hpp:331</a></div></div>
-<div class="ttc" id="a00283_html_ga92cd388753d48e20de69ea2dbedf826a"><div class="ttname"><a href="a00283.html#ga92cd388753d48e20de69ea2dbedf826a">glm::dmat2x3</a></div><div class="ttdeci">mat&lt; 2, 3, double, defaultp &gt; dmat2x3</div><div class="ttdoc">2 columns of 3 components matrix of double-precision floating-point numbers. </div><div class="ttdef"><b>Definition:</b> <a href="a00065_source.html#l00015">matrix_double2x3.hpp:15</a></div></div>
-<div class="ttc" id="a00304_html_ga8c9cd734e03cd49674f3e287aa4a6f95"><div class="ttname"><a href="a00304.html#ga8c9cd734e03cd49674f3e287aa4a6f95">glm::lowp_f64mat4x4</a></div><div class="ttdeci">mat&lt; 4, 4, f64, lowp &gt; lowp_f64mat4x4</div><div class="ttdoc">Low double-qualifier floating-point 4x4 matrix. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00758">fwd.hpp:758</a></div></div>
-<div class="ttc" id="a00304_html_ga501a2f313f1c220eef4ab02bdabdc3c6"><div class="ttname"><a href="a00304.html#ga501a2f313f1c220eef4ab02bdabdc3c6">glm::lowp_i16vec1</a></div><div class="ttdeci">vec&lt; 1, i16, lowp &gt; lowp_i16vec1</div><div class="ttdoc">Low qualifier 16 bit signed integer scalar type. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00242">fwd.hpp:242</a></div></div>
-<div class="ttc" id="a00281_html_ga5b83ae3d0fdec519c038e4d2cf967cf0"><div class="ttname"><a href="a00281.html#ga5b83ae3d0fdec519c038e4d2cf967cf0">glm::dvec3</a></div><div class="ttdeci">vec&lt; 3, double, defaultp &gt; dvec3</div><div class="ttdoc">3 components vector of double-precision floating-point numbers. </div><div class="ttdef"><b>Definition:</b> <a href="a00202_source.html#l00015">vector_double3.hpp:15</a></div></div>
-<div class="ttc" id="a00284_html_ga97507a31ecee8609887d0f23bbde92c7"><div class="ttname"><a href="a00284.html#ga97507a31ecee8609887d0f23bbde92c7">glm::lowp_dmat2x4</a></div><div class="ttdeci">mat&lt; 2, 4, double, lowp &gt; lowp_dmat2x4</div><div class="ttdoc">2 columns of 4 components matrix of double-precision floating-point numbers using low precision arith...</div><div class="ttdef"><b>Definition:</b> <a href="a00068_source.html#l00016">matrix_double2x4_precision.hpp:16</a></div></div>
-<div class="ttc" id="a00304_html_ga119c41d73fe9977358174eb3ac1035a3"><div class="ttname"><a href="a00304.html#ga119c41d73fe9977358174eb3ac1035a3">glm::lowp_int8_t</a></div><div class="ttdeci">int8 lowp_int8_t</div><div class="ttdoc">Low qualifier 8 bit signed integer type. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00040">fwd.hpp:40</a></div></div>
-<div class="ttc" id="a00304_html_gaf7e286e81347011e257ee779524e73b9"><div class="ttname"><a href="a00304.html#gaf7e286e81347011e257ee779524e73b9">glm::lowp_u32vec2</a></div><div class="ttdeci">vec&lt; 2, u32, lowp &gt; lowp_u32vec2</div><div class="ttdoc">Low qualifier 32 bit unsigned integer vector of 2 components type. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00365">fwd.hpp:365</a></div></div>
-<div class="ttc" id="a00304_html_gae71445ac6cd0b9fba3e5c905cd030fb1"><div class="ttname"><a href="a00304.html#gae71445ac6cd0b9fba3e5c905cd030fb1">glm::mediump_f32mat2x4</a></div><div class="ttdeci">mat&lt; 2, 4, f32, mediump &gt; mediump_f32mat2x4</div><div class="ttdoc">Medium single-qualifier floating-point 2x4 matrix. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00682">fwd.hpp:682</a></div></div>
-<div class="ttc" id="a00304_html_ga3e2e66ffbe341a80bc005ba2b9552110"><div class="ttname"><a href="a00304.html#ga3e2e66ffbe341a80bc005ba2b9552110">glm::f64mat4x3</a></div><div class="ttdeci">mat&lt; 4, 3, f64, defaultp &gt; f64mat4x3</div><div class="ttdoc">Double-qualifier floating-point 4x3 matrix. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00785">fwd.hpp:785</a></div></div>
-<div class="ttc" id="a00304_html_gad9d1903cb20899966e8ebe0670889a5f"><div class="ttname"><a href="a00304.html#gad9d1903cb20899966e8ebe0670889a5f">glm::highp_i64vec2</a></div><div class="ttdeci">vec&lt; 2, i64, highp &gt; highp_i64vec2</div><div class="ttdoc">High qualifier 64 bit signed integer vector of 2 components type. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00293">fwd.hpp:293</a></div></div>
-<div class="ttc" id="a00304_html_ga4491baaebbc46a20f1cb5da985576bf4"><div class="ttname"><a href="a00304.html#ga4491baaebbc46a20f1cb5da985576bf4">glm::mediump_f32mat4</a></div><div class="ttdeci">mat&lt; 4, 4, f32, mediump &gt; mediump_f32mat4</div><div class="ttdoc">Medium single-qualifier floating-point 4x4 matrix. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00546">fwd.hpp:546</a></div></div>
-<div class="ttc" id="a00284_html_ga1eda47a00027ec440eac05d63739c71b"><div class="ttname"><a href="a00284.html#ga1eda47a00027ec440eac05d63739c71b">glm::highp_mat3x2</a></div><div class="ttdeci">mat&lt; 3, 2, float, highp &gt; highp_mat3x2</div><div class="ttdoc">3 columns of 2 components matrix of single-precision floating-point numbers using high precision arit...</div><div class="ttdef"><b>Definition:</b> <a href="a00089_source.html#l00028">matrix_float3x2_precision.hpp:28</a></div></div>
-<div class="ttc" id="a00284_html_ga58cc504be0e3b61c48bc91554a767b9f"><div class="ttname"><a href="a00284.html#ga58cc504be0e3b61c48bc91554a767b9f">glm::highp_mat4x4</a></div><div class="ttdeci">mat&lt; 4, 4, float, highp &gt; highp_mat4x4</div><div class="ttdoc">4 columns of 4 components matrix of single-precision floating-point numbers using high precision arit...</div><div class="ttdef"><b>Definition:</b> <a href="a00099_source.html#l00046">matrix_float4x4_precision.hpp:46</a></div></div>
-<div class="ttc" id="a00282_html_ga2f4f6e9a69a0281d06940fd0990cafc3"><div class="ttname"><a href="a00282.html#ga2f4f6e9a69a0281d06940fd0990cafc3">glm::mediump_dvec2</a></div><div class="ttdeci">vec&lt; 2, double, mediump &gt; mediump_dvec2</div><div class="ttdoc">2 components vector of medium double-qualifier floating-point numbers. </div><div class="ttdef"><b>Definition:</b> <a href="a00201_source.html#l00022">vector_double2_precision.hpp:22</a></div></div>
-<div class="ttc" id="a00284_html_gac61b94f5d9775f83f321bac899322fe2"><div class="ttname"><a href="a00284.html#gac61b94f5d9775f83f321bac899322fe2">glm::lowp_dmat2x2</a></div><div class="ttdeci">mat&lt; 2, 2, double, lowp &gt; lowp_dmat2x2</div><div class="ttdoc">2 columns of 2 components matrix of double-precision floating-point numbers using low precision arith...</div><div class="ttdef"><b>Definition:</b> <a href="a00064_source.html#l00034">matrix_double2x2_precision.hpp:34</a></div></div>
-<div class="ttc" id="a00304_html_gadb997e409103d4da18abd837e636a496"><div class="ttname"><a href="a00304.html#gadb997e409103d4da18abd837e636a496">glm::i64</a></div><div class="ttdeci">int64 i64</div><div class="ttdoc">64 bit signed integer type. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00076">fwd.hpp:76</a></div></div>
-<div class="ttc" id="a00304_html_ga1d794d240091678f602e8de225b8d8c9"><div class="ttname"><a href="a00304.html#ga1d794d240091678f602e8de225b8d8c9">glm::f64</a></div><div class="ttdeci">double f64</div><div class="ttdoc">Default 64 bit double-qualifier floating-point scalar. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00166">fwd.hpp:166</a></div></div>
-<div class="ttc" id="a00282_html_ga79e0922a977662a8fd39d7829be3908b"><div class="ttname"><a href="a00282.html#ga79e0922a977662a8fd39d7829be3908b">glm::lowp_bvec3</a></div><div class="ttdeci">vec&lt; 3, bool, lowp &gt; lowp_bvec3</div><div class="ttdoc">3 components vector of low qualifier bool numbers. </div><div class="ttdef"><b>Definition:</b> <a href="a00194_source.html#l00028">vector_bool3_precision.hpp:28</a></div></div>
-<div class="ttc" id="a00284_html_gac5fc6786688eff02904ca5e7d6960092"><div class="ttname"><a href="a00284.html#gac5fc6786688eff02904ca5e7d6960092">glm::lowp_mat3x4</a></div><div class="ttdeci">mat&lt; 3, 4, float, lowp &gt; lowp_mat3x4</div><div class="ttdoc">3 columns of 4 components matrix of single-precision floating-point numbers using low precision arith...</div><div class="ttdef"><b>Definition:</b> <a href="a00093_source.html#l00016">matrix_float3x4_precision.hpp:16</a></div></div>
-<div class="ttc" id="a00284_html_ga686468a9a815bd4db8cddae42a6d6b87"><div class="ttname"><a href="a00284.html#ga686468a9a815bd4db8cddae42a6d6b87">glm::lowp_mat4x4</a></div><div class="ttdeci">mat&lt; 4, 4, float, lowp &gt; lowp_mat4x4</div><div class="ttdoc">4 columns of 4 components matrix of single-precision floating-point numbers using low precision arith...</div><div class="ttdef"><b>Definition:</b> <a href="a00099_source.html#l00034">matrix_float4x4_precision.hpp:34</a></div></div>
-<div class="ttc" id="a00271_html_ga9e8ed21862a897c156c0b2abca70b1e9"><div class="ttname"><a href="a00271.html#ga9e8ed21862a897c156c0b2abca70b1e9">glm::highp_vec1</a></div><div class="ttdeci">vec&lt; 1, float, highp &gt; highp_vec1</div><div class="ttdoc">1 component vector of single-precision floating-point numbers using high precision arithmetic in term...</div><div class="ttdef"><b>Definition:</b> <a href="a00207_source.html#l00027">vector_float1_precision.hpp:27</a></div></div>
-<div class="ttc" id="a00304_html_gabb33cab7d7c74cc14aa95455d0690865"><div class="ttname"><a href="a00304.html#gabb33cab7d7c74cc14aa95455d0690865">glm::mediump_f32vec1</a></div><div class="ttdeci">vec&lt; 1, f32, mediump &gt; mediump_f32vec1</div><div class="ttdoc">Medium single-qualifier floating-point vector of 1 component. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00451">fwd.hpp:451</a></div></div>
-<div class="ttc" id="a00304_html_ga8df705d775b776f5ae6b39e2ab892899"><div class="ttname"><a href="a00304.html#ga8df705d775b776f5ae6b39e2ab892899">glm::mediump_f32mat3x4</a></div><div class="ttdeci">mat&lt; 3, 4, f32, mediump &gt; mediump_f32mat3x4</div><div class="ttdoc">Medium single-qualifier floating-point 3x4 matrix. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00685">fwd.hpp:685</a></div></div>
-<div class="ttc" id="a00304_html_gae98c88d9a7befa9b5877f49176225535"><div class="ttname"><a href="a00304.html#gae98c88d9a7befa9b5877f49176225535">glm::highp_fmat2</a></div><div class="ttdeci">mat&lt; 2, 2, f32, highp &gt; highp_fmat2</div><div class="ttdoc">High single-qualifier floating-point 1x1 matrix. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00532">fwd.hpp:532</a></div></div>
-<div class="ttc" id="a00282_html_gad5dd50da9e37387ca6b4e6f9c80fe6f8"><div class="ttname"><a href="a00282.html#gad5dd50da9e37387ca6b4e6f9c80fe6f8">glm::highp_uvec2</a></div><div class="ttdeci">vec&lt; 2, unsigned int, highp &gt; highp_uvec2</div><div class="ttdoc">2 components vector of high qualifier unsigned integer numbers. </div><div class="ttdef"><b>Definition:</b> <a href="a00229_source.html#l00016">vector_uint2_precision.hpp:16</a></div></div>
-<div class="ttc" id="a00304_html_ga522775dbcc6d96246a1c5cf02344fd8c"><div class="ttname"><a href="a00304.html#ga522775dbcc6d96246a1c5cf02344fd8c">glm::highp_f32vec3</a></div><div class="ttdeci">vec&lt; 3, f32, highp &gt; highp_f32vec3</div><div class="ttdoc">High single-qualifier floating-point vector of 3 components. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00458">fwd.hpp:458</a></div></div>
-<div class="ttc" id="a00284_html_ga0cdf57d29f9448864237b2fb3e39aa1d"><div class="ttname"><a href="a00284.html#ga0cdf57d29f9448864237b2fb3e39aa1d">glm::mediump_mat2x2</a></div><div class="ttdeci">mat&lt; 2, 2, float, mediump &gt; mediump_mat2x2</div><div class="ttdoc">2 columns of 2 components matrix of single-precision floating-point numbers using medium precision ar...</div><div class="ttdef"><b>Definition:</b> <a href="a00083_source.html#l00040">matrix_float2x2_precision.hpp:40</a></div></div>
-<div class="ttc" id="a00304_html_gac7bb04fb857ef7b520e49f6c381432be"><div class="ttname"><a href="a00304.html#gac7bb04fb857ef7b520e49f6c381432be">glm::mediump_i8vec4</a></div><div class="ttdeci">vec&lt; 4, i8, mediump &gt; mediump_i8vec4</div><div class="ttdoc">Medium qualifier 8 bit signed integer vector of 4 components type. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00230">fwd.hpp:230</a></div></div>
-<div class="ttc" id="a00304_html_ga41b0d390bd8cc827323b1b3816ff4bf8"><div class="ttname"><a href="a00304.html#ga41b0d390bd8cc827323b1b3816ff4bf8">glm::lowp_float32</a></div><div class="ttdeci">float lowp_float32</div><div class="ttdoc">Low 32 bit single-qualifier floating-point scalar. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00152">fwd.hpp:152</a></div></div>
-<div class="ttc" id="a00304_html_ga2a266e46ee218d0c680f12b35c500cc0"><div class="ttname"><a href="a00304.html#ga2a266e46ee218d0c680f12b35c500cc0">glm::u32vec2</a></div><div class="ttdeci">vec&lt; 2, u32, defaultp &gt; u32vec2</div><div class="ttdoc">Default qualifier 32 bit unsigned integer vector of 2 components type. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00380">fwd.hpp:380</a></div></div>
-<div class="ttc" id="a00282_html_gaa3b4f7806dad03d83bb3da0baa1e3b9b"><div class="ttname"><a href="a00282.html#gaa3b4f7806dad03d83bb3da0baa1e3b9b">glm::mediump_uvec2</a></div><div class="ttdeci">vec&lt; 2, unsigned int, mediump &gt; mediump_uvec2</div><div class="ttdoc">2 components vector of medium qualifier unsigned integer numbers. </div><div class="ttdef"><b>Definition:</b> <a href="a00229_source.html#l00022">vector_uint2_precision.hpp:22</a></div></div>
-<div class="ttc" id="a00252_html_gab0b441adb4509bc58d2946c2239a8942"><div class="ttname"><a href="a00252.html#gab0b441adb4509bc58d2946c2239a8942">glm::quat</a></div><div class="ttdeci">qua&lt; float, defaultp &gt; quat</div><div class="ttdoc">Quaternion of single-precision floating-point numbers. </div><div class="ttdef"><b>Definition:</b> <a href="a00131_source.html#l00035">quaternion_float.hpp:35</a></div></div>
-<div class="ttc" id="a00282_html_gab98d77cca255914f5e29697fcbc2d975"><div class="ttname"><a href="a00282.html#gab98d77cca255914f5e29697fcbc2d975">glm::highp_dvec2</a></div><div class="ttdeci">vec&lt; 2, double, highp &gt; highp_dvec2</div><div class="ttdoc">2 components vector of high double-qualifier floating-point numbers. </div><div class="ttdef"><b>Definition:</b> <a href="a00201_source.html#l00016">vector_double2_precision.hpp:16</a></div></div>
-<div class="ttc" id="a00304_html_ga1bed890513c0f50b7e7ba4f7f359dbfb"><div class="ttname"><a href="a00304.html#ga1bed890513c0f50b7e7ba4f7f359dbfb">glm::mediump_fvec4</a></div><div class="ttdeci">vec&lt; 4, float, mediump &gt; mediump_fvec4</div><div class="ttdoc">Medium Single-qualifier floating-point vector of 4 components. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00434">fwd.hpp:434</a></div></div>
-<div class="ttc" id="a00304_html_ga5244cef85d6e870e240c76428a262ae8"><div class="ttname"><a href="a00304.html#ga5244cef85d6e870e240c76428a262ae8">glm::mediump_int32</a></div><div class="ttdeci">int32 mediump_int32</div><div class="ttdoc">Medium qualifier 32 bit signed integer type. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00065">fwd.hpp:65</a></div></div>
-<div class="ttc" id="a00304_html_ga48310188e1d0c616bf8d78c92447523b"><div class="ttname"><a href="a00304.html#ga48310188e1d0c616bf8d78c92447523b">glm::i64vec2</a></div><div class="ttdeci">vec&lt; 2, i64, defaultp &gt; i64vec2</div><div class="ttdoc">64 bit signed integer vector of 2 components type. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00298">fwd.hpp:298</a></div></div>
-<div class="ttc" id="a00304_html_ga3ab5fe184343d394fb6c2723c3ee3699"><div class="ttname"><a href="a00304.html#ga3ab5fe184343d394fb6c2723c3ee3699">glm::i16</a></div><div class="ttdeci">int16 i16</div><div class="ttdoc">16 bit signed integer type. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00048">fwd.hpp:48</a></div></div>
-<div class="ttc" id="a00281_html_ga57debab5d98ce618f7b2a97fe26eb3ac"><div class="ttname"><a href="a00281.html#ga57debab5d98ce618f7b2a97fe26eb3ac">glm::dvec4</a></div><div class="ttdeci">vec&lt; 4, double, defaultp &gt; dvec4</div><div class="ttdoc">4 components vector of double-precision floating-point numbers. </div><div class="ttdef"><b>Definition:</b> <a href="a00204_source.html#l00015">vector_double4.hpp:15</a></div></div>
-<div class="ttc" id="a00304_html_gad01cc6479bde1fd1870f13d3ed9530b3"><div class="ttname"><a href="a00304.html#gad01cc6479bde1fd1870f13d3ed9530b3">glm::fmat4x4</a></div><div class="ttdeci">mat&lt; 4, 4, f32, defaultp &gt; fmat4x4</div><div class="ttdoc">Single-qualifier floating-point 4x4 matrix. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00668">fwd.hpp:668</a></div></div>
-<div class="ttc" id="a00284_html_ga745452bd9c89f5ad948203e4fb4b4ea3"><div class="ttname"><a href="a00284.html#ga745452bd9c89f5ad948203e4fb4b4ea3">glm::mediump_mat2</a></div><div class="ttdeci">mat&lt; 2, 2, float, mediump &gt; mediump_mat2</div><div class="ttdoc">2 columns of 2 components matrix of single-precision floating-point numbers using medium precision ar...</div><div class="ttdef"><b>Definition:</b> <a href="a00083_source.html#l00022">matrix_float2x2_precision.hpp:22</a></div></div>
-<div class="ttc" id="a00304_html_gaa3ee2bc4af03cc06578b66b3e3f878ae"><div class="ttname"><a href="a00304.html#gaa3ee2bc4af03cc06578b66b3e3f878ae">glm::lowp_f64quat</a></div><div class="ttdeci">qua&lt; f64, lowp &gt; lowp_f64quat</div><div class="ttdoc">Low double-qualifier floating-point quaternion. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00812">fwd.hpp:812</a></div></div>
-<div class="ttc" id="a00283_html_ga8dd59e7fc6913ac5d61b86553e9148ba"><div class="ttname"><a href="a00283.html#ga8dd59e7fc6913ac5d61b86553e9148ba">glm::mat2</a></div><div class="ttdeci">mat&lt; 2, 2, float, defaultp &gt; mat2</div><div class="ttdoc">2 columns of 2 components matrix of single-precision floating-point numbers. </div><div class="ttdef"><b>Definition:</b> <a href="a00082_source.html#l00020">matrix_float2x2.hpp:20</a></div></div>
-<div class="ttc" id="a00304_html_ga6af54d70d9beb0a7ef992a879e86b04f"><div class="ttname"><a href="a00304.html#ga6af54d70d9beb0a7ef992a879e86b04f">glm::fmat3x2</a></div><div class="ttdeci">mat&lt; 3, 2, f32, defaultp &gt; fmat3x2</div><div class="ttdoc">Single-qualifier floating-point 3x2 matrix. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00661">fwd.hpp:661</a></div></div>
-<div class="ttc" id="a00283_html_gacd18864049f8c83799babe7e596ca05b"><div class="ttname"><a href="a00283.html#gacd18864049f8c83799babe7e596ca05b">glm::dmat4x3</a></div><div class="ttdeci">mat&lt; 4, 3, double, defaultp &gt; dmat4x3</div><div class="ttdoc">4 columns of 3 components matrix of double-precision floating-point numbers. </div><div class="ttdef"><b>Definition:</b> <a href="a00077_source.html#l00015">matrix_double4x3.hpp:15</a></div></div>
-<div class="ttc" id="a00284_html_gaeda1f474c668eaecc443bea85a4a4eca"><div class="ttname"><a href="a00284.html#gaeda1f474c668eaecc443bea85a4a4eca">glm::highp_dmat4x2</a></div><div class="ttdeci">mat&lt; 4, 2, double, highp &gt; highp_dmat4x2</div><div class="ttdoc">4 columns of 2 components matrix of double-precision floating-point numbers using medium precision ar...</div><div class="ttdef"><b>Definition:</b> <a href="a00076_source.html#l00028">matrix_double4x2_precision.hpp:28</a></div></div>
-<div class="ttc" id="a00304_html_ga529496d75775fb656a07993ea9af2450"><div class="ttname"><a href="a00304.html#ga529496d75775fb656a07993ea9af2450">glm::u16vec4</a></div><div class="ttdeci">vec&lt; 4, u16, defaultp &gt; u16vec4</div><div class="ttdoc">Default qualifier 16 bit unsigned integer vector of 4 components type. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00362">fwd.hpp:362</a></div></div>
-<div class="ttc" id="a00304_html_ga2a78447eb9d66a114b193f4a25899c16"><div class="ttname"><a href="a00304.html#ga2a78447eb9d66a114b193f4a25899c16">glm::u16vec2</a></div><div class="ttdeci">vec&lt; 2, u16, defaultp &gt; u16vec2</div><div class="ttdoc">Default qualifier 16 bit unsigned integer vector of 2 components type. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00360">fwd.hpp:360</a></div></div>
-<div class="ttc" id="a00304_html_gad1213a22bbb9e4107f07eaa4956f8281"><div class="ttname"><a href="a00304.html#gad1213a22bbb9e4107f07eaa4956f8281">glm::mediump_u8</a></div><div class="ttdeci">uint8 mediump_u8</div><div class="ttdoc">Medium qualifier 8 bit unsigned integer type. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00090">fwd.hpp:90</a></div></div>
-<div class="ttc" id="a00304_html_gab0feb11edd0d3ab3e8ed996d349a5066"><div class="ttname"><a href="a00304.html#gab0feb11edd0d3ab3e8ed996d349a5066">glm::lowp_fmat2x2</a></div><div class="ttdeci">mat&lt; 2, 2, f32, lowp &gt; lowp_fmat2x2</div><div class="ttdoc">Low single-qualifier floating-point 1x1 matrix. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00630">fwd.hpp:630</a></div></div>
-<div class="ttc" id="a00304_html_ga4824e3ddf6e608117dfe4809430737b4"><div class="ttname"><a href="a00304.html#ga4824e3ddf6e608117dfe4809430737b4">glm::highp_i8vec4</a></div><div class="ttdeci">vec&lt; 4, i8, highp &gt; highp_i8vec4</div><div class="ttdoc">High qualifier 8 bit signed integer vector of 4 components type. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00235">fwd.hpp:235</a></div></div>
-<div class="ttc" id="a00304_html_ga6fccc89c34045c86339f6fa781ce96de"><div class="ttname"><a href="a00304.html#ga6fccc89c34045c86339f6fa781ce96de">glm::lowp_u64vec4</a></div><div class="ttdeci">vec&lt; 4, u64, lowp &gt; lowp_u64vec4</div><div class="ttdoc">Low qualifier 64 bit unsigned integer vector of 4 components type. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00387">fwd.hpp:387</a></div></div>
-<div class="ttc" id="a00304_html_ga2c94aeae3457325944ca1059b0b68330"><div class="ttname"><a href="a00304.html#ga2c94aeae3457325944ca1059b0b68330">glm::mediump_i64vec2</a></div><div class="ttdeci">vec&lt; 2, i64, mediump &gt; mediump_i64vec2</div><div class="ttdoc">Medium qualifier 64 bit signed integer vector of 2 components type. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00288">fwd.hpp:288</a></div></div>
-<div class="ttc" id="a00304_html_ga58c4631421e323e252fc716b6103e38c"><div class="ttname"><a href="a00304.html#ga58c4631421e323e252fc716b6103e38c">glm::highp_f64mat4x2</a></div><div class="ttdeci">mat&lt; 4, 2, f64, highp &gt; highp_f64mat4x2</div><div class="ttdoc">High double-qualifier floating-point 4x2 matrix. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00776">fwd.hpp:776</a></div></div>
-<div class="ttc" id="a00284_html_gad72e13d669d039f12ae5afa23148adc1"><div class="ttname"><a href="a00284.html#gad72e13d669d039f12ae5afa23148adc1">glm::highp_mat4</a></div><div class="ttdeci">mat&lt; 4, 4, float, highp &gt; highp_mat4</div><div class="ttdoc">4 columns of 4 components matrix of single-precision floating-point numbers using high precision arit...</div><div class="ttdef"><b>Definition:</b> <a href="a00099_source.html#l00028">matrix_float4x4_precision.hpp:28</a></div></div>
-<div class="ttc" id="a00304_html_ga80e72fe94c88498537e8158ba7591c54"><div class="ttname"><a href="a00304.html#ga80e72fe94c88498537e8158ba7591c54">glm::mediump_int16_t</a></div><div class="ttdeci">int16 mediump_int16_t</div><div class="ttdoc">Medium qualifier 16 bit signed integer type. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00055">fwd.hpp:55</a></div></div>
-<div class="ttc" id="a00304_html_ga552a6bde5e75984efb0f863278da2e54"><div class="ttname"><a href="a00304.html#ga552a6bde5e75984efb0f863278da2e54">glm::lowp_i8</a></div><div class="ttdeci">int8 lowp_i8</div><div class="ttdoc">Low qualifier 8 bit signed integer type. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00031">fwd.hpp:31</a></div></div>
-<div class="ttc" id="a00284_html_gab68b66e6d2c37b804d0baf970fa4f0e5"><div class="ttname"><a href="a00284.html#gab68b66e6d2c37b804d0baf970fa4f0e5">glm::highp_mat4x2</a></div><div class="ttdeci">mat&lt; 4, 2, float, highp &gt; highp_mat4x2</div><div class="ttdoc">4 columns of 2 components matrix of single-precision floating-point numbers using high precision arit...</div><div class="ttdef"><b>Definition:</b> <a href="a00095_source.html#l00028">matrix_float4x2_precision.hpp:28</a></div></div>
-<div class="ttc" id="a00304_html_ga667948cfe6fb3d6606c750729ec49f77"><div class="ttname"><a href="a00304.html#ga667948cfe6fb3d6606c750729ec49f77">glm::i64vec3</a></div><div class="ttdeci">vec&lt; 3, i64, defaultp &gt; i64vec3</div><div class="ttdoc">64 bit signed integer vector of 3 components type. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00299">fwd.hpp:299</a></div></div>
-<div class="ttc" id="a00304_html_ga867a3c2d99ab369a454167d2c0a24dbd"><div class="ttname"><a href="a00304.html#ga867a3c2d99ab369a454167d2c0a24dbd">glm::lowp_i32vec2</a></div><div class="ttdeci">vec&lt; 2, i32, lowp &gt; lowp_i32vec2</div><div class="ttdoc">Low qualifier 32 bit signed integer vector of 2 components type. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00263">fwd.hpp:263</a></div></div>
-<div class="ttc" id="a00304_html_gafcfdd74a115163af2ce1093551747352"><div class="ttname"><a href="a00304.html#gafcfdd74a115163af2ce1093551747352">glm::highp_f64quat</a></div><div class="ttdeci">qua&lt; f64, highp &gt; highp_f64quat</div><div class="ttdoc">High double-qualifier floating-point quaternion. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00814">fwd.hpp:814</a></div></div>
-<div class="ttc" id="a00283_html_gaefb0fc7a4960b782c18708bb6b655262"><div class="ttname"><a href="a00283.html#gaefb0fc7a4960b782c18708bb6b655262">glm::mat3</a></div><div class="ttdeci">mat&lt; 3, 3, float, defaultp &gt; mat3</div><div class="ttdoc">3 columns of 3 components matrix of single-precision floating-point numbers. </div><div class="ttdef"><b>Definition:</b> <a href="a00090_source.html#l00020">matrix_float3x3.hpp:20</a></div></div>
-<div class="ttc" id="a00304_html_ga8ebc04ecf6440c4ee24718a16600ce6b"><div class="ttname"><a href="a00304.html#ga8ebc04ecf6440c4ee24718a16600ce6b">glm::mediump_f64vec2</a></div><div class="ttdeci">vec&lt; 2, f64, mediump &gt; mediump_f64vec2</div><div class="ttdoc">Medium double-qualifier floating-point vector of 2 components. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00492">fwd.hpp:492</a></div></div>
-<div class="ttc" id="a00304_html_gacf54c3330ef60aa3d16cb676c7bcb8c7"><div class="ttname"><a href="a00304.html#gacf54c3330ef60aa3d16cb676c7bcb8c7">glm::highp_uint16_t</a></div><div class="ttdeci">uint16 highp_uint16_t</div><div class="ttdoc">High qualifier 16 bit unsigned integer type. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00114">fwd.hpp:114</a></div></div>
-<div class="ttc" id="a00304_html_ga346b2336fff168a7e0df1583aae3e5a5"><div class="ttname"><a href="a00304.html#ga346b2336fff168a7e0df1583aae3e5a5">glm::lowp_fvec1</a></div><div class="ttdeci">vec&lt; 1, float, lowp &gt; lowp_fvec1</div><div class="ttdoc">Low single-qualifier floating-point vector of 1 component. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00426">fwd.hpp:426</a></div></div>
-<div class="ttc" id="a00304_html_ga302ec977b0c0c3ea245b6c9275495355"><div class="ttname"><a href="a00304.html#ga302ec977b0c0c3ea245b6c9275495355">glm::i8</a></div><div class="ttdeci">int8 i8</div><div class="ttdoc">8 bit signed integer type. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00034">fwd.hpp:34</a></div></div>
-<div class="ttc" id="a00304_html_ga9b170dd4a8f38448a2dc93987c7875e9"><div class="ttname"><a href="a00304.html#ga9b170dd4a8f38448a2dc93987c7875e9">glm::mediump_uint64_t</a></div><div class="ttdeci">uint64 mediump_uint64_t</div><div class="ttdoc">Medium qualifier 64 bit unsigned integer type. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00141">fwd.hpp:141</a></div></div>
-<div class="ttc" id="a00304_html_ga659f372ccb8307d5db5beca942cde5e8"><div class="ttname"><a href="a00304.html#ga659f372ccb8307d5db5beca942cde5e8">glm::mediump_u64vec1</a></div><div class="ttdeci">vec&lt; 1, u64, mediump &gt; mediump_u64vec1</div><div class="ttdoc">Medium qualifier 64 bit unsigned integer scalar type. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00389">fwd.hpp:389</a></div></div>
-<div class="ttc" id="a00304_html_gaf9020c6176a75bc84828ab01ea7dac25"><div class="ttname"><a href="a00304.html#gaf9020c6176a75bc84828ab01ea7dac25">glm::mediump_f32mat2</a></div><div class="ttdeci">mat&lt; 2, 2, f32, mediump &gt; mediump_f32mat2</div><div class="ttdoc">Medium single-qualifier floating-point 1x1 matrix. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00544">fwd.hpp:544</a></div></div>
-<div class="ttc" id="a00282_html_ga92a204c37e66ac6c1dc7ae91142f2ea5"><div class="ttname"><a href="a00282.html#ga92a204c37e66ac6c1dc7ae91142f2ea5">glm::mediump_ivec4</a></div><div class="ttdeci">vec&lt; 4, int, mediump &gt; mediump_ivec4</div><div class="ttdoc">4 components vector of medium qualifier signed integer numbers. </div><div class="ttdef"><b>Definition:</b> <a href="a00221_source.html#l00022">vector_int4_precision.hpp:22</a></div></div>
-<div class="ttc" id="a00284_html_ga61f36a81f2ed1b5f9fc8bc3b26faec8f"><div class="ttname"><a href="a00284.html#ga61f36a81f2ed1b5f9fc8bc3b26faec8f">glm::highp_mat2x4</a></div><div class="ttdeci">mat&lt; 2, 4, float, highp &gt; highp_mat2x4</div><div class="ttdoc">2 columns of 4 components matrix of single-precision floating-point numbers using high precision arit...</div><div class="ttdef"><b>Definition:</b> <a href="a00087_source.html#l00028">matrix_float2x4_precision.hpp:28</a></div></div>
-<div class="ttc" id="a00304_html_gadfe65c78231039e90507770db50c98c7"><div class="ttname"><a href="a00304.html#gadfe65c78231039e90507770db50c98c7">glm::mediump_uint8_t</a></div><div class="ttdeci">uint8 mediump_uint8_t</div><div class="ttdoc">Medium qualifier 8 bit unsigned integer type. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00099">fwd.hpp:99</a></div></div>
-<div class="ttc" id="a00236_html"><div class="ttname"><a href="a00236.html">glm</a></div><div class="ttdef"><b>Definition:</b> <a href="a00015_source.html#l00020">common.hpp:20</a></div></div>
-<div class="ttc" id="a00304_html_ga6d40381d78472553f878f66e443feeef"><div class="ttname"><a href="a00304.html#ga6d40381d78472553f878f66e443feeef">glm::mediump_f64</a></div><div class="ttdeci">double mediump_f64</div><div class="ttdoc">Medium 64 bit double-qualifier floating-point scalar. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00164">fwd.hpp:164</a></div></div>
-<div class="ttc" id="a00304_html_ga367964fc2133d3f1b5b3755ff9cf6c9b"><div class="ttname"><a href="a00304.html#ga367964fc2133d3f1b5b3755ff9cf6c9b">glm::mediump_fvec1</a></div><div class="ttdeci">vec&lt; 1, float, mediump &gt; mediump_fvec1</div><div class="ttdoc">Medium single-qualifier floating-point vector of 1 component. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00431">fwd.hpp:431</a></div></div>
-<div class="ttc" id="a00304_html_ga2885a6c89916911e418c06bb76b9bdbb"><div class="ttname"><a href="a00304.html#ga2885a6c89916911e418c06bb76b9bdbb">glm::mediump_uint16</a></div><div class="ttdeci">uint16 mediump_uint16</div><div class="ttdoc">Medium qualifier 16 bit unsigned integer type. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00109">fwd.hpp:109</a></div></div>
-<div class="ttc" id="a00304_html_gae0b75ad0fed8c00ddc0b5ce335d31060"><div class="ttname"><a href="a00304.html#gae0b75ad0fed8c00ddc0b5ce335d31060">glm::highp_u8vec4</a></div><div class="ttdeci">vec&lt; 4, u8, highp &gt; highp_u8vec4</div><div class="ttdoc">High qualifier 8 bit unsigned integer vector of 4 components type. </div><div class="ttdef"><b>Definition:</b> <a href="a00035_source.html#l00337">fwd.hpp:337</a></div></div>
+<div class="line"><a name="l00002"></a><span class="lineno">    2</span>&#160; </div>
+<div class="line"><a name="l00003"></a><span class="lineno">    3</span>&#160;<span class="preprocessor">#include &quot;setup.hpp&quot;</span></div>
+<div class="line"><a name="l00004"></a><span class="lineno">    4</span>&#160; </div>
+<div class="line"><a name="l00005"></a><span class="lineno">    5</span>&#160;<span class="preprocessor">#if GLM_COMPILER == GLM_COMPILER_VC12</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno">    6</span>&#160;<span class="preprocessor">#       pragma warning(push)</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno">    7</span>&#160;<span class="preprocessor">#       pragma warning(disable: 4512) // assignment operator could not be generated</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno">    8</span>&#160;<span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l00009"></a><span class="lineno">    9</span>&#160; </div>
+<div class="line"><a name="l00010"></a><span class="lineno">   10</span>&#160;<span class="keyword">namespace </span>glm{</div>
+<div class="line"><a name="l00011"></a><span class="lineno">   11</span>&#160;<span class="keyword">namespace </span>detail</div>
+<div class="line"><a name="l00012"></a><span class="lineno">   12</span>&#160;{</div>
+<div class="line"><a name="l00013"></a><span class="lineno">   13</span>&#160;        <span class="keyword">template</span> &lt;<span class="keyword">typename</span> T&gt;</div>
+<div class="line"><a name="l00014"></a><span class="lineno">   14</span>&#160;        <span class="keyword">union </span>float_t</div>
+<div class="line"><a name="l00015"></a><span class="lineno">   15</span>&#160;        {};</div>
+<div class="line"><a name="l00016"></a><span class="lineno">   16</span>&#160; </div>
+<div class="line"><a name="l00017"></a><span class="lineno">   17</span>&#160;        <span class="comment">// https://randomascii.wordpress.com/2012/02/25/comparing-floating-point-numbers-2012-edition/</span></div>
+<div class="line"><a name="l00018"></a><span class="lineno">   18</span>&#160;        <span class="keyword">template</span> &lt;&gt;</div>
+<div class="line"><a name="l00019"></a><span class="lineno">   19</span>&#160;        <span class="keyword">union </span>float_t&lt;float&gt;</div>
+<div class="line"><a name="l00020"></a><span class="lineno">   20</span>&#160;        {</div>
+<div class="line"><a name="l00021"></a><span class="lineno">   21</span>&#160;                <span class="keyword">typedef</span> <span class="keywordtype">int</span> int_type;</div>
+<div class="line"><a name="l00022"></a><span class="lineno">   22</span>&#160;                <span class="keyword">typedef</span> <span class="keywordtype">float</span> float_type;</div>
+<div class="line"><a name="l00023"></a><span class="lineno">   23</span>&#160; </div>
+<div class="line"><a name="l00024"></a><span class="lineno">   24</span>&#160;                GLM_CONSTEXPR float_t(float_type Num = 0.0f) : f(Num) {}</div>
+<div class="line"><a name="l00025"></a><span class="lineno">   25</span>&#160; </div>
+<div class="line"><a name="l00026"></a><span class="lineno">   26</span>&#160;                GLM_CONSTEXPR float_t&amp; operator=(float_t <span class="keyword">const</span>&amp; x)</div>
+<div class="line"><a name="l00027"></a><span class="lineno">   27</span>&#160;                {</div>
+<div class="line"><a name="l00028"></a><span class="lineno">   28</span>&#160;                        f = x.f;</div>
+<div class="line"><a name="l00029"></a><span class="lineno">   29</span>&#160;                        <span class="keywordflow">return</span> *<span class="keyword">this</span>;</div>
+<div class="line"><a name="l00030"></a><span class="lineno">   30</span>&#160;                }</div>
+<div class="line"><a name="l00031"></a><span class="lineno">   31</span>&#160; </div>
+<div class="line"><a name="l00032"></a><span class="lineno">   32</span>&#160;                <span class="comment">// Portable extraction of components.</span></div>
+<div class="line"><a name="l00033"></a><span class="lineno">   33</span>&#160;                GLM_CONSTEXPR <span class="keywordtype">bool</span> negative()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> i &lt; 0; }</div>
+<div class="line"><a name="l00034"></a><span class="lineno">   34</span>&#160;                GLM_CONSTEXPR int_type mantissa()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> i &amp; ((1 &lt;&lt; 23) - 1); }</div>
+<div class="line"><a name="l00035"></a><span class="lineno">   35</span>&#160;                GLM_CONSTEXPR int_type exponent()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> (i &gt;&gt; 23) &amp; ((1 &lt;&lt; 8) - 1); }</div>
+<div class="line"><a name="l00036"></a><span class="lineno">   36</span>&#160; </div>
+<div class="line"><a name="l00037"></a><span class="lineno">   37</span>&#160;                int_type i;</div>
+<div class="line"><a name="l00038"></a><span class="lineno">   38</span>&#160;                float_type f;</div>
+<div class="line"><a name="l00039"></a><span class="lineno">   39</span>&#160;        };</div>
+<div class="line"><a name="l00040"></a><span class="lineno">   40</span>&#160; </div>
+<div class="line"><a name="l00041"></a><span class="lineno">   41</span>&#160;        <span class="keyword">template</span> &lt;&gt;</div>
+<div class="line"><a name="l00042"></a><span class="lineno">   42</span>&#160;        <span class="keyword">union </span>float_t&lt;double&gt;</div>
+<div class="line"><a name="l00043"></a><span class="lineno">   43</span>&#160;        {</div>
+<div class="line"><a name="l00044"></a><span class="lineno">   44</span>&#160;                <span class="keyword">typedef</span> <a class="code" href="a00859.html#gaff5189f97f9e842d9636a0f240001b2e">detail::int64</a> int_type;</div>
+<div class="line"><a name="l00045"></a><span class="lineno">   45</span>&#160;                <span class="keyword">typedef</span> <span class="keywordtype">double</span> float_type;</div>
+<div class="line"><a name="l00046"></a><span class="lineno">   46</span>&#160; </div>
+<div class="line"><a name="l00047"></a><span class="lineno">   47</span>&#160;                GLM_CONSTEXPR float_t(float_type Num = <span class="keyword">static_cast&lt;</span>float_type<span class="keyword">&gt;</span>(0)) : f(Num) {}</div>
+<div class="line"><a name="l00048"></a><span class="lineno">   48</span>&#160; </div>
+<div class="line"><a name="l00049"></a><span class="lineno">   49</span>&#160;                GLM_CONSTEXPR float_t&amp; operator=(float_t <span class="keyword">const</span>&amp; x)</div>
+<div class="line"><a name="l00050"></a><span class="lineno">   50</span>&#160;                {</div>
+<div class="line"><a name="l00051"></a><span class="lineno">   51</span>&#160;                        f = x.f;</div>
+<div class="line"><a name="l00052"></a><span class="lineno">   52</span>&#160;                        <span class="keywordflow">return</span> *<span class="keyword">this</span>;</div>
+<div class="line"><a name="l00053"></a><span class="lineno">   53</span>&#160;                }</div>
+<div class="line"><a name="l00054"></a><span class="lineno">   54</span>&#160; </div>
+<div class="line"><a name="l00055"></a><span class="lineno">   55</span>&#160;                <span class="comment">// Portable extraction of components.</span></div>
+<div class="line"><a name="l00056"></a><span class="lineno">   56</span>&#160;                GLM_CONSTEXPR <span class="keywordtype">bool</span> negative()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> i &lt; 0; }</div>
+<div class="line"><a name="l00057"></a><span class="lineno">   57</span>&#160;                GLM_CONSTEXPR int_type mantissa()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> i &amp; ((int_type(1) &lt;&lt; 52) - 1); }</div>
+<div class="line"><a name="l00058"></a><span class="lineno">   58</span>&#160;                GLM_CONSTEXPR int_type exponent()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> (i &gt;&gt; 52) &amp; ((int_type(1) &lt;&lt; 11) - 1); }</div>
+<div class="line"><a name="l00059"></a><span class="lineno">   59</span>&#160; </div>
+<div class="line"><a name="l00060"></a><span class="lineno">   60</span>&#160;                int_type i;</div>
+<div class="line"><a name="l00061"></a><span class="lineno">   61</span>&#160;                float_type f;</div>
+<div class="line"><a name="l00062"></a><span class="lineno">   62</span>&#160;        };</div>
+<div class="line"><a name="l00063"></a><span class="lineno">   63</span>&#160;}<span class="comment">//namespace detail</span></div>
+<div class="line"><a name="l00064"></a><span class="lineno">   64</span>&#160;}<span class="comment">//namespace glm</span></div>
+<div class="line"><a name="l00065"></a><span class="lineno">   65</span>&#160; </div>
+<div class="line"><a name="l00066"></a><span class="lineno">   66</span>&#160;<span class="preprocessor">#if GLM_COMPILER == GLM_COMPILER_VC12</span></div>
+<div class="line"><a name="l00067"></a><span class="lineno">   67</span>&#160;<span class="preprocessor">#       pragma warning(pop)</span></div>
+<div class="line"><a name="l00068"></a><span class="lineno">   68</span>&#160;<span class="preprocessor">#endif</span></div>
 </div><!-- fragment --></div><!-- contents -->
+<div class="ttc" id="aa00859_html_gaff5189f97f9e842d9636a0f240001b2e"><div class="ttname"><a href="a00859.html#gaff5189f97f9e842d9636a0f240001b2e">glm::int64</a></div><div class="ttdeci">detail::int64 int64</div><div class="ttdoc">64 bit signed integer type.</div><div class="ttdef"><b>Definition:</b> <a href="a00359_source.html#l00067">scalar_int_sized.hpp:67</a></div></div>
 <!-- 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.10
+</a> 1.8.18
 </small></address>
 </body>
 </html>

+ 0 - 152
doc/api/a00036_source.html

@@ -1,152 +0,0 @@
-<!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.10"/>
-<title>0.9.9 API documentation: geometric.hpp Source File</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="search/search.css" rel="stylesheet" type="text/css"/>
-<script type="text/javascript" src="search/searchdata.js"></script>
-<script type="text/javascript" src="search/search.js"></script>
-<script type="text/javascript">
-  $(document).ready(function() { init_search(); });
-</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 id="projectlogo"><img alt="Logo" src="logo-mini.png"/></td>
-  <td id="projectalign" style="padding-left: 0.5em;">
-   <div id="projectname">0.9.9 API documentation
-   </div>
-  </td>
- </tr>
- </tbody>
-</table>
-</div>
-<!-- end header part -->
-<!-- Generated by Doxygen 1.8.10 -->
-<script type="text/javascript">
-var searchBox = new SearchBox("searchBox", "search",false,'Search');
-</script>
-  <div id="navrow1" class="tabs">
-    <ul class="tablist">
-      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
-      <li><a href="modules.html"><span>Modules</span></a></li>
-      <li class="current"><a href="files.html"><span>Files</span></a></li>
-      <li>
-        <div id="MSearchBox" class="MSearchBoxInactive">
-        <span class="left">
-          <img id="MSearchSelect" src="search/mag_sel.png"
-               onmouseover="return searchBox.OnSearchSelectShow()"
-               onmouseout="return searchBox.OnSearchSelectHide()"
-               alt=""/>
-          <input type="text" id="MSearchField" value="Search" accesskey="S"
-               onfocus="searchBox.OnSearchFieldFocus(true)" 
-               onblur="searchBox.OnSearchFieldFocus(false)" 
-               onkeyup="searchBox.OnSearchFieldChange(event)"/>
-          </span><span class="right">
-            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
-          </span>
-        </div>
-      </li>
-    </ul>
-  </div>
-  <div id="navrow2" class="tabs2">
-    <ul class="tablist">
-      <li><a href="files.html"><span>File&#160;List</span></a></li>
-    </ul>
-  </div>
-<!-- window showing the filter options -->
-<div id="MSearchSelectWindow"
-     onmouseover="return searchBox.OnSearchSelectShow()"
-     onmouseout="return searchBox.OnSearchSelectHide()"
-     onkeydown="return searchBox.OnSearchSelectKey(event)">
-</div>
-
-<!-- iframe showing the search results (closed by default) -->
-<div id="MSearchResultsWindow">
-<iframe src="javascript:void(0)" frameborder="0" 
-        name="MSearchResults" id="MSearchResults">
-</iframe>
-</div>
-
-<div id="nav-path" class="navpath">
-  <ul>
-<li class="navelem"><a class="el" href="dir_3a581ba30d25676e4b797b1f96d53b45.html">F:</a></li><li class="navelem"><a class="el" href="dir_9e5fe034a00e89334fd5186c3e7db156.html">G-Truc</a></li><li class="navelem"><a class="el" href="dir_d9496f0844b48bc7e53b5af8c99b9ab2.html">Source</a></li><li class="navelem"><a class="el" href="dir_a8bee7be44182a33f3820393ae0b105d.html">G-Truc</a></li><li class="navelem"><a class="el" href="dir_44e5e654415abd9ca6fdeaddaff8565e.html">glm</a></li><li class="navelem"><a class="el" href="dir_cef2d71d502cb69a9252bca2297d9549.html">glm</a></li>  </ul>
-</div>
-</div><!-- top -->
-<div class="header">
-  <div class="headertitle">
-<div class="title">geometric.hpp</div>  </div>
-</div><!--header-->
-<div class="contents">
-<a href="a00036.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span>&#160;</div>
-<div class="line"><a name="l00013"></a><span class="lineno">   13</span>&#160;<span class="preprocessor">#pragma once</span></div>
-<div class="line"><a name="l00014"></a><span class="lineno">   14</span>&#160;</div>
-<div class="line"><a name="l00015"></a><span class="lineno">   15</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="a00180.html">detail/type_vec3.hpp</a>&quot;</span></div>
-<div class="line"><a name="l00016"></a><span class="lineno">   16</span>&#160;</div>
-<div class="line"><a name="l00017"></a><span class="lineno">   17</span>&#160;<span class="keyword">namespace </span><a class="code" href="a00236.html">glm</a></div>
-<div class="line"><a name="l00018"></a><span class="lineno">   18</span>&#160;{</div>
-<div class="line"><a name="l00021"></a><span class="lineno">   21</span>&#160;</div>
-<div class="line"><a name="l00029"></a><span class="lineno">   29</span>&#160;        <span class="keyword">template</span>&lt;length_t L, <span class="keyword">typename</span> T, qualifier Q&gt;</div>
-<div class="line"><a name="l00030"></a><span class="lineno">   30</span>&#160;        GLM_FUNC_DECL T <a class="code" href="a00279.html#ga0cdabbb000834d994a1d6dc56f8f5263">length</a>(vec&lt;L, T, Q&gt; <span class="keyword">const</span>&amp; x);</div>
-<div class="line"><a name="l00031"></a><span class="lineno">   31</span>&#160;</div>
-<div class="line"><a name="l00039"></a><span class="lineno">   39</span>&#160;        <span class="keyword">template</span>&lt;length_t L, <span class="keyword">typename</span> T, qualifier Q&gt;</div>
-<div class="line"><a name="l00040"></a><span class="lineno">   40</span>&#160;        GLM_FUNC_DECL T <a class="code" href="a00279.html#gaa68de6c53e20dfb2dac2d20197562e3f">distance</a>(vec&lt;L, T, Q&gt; <span class="keyword">const</span>&amp; p0, vec&lt;L, T, Q&gt; <span class="keyword">const</span>&amp; p1);</div>
-<div class="line"><a name="l00041"></a><span class="lineno">   41</span>&#160;</div>
-<div class="line"><a name="l00049"></a><span class="lineno">   49</span>&#160;        <span class="keyword">template</span>&lt;length_t L, <span class="keyword">typename</span> T, qualifier Q&gt;</div>
-<div class="line"><a name="l00050"></a><span class="lineno">   50</span>&#160;        GLM_FUNC_DECL T <a class="code" href="a00279.html#gaad6c5d9d39bdc0bf43baf1b22e147a0a">dot</a>(vec&lt;L, T, Q&gt; <span class="keyword">const</span>&amp; x, vec&lt;L, T, Q&gt; <span class="keyword">const</span>&amp; y);</div>
-<div class="line"><a name="l00051"></a><span class="lineno">   51</span>&#160;</div>
-<div class="line"><a name="l00058"></a><span class="lineno">   58</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T, qualifier Q&gt;</div>
-<div class="line"><a name="l00059"></a><span class="lineno">   59</span>&#160;        GLM_FUNC_DECL vec&lt;3, T, Q&gt; <a class="code" href="a00279.html#gaeeec0794212fe84fc9d261de067c9587">cross</a>(vec&lt;3, T, Q&gt; <span class="keyword">const</span>&amp; x, vec&lt;3, T, Q&gt; <span class="keyword">const</span>&amp; y);</div>
-<div class="line"><a name="l00060"></a><span class="lineno">   60</span>&#160;</div>
-<div class="line"><a name="l00069"></a><span class="lineno">   69</span>&#160;        <span class="keyword">template</span>&lt;length_t L, <span class="keyword">typename</span> T, qualifier Q&gt;</div>
-<div class="line"><a name="l00070"></a><span class="lineno">   70</span>&#160;        GLM_FUNC_DECL vec&lt;L, T, Q&gt; <a class="code" href="a00279.html#ga3b8d3dcae77870781392ed2902cce597">normalize</a>(vec&lt;L, T, Q&gt; <span class="keyword">const</span>&amp; x);</div>
-<div class="line"><a name="l00071"></a><span class="lineno">   71</span>&#160;</div>
-<div class="line"><a name="l00079"></a><span class="lineno">   79</span>&#160;        <span class="keyword">template</span>&lt;length_t L, <span class="keyword">typename</span> T, qualifier Q&gt;</div>
-<div class="line"><a name="l00080"></a><span class="lineno">   80</span>&#160;        GLM_FUNC_DECL vec&lt;L, T, Q&gt; <a class="code" href="a00279.html#ga7aed0a36c738169402404a3a5d54e43b">faceforward</a>(</div>
-<div class="line"><a name="l00081"></a><span class="lineno">   81</span>&#160;                vec&lt;L, T, Q&gt; <span class="keyword">const</span>&amp; N,</div>
-<div class="line"><a name="l00082"></a><span class="lineno">   82</span>&#160;                vec&lt;L, T, Q&gt; <span class="keyword">const</span>&amp; I,</div>
-<div class="line"><a name="l00083"></a><span class="lineno">   83</span>&#160;                vec&lt;L, T, Q&gt; <span class="keyword">const</span>&amp; Nref);</div>
-<div class="line"><a name="l00084"></a><span class="lineno">   84</span>&#160;</div>
-<div class="line"><a name="l00093"></a><span class="lineno">   93</span>&#160;        <span class="keyword">template</span>&lt;length_t L, <span class="keyword">typename</span> T, qualifier Q&gt;</div>
-<div class="line"><a name="l00094"></a><span class="lineno">   94</span>&#160;        GLM_FUNC_DECL vec&lt;L, T, Q&gt; <a class="code" href="a00279.html#ga5631dd1d5618de5450b1ea3cf3e94905">reflect</a>(</div>
-<div class="line"><a name="l00095"></a><span class="lineno">   95</span>&#160;                vec&lt;L, T, Q&gt; <span class="keyword">const</span>&amp; I,</div>
-<div class="line"><a name="l00096"></a><span class="lineno">   96</span>&#160;                vec&lt;L, T, Q&gt; <span class="keyword">const</span>&amp; N);</div>
-<div class="line"><a name="l00097"></a><span class="lineno">   97</span>&#160;</div>
-<div class="line"><a name="l00107"></a><span class="lineno">  107</span>&#160;        <span class="keyword">template</span>&lt;length_t L, <span class="keyword">typename</span> T, qualifier Q&gt;</div>
-<div class="line"><a name="l00108"></a><span class="lineno">  108</span>&#160;        GLM_FUNC_DECL vec&lt;L, T, Q&gt; <a class="code" href="a00279.html#ga01da3dff9e2ef6b9d4915c3047e22b74">refract</a>(</div>
-<div class="line"><a name="l00109"></a><span class="lineno">  109</span>&#160;                vec&lt;L, T, Q&gt; <span class="keyword">const</span>&amp; I,</div>
-<div class="line"><a name="l00110"></a><span class="lineno">  110</span>&#160;                vec&lt;L, T, Q&gt; <span class="keyword">const</span>&amp; N,</div>
-<div class="line"><a name="l00111"></a><span class="lineno">  111</span>&#160;                T eta);</div>
-<div class="line"><a name="l00112"></a><span class="lineno">  112</span>&#160;</div>
-<div class="line"><a name="l00114"></a><span class="lineno">  114</span>&#160;}<span class="comment">//namespace glm</span></div>
-<div class="line"><a name="l00115"></a><span class="lineno">  115</span>&#160;</div>
-<div class="line"><a name="l00116"></a><span class="lineno">  116</span>&#160;<span class="preprocessor">#include &quot;detail/func_geometric.inl&quot;</span></div>
-<div class="ttc" id="a00279_html_ga5631dd1d5618de5450b1ea3cf3e94905"><div class="ttname"><a href="a00279.html#ga5631dd1d5618de5450b1ea3cf3e94905">glm::reflect</a></div><div class="ttdeci">GLM_FUNC_DECL vec&lt; L, T, Q &gt; reflect(vec&lt; L, T, Q &gt; const &amp;I, vec&lt; L, T, Q &gt; const &amp;N)</div><div class="ttdoc">For the incident vector I and surface orientation N, returns the reflection direction : result = I - ...</div></div>
-<div class="ttc" id="a00279_html_ga7aed0a36c738169402404a3a5d54e43b"><div class="ttname"><a href="a00279.html#ga7aed0a36c738169402404a3a5d54e43b">glm::faceforward</a></div><div class="ttdeci">GLM_FUNC_DECL vec&lt; L, T, Q &gt; faceforward(vec&lt; L, T, Q &gt; const &amp;N, vec&lt; L, T, Q &gt; const &amp;I, vec&lt; L, T, Q &gt; const &amp;Nref)</div><div class="ttdoc">If dot(Nref, I) < 0.0, return N, otherwise, return -N. </div></div>
-<div class="ttc" id="a00279_html_ga0cdabbb000834d994a1d6dc56f8f5263"><div class="ttname"><a href="a00279.html#ga0cdabbb000834d994a1d6dc56f8f5263">glm::length</a></div><div class="ttdeci">GLM_FUNC_DECL T length(vec&lt; L, T, Q &gt; const &amp;x)</div><div class="ttdoc">Returns the length of x, i.e., sqrt(x * x). </div></div>
-<div class="ttc" id="a00279_html_gaeeec0794212fe84fc9d261de067c9587"><div class="ttname"><a href="a00279.html#gaeeec0794212fe84fc9d261de067c9587">glm::cross</a></div><div class="ttdeci">GLM_FUNC_DECL vec&lt; 3, T, Q &gt; cross(vec&lt; 3, T, Q &gt; const &amp;x, vec&lt; 3, T, Q &gt; const &amp;y)</div><div class="ttdoc">Returns the cross product of x and y. </div></div>
-<div class="ttc" id="a00279_html_ga01da3dff9e2ef6b9d4915c3047e22b74"><div class="ttname"><a href="a00279.html#ga01da3dff9e2ef6b9d4915c3047e22b74">glm::refract</a></div><div class="ttdeci">GLM_FUNC_DECL vec&lt; L, T, Q &gt; refract(vec&lt; L, T, Q &gt; const &amp;I, vec&lt; L, T, Q &gt; const &amp;N, T eta)</div><div class="ttdoc">For the incident vector I and surface normal N, and the ratio of indices of refraction eta...</div></div>
-<div class="ttc" id="a00279_html_ga3b8d3dcae77870781392ed2902cce597"><div class="ttname"><a href="a00279.html#ga3b8d3dcae77870781392ed2902cce597">glm::normalize</a></div><div class="ttdeci">GLM_FUNC_DECL vec&lt; L, T, Q &gt; normalize(vec&lt; L, T, Q &gt; const &amp;x)</div><div class="ttdoc">Returns a vector in the same direction as x but with length of 1. </div></div>
-<div class="ttc" id="a00180_html"><div class="ttname"><a href="a00180.html">type_vec3.hpp</a></div><div class="ttdoc">Core features </div></div>
-<div class="ttc" id="a00279_html_gaa68de6c53e20dfb2dac2d20197562e3f"><div class="ttname"><a href="a00279.html#gaa68de6c53e20dfb2dac2d20197562e3f">glm::distance</a></div><div class="ttdeci">GLM_FUNC_DECL T distance(vec&lt; L, T, Q &gt; const &amp;p0, vec&lt; L, T, Q &gt; const &amp;p1)</div><div class="ttdoc">Returns the distance betwwen p0 and p1, i.e., length(p0 - p1). </div></div>
-<div class="ttc" id="a00279_html_gaad6c5d9d39bdc0bf43baf1b22e147a0a"><div class="ttname"><a href="a00279.html#gaad6c5d9d39bdc0bf43baf1b22e147a0a">glm::dot</a></div><div class="ttdeci">GLM_FUNC_DECL T dot(vec&lt; L, T, Q &gt; const &amp;x, vec&lt; L, T, Q &gt; const &amp;y)</div><div class="ttdoc">Returns the dot product of x and y, i.e., result = x * y. </div></div>
-<div class="ttc" id="a00236_html"><div class="ttname"><a href="a00236.html">glm</a></div><div class="ttdef"><b>Definition:</b> <a href="a00015_source.html#l00020">common.hpp:20</a></div></div>
-</div><!-- fragment --></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.10
-</small></address>
-</body>
-</html>

+ 0 - 108
doc/api/a00037.html

@@ -1,108 +0,0 @@
-<!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.10"/>
-<title>0.9.9 API documentation: glm.hpp File Reference</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="search/search.css" rel="stylesheet" type="text/css"/>
-<script type="text/javascript" src="search/searchdata.js"></script>
-<script type="text/javascript" src="search/search.js"></script>
-<script type="text/javascript">
-  $(document).ready(function() { init_search(); });
-</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 id="projectlogo"><img alt="Logo" src="logo-mini.png"/></td>
-  <td id="projectalign" style="padding-left: 0.5em;">
-   <div id="projectname">0.9.9 API documentation
-   </div>
-  </td>
- </tr>
- </tbody>
-</table>
-</div>
-<!-- end header part -->
-<!-- Generated by Doxygen 1.8.10 -->
-<script type="text/javascript">
-var searchBox = new SearchBox("searchBox", "search",false,'Search');
-</script>
-  <div id="navrow1" class="tabs">
-    <ul class="tablist">
-      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
-      <li><a href="modules.html"><span>Modules</span></a></li>
-      <li class="current"><a href="files.html"><span>Files</span></a></li>
-      <li>
-        <div id="MSearchBox" class="MSearchBoxInactive">
-        <span class="left">
-          <img id="MSearchSelect" src="search/mag_sel.png"
-               onmouseover="return searchBox.OnSearchSelectShow()"
-               onmouseout="return searchBox.OnSearchSelectHide()"
-               alt=""/>
-          <input type="text" id="MSearchField" value="Search" accesskey="S"
-               onfocus="searchBox.OnSearchFieldFocus(true)" 
-               onblur="searchBox.OnSearchFieldFocus(false)" 
-               onkeyup="searchBox.OnSearchFieldChange(event)"/>
-          </span><span class="right">
-            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
-          </span>
-        </div>
-      </li>
-    </ul>
-  </div>
-  <div id="navrow2" class="tabs2">
-    <ul class="tablist">
-      <li><a href="files.html"><span>File&#160;List</span></a></li>
-    </ul>
-  </div>
-<!-- window showing the filter options -->
-<div id="MSearchSelectWindow"
-     onmouseover="return searchBox.OnSearchSelectShow()"
-     onmouseout="return searchBox.OnSearchSelectHide()"
-     onkeydown="return searchBox.OnSearchSelectKey(event)">
-</div>
-
-<!-- iframe showing the search results (closed by default) -->
-<div id="MSearchResultsWindow">
-<iframe src="javascript:void(0)" frameborder="0" 
-        name="MSearchResults" id="MSearchResults">
-</iframe>
-</div>
-
-<div id="nav-path" class="navpath">
-  <ul>
-<li class="navelem"><a class="el" href="dir_3a581ba30d25676e4b797b1f96d53b45.html">F:</a></li><li class="navelem"><a class="el" href="dir_9e5fe034a00e89334fd5186c3e7db156.html">G-Truc</a></li><li class="navelem"><a class="el" href="dir_d9496f0844b48bc7e53b5af8c99b9ab2.html">Source</a></li><li class="navelem"><a class="el" href="dir_a8bee7be44182a33f3820393ae0b105d.html">G-Truc</a></li><li class="navelem"><a class="el" href="dir_44e5e654415abd9ca6fdeaddaff8565e.html">glm</a></li><li class="navelem"><a class="el" href="dir_cef2d71d502cb69a9252bca2297d9549.html">glm</a></li>  </ul>
-</div>
-</div><!-- top -->
-<div class="header">
-  <div class="headertitle">
-<div class="title">glm.hpp File Reference</div>  </div>
-</div><!--header-->
-<div class="contents">
-
-<p><a class="el" href="a00280.html">Core features</a>  
-<a href="#details">More...</a></p>
-
-<p><a href="a00037_source.html">Go to the source code of this file.</a></p>
-<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
-<div class="textblock"><p><a class="el" href="a00280.html">Core features</a> </p>
-
-<p>Definition in file <a class="el" href="a00037_source.html">glm.hpp</a>.</p>
-</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.10
-</small></address>
-</body>
-</html>

+ 0 - 154
doc/api/a00037_source.html

@@ -1,154 +0,0 @@
-<!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.10"/>
-<title>0.9.9 API documentation: glm.hpp Source File</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="search/search.css" rel="stylesheet" type="text/css"/>
-<script type="text/javascript" src="search/searchdata.js"></script>
-<script type="text/javascript" src="search/search.js"></script>
-<script type="text/javascript">
-  $(document).ready(function() { init_search(); });
-</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 id="projectlogo"><img alt="Logo" src="logo-mini.png"/></td>
-  <td id="projectalign" style="padding-left: 0.5em;">
-   <div id="projectname">0.9.9 API documentation
-   </div>
-  </td>
- </tr>
- </tbody>
-</table>
-</div>
-<!-- end header part -->
-<!-- Generated by Doxygen 1.8.10 -->
-<script type="text/javascript">
-var searchBox = new SearchBox("searchBox", "search",false,'Search');
-</script>
-  <div id="navrow1" class="tabs">
-    <ul class="tablist">
-      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
-      <li><a href="modules.html"><span>Modules</span></a></li>
-      <li class="current"><a href="files.html"><span>Files</span></a></li>
-      <li>
-        <div id="MSearchBox" class="MSearchBoxInactive">
-        <span class="left">
-          <img id="MSearchSelect" src="search/mag_sel.png"
-               onmouseover="return searchBox.OnSearchSelectShow()"
-               onmouseout="return searchBox.OnSearchSelectHide()"
-               alt=""/>
-          <input type="text" id="MSearchField" value="Search" accesskey="S"
-               onfocus="searchBox.OnSearchFieldFocus(true)" 
-               onblur="searchBox.OnSearchFieldFocus(false)" 
-               onkeyup="searchBox.OnSearchFieldChange(event)"/>
-          </span><span class="right">
-            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
-          </span>
-        </div>
-      </li>
-    </ul>
-  </div>
-  <div id="navrow2" class="tabs2">
-    <ul class="tablist">
-      <li><a href="files.html"><span>File&#160;List</span></a></li>
-    </ul>
-  </div>
-<!-- window showing the filter options -->
-<div id="MSearchSelectWindow"
-     onmouseover="return searchBox.OnSearchSelectShow()"
-     onmouseout="return searchBox.OnSearchSelectHide()"
-     onkeydown="return searchBox.OnSearchSelectKey(event)">
-</div>
-
-<!-- iframe showing the search results (closed by default) -->
-<div id="MSearchResultsWindow">
-<iframe src="javascript:void(0)" frameborder="0" 
-        name="MSearchResults" id="MSearchResults">
-</iframe>
-</div>
-
-<div id="nav-path" class="navpath">
-  <ul>
-<li class="navelem"><a class="el" href="dir_3a581ba30d25676e4b797b1f96d53b45.html">F:</a></li><li class="navelem"><a class="el" href="dir_9e5fe034a00e89334fd5186c3e7db156.html">G-Truc</a></li><li class="navelem"><a class="el" href="dir_d9496f0844b48bc7e53b5af8c99b9ab2.html">Source</a></li><li class="navelem"><a class="el" href="dir_a8bee7be44182a33f3820393ae0b105d.html">G-Truc</a></li><li class="navelem"><a class="el" href="dir_44e5e654415abd9ca6fdeaddaff8565e.html">glm</a></li><li class="navelem"><a class="el" href="dir_cef2d71d502cb69a9252bca2297d9549.html">glm</a></li>  </ul>
-</div>
-</div><!-- top -->
-<div class="header">
-  <div class="headertitle">
-<div class="title">glm.hpp</div>  </div>
-</div><!--header-->
-<div class="contents">
-<a href="a00037.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span>&#160;</div>
-<div class="line"><a name="l00103"></a><span class="lineno">  103</span>&#160;<span class="preprocessor">#include &quot;detail/_fixes.hpp&quot;</span></div>
-<div class="line"><a name="l00104"></a><span class="lineno">  104</span>&#160;</div>
-<div class="line"><a name="l00105"></a><span class="lineno">  105</span>&#160;<span class="preprocessor">#include &quot;detail/setup.hpp&quot;</span></div>
-<div class="line"><a name="l00106"></a><span class="lineno">  106</span>&#160;</div>
-<div class="line"><a name="l00107"></a><span class="lineno">  107</span>&#160;<span class="preprocessor">#pragma once</span></div>
-<div class="line"><a name="l00108"></a><span class="lineno">  108</span>&#160;</div>
-<div class="line"><a name="l00109"></a><span class="lineno">  109</span>&#160;<span class="preprocessor">#include &lt;cmath&gt;</span></div>
-<div class="line"><a name="l00110"></a><span class="lineno">  110</span>&#160;<span class="preprocessor">#include &lt;climits&gt;</span></div>
-<div class="line"><a name="l00111"></a><span class="lineno">  111</span>&#160;<span class="preprocessor">#include &lt;cfloat&gt;</span></div>
-<div class="line"><a name="l00112"></a><span class="lineno">  112</span>&#160;<span class="preprocessor">#include &lt;limits&gt;</span></div>
-<div class="line"><a name="l00113"></a><span class="lineno">  113</span>&#160;<span class="preprocessor">#include &lt;cassert&gt;</span></div>
-<div class="line"><a name="l00114"></a><span class="lineno">  114</span>&#160;<span class="preprocessor">#include &quot;fwd.hpp&quot;</span></div>
-<div class="line"><a name="l00115"></a><span class="lineno">  115</span>&#160;</div>
-<div class="line"><a name="l00116"></a><span class="lineno">  116</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="a00184.html">vec2.hpp</a>&quot;</span></div>
-<div class="line"><a name="l00117"></a><span class="lineno">  117</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="a00185.html">vec3.hpp</a>&quot;</span></div>
-<div class="line"><a name="l00118"></a><span class="lineno">  118</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="a00186.html">vec4.hpp</a>&quot;</span></div>
-<div class="line"><a name="l00119"></a><span class="lineno">  119</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="a00048.html">mat2x2.hpp</a>&quot;</span></div>
-<div class="line"><a name="l00120"></a><span class="lineno">  120</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="a00049.html">mat2x3.hpp</a>&quot;</span></div>
-<div class="line"><a name="l00121"></a><span class="lineno">  121</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="a00050.html">mat2x4.hpp</a>&quot;</span></div>
-<div class="line"><a name="l00122"></a><span class="lineno">  122</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="a00051.html">mat3x2.hpp</a>&quot;</span></div>
-<div class="line"><a name="l00123"></a><span class="lineno">  123</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="a00052.html">mat3x3.hpp</a>&quot;</span></div>
-<div class="line"><a name="l00124"></a><span class="lineno">  124</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="a00053.html">mat3x4.hpp</a>&quot;</span></div>
-<div class="line"><a name="l00125"></a><span class="lineno">  125</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="a00054.html">mat4x2.hpp</a>&quot;</span></div>
-<div class="line"><a name="l00126"></a><span class="lineno">  126</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="a00055.html">mat4x3.hpp</a>&quot;</span></div>
-<div class="line"><a name="l00127"></a><span class="lineno">  127</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="a00056.html">mat4x4.hpp</a>&quot;</span></div>
-<div class="line"><a name="l00128"></a><span class="lineno">  128</span>&#160;</div>
-<div class="line"><a name="l00129"></a><span class="lineno">  129</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="a00160.html">trigonometric.hpp</a>&quot;</span></div>
-<div class="line"><a name="l00130"></a><span class="lineno">  130</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="a00026.html">exponential.hpp</a>&quot;</span></div>
-<div class="line"><a name="l00131"></a><span class="lineno">  131</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="a00015.html">common.hpp</a>&quot;</span></div>
-<div class="line"><a name="l00132"></a><span class="lineno">  132</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="a00120.html">packing.hpp</a>&quot;</span></div>
-<div class="line"><a name="l00133"></a><span class="lineno">  133</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="a00036.html">geometric.hpp</a>&quot;</span></div>
-<div class="line"><a name="l00134"></a><span class="lineno">  134</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="a00057.html">matrix.hpp</a>&quot;</span></div>
-<div class="line"><a name="l00135"></a><span class="lineno">  135</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="a00225.html">vector_relational.hpp</a>&quot;</span></div>
-<div class="line"><a name="l00136"></a><span class="lineno">  136</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="a00043.html">integer.hpp</a>&quot;</span></div>
-<div class="ttc" id="a00056_html"><div class="ttname"><a href="a00056.html">mat4x4.hpp</a></div><div class="ttdoc">Core features </div></div>
-<div class="ttc" id="a00015_html"><div class="ttname"><a href="a00015.html">common.hpp</a></div><div class="ttdoc">Core features </div></div>
-<div class="ttc" id="a00050_html"><div class="ttname"><a href="a00050.html">mat2x4.hpp</a></div><div class="ttdoc">Core features </div></div>
-<div class="ttc" id="a00055_html"><div class="ttname"><a href="a00055.html">mat4x3.hpp</a></div><div class="ttdoc">Core features </div></div>
-<div class="ttc" id="a00184_html"><div class="ttname"><a href="a00184.html">vec2.hpp</a></div><div class="ttdoc">Core features </div></div>
-<div class="ttc" id="a00043_html"><div class="ttname"><a href="a00043.html">integer.hpp</a></div><div class="ttdoc">Core features </div></div>
-<div class="ttc" id="a00026_html"><div class="ttname"><a href="a00026.html">exponential.hpp</a></div><div class="ttdoc">Core features </div></div>
-<div class="ttc" id="a00120_html"><div class="ttname"><a href="a00120.html">packing.hpp</a></div><div class="ttdoc">Core features </div></div>
-<div class="ttc" id="a00049_html"><div class="ttname"><a href="a00049.html">mat2x3.hpp</a></div><div class="ttdoc">Core features </div></div>
-<div class="ttc" id="a00054_html"><div class="ttname"><a href="a00054.html">mat4x2.hpp</a></div><div class="ttdoc">Core features </div></div>
-<div class="ttc" id="a00225_html"><div class="ttname"><a href="a00225.html">vector_relational.hpp</a></div><div class="ttdoc">Core features </div></div>
-<div class="ttc" id="a00052_html"><div class="ttname"><a href="a00052.html">mat3x3.hpp</a></div><div class="ttdoc">Core features </div></div>
-<div class="ttc" id="a00057_html"><div class="ttname"><a href="a00057.html">matrix.hpp</a></div><div class="ttdoc">Core features </div></div>
-<div class="ttc" id="a00186_html"><div class="ttname"><a href="a00186.html">vec4.hpp</a></div><div class="ttdoc">Core features </div></div>
-<div class="ttc" id="a00160_html"><div class="ttname"><a href="a00160.html">trigonometric.hpp</a></div><div class="ttdoc">Core features </div></div>
-<div class="ttc" id="a00053_html"><div class="ttname"><a href="a00053.html">mat3x4.hpp</a></div><div class="ttdoc">Core features </div></div>
-<div class="ttc" id="a00051_html"><div class="ttname"><a href="a00051.html">mat3x2.hpp</a></div><div class="ttdoc">Core features </div></div>
-<div class="ttc" id="a00185_html"><div class="ttname"><a href="a00185.html">vec3.hpp</a></div><div class="ttdoc">Core features </div></div>
-<div class="ttc" id="a00048_html"><div class="ttname"><a href="a00048.html">mat2x2.hpp</a></div><div class="ttdoc">Core features </div></div>
-<div class="ttc" id="a00036_html"><div class="ttname"><a href="a00036.html">geometric.hpp</a></div><div class="ttdoc">Core features </div></div>
-</div><!-- fragment --></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.10
-</small></address>
-</body>
-</html>

+ 37 - 76
doc/api/a00038_source.html

@@ -1,19 +1,17 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://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.10"/>
-<title>0.9.9 API documentation: gradient_paint.hpp Source File</title>
+<meta name="generator" content="Doxygen 1.8.18"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>1.0.0 API documentation: type_half.hpp Source File</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="search/search.css" rel="stylesheet" type="text/css"/>
 <script type="text/javascript" src="search/searchdata.js"></script>
 <script type="text/javascript" src="search/search.js"></script>
-<script type="text/javascript">
-  $(document).ready(function() { init_search(); });
-</script>
 <link href="doxygen.css" rel="stylesheet" type="text/css" />
 </head>
 <body>
@@ -24,7 +22,7 @@
  <tr style="height: 56px;">
   <td id="projectlogo"><img alt="Logo" src="logo-mini.png"/></td>
   <td id="projectalign" style="padding-left: 0.5em;">
-   <div id="projectname">0.9.9 API documentation
+   <div id="projectname">1.0.0 API documentation
    </div>
   </td>
  </tr>
@@ -32,38 +30,22 @@
 </table>
 </div>
 <!-- end header part -->
-<!-- Generated by Doxygen 1.8.10 -->
+<!-- Generated by Doxygen 1.8.18 -->
 <script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
 var searchBox = new SearchBox("searchBox", "search",false,'Search');
+/* @license-end */
 </script>
-  <div id="navrow1" class="tabs">
-    <ul class="tablist">
-      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
-      <li><a href="modules.html"><span>Modules</span></a></li>
-      <li class="current"><a href="files.html"><span>Files</span></a></li>
-      <li>
-        <div id="MSearchBox" class="MSearchBoxInactive">
-        <span class="left">
-          <img id="MSearchSelect" src="search/mag_sel.png"
-               onmouseover="return searchBox.OnSearchSelectShow()"
-               onmouseout="return searchBox.OnSearchSelectHide()"
-               alt=""/>
-          <input type="text" id="MSearchField" value="Search" accesskey="S"
-               onfocus="searchBox.OnSearchFieldFocus(true)" 
-               onblur="searchBox.OnSearchFieldFocus(false)" 
-               onkeyup="searchBox.OnSearchFieldChange(event)"/>
-          </span><span class="right">
-            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
-          </span>
-        </div>
-      </li>
-    </ul>
-  </div>
-  <div id="navrow2" class="tabs2">
-    <ul class="tablist">
-      <li><a href="files.html"><span>File&#160;List</span></a></li>
-    </ul>
-  </div>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
 <!-- window showing the filter options -->
 <div id="MSearchSelectWindow"
      onmouseover="return searchBox.OnSearchSelectShow()"
@@ -80,57 +62,36 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 
 <div id="nav-path" class="navpath">
   <ul>
-<li class="navelem"><a class="el" href="dir_3a581ba30d25676e4b797b1f96d53b45.html">F:</a></li><li class="navelem"><a class="el" href="dir_9e5fe034a00e89334fd5186c3e7db156.html">G-Truc</a></li><li class="navelem"><a class="el" href="dir_d9496f0844b48bc7e53b5af8c99b9ab2.html">Source</a></li><li class="navelem"><a class="el" href="dir_a8bee7be44182a33f3820393ae0b105d.html">G-Truc</a></li><li class="navelem"><a class="el" href="dir_44e5e654415abd9ca6fdeaddaff8565e.html">glm</a></li><li class="navelem"><a class="el" href="dir_cef2d71d502cb69a9252bca2297d9549.html">glm</a></li><li class="navelem"><a class="el" href="dir_f35778ec600a1b9bbc4524e62e226aa2.html">gtx</a></li>  </ul>
+<li class="navelem"><a class="el" href="dir_885cc87fac2d91e269af0a5a959fa5f6.html">E:</a></li><li class="navelem"><a class="el" href="dir_63ed049134a778d525e06b63afc2c979.html">Github</a></li><li class="navelem"><a class="el" href="dir_c98a9ac98258ab9f831b188d66361a70.html">g-truc</a></li><li class="navelem"><a class="el" href="dir_50f12b6ceb23d7f6adfb377a1ae8b006.html">glm</a></li><li class="navelem"><a class="el" href="dir_fca33f1b5115d46f42c670590789c0d2.html">glm</a></li><li class="navelem"><a class="el" href="dir_382f4fd018b81be8753cb53c0a41a09a.html">detail</a></li>  </ul>
 </div>
 </div><!-- top -->
 <div class="header">
   <div class="headertitle">
-<div class="title">gradient_paint.hpp</div>  </div>
+<div class="title">type_half.hpp</div>  </div>
 </div><!--header-->
 <div class="contents">
-<a href="a00038.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span>&#160;</div>
-<div class="line"><a name="l00014"></a><span class="lineno">   14</span>&#160;<span class="preprocessor">#pragma once</span></div>
-<div class="line"><a name="l00015"></a><span class="lineno">   15</span>&#160;</div>
-<div class="line"><a name="l00016"></a><span class="lineno">   16</span>&#160;<span class="comment">// Dependency:</span></div>
-<div class="line"><a name="l00017"></a><span class="lineno">   17</span>&#160;<span class="preprocessor">#include &quot;../glm.hpp&quot;</span></div>
-<div class="line"><a name="l00018"></a><span class="lineno">   18</span>&#160;<span class="preprocessor">#include &quot;../gtx/optimum_pow.hpp&quot;</span></div>
-<div class="line"><a name="l00019"></a><span class="lineno">   19</span>&#160;</div>
-<div class="line"><a name="l00020"></a><span class="lineno">   20</span>&#160;<span class="preprocessor">#if GLM_MESSAGES == GLM_ENABLE &amp;&amp; !defined(GLM_EXT_INCLUDED)</span></div>
-<div class="line"><a name="l00021"></a><span class="lineno">   21</span>&#160;<span class="preprocessor">#       ifndef GLM_ENABLE_EXPERIMENTAL</span></div>
-<div class="line"><a name="l00022"></a><span class="lineno">   22</span>&#160;<span class="preprocessor">#               pragma message(&quot;GLM: GLM_GTX_gradient_paint is an experimental extension and may change in the future. Use #define GLM_ENABLE_EXPERIMENTAL before including it, if you really want to use it.&quot;)</span></div>
-<div class="line"><a name="l00023"></a><span class="lineno">   23</span>&#160;<span class="preprocessor">#       else</span></div>
-<div class="line"><a name="l00024"></a><span class="lineno">   24</span>&#160;<span class="preprocessor">#               pragma message(&quot;GLM: GLM_GTX_gradient_paint extension included&quot;)</span></div>
-<div class="line"><a name="l00025"></a><span class="lineno">   25</span>&#160;<span class="preprocessor">#       endif</span></div>
-<div class="line"><a name="l00026"></a><span class="lineno">   26</span>&#160;<span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00027"></a><span class="lineno">   27</span>&#160;</div>
-<div class="line"><a name="l00028"></a><span class="lineno">   28</span>&#160;<span class="keyword">namespace </span><a class="code" href="a00236.html">glm</a></div>
-<div class="line"><a name="l00029"></a><span class="lineno">   29</span>&#160;{</div>
-<div class="line"><a name="l00032"></a><span class="lineno">   32</span>&#160;</div>
-<div class="line"><a name="l00035"></a><span class="lineno">   35</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T, qualifier Q&gt;</div>
-<div class="line"><a name="l00036"></a><span class="lineno">   36</span>&#160;        GLM_FUNC_DECL T <a class="code" href="a00327.html#gaaecb1e93de4cbe0758b882812d4da294">radialGradient</a>(</div>
-<div class="line"><a name="l00037"></a><span class="lineno">   37</span>&#160;                vec&lt;2, T, Q&gt; <span class="keyword">const</span>&amp; Center,</div>
-<div class="line"><a name="l00038"></a><span class="lineno">   38</span>&#160;                T <span class="keyword">const</span>&amp; Radius,</div>
-<div class="line"><a name="l00039"></a><span class="lineno">   39</span>&#160;                vec&lt;2, T, Q&gt; <span class="keyword">const</span>&amp; Focal,</div>
-<div class="line"><a name="l00040"></a><span class="lineno">   40</span>&#160;                vec&lt;2, T, Q&gt; <span class="keyword">const</span>&amp; Position);</div>
-<div class="line"><a name="l00041"></a><span class="lineno">   41</span>&#160;</div>
-<div class="line"><a name="l00044"></a><span class="lineno">   44</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T, qualifier Q&gt;</div>
-<div class="line"><a name="l00045"></a><span class="lineno">   45</span>&#160;        GLM_FUNC_DECL T <a class="code" href="a00327.html#ga849241df1e55129b8ce9476200307419">linearGradient</a>(</div>
-<div class="line"><a name="l00046"></a><span class="lineno">   46</span>&#160;                vec&lt;2, T, Q&gt; <span class="keyword">const</span>&amp; Point0,</div>
-<div class="line"><a name="l00047"></a><span class="lineno">   47</span>&#160;                vec&lt;2, T, Q&gt; <span class="keyword">const</span>&amp; Point1,</div>
-<div class="line"><a name="l00048"></a><span class="lineno">   48</span>&#160;                vec&lt;2, T, Q&gt; <span class="keyword">const</span>&amp; Position);</div>
-<div class="line"><a name="l00049"></a><span class="lineno">   49</span>&#160;</div>
-<div class="line"><a name="l00051"></a><span class="lineno">   51</span>&#160;}<span class="comment">// namespace glm</span></div>
-<div class="line"><a name="l00052"></a><span class="lineno">   52</span>&#160;</div>
-<div class="line"><a name="l00053"></a><span class="lineno">   53</span>&#160;<span class="preprocessor">#include &quot;gradient_paint.inl&quot;</span></div>
-<div class="ttc" id="a00327_html_gaaecb1e93de4cbe0758b882812d4da294"><div class="ttname"><a href="a00327.html#gaaecb1e93de4cbe0758b882812d4da294">glm::radialGradient</a></div><div class="ttdeci">GLM_FUNC_DECL T radialGradient(vec&lt; 2, T, Q &gt; const &amp;Center, T const &amp;Radius, vec&lt; 2, T, Q &gt; const &amp;Focal, vec&lt; 2, T, Q &gt; const &amp;Position)</div><div class="ttdoc">Return a color from a radial gradient. </div></div>
-<div class="ttc" id="a00327_html_ga849241df1e55129b8ce9476200307419"><div class="ttname"><a href="a00327.html#ga849241df1e55129b8ce9476200307419">glm::linearGradient</a></div><div class="ttdeci">GLM_FUNC_DECL T linearGradient(vec&lt; 2, T, Q &gt; const &amp;Point0, vec&lt; 2, T, Q &gt; const &amp;Point1, vec&lt; 2, T, Q &gt; const &amp;Position)</div><div class="ttdoc">Return a color from a linear gradient. </div></div>
-<div class="ttc" id="a00236_html"><div class="ttname"><a href="a00236.html">glm</a></div><div class="ttdef"><b>Definition:</b> <a href="a00015_source.html#l00020">common.hpp:20</a></div></div>
+<div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span>&#160;<span class="preprocessor">#pragma once</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno">    2</span>&#160; </div>
+<div class="line"><a name="l00003"></a><span class="lineno">    3</span>&#160;<span class="preprocessor">#include &quot;setup.hpp&quot;</span></div>
+<div class="line"><a name="l00004"></a><span class="lineno">    4</span>&#160; </div>
+<div class="line"><a name="l00005"></a><span class="lineno">    5</span>&#160;<span class="keyword">namespace </span>glm{</div>
+<div class="line"><a name="l00006"></a><span class="lineno">    6</span>&#160;<span class="keyword">namespace </span>detail</div>
+<div class="line"><a name="l00007"></a><span class="lineno">    7</span>&#160;{</div>
+<div class="line"><a name="l00008"></a><span class="lineno">    8</span>&#160;        <span class="keyword">typedef</span> <span class="keywordtype">short</span> hdata;</div>
+<div class="line"><a name="l00009"></a><span class="lineno">    9</span>&#160; </div>
+<div class="line"><a name="l00010"></a><span class="lineno">   10</span>&#160;        GLM_FUNC_DECL <span class="keywordtype">float</span> toFloat32(hdata value);</div>
+<div class="line"><a name="l00011"></a><span class="lineno">   11</span>&#160;        GLM_FUNC_DECL hdata toFloat16(<span class="keywordtype">float</span> <span class="keyword">const</span>&amp; value);</div>
+<div class="line"><a name="l00012"></a><span class="lineno">   12</span>&#160; </div>
+<div class="line"><a name="l00013"></a><span class="lineno">   13</span>&#160;}<span class="comment">//namespace detail</span></div>
+<div class="line"><a name="l00014"></a><span class="lineno">   14</span>&#160;}<span class="comment">//namespace glm</span></div>
+<div class="line"><a name="l00015"></a><span class="lineno">   15</span>&#160; </div>
+<div class="line"><a name="l00016"></a><span class="lineno">   16</span>&#160;<span class="preprocessor">#include &quot;type_half.inl&quot;</span></div>
 </div><!-- fragment --></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.10
+</a> 1.8.18
 </small></address>
 </body>
 </html>

+ 0 - 134
doc/api/a00039_source.html

@@ -1,134 +0,0 @@
-<!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.10"/>
-<title>0.9.9 API documentation: handed_coordinate_space.hpp Source File</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="search/search.css" rel="stylesheet" type="text/css"/>
-<script type="text/javascript" src="search/searchdata.js"></script>
-<script type="text/javascript" src="search/search.js"></script>
-<script type="text/javascript">
-  $(document).ready(function() { init_search(); });
-</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 id="projectlogo"><img alt="Logo" src="logo-mini.png"/></td>
-  <td id="projectalign" style="padding-left: 0.5em;">
-   <div id="projectname">0.9.9 API documentation
-   </div>
-  </td>
- </tr>
- </tbody>
-</table>
-</div>
-<!-- end header part -->
-<!-- Generated by Doxygen 1.8.10 -->
-<script type="text/javascript">
-var searchBox = new SearchBox("searchBox", "search",false,'Search');
-</script>
-  <div id="navrow1" class="tabs">
-    <ul class="tablist">
-      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
-      <li><a href="modules.html"><span>Modules</span></a></li>
-      <li class="current"><a href="files.html"><span>Files</span></a></li>
-      <li>
-        <div id="MSearchBox" class="MSearchBoxInactive">
-        <span class="left">
-          <img id="MSearchSelect" src="search/mag_sel.png"
-               onmouseover="return searchBox.OnSearchSelectShow()"
-               onmouseout="return searchBox.OnSearchSelectHide()"
-               alt=""/>
-          <input type="text" id="MSearchField" value="Search" accesskey="S"
-               onfocus="searchBox.OnSearchFieldFocus(true)" 
-               onblur="searchBox.OnSearchFieldFocus(false)" 
-               onkeyup="searchBox.OnSearchFieldChange(event)"/>
-          </span><span class="right">
-            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
-          </span>
-        </div>
-      </li>
-    </ul>
-  </div>
-  <div id="navrow2" class="tabs2">
-    <ul class="tablist">
-      <li><a href="files.html"><span>File&#160;List</span></a></li>
-    </ul>
-  </div>
-<!-- window showing the filter options -->
-<div id="MSearchSelectWindow"
-     onmouseover="return searchBox.OnSearchSelectShow()"
-     onmouseout="return searchBox.OnSearchSelectHide()"
-     onkeydown="return searchBox.OnSearchSelectKey(event)">
-</div>
-
-<!-- iframe showing the search results (closed by default) -->
-<div id="MSearchResultsWindow">
-<iframe src="javascript:void(0)" frameborder="0" 
-        name="MSearchResults" id="MSearchResults">
-</iframe>
-</div>
-
-<div id="nav-path" class="navpath">
-  <ul>
-<li class="navelem"><a class="el" href="dir_3a581ba30d25676e4b797b1f96d53b45.html">F:</a></li><li class="navelem"><a class="el" href="dir_9e5fe034a00e89334fd5186c3e7db156.html">G-Truc</a></li><li class="navelem"><a class="el" href="dir_d9496f0844b48bc7e53b5af8c99b9ab2.html">Source</a></li><li class="navelem"><a class="el" href="dir_a8bee7be44182a33f3820393ae0b105d.html">G-Truc</a></li><li class="navelem"><a class="el" href="dir_44e5e654415abd9ca6fdeaddaff8565e.html">glm</a></li><li class="navelem"><a class="el" href="dir_cef2d71d502cb69a9252bca2297d9549.html">glm</a></li><li class="navelem"><a class="el" href="dir_f35778ec600a1b9bbc4524e62e226aa2.html">gtx</a></li>  </ul>
-</div>
-</div><!-- top -->
-<div class="header">
-  <div class="headertitle">
-<div class="title">handed_coordinate_space.hpp</div>  </div>
-</div><!--header-->
-<div class="contents">
-<a href="a00039.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span>&#160;</div>
-<div class="line"><a name="l00013"></a><span class="lineno">   13</span>&#160;<span class="preprocessor">#pragma once</span></div>
-<div class="line"><a name="l00014"></a><span class="lineno">   14</span>&#160;</div>
-<div class="line"><a name="l00015"></a><span class="lineno">   15</span>&#160;<span class="comment">// Dependency:</span></div>
-<div class="line"><a name="l00016"></a><span class="lineno">   16</span>&#160;<span class="preprocessor">#include &quot;../glm.hpp&quot;</span></div>
-<div class="line"><a name="l00017"></a><span class="lineno">   17</span>&#160;</div>
-<div class="line"><a name="l00018"></a><span class="lineno">   18</span>&#160;<span class="preprocessor">#if GLM_MESSAGES == GLM_ENABLE &amp;&amp; !defined(GLM_EXT_INCLUDED)</span></div>
-<div class="line"><a name="l00019"></a><span class="lineno">   19</span>&#160;<span class="preprocessor">#       ifndef GLM_ENABLE_EXPERIMENTAL</span></div>
-<div class="line"><a name="l00020"></a><span class="lineno">   20</span>&#160;<span class="preprocessor">#               pragma message(&quot;GLM: GLM_GTX_handed_coordinate_space is an experimental extension and may change in the future. Use #define GLM_ENABLE_EXPERIMENTAL before including it, if you really want to use it.&quot;)</span></div>
-<div class="line"><a name="l00021"></a><span class="lineno">   21</span>&#160;<span class="preprocessor">#       else</span></div>
-<div class="line"><a name="l00022"></a><span class="lineno">   22</span>&#160;<span class="preprocessor">#               pragma message(&quot;GLM: GLM_GTX_handed_coordinate_space extension included&quot;)</span></div>
-<div class="line"><a name="l00023"></a><span class="lineno">   23</span>&#160;<span class="preprocessor">#       endif</span></div>
-<div class="line"><a name="l00024"></a><span class="lineno">   24</span>&#160;<span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00025"></a><span class="lineno">   25</span>&#160;</div>
-<div class="line"><a name="l00026"></a><span class="lineno">   26</span>&#160;<span class="keyword">namespace </span><a class="code" href="a00236.html">glm</a></div>
-<div class="line"><a name="l00027"></a><span class="lineno">   27</span>&#160;{</div>
-<div class="line"><a name="l00030"></a><span class="lineno">   30</span>&#160;</div>
-<div class="line"><a name="l00033"></a><span class="lineno">   33</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T, qualifier Q&gt;</div>
-<div class="line"><a name="l00034"></a><span class="lineno">   34</span>&#160;        GLM_FUNC_DECL <span class="keywordtype">bool</span> <a class="code" href="a00328.html#ga99386a5ab5491871b947076e21699cc8">rightHanded</a>(</div>
-<div class="line"><a name="l00035"></a><span class="lineno">   35</span>&#160;                vec&lt;3, T, Q&gt; <span class="keyword">const</span>&amp; tangent,</div>
-<div class="line"><a name="l00036"></a><span class="lineno">   36</span>&#160;                vec&lt;3, T, Q&gt; <span class="keyword">const</span>&amp; binormal,</div>
-<div class="line"><a name="l00037"></a><span class="lineno">   37</span>&#160;                vec&lt;3, T, Q&gt; <span class="keyword">const</span>&amp; normal);</div>
-<div class="line"><a name="l00038"></a><span class="lineno">   38</span>&#160;</div>
-<div class="line"><a name="l00041"></a><span class="lineno">   41</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T, qualifier Q&gt;</div>
-<div class="line"><a name="l00042"></a><span class="lineno">   42</span>&#160;        GLM_FUNC_DECL <span class="keywordtype">bool</span> <a class="code" href="a00328.html#ga6f1bad193b9a3b048543d1935cf04dd3">leftHanded</a>(</div>
-<div class="line"><a name="l00043"></a><span class="lineno">   43</span>&#160;                vec&lt;3, T, Q&gt; <span class="keyword">const</span>&amp; tangent,</div>
-<div class="line"><a name="l00044"></a><span class="lineno">   44</span>&#160;                vec&lt;3, T, Q&gt; <span class="keyword">const</span>&amp; binormal,</div>
-<div class="line"><a name="l00045"></a><span class="lineno">   45</span>&#160;                vec&lt;3, T, Q&gt; <span class="keyword">const</span>&amp; normal);</div>
-<div class="line"><a name="l00046"></a><span class="lineno">   46</span>&#160;</div>
-<div class="line"><a name="l00048"></a><span class="lineno">   48</span>&#160;}<span class="comment">// namespace glm</span></div>
-<div class="line"><a name="l00049"></a><span class="lineno">   49</span>&#160;</div>
-<div class="line"><a name="l00050"></a><span class="lineno">   50</span>&#160;<span class="preprocessor">#include &quot;handed_coordinate_space.inl&quot;</span></div>
-<div class="ttc" id="a00328_html_ga6f1bad193b9a3b048543d1935cf04dd3"><div class="ttname"><a href="a00328.html#ga6f1bad193b9a3b048543d1935cf04dd3">glm::leftHanded</a></div><div class="ttdeci">GLM_FUNC_DECL bool leftHanded(vec&lt; 3, T, Q &gt; const &amp;tangent, vec&lt; 3, T, Q &gt; const &amp;binormal, vec&lt; 3, T, Q &gt; const &amp;normal)</div><div class="ttdoc">Return if a trihedron left handed or not. </div></div>
-<div class="ttc" id="a00328_html_ga99386a5ab5491871b947076e21699cc8"><div class="ttname"><a href="a00328.html#ga99386a5ab5491871b947076e21699cc8">glm::rightHanded</a></div><div class="ttdeci">GLM_FUNC_DECL bool rightHanded(vec&lt; 3, T, Q &gt; const &amp;tangent, vec&lt; 3, T, Q &gt; const &amp;binormal, vec&lt; 3, T, Q &gt; const &amp;normal)</div><div class="ttdoc">Return if a trihedron right handed or not. </div></div>
-<div class="ttc" id="a00236_html"><div class="ttname"><a href="a00236.html">glm</a></div><div class="ttdef"><b>Definition:</b> <a href="a00015_source.html#l00020">common.hpp:20</a></div></div>
-</div><!-- fragment --></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.10
-</small></address>
-</body>
-</html>

+ 0 - 109
doc/api/a00040.html

@@ -1,109 +0,0 @@
-<!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.10"/>
-<title>0.9.9 API documentation: hash.hpp File Reference</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="search/search.css" rel="stylesheet" type="text/css"/>
-<script type="text/javascript" src="search/searchdata.js"></script>
-<script type="text/javascript" src="search/search.js"></script>
-<script type="text/javascript">
-  $(document).ready(function() { init_search(); });
-</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 id="projectlogo"><img alt="Logo" src="logo-mini.png"/></td>
-  <td id="projectalign" style="padding-left: 0.5em;">
-   <div id="projectname">0.9.9 API documentation
-   </div>
-  </td>
- </tr>
- </tbody>
-</table>
-</div>
-<!-- end header part -->
-<!-- Generated by Doxygen 1.8.10 -->
-<script type="text/javascript">
-var searchBox = new SearchBox("searchBox", "search",false,'Search');
-</script>
-  <div id="navrow1" class="tabs">
-    <ul class="tablist">
-      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
-      <li><a href="modules.html"><span>Modules</span></a></li>
-      <li class="current"><a href="files.html"><span>Files</span></a></li>
-      <li>
-        <div id="MSearchBox" class="MSearchBoxInactive">
-        <span class="left">
-          <img id="MSearchSelect" src="search/mag_sel.png"
-               onmouseover="return searchBox.OnSearchSelectShow()"
-               onmouseout="return searchBox.OnSearchSelectHide()"
-               alt=""/>
-          <input type="text" id="MSearchField" value="Search" accesskey="S"
-               onfocus="searchBox.OnSearchFieldFocus(true)" 
-               onblur="searchBox.OnSearchFieldFocus(false)" 
-               onkeyup="searchBox.OnSearchFieldChange(event)"/>
-          </span><span class="right">
-            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
-          </span>
-        </div>
-      </li>
-    </ul>
-  </div>
-  <div id="navrow2" class="tabs2">
-    <ul class="tablist">
-      <li><a href="files.html"><span>File&#160;List</span></a></li>
-    </ul>
-  </div>
-<!-- window showing the filter options -->
-<div id="MSearchSelectWindow"
-     onmouseover="return searchBox.OnSearchSelectShow()"
-     onmouseout="return searchBox.OnSearchSelectHide()"
-     onkeydown="return searchBox.OnSearchSelectKey(event)">
-</div>
-
-<!-- iframe showing the search results (closed by default) -->
-<div id="MSearchResultsWindow">
-<iframe src="javascript:void(0)" frameborder="0" 
-        name="MSearchResults" id="MSearchResults">
-</iframe>
-</div>
-
-<div id="nav-path" class="navpath">
-  <ul>
-<li class="navelem"><a class="el" href="dir_3a581ba30d25676e4b797b1f96d53b45.html">F:</a></li><li class="navelem"><a class="el" href="dir_9e5fe034a00e89334fd5186c3e7db156.html">G-Truc</a></li><li class="navelem"><a class="el" href="dir_d9496f0844b48bc7e53b5af8c99b9ab2.html">Source</a></li><li class="navelem"><a class="el" href="dir_a8bee7be44182a33f3820393ae0b105d.html">G-Truc</a></li><li class="navelem"><a class="el" href="dir_44e5e654415abd9ca6fdeaddaff8565e.html">glm</a></li><li class="navelem"><a class="el" href="dir_cef2d71d502cb69a9252bca2297d9549.html">glm</a></li><li class="navelem"><a class="el" href="dir_f35778ec600a1b9bbc4524e62e226aa2.html">gtx</a></li>  </ul>
-</div>
-</div><!-- top -->
-<div class="header">
-  <div class="headertitle">
-<div class="title">hash.hpp File Reference</div>  </div>
-</div><!--header-->
-<div class="contents">
-
-<p><a class="el" href="a00329.html">GLM_GTX_hash</a>  
-<a href="#details">More...</a></p>
-
-<p><a href="a00040_source.html">Go to the source code of this file.</a></p>
-<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
-<div class="textblock"><p><a class="el" href="a00329.html">GLM_GTX_hash</a> </p>
-<dl class="section see"><dt>See also</dt><dd><a class="el" href="a00280.html" title="Features that implement in C++ the GLSL specification as closely as possible. ">Core features</a> (dependence) </dd></dl>
-
-<p>Definition in file <a class="el" href="a00040_source.html">hash.hpp</a>.</p>
-</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.10
-</small></address>
-</body>
-</html>

+ 24 - 63
doc/api/a00041.html

@@ -1,19 +1,17 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://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.10"/>
-<title>0.9.9 API documentation: integer.hpp File Reference</title>
+<meta name="generator" content="Doxygen 1.8.18"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>1.0.0 API documentation: type_mat2x2.hpp File Reference</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="search/search.css" rel="stylesheet" type="text/css"/>
 <script type="text/javascript" src="search/searchdata.js"></script>
 <script type="text/javascript" src="search/search.js"></script>
-<script type="text/javascript">
-  $(document).ready(function() { init_search(); });
-</script>
 <link href="doxygen.css" rel="stylesheet" type="text/css" />
 </head>
 <body>
@@ -24,7 +22,7 @@
  <tr style="height: 56px;">
   <td id="projectlogo"><img alt="Logo" src="logo-mini.png"/></td>
   <td id="projectalign" style="padding-left: 0.5em;">
-   <div id="projectname">0.9.9 API documentation
+   <div id="projectname">1.0.0 API documentation
    </div>
   </td>
  </tr>
@@ -32,38 +30,22 @@
 </table>
 </div>
 <!-- end header part -->
-<!-- Generated by Doxygen 1.8.10 -->
+<!-- Generated by Doxygen 1.8.18 -->
 <script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
 var searchBox = new SearchBox("searchBox", "search",false,'Search');
+/* @license-end */
 </script>
-  <div id="navrow1" class="tabs">
-    <ul class="tablist">
-      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
-      <li><a href="modules.html"><span>Modules</span></a></li>
-      <li class="current"><a href="files.html"><span>Files</span></a></li>
-      <li>
-        <div id="MSearchBox" class="MSearchBoxInactive">
-        <span class="left">
-          <img id="MSearchSelect" src="search/mag_sel.png"
-               onmouseover="return searchBox.OnSearchSelectShow()"
-               onmouseout="return searchBox.OnSearchSelectHide()"
-               alt=""/>
-          <input type="text" id="MSearchField" value="Search" accesskey="S"
-               onfocus="searchBox.OnSearchFieldFocus(true)" 
-               onblur="searchBox.OnSearchFieldFocus(false)" 
-               onkeyup="searchBox.OnSearchFieldChange(event)"/>
-          </span><span class="right">
-            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
-          </span>
-        </div>
-      </li>
-    </ul>
-  </div>
-  <div id="navrow2" class="tabs2">
-    <ul class="tablist">
-      <li><a href="files.html"><span>File&#160;List</span></a></li>
-    </ul>
-  </div>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
 <!-- window showing the filter options -->
 <div id="MSearchSelectWindow"
      onmouseover="return searchBox.OnSearchSelectShow()"
@@ -80,50 +62,29 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 
 <div id="nav-path" class="navpath">
   <ul>
-<li class="navelem"><a class="el" href="dir_3a581ba30d25676e4b797b1f96d53b45.html">F:</a></li><li class="navelem"><a class="el" href="dir_9e5fe034a00e89334fd5186c3e7db156.html">G-Truc</a></li><li class="navelem"><a class="el" href="dir_d9496f0844b48bc7e53b5af8c99b9ab2.html">Source</a></li><li class="navelem"><a class="el" href="dir_a8bee7be44182a33f3820393ae0b105d.html">G-Truc</a></li><li class="navelem"><a class="el" href="dir_44e5e654415abd9ca6fdeaddaff8565e.html">glm</a></li><li class="navelem"><a class="el" href="dir_cef2d71d502cb69a9252bca2297d9549.html">glm</a></li><li class="navelem"><a class="el" href="dir_4c6bd29c73fa4e5a2509e1c15f846751.html">gtc</a></li>  </ul>
+<li class="navelem"><a class="el" href="dir_885cc87fac2d91e269af0a5a959fa5f6.html">E:</a></li><li class="navelem"><a class="el" href="dir_63ed049134a778d525e06b63afc2c979.html">Github</a></li><li class="navelem"><a class="el" href="dir_c98a9ac98258ab9f831b188d66361a70.html">g-truc</a></li><li class="navelem"><a class="el" href="dir_50f12b6ceb23d7f6adfb377a1ae8b006.html">glm</a></li><li class="navelem"><a class="el" href="dir_fca33f1b5115d46f42c670590789c0d2.html">glm</a></li><li class="navelem"><a class="el" href="dir_382f4fd018b81be8753cb53c0a41a09a.html">detail</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">gtc/integer.hpp File Reference</div>  </div>
+<div class="title">type_mat2x2.hpp File Reference</div>  </div>
 </div><!--header-->
 <div class="contents">
 
-<p><a class="el" href="a00292.html">GLM_GTC_integer</a>  
+<p><a class="el" href="a00889.html">Core features</a>  
 <a href="#details">More...</a></p>
 
 <p><a href="a00041_source.html">Go to the source code of this file.</a></p>
-<table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
-Functions</h2></td></tr>
-<tr class="memitem:ga57824268ebe13a922f1d69a5d37f637f"><td class="memTemplParams" colspan="2">template&lt;length_t L, typename T , qualifier Q&gt; </td></tr>
-<tr class="memitem:ga57824268ebe13a922f1d69a5d37f637f"><td class="memTemplItemLeft" align="right" valign="top">GLM_FUNC_DECL vec&lt; L, int, Q &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00292.html#ga57824268ebe13a922f1d69a5d37f637f">iround</a> (vec&lt; L, T, Q &gt; const &amp;x)</td></tr>
-<tr class="memdesc:ga57824268ebe13a922f1d69a5d37f637f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns a value equal to the nearest integer to x.  <a href="a00292.html#ga57824268ebe13a922f1d69a5d37f637f">More...</a><br /></td></tr>
-<tr class="separator:ga57824268ebe13a922f1d69a5d37f637f"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:ga9bd682e74bfacb005c735305207ec417"><td class="memTemplParams" colspan="2">template&lt;typename genIUType &gt; </td></tr>
-<tr class="memitem:ga9bd682e74bfacb005c735305207ec417"><td class="memTemplItemLeft" align="right" valign="top">GLM_FUNC_DECL genIUType&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00292.html#ga9bd682e74bfacb005c735305207ec417">log2</a> (genIUType x)</td></tr>
-<tr class="memdesc:ga9bd682e74bfacb005c735305207ec417"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the log2 of x for integer values.  <a href="a00292.html#ga9bd682e74bfacb005c735305207ec417">More...</a><br /></td></tr>
-<tr class="separator:ga9bd682e74bfacb005c735305207ec417"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:ga6715b9d573972a0f7763d30d45bcaec4"><td class="memTemplParams" colspan="2">template&lt;length_t L, typename T , qualifier Q&gt; </td></tr>
-<tr class="memitem:ga6715b9d573972a0f7763d30d45bcaec4"><td class="memTemplItemLeft" align="right" valign="top">GLM_FUNC_DECL vec&lt; L, uint, Q &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00292.html#ga6715b9d573972a0f7763d30d45bcaec4">uround</a> (vec&lt; L, T, Q &gt; const &amp;x)</td></tr>
-<tr class="memdesc:ga6715b9d573972a0f7763d30d45bcaec4"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns a value equal to the nearest integer to x.  <a href="a00292.html#ga6715b9d573972a0f7763d30d45bcaec4">More...</a><br /></td></tr>
-<tr class="separator:ga6715b9d573972a0f7763d30d45bcaec4"><td class="memSeparator" colspan="2">&#160;</td></tr>
-</table>
 <a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
-<div class="textblock"><p><a class="el" href="a00292.html">GLM_GTC_integer</a> </p>
-<dl class="section see"><dt>See also</dt><dd><a class="el" href="a00280.html" title="Features that implement in C++ the GLSL specification as closely as possible. ">Core features</a> (dependence) </dd>
-<dd>
-<a class="el" href="a00292.html" title="Include <glm/gtc/integer.hpp> to use the features of this extension. ">GLM_GTC_integer</a> (dependence) </dd></dl>
+<div class="textblock"><p><a class="el" href="a00889.html">Core features</a> </p>
 
-<p>Definition in file <a class="el" href="a00041_source.html">gtc/integer.hpp</a>.</p>
+<p class="definition">Definition in file <a class="el" href="a00041_source.html">type_mat2x2.hpp</a>.</p>
 </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.10
+</a> 1.8.18
 </small></address>
 </body>
 </html>

+ 198 - 73
doc/api/a00041_source.html

@@ -1,19 +1,17 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://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.10"/>
-<title>0.9.9 API documentation: integer.hpp Source File</title>
+<meta name="generator" content="Doxygen 1.8.18"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>1.0.0 API documentation: type_mat2x2.hpp Source File</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="search/search.css" rel="stylesheet" type="text/css"/>
 <script type="text/javascript" src="search/searchdata.js"></script>
 <script type="text/javascript" src="search/search.js"></script>
-<script type="text/javascript">
-  $(document).ready(function() { init_search(); });
-</script>
 <link href="doxygen.css" rel="stylesheet" type="text/css" />
 </head>
 <body>
@@ -24,7 +22,7 @@
  <tr style="height: 56px;">
   <td id="projectlogo"><img alt="Logo" src="logo-mini.png"/></td>
   <td id="projectalign" style="padding-left: 0.5em;">
-   <div id="projectname">0.9.9 API documentation
+   <div id="projectname">1.0.0 API documentation
    </div>
   </td>
  </tr>
@@ -32,38 +30,22 @@
 </table>
 </div>
 <!-- end header part -->
-<!-- Generated by Doxygen 1.8.10 -->
+<!-- Generated by Doxygen 1.8.18 -->
 <script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
 var searchBox = new SearchBox("searchBox", "search",false,'Search');
+/* @license-end */
 </script>
-  <div id="navrow1" class="tabs">
-    <ul class="tablist">
-      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
-      <li><a href="modules.html"><span>Modules</span></a></li>
-      <li class="current"><a href="files.html"><span>Files</span></a></li>
-      <li>
-        <div id="MSearchBox" class="MSearchBoxInactive">
-        <span class="left">
-          <img id="MSearchSelect" src="search/mag_sel.png"
-               onmouseover="return searchBox.OnSearchSelectShow()"
-               onmouseout="return searchBox.OnSearchSelectHide()"
-               alt=""/>
-          <input type="text" id="MSearchField" value="Search" accesskey="S"
-               onfocus="searchBox.OnSearchFieldFocus(true)" 
-               onblur="searchBox.OnSearchFieldFocus(false)" 
-               onkeyup="searchBox.OnSearchFieldChange(event)"/>
-          </span><span class="right">
-            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
-          </span>
-        </div>
-      </li>
-    </ul>
-  </div>
-  <div id="navrow2" class="tabs2">
-    <ul class="tablist">
-      <li><a href="files.html"><span>File&#160;List</span></a></li>
-    </ul>
-  </div>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
 <!-- window showing the filter options -->
 <div id="MSearchSelectWindow"
      onmouseover="return searchBox.OnSearchSelectShow()"
@@ -80,54 +62,197 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 
 <div id="nav-path" class="navpath">
   <ul>
-<li class="navelem"><a class="el" href="dir_3a581ba30d25676e4b797b1f96d53b45.html">F:</a></li><li class="navelem"><a class="el" href="dir_9e5fe034a00e89334fd5186c3e7db156.html">G-Truc</a></li><li class="navelem"><a class="el" href="dir_d9496f0844b48bc7e53b5af8c99b9ab2.html">Source</a></li><li class="navelem"><a class="el" href="dir_a8bee7be44182a33f3820393ae0b105d.html">G-Truc</a></li><li class="navelem"><a class="el" href="dir_44e5e654415abd9ca6fdeaddaff8565e.html">glm</a></li><li class="navelem"><a class="el" href="dir_cef2d71d502cb69a9252bca2297d9549.html">glm</a></li><li class="navelem"><a class="el" href="dir_4c6bd29c73fa4e5a2509e1c15f846751.html">gtc</a></li>  </ul>
+<li class="navelem"><a class="el" href="dir_885cc87fac2d91e269af0a5a959fa5f6.html">E:</a></li><li class="navelem"><a class="el" href="dir_63ed049134a778d525e06b63afc2c979.html">Github</a></li><li class="navelem"><a class="el" href="dir_c98a9ac98258ab9f831b188d66361a70.html">g-truc</a></li><li class="navelem"><a class="el" href="dir_50f12b6ceb23d7f6adfb377a1ae8b006.html">glm</a></li><li class="navelem"><a class="el" href="dir_fca33f1b5115d46f42c670590789c0d2.html">glm</a></li><li class="navelem"><a class="el" href="dir_382f4fd018b81be8753cb53c0a41a09a.html">detail</a></li>  </ul>
 </div>
 </div><!-- top -->
 <div class="header">
   <div class="headertitle">
-<div class="title">gtc/integer.hpp</div>  </div>
+<div class="title">type_mat2x2.hpp</div>  </div>
 </div><!--header-->
 <div class="contents">
-<a href="a00041.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span>&#160;</div>
-<div class="line"><a name="l00014"></a><span class="lineno">   14</span>&#160;<span class="preprocessor">#pragma once</span></div>
-<div class="line"><a name="l00015"></a><span class="lineno">   15</span>&#160;</div>
-<div class="line"><a name="l00016"></a><span class="lineno">   16</span>&#160;<span class="comment">// Dependencies</span></div>
-<div class="line"><a name="l00017"></a><span class="lineno">   17</span>&#160;<span class="preprocessor">#include &quot;../detail/setup.hpp&quot;</span></div>
-<div class="line"><a name="l00018"></a><span class="lineno">   18</span>&#160;<span class="preprocessor">#include &quot;../detail/qualifier.hpp&quot;</span></div>
-<div class="line"><a name="l00019"></a><span class="lineno">   19</span>&#160;<span class="preprocessor">#include &quot;../common.hpp&quot;</span></div>
-<div class="line"><a name="l00020"></a><span class="lineno">   20</span>&#160;<span class="preprocessor">#include &quot;../integer.hpp&quot;</span></div>
-<div class="line"><a name="l00021"></a><span class="lineno">   21</span>&#160;<span class="preprocessor">#include &quot;../exponential.hpp&quot;</span></div>
-<div class="line"><a name="l00022"></a><span class="lineno">   22</span>&#160;<span class="preprocessor">#include &lt;limits&gt;</span></div>
-<div class="line"><a name="l00023"></a><span class="lineno">   23</span>&#160;</div>
-<div class="line"><a name="l00024"></a><span class="lineno">   24</span>&#160;<span class="preprocessor">#if GLM_MESSAGES == GLM_ENABLE &amp;&amp; !defined(GLM_EXT_INCLUDED)</span></div>
-<div class="line"><a name="l00025"></a><span class="lineno">   25</span>&#160;<span class="preprocessor">#       pragma message(&quot;GLM: GLM_GTC_integer extension included&quot;)</span></div>
-<div class="line"><a name="l00026"></a><span class="lineno">   26</span>&#160;<span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00027"></a><span class="lineno">   27</span>&#160;</div>
-<div class="line"><a name="l00028"></a><span class="lineno">   28</span>&#160;<span class="keyword">namespace </span><a class="code" href="a00236.html">glm</a></div>
-<div class="line"><a name="l00029"></a><span class="lineno">   29</span>&#160;{</div>
-<div class="line"><a name="l00032"></a><span class="lineno">   32</span>&#160;</div>
-<div class="line"><a name="l00035"></a><span class="lineno">   35</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> genIUType&gt;</div>
-<div class="line"><a name="l00036"></a><span class="lineno">   36</span>&#160;        GLM_FUNC_DECL genIUType <a class="code" href="a00292.html#ga9bd682e74bfacb005c735305207ec417">log2</a>(genIUType x);</div>
-<div class="line"><a name="l00037"></a><span class="lineno">   37</span>&#160;</div>
-<div class="line"><a name="l00047"></a><span class="lineno">   47</span>&#160;        <span class="keyword">template</span>&lt;length_t L, <span class="keyword">typename</span> T, qualifier Q&gt;</div>
-<div class="line"><a name="l00048"></a><span class="lineno">   48</span>&#160;        GLM_FUNC_DECL vec&lt;L, int, Q&gt; <a class="code" href="a00292.html#ga57824268ebe13a922f1d69a5d37f637f">iround</a>(vec&lt;L, T, Q&gt; <span class="keyword">const</span>&amp; x);</div>
-<div class="line"><a name="l00049"></a><span class="lineno">   49</span>&#160;</div>
-<div class="line"><a name="l00059"></a><span class="lineno">   59</span>&#160;        <span class="keyword">template</span>&lt;length_t L, <span class="keyword">typename</span> T, qualifier Q&gt;</div>
-<div class="line"><a name="l00060"></a><span class="lineno">   60</span>&#160;        GLM_FUNC_DECL vec&lt;L, uint, Q&gt; <a class="code" href="a00292.html#ga6715b9d573972a0f7763d30d45bcaec4">uround</a>(vec&lt;L, T, Q&gt; <span class="keyword">const</span>&amp; x);</div>
-<div class="line"><a name="l00061"></a><span class="lineno">   61</span>&#160;</div>
-<div class="line"><a name="l00063"></a><span class="lineno">   63</span>&#160;} <span class="comment">//namespace glm</span></div>
-<div class="line"><a name="l00064"></a><span class="lineno">   64</span>&#160;</div>
-<div class="line"><a name="l00065"></a><span class="lineno">   65</span>&#160;<span class="preprocessor">#include &quot;integer.inl&quot;</span></div>
-<div class="ttc" id="a00292_html_ga6715b9d573972a0f7763d30d45bcaec4"><div class="ttname"><a href="a00292.html#ga6715b9d573972a0f7763d30d45bcaec4">glm::uround</a></div><div class="ttdeci">GLM_FUNC_DECL vec&lt; L, uint, Q &gt; uround(vec&lt; L, T, Q &gt; const &amp;x)</div><div class="ttdoc">Returns a value equal to the nearest integer to x. </div></div>
-<div class="ttc" id="a00292_html_ga9bd682e74bfacb005c735305207ec417"><div class="ttname"><a href="a00292.html#ga9bd682e74bfacb005c735305207ec417">glm::log2</a></div><div class="ttdeci">GLM_FUNC_DECL genIUType log2(genIUType x)</div><div class="ttdoc">Returns the log2 of x for integer values. </div></div>
-<div class="ttc" id="a00292_html_ga57824268ebe13a922f1d69a5d37f637f"><div class="ttname"><a href="a00292.html#ga57824268ebe13a922f1d69a5d37f637f">glm::iround</a></div><div class="ttdeci">GLM_FUNC_DECL vec&lt; L, int, Q &gt; iround(vec&lt; L, T, Q &gt; const &amp;x)</div><div class="ttdoc">Returns a value equal to the nearest integer to x. </div></div>
-<div class="ttc" id="a00236_html"><div class="ttname"><a href="a00236.html">glm</a></div><div class="ttdef"><b>Definition:</b> <a href="a00015_source.html#l00020">common.hpp:20</a></div></div>
+<a href="a00041.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span>&#160; </div>
+<div class="line"><a name="l00004"></a><span class="lineno">    4</span>&#160;<span class="preprocessor">#pragma once</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno">    5</span>&#160; </div>
+<div class="line"><a name="l00006"></a><span class="lineno">    6</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="a00074.html">type_vec2.hpp</a>&quot;</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno">    7</span>&#160;<span class="preprocessor">#include &lt;limits&gt;</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno">    8</span>&#160;<span class="preprocessor">#include &lt;cstddef&gt;</span></div>
+<div class="line"><a name="l00009"></a><span class="lineno">    9</span>&#160; </div>
+<div class="line"><a name="l00010"></a><span class="lineno">   10</span>&#160;<span class="keyword">namespace </span>glm</div>
+<div class="line"><a name="l00011"></a><span class="lineno">   11</span>&#160;{</div>
+<div class="line"><a name="l00012"></a><span class="lineno">   12</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T, qualifier Q&gt;</div>
+<div class="line"><a name="l00013"></a><span class="lineno">   13</span>&#160;        <span class="keyword">struct </span>mat&lt;2, 2, T, Q&gt;</div>
+<div class="line"><a name="l00014"></a><span class="lineno">   14</span>&#160;        {</div>
+<div class="line"><a name="l00015"></a><span class="lineno">   15</span>&#160;                <span class="keyword">typedef</span> vec&lt;2, T, Q&gt; col_type;</div>
+<div class="line"><a name="l00016"></a><span class="lineno">   16</span>&#160;                <span class="keyword">typedef</span> vec&lt;2, T, Q&gt; row_type;</div>
+<div class="line"><a name="l00017"></a><span class="lineno">   17</span>&#160;                <span class="keyword">typedef</span> mat&lt;2, 2, T, Q&gt; type;</div>
+<div class="line"><a name="l00018"></a><span class="lineno">   18</span>&#160;                <span class="keyword">typedef</span> mat&lt;2, 2, T, Q&gt; transpose_type;</div>
+<div class="line"><a name="l00019"></a><span class="lineno">   19</span>&#160;                <span class="keyword">typedef</span> T value_type;</div>
+<div class="line"><a name="l00020"></a><span class="lineno">   20</span>&#160; </div>
+<div class="line"><a name="l00021"></a><span class="lineno">   21</span>&#160;        <span class="keyword">private</span>:</div>
+<div class="line"><a name="l00022"></a><span class="lineno">   22</span>&#160;                col_type value[2];</div>
+<div class="line"><a name="l00023"></a><span class="lineno">   23</span>&#160; </div>
+<div class="line"><a name="l00024"></a><span class="lineno">   24</span>&#160;        <span class="keyword">public</span>:</div>
+<div class="line"><a name="l00025"></a><span class="lineno">   25</span>&#160;                <span class="comment">// -- Accesses --</span></div>
+<div class="line"><a name="l00026"></a><span class="lineno">   26</span>&#160; </div>
+<div class="line"><a name="l00027"></a><span class="lineno">   27</span>&#160;                <span class="keyword">typedef</span> length_t length_type;</div>
+<div class="line"><a name="l00028"></a><span class="lineno">   28</span>&#160;                GLM_FUNC_DECL <span class="keyword">static</span> GLM_CONSTEXPR length_type <a class="code" href="a00853.html#gab703732449be6c7199369b3f9a91ed38">length</a>() { <span class="keywordflow">return</span> 2; }</div>
+<div class="line"><a name="l00029"></a><span class="lineno">   29</span>&#160; </div>
+<div class="line"><a name="l00030"></a><span class="lineno">   30</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR col_type &amp; operator[](length_type i) GLM_NOEXCEPT;</div>
+<div class="line"><a name="l00031"></a><span class="lineno">   31</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR col_type <span class="keyword">const</span>&amp; operator[](length_type i) <span class="keyword">const</span> GLM_NOEXCEPT;</div>
+<div class="line"><a name="l00032"></a><span class="lineno">   32</span>&#160; </div>
+<div class="line"><a name="l00033"></a><span class="lineno">   33</span>&#160;                <span class="comment">// -- Constructors --</span></div>
+<div class="line"><a name="l00034"></a><span class="lineno">   34</span>&#160; </div>
+<div class="line"><a name="l00035"></a><span class="lineno">   35</span>&#160;                GLM_DEFAULTED_DEFAULT_CTOR_DECL GLM_CONSTEXPR mat() GLM_DEFAULT_CTOR;</div>
+<div class="line"><a name="l00036"></a><span class="lineno">   36</span>&#160;                template&lt;qualifier P&gt;</div>
+<div class="line"><a name="l00037"></a><span class="lineno">   37</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR mat(mat&lt;2, 2, T, P&gt; const&amp; m);</div>
+<div class="line"><a name="l00038"></a><span class="lineno">   38</span>&#160; </div>
+<div class="line"><a name="l00039"></a><span class="lineno">   39</span>&#160;                GLM_FUNC_DECL explicit GLM_CONSTEXPR mat(T scalar);</div>
+<div class="line"><a name="l00040"></a><span class="lineno">   40</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR mat(</div>
+<div class="line"><a name="l00041"></a><span class="lineno">   41</span>&#160;                        T const&amp; x1, T const&amp; y1,</div>
+<div class="line"><a name="l00042"></a><span class="lineno">   42</span>&#160;                        T const&amp; x2, T const&amp; y2);</div>
+<div class="line"><a name="l00043"></a><span class="lineno">   43</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR mat(</div>
+<div class="line"><a name="l00044"></a><span class="lineno">   44</span>&#160;                        col_type const&amp; v1,</div>
+<div class="line"><a name="l00045"></a><span class="lineno">   45</span>&#160;                        col_type const&amp; v2);</div>
+<div class="line"><a name="l00046"></a><span class="lineno">   46</span>&#160; </div>
+<div class="line"><a name="l00047"></a><span class="lineno">   47</span>&#160;                <span class="comment">// -- Conversions --</span></div>
+<div class="line"><a name="l00048"></a><span class="lineno">   48</span>&#160; </div>
+<div class="line"><a name="l00049"></a><span class="lineno">   49</span>&#160;                template&lt;typename U, typename V, typename M, typename N&gt;</div>
+<div class="line"><a name="l00050"></a><span class="lineno">   50</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR mat(</div>
+<div class="line"><a name="l00051"></a><span class="lineno">   51</span>&#160;                        U const&amp; x1, V const&amp; y1,</div>
+<div class="line"><a name="l00052"></a><span class="lineno">   52</span>&#160;                        M const&amp; x2, N const&amp; y2);</div>
+<div class="line"><a name="l00053"></a><span class="lineno">   53</span>&#160; </div>
+<div class="line"><a name="l00054"></a><span class="lineno">   54</span>&#160;                template&lt;typename U, typename V&gt;</div>
+<div class="line"><a name="l00055"></a><span class="lineno">   55</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR mat(</div>
+<div class="line"><a name="l00056"></a><span class="lineno">   56</span>&#160;                        vec&lt;2, U, Q&gt; const&amp; v1,</div>
+<div class="line"><a name="l00057"></a><span class="lineno">   57</span>&#160;                        vec&lt;2, V, Q&gt; const&amp; v2);</div>
+<div class="line"><a name="l00058"></a><span class="lineno">   58</span>&#160; </div>
+<div class="line"><a name="l00059"></a><span class="lineno">   59</span>&#160;                <span class="comment">// -- Matrix conversions --</span></div>
+<div class="line"><a name="l00060"></a><span class="lineno">   60</span>&#160; </div>
+<div class="line"><a name="l00061"></a><span class="lineno">   61</span>&#160;                template&lt;typename U, qualifier P&gt;</div>
+<div class="line"><a name="l00062"></a><span class="lineno">   62</span>&#160;                GLM_FUNC_DECL GLM_EXPLICIT GLM_CONSTEXPR mat(mat&lt;2, 2, U, P&gt; const&amp; m);</div>
+<div class="line"><a name="l00063"></a><span class="lineno">   63</span>&#160; </div>
+<div class="line"><a name="l00064"></a><span class="lineno">   64</span>&#160;                GLM_FUNC_DECL GLM_EXPLICIT GLM_CONSTEXPR mat(mat&lt;3, 3, T, Q&gt; const&amp; x);</div>
+<div class="line"><a name="l00065"></a><span class="lineno">   65</span>&#160;                GLM_FUNC_DECL GLM_EXPLICIT GLM_CONSTEXPR mat(mat&lt;4, 4, T, Q&gt; const&amp; x);</div>
+<div class="line"><a name="l00066"></a><span class="lineno">   66</span>&#160;                GLM_FUNC_DECL GLM_EXPLICIT GLM_CONSTEXPR mat(mat&lt;2, 3, T, Q&gt; const&amp; x);</div>
+<div class="line"><a name="l00067"></a><span class="lineno">   67</span>&#160;                GLM_FUNC_DECL GLM_EXPLICIT GLM_CONSTEXPR mat(mat&lt;3, 2, T, Q&gt; const&amp; x);</div>
+<div class="line"><a name="l00068"></a><span class="lineno">   68</span>&#160;                GLM_FUNC_DECL GLM_EXPLICIT GLM_CONSTEXPR mat(mat&lt;2, 4, T, Q&gt; const&amp; x);</div>
+<div class="line"><a name="l00069"></a><span class="lineno">   69</span>&#160;                GLM_FUNC_DECL GLM_EXPLICIT GLM_CONSTEXPR mat(mat&lt;4, 2, T, Q&gt; const&amp; x);</div>
+<div class="line"><a name="l00070"></a><span class="lineno">   70</span>&#160;                GLM_FUNC_DECL GLM_EXPLICIT GLM_CONSTEXPR mat(mat&lt;3, 4, T, Q&gt; const&amp; x);</div>
+<div class="line"><a name="l00071"></a><span class="lineno">   71</span>&#160;                GLM_FUNC_DECL GLM_EXPLICIT GLM_CONSTEXPR mat(mat&lt;4, 3, T, Q&gt; const&amp; x);</div>
+<div class="line"><a name="l00072"></a><span class="lineno">   72</span>&#160; </div>
+<div class="line"><a name="l00073"></a><span class="lineno">   73</span>&#160;                <span class="comment">// -- Unary arithmetic operators --</span></div>
+<div class="line"><a name="l00074"></a><span class="lineno">   74</span>&#160; </div>
+<div class="line"><a name="l00075"></a><span class="lineno">   75</span>&#160;                template&lt;typename U&gt;</div>
+<div class="line"><a name="l00076"></a><span class="lineno">   76</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR mat&lt;2, 2, T, Q&gt; &amp; operator=(mat&lt;2, 2, U, Q&gt; const&amp; m);</div>
+<div class="line"><a name="l00077"></a><span class="lineno">   77</span>&#160;                template&lt;typename U&gt;</div>
+<div class="line"><a name="l00078"></a><span class="lineno">   78</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR mat&lt;2, 2, T, Q&gt; &amp; operator+=(U s);</div>
+<div class="line"><a name="l00079"></a><span class="lineno">   79</span>&#160;                template&lt;typename U&gt;</div>
+<div class="line"><a name="l00080"></a><span class="lineno">   80</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR mat&lt;2, 2, T, Q&gt; &amp; operator+=(mat&lt;2, 2, U, Q&gt; const&amp; m);</div>
+<div class="line"><a name="l00081"></a><span class="lineno">   81</span>&#160;                template&lt;typename U&gt;</div>
+<div class="line"><a name="l00082"></a><span class="lineno">   82</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR mat&lt;2, 2, T, Q&gt; &amp; operator-=(U s);</div>
+<div class="line"><a name="l00083"></a><span class="lineno">   83</span>&#160;                template&lt;typename U&gt;</div>
+<div class="line"><a name="l00084"></a><span class="lineno">   84</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR mat&lt;2, 2, T, Q&gt; &amp; operator-=(mat&lt;2, 2, U, Q&gt; const&amp; m);</div>
+<div class="line"><a name="l00085"></a><span class="lineno">   85</span>&#160;                template&lt;typename U&gt;</div>
+<div class="line"><a name="l00086"></a><span class="lineno">   86</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR mat&lt;2, 2, T, Q&gt; &amp; operator*=(U s);</div>
+<div class="line"><a name="l00087"></a><span class="lineno">   87</span>&#160;                template&lt;typename U&gt;</div>
+<div class="line"><a name="l00088"></a><span class="lineno">   88</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR mat&lt;2, 2, T, Q&gt; &amp; operator*=(mat&lt;2, 2, U, Q&gt; const&amp; m);</div>
+<div class="line"><a name="l00089"></a><span class="lineno">   89</span>&#160;                template&lt;typename U&gt;</div>
+<div class="line"><a name="l00090"></a><span class="lineno">   90</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR mat&lt;2, 2, T, Q&gt; &amp; operator/=(U s);</div>
+<div class="line"><a name="l00091"></a><span class="lineno">   91</span>&#160;                template&lt;typename U&gt;</div>
+<div class="line"><a name="l00092"></a><span class="lineno">   92</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR mat&lt;2, 2, T, Q&gt; &amp; operator/=(mat&lt;2, 2, U, Q&gt; const&amp; m);</div>
+<div class="line"><a name="l00093"></a><span class="lineno">   93</span>&#160; </div>
+<div class="line"><a name="l00094"></a><span class="lineno">   94</span>&#160;                <span class="comment">// -- Increment and decrement operators --</span></div>
+<div class="line"><a name="l00095"></a><span class="lineno">   95</span>&#160; </div>
+<div class="line"><a name="l00096"></a><span class="lineno">   96</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR mat&lt;2, 2, T, Q&gt; &amp; operator++ ();</div>
+<div class="line"><a name="l00097"></a><span class="lineno">   97</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR mat&lt;2, 2, T, Q&gt; &amp; operator-- ();</div>
+<div class="line"><a name="l00098"></a><span class="lineno">   98</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR mat&lt;2, 2, T, Q&gt; operator++(<span class="keywordtype">int</span>);</div>
+<div class="line"><a name="l00099"></a><span class="lineno">   99</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR mat&lt;2, 2, T, Q&gt; operator--(<span class="keywordtype">int</span>);</div>
+<div class="line"><a name="l00100"></a><span class="lineno">  100</span>&#160;        };</div>
+<div class="line"><a name="l00101"></a><span class="lineno">  101</span>&#160; </div>
+<div class="line"><a name="l00102"></a><span class="lineno">  102</span>&#160;        <span class="comment">// -- Unary operators --</span></div>
+<div class="line"><a name="l00103"></a><span class="lineno">  103</span>&#160; </div>
+<div class="line"><a name="l00104"></a><span class="lineno">  104</span>&#160;        template&lt;typename T, qualifier Q&gt;</div>
+<div class="line"><a name="l00105"></a><span class="lineno">  105</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR mat&lt;2, 2, T, Q&gt; operator+(mat&lt;2, 2, T, Q&gt; const&amp; m);</div>
+<div class="line"><a name="l00106"></a><span class="lineno">  106</span>&#160; </div>
+<div class="line"><a name="l00107"></a><span class="lineno">  107</span>&#160;        template&lt;typename T, qualifier Q&gt;</div>
+<div class="line"><a name="l00108"></a><span class="lineno">  108</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR mat&lt;2, 2, T, Q&gt; operator-(mat&lt;2, 2, T, Q&gt; const&amp; m);</div>
+<div class="line"><a name="l00109"></a><span class="lineno">  109</span>&#160; </div>
+<div class="line"><a name="l00110"></a><span class="lineno">  110</span>&#160;        <span class="comment">// -- Binary operators --</span></div>
+<div class="line"><a name="l00111"></a><span class="lineno">  111</span>&#160; </div>
+<div class="line"><a name="l00112"></a><span class="lineno">  112</span>&#160;        template&lt;typename T, qualifier Q&gt;</div>
+<div class="line"><a name="l00113"></a><span class="lineno">  113</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR mat&lt;2, 2, T, Q&gt; operator+(mat&lt;2, 2, T, Q&gt; const&amp; m, T scalar);</div>
+<div class="line"><a name="l00114"></a><span class="lineno">  114</span>&#160; </div>
+<div class="line"><a name="l00115"></a><span class="lineno">  115</span>&#160;        template&lt;typename T, qualifier Q&gt;</div>
+<div class="line"><a name="l00116"></a><span class="lineno">  116</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR mat&lt;2, 2, T, Q&gt; operator+(T scalar, mat&lt;2, 2, T, Q&gt; const&amp; m);</div>
+<div class="line"><a name="l00117"></a><span class="lineno">  117</span>&#160; </div>
+<div class="line"><a name="l00118"></a><span class="lineno">  118</span>&#160;        template&lt;typename T, qualifier Q&gt;</div>
+<div class="line"><a name="l00119"></a><span class="lineno">  119</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR mat&lt;2, 2, T, Q&gt; operator+(mat&lt;2, 2, T, Q&gt; const&amp; m1, mat&lt;2, 2, T, Q&gt; const&amp; m2);</div>
+<div class="line"><a name="l00120"></a><span class="lineno">  120</span>&#160; </div>
+<div class="line"><a name="l00121"></a><span class="lineno">  121</span>&#160;        template&lt;typename T, qualifier Q&gt;</div>
+<div class="line"><a name="l00122"></a><span class="lineno">  122</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR mat&lt;2, 2, T, Q&gt; operator-(mat&lt;2, 2, T, Q&gt; const&amp; m, T scalar);</div>
+<div class="line"><a name="l00123"></a><span class="lineno">  123</span>&#160; </div>
+<div class="line"><a name="l00124"></a><span class="lineno">  124</span>&#160;        template&lt;typename T, qualifier Q&gt;</div>
+<div class="line"><a name="l00125"></a><span class="lineno">  125</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR mat&lt;2, 2, T, Q&gt; operator-(T scalar, mat&lt;2, 2, T, Q&gt; const&amp; m);</div>
+<div class="line"><a name="l00126"></a><span class="lineno">  126</span>&#160; </div>
+<div class="line"><a name="l00127"></a><span class="lineno">  127</span>&#160;        template&lt;typename T, qualifier Q&gt;</div>
+<div class="line"><a name="l00128"></a><span class="lineno">  128</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR mat&lt;2, 2, T, Q&gt; operator-(mat&lt;2, 2, T, Q&gt; const&amp; m1, mat&lt;2, 2, T, Q&gt; const&amp; m2);</div>
+<div class="line"><a name="l00129"></a><span class="lineno">  129</span>&#160; </div>
+<div class="line"><a name="l00130"></a><span class="lineno">  130</span>&#160;        template&lt;typename T, qualifier Q&gt;</div>
+<div class="line"><a name="l00131"></a><span class="lineno">  131</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR mat&lt;2, 2, T, Q&gt; operator*(mat&lt;2, 2, T, Q&gt; const&amp; m, T scalar);</div>
+<div class="line"><a name="l00132"></a><span class="lineno">  132</span>&#160; </div>
+<div class="line"><a name="l00133"></a><span class="lineno">  133</span>&#160;        template&lt;typename T, qualifier Q&gt;</div>
+<div class="line"><a name="l00134"></a><span class="lineno">  134</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR mat&lt;2, 2, T, Q&gt; operator*(T scalar, mat&lt;2, 2, T, Q&gt; const&amp; m);</div>
+<div class="line"><a name="l00135"></a><span class="lineno">  135</span>&#160; </div>
+<div class="line"><a name="l00136"></a><span class="lineno">  136</span>&#160;        template&lt;typename T, qualifier Q&gt;</div>
+<div class="line"><a name="l00137"></a><span class="lineno">  137</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR typename mat&lt;2, 2, T, Q&gt;::col_type operator*(mat&lt;2, 2, T, Q&gt; const&amp; m, typename mat&lt;2, 2, T, Q&gt;::row_type const&amp; v);</div>
+<div class="line"><a name="l00138"></a><span class="lineno">  138</span>&#160; </div>
+<div class="line"><a name="l00139"></a><span class="lineno">  139</span>&#160;        template&lt;typename T, qualifier Q&gt;</div>
+<div class="line"><a name="l00140"></a><span class="lineno">  140</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR typename mat&lt;2, 2, T, Q&gt;::row_type operator*(typename mat&lt;2, 2, T, Q&gt;::col_type const&amp; v, mat&lt;2, 2, T, Q&gt; const&amp; m);</div>
+<div class="line"><a name="l00141"></a><span class="lineno">  141</span>&#160; </div>
+<div class="line"><a name="l00142"></a><span class="lineno">  142</span>&#160;        template&lt;typename T, qualifier Q&gt;</div>
+<div class="line"><a name="l00143"></a><span class="lineno">  143</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR mat&lt;2, 2, T, Q&gt; operator*(mat&lt;2, 2, T, Q&gt; const&amp; m1, mat&lt;2, 2, T, Q&gt; const&amp; m2);</div>
+<div class="line"><a name="l00144"></a><span class="lineno">  144</span>&#160; </div>
+<div class="line"><a name="l00145"></a><span class="lineno">  145</span>&#160;        template&lt;typename T, qualifier Q&gt;</div>
+<div class="line"><a name="l00146"></a><span class="lineno">  146</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR mat&lt;3, 2, T, Q&gt; operator*(mat&lt;2, 2, T, Q&gt; const&amp; m1, mat&lt;3, 2, T, Q&gt; const&amp; m2);</div>
+<div class="line"><a name="l00147"></a><span class="lineno">  147</span>&#160; </div>
+<div class="line"><a name="l00148"></a><span class="lineno">  148</span>&#160;        template&lt;typename T, qualifier Q&gt;</div>
+<div class="line"><a name="l00149"></a><span class="lineno">  149</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR mat&lt;4, 2, T, Q&gt; operator*(mat&lt;2, 2, T, Q&gt; const&amp; m1, mat&lt;4, 2, T, Q&gt; const&amp; m2);</div>
+<div class="line"><a name="l00150"></a><span class="lineno">  150</span>&#160; </div>
+<div class="line"><a name="l00151"></a><span class="lineno">  151</span>&#160;        template&lt;typename T, qualifier Q&gt;</div>
+<div class="line"><a name="l00152"></a><span class="lineno">  152</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR mat&lt;2, 2, T, Q&gt; operator/(mat&lt;2, 2, T, Q&gt; const&amp; m, T scalar);</div>
+<div class="line"><a name="l00153"></a><span class="lineno">  153</span>&#160; </div>
+<div class="line"><a name="l00154"></a><span class="lineno">  154</span>&#160;        template&lt;typename T, qualifier Q&gt;</div>
+<div class="line"><a name="l00155"></a><span class="lineno">  155</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR mat&lt;2, 2, T, Q&gt; operator/(T scalar, mat&lt;2, 2, T, Q&gt; const&amp; m);</div>
+<div class="line"><a name="l00156"></a><span class="lineno">  156</span>&#160; </div>
+<div class="line"><a name="l00157"></a><span class="lineno">  157</span>&#160;        template&lt;typename T, qualifier Q&gt;</div>
+<div class="line"><a name="l00158"></a><span class="lineno">  158</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR typename mat&lt;2, 2, T, Q&gt;::col_type operator/(mat&lt;2, 2, T, Q&gt; const&amp; m, typename mat&lt;2, 2, T, Q&gt;::row_type const&amp; v);</div>
+<div class="line"><a name="l00159"></a><span class="lineno">  159</span>&#160; </div>
+<div class="line"><a name="l00160"></a><span class="lineno">  160</span>&#160;        template&lt;typename T, qualifier Q&gt;</div>
+<div class="line"><a name="l00161"></a><span class="lineno">  161</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR typename mat&lt;2, 2, T, Q&gt;::row_type operator/(typename mat&lt;2, 2, T, Q&gt;::col_type const&amp; v, mat&lt;2, 2, T, Q&gt; const&amp; m);</div>
+<div class="line"><a name="l00162"></a><span class="lineno">  162</span>&#160; </div>
+<div class="line"><a name="l00163"></a><span class="lineno">  163</span>&#160;        template&lt;typename T, qualifier Q&gt;</div>
+<div class="line"><a name="l00164"></a><span class="lineno">  164</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR mat&lt;2, 2, T, Q&gt; operator/(mat&lt;2, 2, T, Q&gt; const&amp; m1, mat&lt;2, 2, T, Q&gt; const&amp; m2);</div>
+<div class="line"><a name="l00165"></a><span class="lineno">  165</span>&#160; </div>
+<div class="line"><a name="l00166"></a><span class="lineno">  166</span>&#160;        <span class="comment">// -- Boolean operators --</span></div>
+<div class="line"><a name="l00167"></a><span class="lineno">  167</span>&#160; </div>
+<div class="line"><a name="l00168"></a><span class="lineno">  168</span>&#160;        template&lt;typename T, qualifier Q&gt;</div>
+<div class="line"><a name="l00169"></a><span class="lineno">  169</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR <span class="keywordtype">bool</span> operator==(mat&lt;2, 2, T, Q&gt; const&amp; m1, mat&lt;2, 2, T, Q&gt; const&amp; m2);</div>
+<div class="line"><a name="l00170"></a><span class="lineno">  170</span>&#160; </div>
+<div class="line"><a name="l00171"></a><span class="lineno">  171</span>&#160;        template&lt;typename T, qualifier Q&gt;</div>
+<div class="line"><a name="l00172"></a><span class="lineno">  172</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR <span class="keywordtype">bool</span> operator!=(mat&lt;2, 2, T, Q&gt; const&amp; m1, mat&lt;2, 2, T, Q&gt; const&amp; m2);</div>
+<div class="line"><a name="l00173"></a><span class="lineno">  173</span>&#160;} <span class="comment">//namespace glm</span></div>
+<div class="line"><a name="l00174"></a><span class="lineno">  174</span>&#160; </div>
+<div class="line"><a name="l00175"></a><span class="lineno">  175</span>&#160;<span class="preprocessor">#ifndef GLM_EXTERNAL_TEMPLATE</span></div>
+<div class="line"><a name="l00176"></a><span class="lineno">  176</span>&#160;<span class="preprocessor">#include &quot;type_mat2x2.inl&quot;</span></div>
+<div class="line"><a name="l00177"></a><span class="lineno">  177</span>&#160;<span class="preprocessor">#endif</span></div>
 </div><!-- fragment --></div><!-- contents -->
+<div class="ttc" id="aa00074_html"><div class="ttname"><a href="a00074.html">type_vec2.hpp</a></div><div class="ttdoc">Core features</div></div>
+<div class="ttc" id="aa00853_html_gab703732449be6c7199369b3f9a91ed38"><div class="ttname"><a href="a00853.html#gab703732449be6c7199369b3f9a91ed38">glm::length</a></div><div class="ttdeci">GLM_FUNC_DECL T length(qua&lt; T, Q &gt; const &amp;q)</div><div class="ttdoc">Returns the norm of a quaternions.</div></div>
 <!-- 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.10
+</a> 1.8.18
 </small></address>
 </body>
 </html>

+ 0 - 149
doc/api/a00042_source.html

@@ -1,149 +0,0 @@
-<!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.10"/>
-<title>0.9.9 API documentation: integer.hpp Source File</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="search/search.css" rel="stylesheet" type="text/css"/>
-<script type="text/javascript" src="search/searchdata.js"></script>
-<script type="text/javascript" src="search/search.js"></script>
-<script type="text/javascript">
-  $(document).ready(function() { init_search(); });
-</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 id="projectlogo"><img alt="Logo" src="logo-mini.png"/></td>
-  <td id="projectalign" style="padding-left: 0.5em;">
-   <div id="projectname">0.9.9 API documentation
-   </div>
-  </td>
- </tr>
- </tbody>
-</table>
-</div>
-<!-- end header part -->
-<!-- Generated by Doxygen 1.8.10 -->
-<script type="text/javascript">
-var searchBox = new SearchBox("searchBox", "search",false,'Search');
-</script>
-  <div id="navrow1" class="tabs">
-    <ul class="tablist">
-      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
-      <li><a href="modules.html"><span>Modules</span></a></li>
-      <li class="current"><a href="files.html"><span>Files</span></a></li>
-      <li>
-        <div id="MSearchBox" class="MSearchBoxInactive">
-        <span class="left">
-          <img id="MSearchSelect" src="search/mag_sel.png"
-               onmouseover="return searchBox.OnSearchSelectShow()"
-               onmouseout="return searchBox.OnSearchSelectHide()"
-               alt=""/>
-          <input type="text" id="MSearchField" value="Search" accesskey="S"
-               onfocus="searchBox.OnSearchFieldFocus(true)" 
-               onblur="searchBox.OnSearchFieldFocus(false)" 
-               onkeyup="searchBox.OnSearchFieldChange(event)"/>
-          </span><span class="right">
-            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
-          </span>
-        </div>
-      </li>
-    </ul>
-  </div>
-  <div id="navrow2" class="tabs2">
-    <ul class="tablist">
-      <li><a href="files.html"><span>File&#160;List</span></a></li>
-    </ul>
-  </div>
-<!-- window showing the filter options -->
-<div id="MSearchSelectWindow"
-     onmouseover="return searchBox.OnSearchSelectShow()"
-     onmouseout="return searchBox.OnSearchSelectHide()"
-     onkeydown="return searchBox.OnSearchSelectKey(event)">
-</div>
-
-<!-- iframe showing the search results (closed by default) -->
-<div id="MSearchResultsWindow">
-<iframe src="javascript:void(0)" frameborder="0" 
-        name="MSearchResults" id="MSearchResults">
-</iframe>
-</div>
-
-<div id="nav-path" class="navpath">
-  <ul>
-<li class="navelem"><a class="el" href="dir_3a581ba30d25676e4b797b1f96d53b45.html">F:</a></li><li class="navelem"><a class="el" href="dir_9e5fe034a00e89334fd5186c3e7db156.html">G-Truc</a></li><li class="navelem"><a class="el" href="dir_d9496f0844b48bc7e53b5af8c99b9ab2.html">Source</a></li><li class="navelem"><a class="el" href="dir_a8bee7be44182a33f3820393ae0b105d.html">G-Truc</a></li><li class="navelem"><a class="el" href="dir_44e5e654415abd9ca6fdeaddaff8565e.html">glm</a></li><li class="navelem"><a class="el" href="dir_cef2d71d502cb69a9252bca2297d9549.html">glm</a></li><li class="navelem"><a class="el" href="dir_f35778ec600a1b9bbc4524e62e226aa2.html">gtx</a></li>  </ul>
-</div>
-</div><!-- top -->
-<div class="header">
-  <div class="headertitle">
-<div class="title">gtx/integer.hpp</div>  </div>
-</div><!--header-->
-<div class="contents">
-<a href="a00042.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span>&#160;</div>
-<div class="line"><a name="l00013"></a><span class="lineno">   13</span>&#160;<span class="preprocessor">#pragma once</span></div>
-<div class="line"><a name="l00014"></a><span class="lineno">   14</span>&#160;</div>
-<div class="line"><a name="l00015"></a><span class="lineno">   15</span>&#160;<span class="comment">// Dependency:</span></div>
-<div class="line"><a name="l00016"></a><span class="lineno">   16</span>&#160;<span class="preprocessor">#include &quot;../glm.hpp&quot;</span></div>
-<div class="line"><a name="l00017"></a><span class="lineno">   17</span>&#160;<span class="preprocessor">#include &quot;../gtc/integer.hpp&quot;</span></div>
-<div class="line"><a name="l00018"></a><span class="lineno">   18</span>&#160;</div>
-<div class="line"><a name="l00019"></a><span class="lineno">   19</span>&#160;<span class="preprocessor">#if GLM_MESSAGES == GLM_ENABLE &amp;&amp; !defined(GLM_EXT_INCLUDED)</span></div>
-<div class="line"><a name="l00020"></a><span class="lineno">   20</span>&#160;<span class="preprocessor">#       ifndef GLM_ENABLE_EXPERIMENTAL</span></div>
-<div class="line"><a name="l00021"></a><span class="lineno">   21</span>&#160;<span class="preprocessor">#               pragma message(&quot;GLM: GLM_GTX_integer is an experimental extension and may change in the future. Use #define GLM_ENABLE_EXPERIMENTAL before including it, if you really want to use it.&quot;)</span></div>
-<div class="line"><a name="l00022"></a><span class="lineno">   22</span>&#160;<span class="preprocessor">#       else</span></div>
-<div class="line"><a name="l00023"></a><span class="lineno">   23</span>&#160;<span class="preprocessor">#               pragma message(&quot;GLM: GLM_GTX_integer extension included&quot;)</span></div>
-<div class="line"><a name="l00024"></a><span class="lineno">   24</span>&#160;<span class="preprocessor">#       endif</span></div>
-<div class="line"><a name="l00025"></a><span class="lineno">   25</span>&#160;<span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00026"></a><span class="lineno">   26</span>&#160;</div>
-<div class="line"><a name="l00027"></a><span class="lineno">   27</span>&#160;<span class="keyword">namespace </span><a class="code" href="a00236.html">glm</a></div>
-<div class="line"><a name="l00028"></a><span class="lineno">   28</span>&#160;{</div>
-<div class="line"><a name="l00031"></a><span class="lineno">   31</span>&#160;</div>
-<div class="line"><a name="l00034"></a><span class="lineno">   34</span>&#160;        GLM_FUNC_DECL <span class="keywordtype">int</span> <a class="code" href="a00330.html#ga998e5ee915d3769255519e2fbaa2bbf0">pow</a>(<span class="keywordtype">int</span> x, uint y);</div>
-<div class="line"><a name="l00035"></a><span class="lineno">   35</span>&#160;</div>
-<div class="line"><a name="l00038"></a><span class="lineno">   38</span>&#160;        GLM_FUNC_DECL <span class="keywordtype">int</span> <a class="code" href="a00330.html#ga1975d318978d6dacf78b6444fa5ed7bc">sqrt</a>(<span class="keywordtype">int</span> x);</div>
-<div class="line"><a name="l00039"></a><span class="lineno">   39</span>&#160;</div>
-<div class="line"><a name="l00042"></a><span class="lineno">   42</span>&#160;        GLM_FUNC_DECL <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> <a class="code" href="a00330.html#ga7011b4e1c1e1ed492149b028feacc00e">floor_log2</a>(<span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> x);</div>
-<div class="line"><a name="l00043"></a><span class="lineno">   43</span>&#160;</div>
-<div class="line"><a name="l00046"></a><span class="lineno">   46</span>&#160;        GLM_FUNC_DECL <span class="keywordtype">int</span> <a class="code" href="a00330.html#ga63fc8d63e7da1706439233b386ba8b6f">mod</a>(<span class="keywordtype">int</span> x, <span class="keywordtype">int</span> y);</div>
-<div class="line"><a name="l00047"></a><span class="lineno">   47</span>&#160;</div>
-<div class="line"><a name="l00050"></a><span class="lineno">   50</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> genType&gt;</div>
-<div class="line"><a name="l00051"></a><span class="lineno">   51</span>&#160;        GLM_FUNC_DECL genType <a class="code" href="a00330.html#ga8cbd3120905f398ec321b5d1836e08fb">factorial</a>(genType <span class="keyword">const</span>&amp; x);</div>
-<div class="line"><a name="l00052"></a><span class="lineno">   52</span>&#160;</div>
-<div class="line"><a name="l00055"></a><span class="lineno"><a class="line" href="a00330.html#gada7e83fdfe943aba4f1d5bf80cb66f40">   55</a></span>&#160;        <span class="keyword">typedef</span> <span class="keywordtype">signed</span> <span class="keywordtype">int</span>                                      <a class="code" href="a00330.html#gada7e83fdfe943aba4f1d5bf80cb66f40">sint</a>;</div>
-<div class="line"><a name="l00056"></a><span class="lineno">   56</span>&#160;</div>
-<div class="line"><a name="l00059"></a><span class="lineno">   59</span>&#160;        GLM_FUNC_DECL uint <a class="code" href="a00330.html#ga998e5ee915d3769255519e2fbaa2bbf0">pow</a>(uint x, uint y);</div>
-<div class="line"><a name="l00060"></a><span class="lineno">   60</span>&#160;</div>
-<div class="line"><a name="l00063"></a><span class="lineno">   63</span>&#160;        GLM_FUNC_DECL uint <a class="code" href="a00330.html#ga1975d318978d6dacf78b6444fa5ed7bc">sqrt</a>(uint x);</div>
-<div class="line"><a name="l00064"></a><span class="lineno">   64</span>&#160;</div>
-<div class="line"><a name="l00067"></a><span class="lineno">   67</span>&#160;        GLM_FUNC_DECL uint <a class="code" href="a00330.html#ga63fc8d63e7da1706439233b386ba8b6f">mod</a>(uint x, uint y);</div>
-<div class="line"><a name="l00068"></a><span class="lineno">   68</span>&#160;</div>
-<div class="line"><a name="l00071"></a><span class="lineno">   71</span>&#160;        GLM_FUNC_DECL uint <a class="code" href="a00330.html#ga78dff8bdb361bf0061194c93e003d189">nlz</a>(uint x);</div>
-<div class="line"><a name="l00072"></a><span class="lineno">   72</span>&#160;</div>
-<div class="line"><a name="l00074"></a><span class="lineno">   74</span>&#160;}<span class="comment">//namespace glm</span></div>
-<div class="line"><a name="l00075"></a><span class="lineno">   75</span>&#160;</div>
-<div class="line"><a name="l00076"></a><span class="lineno">   76</span>&#160;<span class="preprocessor">#include &quot;integer.inl&quot;</span></div>
-<div class="ttc" id="a00330_html_ga78dff8bdb361bf0061194c93e003d189"><div class="ttname"><a href="a00330.html#ga78dff8bdb361bf0061194c93e003d189">glm::nlz</a></div><div class="ttdeci">GLM_FUNC_DECL uint nlz(uint x)</div><div class="ttdoc">Returns the number of leading zeros. </div></div>
-<div class="ttc" id="a00330_html_ga63fc8d63e7da1706439233b386ba8b6f"><div class="ttname"><a href="a00330.html#ga63fc8d63e7da1706439233b386ba8b6f">glm::mod</a></div><div class="ttdeci">GLM_FUNC_DECL uint mod(uint x, uint y)</div><div class="ttdoc">Modulus. </div></div>
-<div class="ttc" id="a00330_html_ga7011b4e1c1e1ed492149b028feacc00e"><div class="ttname"><a href="a00330.html#ga7011b4e1c1e1ed492149b028feacc00e">glm::floor_log2</a></div><div class="ttdeci">GLM_FUNC_DECL unsigned int floor_log2(unsigned int x)</div><div class="ttdoc">Returns the floor log2 of x. </div></div>
-<div class="ttc" id="a00330_html_gada7e83fdfe943aba4f1d5bf80cb66f40"><div class="ttname"><a href="a00330.html#gada7e83fdfe943aba4f1d5bf80cb66f40">glm::sint</a></div><div class="ttdeci">signed int sint</div><div class="ttdoc">32bit signed integer. </div><div class="ttdef"><b>Definition:</b> <a href="a00042_source.html#l00055">gtx/integer.hpp:55</a></div></div>
-<div class="ttc" id="a00330_html_ga8cbd3120905f398ec321b5d1836e08fb"><div class="ttname"><a href="a00330.html#ga8cbd3120905f398ec321b5d1836e08fb">glm::factorial</a></div><div class="ttdeci">GLM_FUNC_DECL genType factorial(genType const &amp;x)</div><div class="ttdoc">Return the factorial value of a number (!12 max, integer only) From GLM_GTX_integer extension...</div></div>
-<div class="ttc" id="a00330_html_ga998e5ee915d3769255519e2fbaa2bbf0"><div class="ttname"><a href="a00330.html#ga998e5ee915d3769255519e2fbaa2bbf0">glm::pow</a></div><div class="ttdeci">GLM_FUNC_DECL uint pow(uint x, uint y)</div><div class="ttdoc">Returns x raised to the y power. </div></div>
-<div class="ttc" id="a00330_html_ga1975d318978d6dacf78b6444fa5ed7bc"><div class="ttname"><a href="a00330.html#ga1975d318978d6dacf78b6444fa5ed7bc">glm::sqrt</a></div><div class="ttdeci">GLM_FUNC_DECL uint sqrt(uint x)</div><div class="ttdoc">Returns the positive square root of x. </div></div>
-<div class="ttc" id="a00236_html"><div class="ttname"><a href="a00236.html">glm</a></div><div class="ttdef"><b>Definition:</b> <a href="a00015_source.html#l00020">common.hpp:20</a></div></div>
-</div><!-- fragment --></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.10
-</small></address>
-</body>
-</html>

+ 0 - 185
doc/api/a00043_source.html

@@ -1,185 +0,0 @@
-<!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.10"/>
-<title>0.9.9 API documentation: integer.hpp Source File</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="search/search.css" rel="stylesheet" type="text/css"/>
-<script type="text/javascript" src="search/searchdata.js"></script>
-<script type="text/javascript" src="search/search.js"></script>
-<script type="text/javascript">
-  $(document).ready(function() { init_search(); });
-</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 id="projectlogo"><img alt="Logo" src="logo-mini.png"/></td>
-  <td id="projectalign" style="padding-left: 0.5em;">
-   <div id="projectname">0.9.9 API documentation
-   </div>
-  </td>
- </tr>
- </tbody>
-</table>
-</div>
-<!-- end header part -->
-<!-- Generated by Doxygen 1.8.10 -->
-<script type="text/javascript">
-var searchBox = new SearchBox("searchBox", "search",false,'Search');
-</script>
-  <div id="navrow1" class="tabs">
-    <ul class="tablist">
-      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
-      <li><a href="modules.html"><span>Modules</span></a></li>
-      <li class="current"><a href="files.html"><span>Files</span></a></li>
-      <li>
-        <div id="MSearchBox" class="MSearchBoxInactive">
-        <span class="left">
-          <img id="MSearchSelect" src="search/mag_sel.png"
-               onmouseover="return searchBox.OnSearchSelectShow()"
-               onmouseout="return searchBox.OnSearchSelectHide()"
-               alt=""/>
-          <input type="text" id="MSearchField" value="Search" accesskey="S"
-               onfocus="searchBox.OnSearchFieldFocus(true)" 
-               onblur="searchBox.OnSearchFieldFocus(false)" 
-               onkeyup="searchBox.OnSearchFieldChange(event)"/>
-          </span><span class="right">
-            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
-          </span>
-        </div>
-      </li>
-    </ul>
-  </div>
-  <div id="navrow2" class="tabs2">
-    <ul class="tablist">
-      <li><a href="files.html"><span>File&#160;List</span></a></li>
-    </ul>
-  </div>
-<!-- window showing the filter options -->
-<div id="MSearchSelectWindow"
-     onmouseover="return searchBox.OnSearchSelectShow()"
-     onmouseout="return searchBox.OnSearchSelectHide()"
-     onkeydown="return searchBox.OnSearchSelectKey(event)">
-</div>
-
-<!-- iframe showing the search results (closed by default) -->
-<div id="MSearchResultsWindow">
-<iframe src="javascript:void(0)" frameborder="0" 
-        name="MSearchResults" id="MSearchResults">
-</iframe>
-</div>
-
-<div id="nav-path" class="navpath">
-  <ul>
-<li class="navelem"><a class="el" href="dir_3a581ba30d25676e4b797b1f96d53b45.html">F:</a></li><li class="navelem"><a class="el" href="dir_9e5fe034a00e89334fd5186c3e7db156.html">G-Truc</a></li><li class="navelem"><a class="el" href="dir_d9496f0844b48bc7e53b5af8c99b9ab2.html">Source</a></li><li class="navelem"><a class="el" href="dir_a8bee7be44182a33f3820393ae0b105d.html">G-Truc</a></li><li class="navelem"><a class="el" href="dir_44e5e654415abd9ca6fdeaddaff8565e.html">glm</a></li><li class="navelem"><a class="el" href="dir_cef2d71d502cb69a9252bca2297d9549.html">glm</a></li>  </ul>
-</div>
-</div><!-- top -->
-<div class="header">
-  <div class="headertitle">
-<div class="title">integer.hpp</div>  </div>
-</div><!--header-->
-<div class="contents">
-<a href="a00043.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span>&#160;</div>
-<div class="line"><a name="l00017"></a><span class="lineno">   17</span>&#160;<span class="preprocessor">#pragma once</span></div>
-<div class="line"><a name="l00018"></a><span class="lineno">   18</span>&#160;</div>
-<div class="line"><a name="l00019"></a><span class="lineno">   19</span>&#160;<span class="preprocessor">#include &quot;detail/qualifier.hpp&quot;</span></div>
-<div class="line"><a name="l00020"></a><span class="lineno">   20</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="a00015.html">common.hpp</a>&quot;</span></div>
-<div class="line"><a name="l00021"></a><span class="lineno">   21</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="a00225.html">vector_relational.hpp</a>&quot;</span></div>
-<div class="line"><a name="l00022"></a><span class="lineno">   22</span>&#160;</div>
-<div class="line"><a name="l00023"></a><span class="lineno">   23</span>&#160;<span class="keyword">namespace </span><a class="code" href="a00236.html">glm</a></div>
-<div class="line"><a name="l00024"></a><span class="lineno">   24</span>&#160;{</div>
-<div class="line"><a name="l00027"></a><span class="lineno">   27</span>&#160;</div>
-<div class="line"><a name="l00036"></a><span class="lineno">   36</span>&#160;        <span class="keyword">template</span>&lt;length_t L, qualifier Q&gt;</div>
-<div class="line"><a name="l00037"></a><span class="lineno">   37</span>&#160;        GLM_FUNC_DECL vec&lt;L, uint, Q&gt; <a class="code" href="a00370.html#gaedcec48743632dff6786bcc492074b1b">uaddCarry</a>(</div>
-<div class="line"><a name="l00038"></a><span class="lineno">   38</span>&#160;                vec&lt;L, uint, Q&gt; <span class="keyword">const</span>&amp; x,</div>
-<div class="line"><a name="l00039"></a><span class="lineno">   39</span>&#160;                vec&lt;L, uint, Q&gt; <span class="keyword">const</span>&amp; y,</div>
-<div class="line"><a name="l00040"></a><span class="lineno">   40</span>&#160;                vec&lt;L, uint, Q&gt; &amp; carry);</div>
-<div class="line"><a name="l00041"></a><span class="lineno">   41</span>&#160;</div>
-<div class="line"><a name="l00050"></a><span class="lineno">   50</span>&#160;        <span class="keyword">template</span>&lt;length_t L, qualifier Q&gt;</div>
-<div class="line"><a name="l00051"></a><span class="lineno">   51</span>&#160;        GLM_FUNC_DECL vec&lt;L, uint, Q&gt; <a class="code" href="a00370.html#gae3316ba1229ad9b9f09480833321b053">usubBorrow</a>(</div>
-<div class="line"><a name="l00052"></a><span class="lineno">   52</span>&#160;                vec&lt;L, uint, Q&gt; <span class="keyword">const</span>&amp; x,</div>
-<div class="line"><a name="l00053"></a><span class="lineno">   53</span>&#160;                vec&lt;L, uint, Q&gt; <span class="keyword">const</span>&amp; y,</div>
-<div class="line"><a name="l00054"></a><span class="lineno">   54</span>&#160;                vec&lt;L, uint, Q&gt; &amp; borrow);</div>
-<div class="line"><a name="l00055"></a><span class="lineno">   55</span>&#160;</div>
-<div class="line"><a name="l00064"></a><span class="lineno">   64</span>&#160;        <span class="keyword">template</span>&lt;length_t L, qualifier Q&gt;</div>
-<div class="line"><a name="l00065"></a><span class="lineno">   65</span>&#160;        GLM_FUNC_DECL <span class="keywordtype">void</span> <a class="code" href="a00370.html#ga732e2fb56db57ea541c7e5c92b7121be">umulExtended</a>(</div>
-<div class="line"><a name="l00066"></a><span class="lineno">   66</span>&#160;                vec&lt;L, uint, Q&gt; <span class="keyword">const</span>&amp; x,</div>
-<div class="line"><a name="l00067"></a><span class="lineno">   67</span>&#160;                vec&lt;L, uint, Q&gt; <span class="keyword">const</span>&amp; y,</div>
-<div class="line"><a name="l00068"></a><span class="lineno">   68</span>&#160;                vec&lt;L, uint, Q&gt; &amp; msb,</div>
-<div class="line"><a name="l00069"></a><span class="lineno">   69</span>&#160;                vec&lt;L, uint, Q&gt; &amp; lsb);</div>
-<div class="line"><a name="l00070"></a><span class="lineno">   70</span>&#160;</div>
-<div class="line"><a name="l00079"></a><span class="lineno">   79</span>&#160;        <span class="keyword">template</span>&lt;length_t L, qualifier Q&gt;</div>
-<div class="line"><a name="l00080"></a><span class="lineno">   80</span>&#160;        GLM_FUNC_DECL <span class="keywordtype">void</span> <a class="code" href="a00370.html#gac0c510a70e852f57594a9141848642e3">imulExtended</a>(</div>
-<div class="line"><a name="l00081"></a><span class="lineno">   81</span>&#160;                vec&lt;L, int, Q&gt; <span class="keyword">const</span>&amp; x,</div>
-<div class="line"><a name="l00082"></a><span class="lineno">   82</span>&#160;                vec&lt;L, int, Q&gt; <span class="keyword">const</span>&amp; y,</div>
-<div class="line"><a name="l00083"></a><span class="lineno">   83</span>&#160;                vec&lt;L, int, Q&gt; &amp; msb,</div>
-<div class="line"><a name="l00084"></a><span class="lineno">   84</span>&#160;                vec&lt;L, int, Q&gt; &amp; lsb);</div>
-<div class="line"><a name="l00085"></a><span class="lineno">   85</span>&#160;</div>
-<div class="line"><a name="l00102"></a><span class="lineno">  102</span>&#160;        <span class="keyword">template</span>&lt;length_t L, <span class="keyword">typename</span> T, qualifier Q&gt;</div>
-<div class="line"><a name="l00103"></a><span class="lineno">  103</span>&#160;        GLM_FUNC_DECL vec&lt;L, T, Q&gt; <a class="code" href="a00370.html#ga346b25ab11e793e91a4a69c8aa6819f2">bitfieldExtract</a>(</div>
-<div class="line"><a name="l00104"></a><span class="lineno">  104</span>&#160;                vec&lt;L, T, Q&gt; <span class="keyword">const</span>&amp; Value,</div>
-<div class="line"><a name="l00105"></a><span class="lineno">  105</span>&#160;                <span class="keywordtype">int</span> Offset,</div>
-<div class="line"><a name="l00106"></a><span class="lineno">  106</span>&#160;                <span class="keywordtype">int</span> Bits);</div>
-<div class="line"><a name="l00107"></a><span class="lineno">  107</span>&#160;</div>
-<div class="line"><a name="l00123"></a><span class="lineno">  123</span>&#160;        <span class="keyword">template</span>&lt;length_t L, <span class="keyword">typename</span> T, qualifier Q&gt;</div>
-<div class="line"><a name="l00124"></a><span class="lineno">  124</span>&#160;        GLM_FUNC_DECL vec&lt;L, T, Q&gt; <a class="code" href="a00370.html#ga2e82992340d421fadb61a473df699b20">bitfieldInsert</a>(</div>
-<div class="line"><a name="l00125"></a><span class="lineno">  125</span>&#160;                vec&lt;L, T, Q&gt; <span class="keyword">const</span>&amp; Base,</div>
-<div class="line"><a name="l00126"></a><span class="lineno">  126</span>&#160;                vec&lt;L, T, Q&gt; <span class="keyword">const</span>&amp; Insert,</div>
-<div class="line"><a name="l00127"></a><span class="lineno">  127</span>&#160;                <span class="keywordtype">int</span> Offset,</div>
-<div class="line"><a name="l00128"></a><span class="lineno">  128</span>&#160;                <span class="keywordtype">int</span> Bits);</div>
-<div class="line"><a name="l00129"></a><span class="lineno">  129</span>&#160;</div>
-<div class="line"><a name="l00139"></a><span class="lineno">  139</span>&#160;        <span class="keyword">template</span>&lt;length_t L, <span class="keyword">typename</span> T, qualifier Q&gt;</div>
-<div class="line"><a name="l00140"></a><span class="lineno">  140</span>&#160;        GLM_FUNC_DECL vec&lt;L, T, Q&gt; <a class="code" href="a00370.html#ga750a1d92464489b7711dee67aa3441b6">bitfieldReverse</a>(vec&lt;L, T, Q&gt; <span class="keyword">const</span>&amp; v);</div>
-<div class="line"><a name="l00141"></a><span class="lineno">  141</span>&#160;</div>
-<div class="line"><a name="l00148"></a><span class="lineno">  148</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> genType&gt;</div>
-<div class="line"><a name="l00149"></a><span class="lineno">  149</span>&#160;        GLM_FUNC_DECL <span class="keywordtype">int</span> <a class="code" href="a00370.html#gaac7b15e40bdea8d9aa4c4cb34049f7b5">bitCount</a>(genType v);</div>
-<div class="line"><a name="l00150"></a><span class="lineno">  150</span>&#160;</div>
-<div class="line"><a name="l00158"></a><span class="lineno">  158</span>&#160;        <span class="keyword">template</span>&lt;length_t L, <span class="keyword">typename</span> T, qualifier Q&gt;</div>
-<div class="line"><a name="l00159"></a><span class="lineno">  159</span>&#160;        GLM_FUNC_DECL vec&lt;L, int, Q&gt; <a class="code" href="a00370.html#gaac7b15e40bdea8d9aa4c4cb34049f7b5">bitCount</a>(vec&lt;L, T, Q&gt; <span class="keyword">const</span>&amp; v);</div>
-<div class="line"><a name="l00160"></a><span class="lineno">  160</span>&#160;</div>
-<div class="line"><a name="l00169"></a><span class="lineno">  169</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> genIUType&gt;</div>
-<div class="line"><a name="l00170"></a><span class="lineno">  170</span>&#160;        GLM_FUNC_DECL <span class="keywordtype">int</span> <a class="code" href="a00370.html#ga4454c0331d6369888c28ab677f4810c7">findLSB</a>(genIUType x);</div>
-<div class="line"><a name="l00171"></a><span class="lineno">  171</span>&#160;</div>
-<div class="line"><a name="l00181"></a><span class="lineno">  181</span>&#160;        <span class="keyword">template</span>&lt;length_t L, <span class="keyword">typename</span> T, qualifier Q&gt;</div>
-<div class="line"><a name="l00182"></a><span class="lineno">  182</span>&#160;        GLM_FUNC_DECL vec&lt;L, int, Q&gt; <a class="code" href="a00370.html#ga4454c0331d6369888c28ab677f4810c7">findLSB</a>(vec&lt;L, T, Q&gt; <span class="keyword">const</span>&amp; v);</div>
-<div class="line"><a name="l00183"></a><span class="lineno">  183</span>&#160;</div>
-<div class="line"><a name="l00193"></a><span class="lineno">  193</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> genIUType&gt;</div>
-<div class="line"><a name="l00194"></a><span class="lineno">  194</span>&#160;        GLM_FUNC_DECL <span class="keywordtype">int</span> <a class="code" href="a00370.html#ga39ac4d52028bb6ab08db5ad6562c2872">findMSB</a>(genIUType x);</div>
-<div class="line"><a name="l00195"></a><span class="lineno">  195</span>&#160;</div>
-<div class="line"><a name="l00206"></a><span class="lineno">  206</span>&#160;        <span class="keyword">template</span>&lt;length_t L, <span class="keyword">typename</span> T, qualifier Q&gt;</div>
-<div class="line"><a name="l00207"></a><span class="lineno">  207</span>&#160;        GLM_FUNC_DECL vec&lt;L, int, Q&gt; <a class="code" href="a00370.html#ga39ac4d52028bb6ab08db5ad6562c2872">findMSB</a>(vec&lt;L, T, Q&gt; <span class="keyword">const</span>&amp; v);</div>
-<div class="line"><a name="l00208"></a><span class="lineno">  208</span>&#160;</div>
-<div class="line"><a name="l00210"></a><span class="lineno">  210</span>&#160;}<span class="comment">//namespace glm</span></div>
-<div class="line"><a name="l00211"></a><span class="lineno">  211</span>&#160;</div>
-<div class="line"><a name="l00212"></a><span class="lineno">  212</span>&#160;<span class="preprocessor">#include &quot;detail/func_integer.inl&quot;</span></div>
-<div class="ttc" id="a00015_html"><div class="ttname"><a href="a00015.html">common.hpp</a></div><div class="ttdoc">Core features </div></div>
-<div class="ttc" id="a00370_html_ga39ac4d52028bb6ab08db5ad6562c2872"><div class="ttname"><a href="a00370.html#ga39ac4d52028bb6ab08db5ad6562c2872">glm::findMSB</a></div><div class="ttdeci">GLM_FUNC_DECL vec&lt; L, int, Q &gt; findMSB(vec&lt; L, T, Q &gt; const &amp;v)</div><div class="ttdoc">Returns the bit number of the most significant bit in the binary representation of value...</div></div>
-<div class="ttc" id="a00370_html_ga732e2fb56db57ea541c7e5c92b7121be"><div class="ttname"><a href="a00370.html#ga732e2fb56db57ea541c7e5c92b7121be">glm::umulExtended</a></div><div class="ttdeci">GLM_FUNC_DECL void umulExtended(vec&lt; L, uint, Q &gt; const &amp;x, vec&lt; L, uint, Q &gt; const &amp;y, vec&lt; L, uint, Q &gt; &amp;msb, vec&lt; L, uint, Q &gt; &amp;lsb)</div><div class="ttdoc">Multiplies 32-bit integers x and y, producing a 64-bit result. </div></div>
-<div class="ttc" id="a00370_html_gac0c510a70e852f57594a9141848642e3"><div class="ttname"><a href="a00370.html#gac0c510a70e852f57594a9141848642e3">glm::imulExtended</a></div><div class="ttdeci">GLM_FUNC_DECL void imulExtended(vec&lt; L, int, Q &gt; const &amp;x, vec&lt; L, int, Q &gt; const &amp;y, vec&lt; L, int, Q &gt; &amp;msb, vec&lt; L, int, Q &gt; &amp;lsb)</div><div class="ttdoc">Multiplies 32-bit integers x and y, producing a 64-bit result. </div></div>
-<div class="ttc" id="a00370_html_gaac7b15e40bdea8d9aa4c4cb34049f7b5"><div class="ttname"><a href="a00370.html#gaac7b15e40bdea8d9aa4c4cb34049f7b5">glm::bitCount</a></div><div class="ttdeci">GLM_FUNC_DECL vec&lt; L, int, Q &gt; bitCount(vec&lt; L, T, Q &gt; const &amp;v)</div><div class="ttdoc">Returns the number of bits set to 1 in the binary representation of value. </div></div>
-<div class="ttc" id="a00370_html_gaedcec48743632dff6786bcc492074b1b"><div class="ttname"><a href="a00370.html#gaedcec48743632dff6786bcc492074b1b">glm::uaddCarry</a></div><div class="ttdeci">GLM_FUNC_DECL vec&lt; L, uint, Q &gt; uaddCarry(vec&lt; L, uint, Q &gt; const &amp;x, vec&lt; L, uint, Q &gt; const &amp;y, vec&lt; L, uint, Q &gt; &amp;carry)</div><div class="ttdoc">Adds 32-bit unsigned integer x and y, returning the sum modulo pow(2, 32). </div></div>
-<div class="ttc" id="a00370_html_ga346b25ab11e793e91a4a69c8aa6819f2"><div class="ttname"><a href="a00370.html#ga346b25ab11e793e91a4a69c8aa6819f2">glm::bitfieldExtract</a></div><div class="ttdeci">GLM_FUNC_DECL vec&lt; L, T, Q &gt; bitfieldExtract(vec&lt; L, T, Q &gt; const &amp;Value, int Offset, int Bits)</div><div class="ttdoc">Extracts bits [offset, offset + bits - 1] from value, returning them in the least significant bits of...</div></div>
-<div class="ttc" id="a00370_html_ga2e82992340d421fadb61a473df699b20"><div class="ttname"><a href="a00370.html#ga2e82992340d421fadb61a473df699b20">glm::bitfieldInsert</a></div><div class="ttdeci">GLM_FUNC_DECL vec&lt; L, T, Q &gt; bitfieldInsert(vec&lt; L, T, Q &gt; const &amp;Base, vec&lt; L, T, Q &gt; const &amp;Insert, int Offset, int Bits)</div><div class="ttdoc">Returns the insertion the bits least-significant bits of insert into base. </div></div>
-<div class="ttc" id="a00225_html"><div class="ttname"><a href="a00225.html">vector_relational.hpp</a></div><div class="ttdoc">Core features </div></div>
-<div class="ttc" id="a00370_html_ga750a1d92464489b7711dee67aa3441b6"><div class="ttname"><a href="a00370.html#ga750a1d92464489b7711dee67aa3441b6">glm::bitfieldReverse</a></div><div class="ttdeci">GLM_FUNC_DECL vec&lt; L, T, Q &gt; bitfieldReverse(vec&lt; L, T, Q &gt; const &amp;v)</div><div class="ttdoc">Returns the reversal of the bits of value. </div></div>
-<div class="ttc" id="a00370_html_gae3316ba1229ad9b9f09480833321b053"><div class="ttname"><a href="a00370.html#gae3316ba1229ad9b9f09480833321b053">glm::usubBorrow</a></div><div class="ttdeci">GLM_FUNC_DECL vec&lt; L, uint, Q &gt; usubBorrow(vec&lt; L, uint, Q &gt; const &amp;x, vec&lt; L, uint, Q &gt; const &amp;y, vec&lt; L, uint, Q &gt; &amp;borrow)</div><div class="ttdoc">Subtracts the 32-bit unsigned integer y from x, returning the difference if non-negative, or pow(2, 32) plus the difference otherwise. </div></div>
-<div class="ttc" id="a00370_html_ga4454c0331d6369888c28ab677f4810c7"><div class="ttname"><a href="a00370.html#ga4454c0331d6369888c28ab677f4810c7">glm::findLSB</a></div><div class="ttdeci">GLM_FUNC_DECL vec&lt; L, int, Q &gt; findLSB(vec&lt; L, T, Q &gt; const &amp;v)</div><div class="ttdoc">Returns the bit number of the least significant bit set to 1 in the binary representation of value...</div></div>
-<div class="ttc" id="a00236_html"><div class="ttname"><a href="a00236.html">glm</a></div><div class="ttdef"><b>Definition:</b> <a href="a00015_source.html#l00020">common.hpp:20</a></div></div>
-</div><!-- fragment --></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.10
-</small></address>
-</body>
-</html>

+ 24 - 75
doc/api/a00044.html

@@ -1,19 +1,17 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://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.10"/>
-<title>0.9.9 API documentation: intersect.hpp File Reference</title>
+<meta name="generator" content="Doxygen 1.8.18"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>1.0.0 API documentation: type_mat2x3.hpp File Reference</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="search/search.css" rel="stylesheet" type="text/css"/>
 <script type="text/javascript" src="search/searchdata.js"></script>
 <script type="text/javascript" src="search/search.js"></script>
-<script type="text/javascript">
-  $(document).ready(function() { init_search(); });
-</script>
 <link href="doxygen.css" rel="stylesheet" type="text/css" />
 </head>
 <body>
@@ -24,7 +22,7 @@
  <tr style="height: 56px;">
   <td id="projectlogo"><img alt="Logo" src="logo-mini.png"/></td>
   <td id="projectalign" style="padding-left: 0.5em;">
-   <div id="projectname">0.9.9 API documentation
+   <div id="projectname">1.0.0 API documentation
    </div>
   </td>
  </tr>
@@ -32,38 +30,22 @@
 </table>
 </div>
 <!-- end header part -->
-<!-- Generated by Doxygen 1.8.10 -->
+<!-- Generated by Doxygen 1.8.18 -->
 <script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
 var searchBox = new SearchBox("searchBox", "search",false,'Search');
+/* @license-end */
 </script>
-  <div id="navrow1" class="tabs">
-    <ul class="tablist">
-      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
-      <li><a href="modules.html"><span>Modules</span></a></li>
-      <li class="current"><a href="files.html"><span>Files</span></a></li>
-      <li>
-        <div id="MSearchBox" class="MSearchBoxInactive">
-        <span class="left">
-          <img id="MSearchSelect" src="search/mag_sel.png"
-               onmouseover="return searchBox.OnSearchSelectShow()"
-               onmouseout="return searchBox.OnSearchSelectHide()"
-               alt=""/>
-          <input type="text" id="MSearchField" value="Search" accesskey="S"
-               onfocus="searchBox.OnSearchFieldFocus(true)" 
-               onblur="searchBox.OnSearchFieldFocus(false)" 
-               onkeyup="searchBox.OnSearchFieldChange(event)"/>
-          </span><span class="right">
-            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
-          </span>
-        </div>
-      </li>
-    </ul>
-  </div>
-  <div id="navrow2" class="tabs2">
-    <ul class="tablist">
-      <li><a href="files.html"><span>File&#160;List</span></a></li>
-    </ul>
-  </div>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
 <!-- window showing the filter options -->
 <div id="MSearchSelectWindow"
      onmouseover="return searchBox.OnSearchSelectShow()"
@@ -80,62 +62,29 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 
 <div id="nav-path" class="navpath">
   <ul>
-<li class="navelem"><a class="el" href="dir_3a581ba30d25676e4b797b1f96d53b45.html">F:</a></li><li class="navelem"><a class="el" href="dir_9e5fe034a00e89334fd5186c3e7db156.html">G-Truc</a></li><li class="navelem"><a class="el" href="dir_d9496f0844b48bc7e53b5af8c99b9ab2.html">Source</a></li><li class="navelem"><a class="el" href="dir_a8bee7be44182a33f3820393ae0b105d.html">G-Truc</a></li><li class="navelem"><a class="el" href="dir_44e5e654415abd9ca6fdeaddaff8565e.html">glm</a></li><li class="navelem"><a class="el" href="dir_cef2d71d502cb69a9252bca2297d9549.html">glm</a></li><li class="navelem"><a class="el" href="dir_f35778ec600a1b9bbc4524e62e226aa2.html">gtx</a></li>  </ul>
+<li class="navelem"><a class="el" href="dir_885cc87fac2d91e269af0a5a959fa5f6.html">E:</a></li><li class="navelem"><a class="el" href="dir_63ed049134a778d525e06b63afc2c979.html">Github</a></li><li class="navelem"><a class="el" href="dir_c98a9ac98258ab9f831b188d66361a70.html">g-truc</a></li><li class="navelem"><a class="el" href="dir_50f12b6ceb23d7f6adfb377a1ae8b006.html">glm</a></li><li class="navelem"><a class="el" href="dir_fca33f1b5115d46f42c670590789c0d2.html">glm</a></li><li class="navelem"><a class="el" href="dir_382f4fd018b81be8753cb53c0a41a09a.html">detail</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">intersect.hpp File Reference</div>  </div>
+<div class="title">type_mat2x3.hpp File Reference</div>  </div>
 </div><!--header-->
 <div class="contents">
 
-<p><a class="el" href="a00331.html">GLM_GTX_intersect</a>  
+<p><a class="el" href="a00889.html">Core features</a>  
 <a href="#details">More...</a></p>
 
 <p><a href="a00044_source.html">Go to the source code of this file.</a></p>
-<table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
-Functions</h2></td></tr>
-<tr class="memitem:ga9c68139f3d8a4f3d7fe45f9dbc0de5b7"><td class="memTemplParams" colspan="2">template&lt;typename genType &gt; </td></tr>
-<tr class="memitem:ga9c68139f3d8a4f3d7fe45f9dbc0de5b7"><td class="memTemplItemLeft" align="right" valign="top">GLM_FUNC_DECL bool&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00331.html#ga9c68139f3d8a4f3d7fe45f9dbc0de5b7">intersectLineSphere</a> (genType const &amp;point0, genType const &amp;point1, genType const &amp;sphereCenter, typename genType::value_type sphereRadius, genType &amp;intersectionPosition1, genType &amp;intersectionNormal1, genType &amp;intersectionPosition2=genType(), genType &amp;intersectionNormal2=genType())</td></tr>
-<tr class="memdesc:ga9c68139f3d8a4f3d7fe45f9dbc0de5b7"><td class="mdescLeft">&#160;</td><td class="mdescRight">Compute the intersection of a line and a sphere.  <a href="a00331.html#ga9c68139f3d8a4f3d7fe45f9dbc0de5b7">More...</a><br /></td></tr>
-<tr class="separator:ga9c68139f3d8a4f3d7fe45f9dbc0de5b7"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:ga9d29b9b3acb504d43986502f42740df4"><td class="memTemplParams" colspan="2">template&lt;typename genType &gt; </td></tr>
-<tr class="memitem:ga9d29b9b3acb504d43986502f42740df4"><td class="memTemplItemLeft" align="right" valign="top">GLM_FUNC_DECL bool&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00331.html#ga9d29b9b3acb504d43986502f42740df4">intersectLineTriangle</a> (genType const &amp;orig, genType const &amp;dir, genType const &amp;vert0, genType const &amp;vert1, genType const &amp;vert2, genType &amp;position)</td></tr>
-<tr class="memdesc:ga9d29b9b3acb504d43986502f42740df4"><td class="mdescLeft">&#160;</td><td class="mdescRight">Compute the intersection of a line and a triangle.  <a href="a00331.html#ga9d29b9b3acb504d43986502f42740df4">More...</a><br /></td></tr>
-<tr class="separator:ga9d29b9b3acb504d43986502f42740df4"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:gad3697a9700ea379739a667ea02573488"><td class="memTemplParams" colspan="2">template&lt;typename genType &gt; </td></tr>
-<tr class="memitem:gad3697a9700ea379739a667ea02573488"><td class="memTemplItemLeft" align="right" valign="top">GLM_FUNC_DECL bool&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00331.html#gad3697a9700ea379739a667ea02573488">intersectRayPlane</a> (genType const &amp;orig, genType const &amp;dir, genType const &amp;planeOrig, genType const &amp;planeNormal, typename genType::value_type &amp;intersectionDistance)</td></tr>
-<tr class="memdesc:gad3697a9700ea379739a667ea02573488"><td class="mdescLeft">&#160;</td><td class="mdescRight">Compute the intersection of a ray and a plane.  <a href="a00331.html#gad3697a9700ea379739a667ea02573488">More...</a><br /></td></tr>
-<tr class="separator:gad3697a9700ea379739a667ea02573488"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:gac88f8cd84c4bcb5b947d56acbbcfa56e"><td class="memTemplParams" colspan="2">template&lt;typename genType &gt; </td></tr>
-<tr class="memitem:gac88f8cd84c4bcb5b947d56acbbcfa56e"><td class="memTemplItemLeft" align="right" valign="top">GLM_FUNC_DECL bool&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00331.html#gac88f8cd84c4bcb5b947d56acbbcfa56e">intersectRaySphere</a> (genType const &amp;rayStarting, genType const &amp;rayNormalizedDirection, genType const &amp;sphereCenter, typename genType::value_type const sphereRadiusSquared, typename genType::value_type &amp;intersectionDistance)</td></tr>
-<tr class="memdesc:gac88f8cd84c4bcb5b947d56acbbcfa56e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Compute the intersection distance of a ray and a sphere.  <a href="a00331.html#gac88f8cd84c4bcb5b947d56acbbcfa56e">More...</a><br /></td></tr>
-<tr class="separator:gac88f8cd84c4bcb5b947d56acbbcfa56e"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:gad28c00515b823b579c608aafa1100c1d"><td class="memTemplParams" colspan="2">template&lt;typename genType &gt; </td></tr>
-<tr class="memitem:gad28c00515b823b579c608aafa1100c1d"><td class="memTemplItemLeft" align="right" valign="top">GLM_FUNC_DECL bool&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00331.html#gad28c00515b823b579c608aafa1100c1d">intersectRaySphere</a> (genType const &amp;rayStarting, genType const &amp;rayNormalizedDirection, genType const &amp;sphereCenter, const typename genType::value_type sphereRadius, genType &amp;intersectionPosition, genType &amp;intersectionNormal)</td></tr>
-<tr class="memdesc:gad28c00515b823b579c608aafa1100c1d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Compute the intersection of a ray and a sphere.  <a href="a00331.html#gad28c00515b823b579c608aafa1100c1d">More...</a><br /></td></tr>
-<tr class="separator:gad28c00515b823b579c608aafa1100c1d"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:ga65bf2c594482f04881c36bc761f9e946"><td class="memTemplParams" colspan="2">template&lt;typename T , qualifier Q&gt; </td></tr>
-<tr class="memitem:ga65bf2c594482f04881c36bc761f9e946"><td class="memTemplItemLeft" align="right" valign="top">GLM_FUNC_DECL bool&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00331.html#ga65bf2c594482f04881c36bc761f9e946">intersectRayTriangle</a> (vec&lt; 3, T, Q &gt; const &amp;orig, vec&lt; 3, T, Q &gt; const &amp;dir, vec&lt; 3, T, Q &gt; const &amp;v0, vec&lt; 3, T, Q &gt; const &amp;v1, vec&lt; 3, T, Q &gt; const &amp;v2, vec&lt; 2, T, Q &gt; &amp;baryPosition, T &amp;distance)</td></tr>
-<tr class="memdesc:ga65bf2c594482f04881c36bc761f9e946"><td class="mdescLeft">&#160;</td><td class="mdescRight">Compute the intersection of a ray and a triangle.  <a href="a00331.html#ga65bf2c594482f04881c36bc761f9e946">More...</a><br /></td></tr>
-<tr class="separator:ga65bf2c594482f04881c36bc761f9e946"><td class="memSeparator" colspan="2">&#160;</td></tr>
-</table>
 <a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
-<div class="textblock"><p><a class="el" href="a00331.html">GLM_GTX_intersect</a> </p>
-<dl class="section see"><dt>See also</dt><dd><a class="el" href="a00280.html" title="Features that implement in C++ the GLSL specification as closely as possible. ">Core features</a> (dependence) </dd>
-<dd>
-<a class="el" href="a00310.html" title="Include <glm/gtx/closest_point.hpp> to use the features of this extension. ">GLM_GTX_closest_point</a> (dependence) </dd></dl>
+<div class="textblock"><p><a class="el" href="a00889.html">Core features</a> </p>
 
-<p>Definition in file <a class="el" href="a00044_source.html">intersect.hpp</a>.</p>
+<p class="definition">Definition in file <a class="el" href="a00044_source.html">type_mat2x3.hpp</a>.</p>
 </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.10
+</a> 1.8.18
 </small></address>
 </body>
 </html>

+ 181 - 108
doc/api/a00044_source.html

@@ -1,19 +1,17 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://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.10"/>
-<title>0.9.9 API documentation: intersect.hpp Source File</title>
+<meta name="generator" content="Doxygen 1.8.18"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>1.0.0 API documentation: type_mat2x3.hpp Source File</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="search/search.css" rel="stylesheet" type="text/css"/>
 <script type="text/javascript" src="search/searchdata.js"></script>
 <script type="text/javascript" src="search/search.js"></script>
-<script type="text/javascript">
-  $(document).ready(function() { init_search(); });
-</script>
 <link href="doxygen.css" rel="stylesheet" type="text/css" />
 </head>
 <body>
@@ -24,7 +22,7 @@
  <tr style="height: 56px;">
   <td id="projectlogo"><img alt="Logo" src="logo-mini.png"/></td>
   <td id="projectalign" style="padding-left: 0.5em;">
-   <div id="projectname">0.9.9 API documentation
+   <div id="projectname">1.0.0 API documentation
    </div>
   </td>
  </tr>
@@ -32,38 +30,22 @@
 </table>
 </div>
 <!-- end header part -->
-<!-- Generated by Doxygen 1.8.10 -->
+<!-- Generated by Doxygen 1.8.18 -->
 <script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
 var searchBox = new SearchBox("searchBox", "search",false,'Search');
+/* @license-end */
 </script>
-  <div id="navrow1" class="tabs">
-    <ul class="tablist">
-      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
-      <li><a href="modules.html"><span>Modules</span></a></li>
-      <li class="current"><a href="files.html"><span>Files</span></a></li>
-      <li>
-        <div id="MSearchBox" class="MSearchBoxInactive">
-        <span class="left">
-          <img id="MSearchSelect" src="search/mag_sel.png"
-               onmouseover="return searchBox.OnSearchSelectShow()"
-               onmouseout="return searchBox.OnSearchSelectHide()"
-               alt=""/>
-          <input type="text" id="MSearchField" value="Search" accesskey="S"
-               onfocus="searchBox.OnSearchFieldFocus(true)" 
-               onblur="searchBox.OnSearchFieldFocus(false)" 
-               onkeyup="searchBox.OnSearchFieldChange(event)"/>
-          </span><span class="right">
-            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
-          </span>
-        </div>
-      </li>
-    </ul>
-  </div>
-  <div id="navrow2" class="tabs2">
-    <ul class="tablist">
-      <li><a href="files.html"><span>File&#160;List</span></a></li>
-    </ul>
-  </div>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
 <!-- window showing the filter options -->
 <div id="MSearchSelectWindow"
      onmouseover="return searchBox.OnSearchSelectShow()"
@@ -80,89 +62,180 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 
 <div id="nav-path" class="navpath">
   <ul>
-<li class="navelem"><a class="el" href="dir_3a581ba30d25676e4b797b1f96d53b45.html">F:</a></li><li class="navelem"><a class="el" href="dir_9e5fe034a00e89334fd5186c3e7db156.html">G-Truc</a></li><li class="navelem"><a class="el" href="dir_d9496f0844b48bc7e53b5af8c99b9ab2.html">Source</a></li><li class="navelem"><a class="el" href="dir_a8bee7be44182a33f3820393ae0b105d.html">G-Truc</a></li><li class="navelem"><a class="el" href="dir_44e5e654415abd9ca6fdeaddaff8565e.html">glm</a></li><li class="navelem"><a class="el" href="dir_cef2d71d502cb69a9252bca2297d9549.html">glm</a></li><li class="navelem"><a class="el" href="dir_f35778ec600a1b9bbc4524e62e226aa2.html">gtx</a></li>  </ul>
+<li class="navelem"><a class="el" href="dir_885cc87fac2d91e269af0a5a959fa5f6.html">E:</a></li><li class="navelem"><a class="el" href="dir_63ed049134a778d525e06b63afc2c979.html">Github</a></li><li class="navelem"><a class="el" href="dir_c98a9ac98258ab9f831b188d66361a70.html">g-truc</a></li><li class="navelem"><a class="el" href="dir_50f12b6ceb23d7f6adfb377a1ae8b006.html">glm</a></li><li class="navelem"><a class="el" href="dir_fca33f1b5115d46f42c670590789c0d2.html">glm</a></li><li class="navelem"><a class="el" href="dir_382f4fd018b81be8753cb53c0a41a09a.html">detail</a></li>  </ul>
 </div>
 </div><!-- top -->
 <div class="header">
   <div class="headertitle">
-<div class="title">intersect.hpp</div>  </div>
+<div class="title">type_mat2x3.hpp</div>  </div>
 </div><!--header-->
 <div class="contents">
-<a href="a00044.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span>&#160;</div>
-<div class="line"><a name="l00014"></a><span class="lineno">   14</span>&#160;<span class="preprocessor">#pragma once</span></div>
-<div class="line"><a name="l00015"></a><span class="lineno">   15</span>&#160;</div>
-<div class="line"><a name="l00016"></a><span class="lineno">   16</span>&#160;<span class="comment">// Dependency:</span></div>
-<div class="line"><a name="l00017"></a><span class="lineno">   17</span>&#160;<span class="preprocessor">#include &lt;cfloat&gt;</span></div>
-<div class="line"><a name="l00018"></a><span class="lineno">   18</span>&#160;<span class="preprocessor">#include &lt;limits&gt;</span></div>
-<div class="line"><a name="l00019"></a><span class="lineno">   19</span>&#160;<span class="preprocessor">#include &quot;../glm.hpp&quot;</span></div>
-<div class="line"><a name="l00020"></a><span class="lineno">   20</span>&#160;<span class="preprocessor">#include &quot;../geometric.hpp&quot;</span></div>
-<div class="line"><a name="l00021"></a><span class="lineno">   21</span>&#160;<span class="preprocessor">#include &quot;../gtx/closest_point.hpp&quot;</span></div>
-<div class="line"><a name="l00022"></a><span class="lineno">   22</span>&#160;<span class="preprocessor">#include &quot;../gtx/vector_query.hpp&quot;</span></div>
-<div class="line"><a name="l00023"></a><span class="lineno">   23</span>&#160;</div>
-<div class="line"><a name="l00024"></a><span class="lineno">   24</span>&#160;<span class="preprocessor">#if GLM_MESSAGES == GLM_ENABLE &amp;&amp; !defined(GLM_EXT_INCLUDED)</span></div>
-<div class="line"><a name="l00025"></a><span class="lineno">   25</span>&#160;<span class="preprocessor">#       ifndef GLM_ENABLE_EXPERIMENTAL</span></div>
-<div class="line"><a name="l00026"></a><span class="lineno">   26</span>&#160;<span class="preprocessor">#               pragma message(&quot;GLM: GLM_GTX_closest_point is an experimental extension and may change in the future. Use #define GLM_ENABLE_EXPERIMENTAL before including it, if you really want to use it.&quot;)</span></div>
-<div class="line"><a name="l00027"></a><span class="lineno">   27</span>&#160;<span class="preprocessor">#       else</span></div>
-<div class="line"><a name="l00028"></a><span class="lineno">   28</span>&#160;<span class="preprocessor">#               pragma message(&quot;GLM: GLM_GTX_closest_point extension included&quot;)</span></div>
-<div class="line"><a name="l00029"></a><span class="lineno">   29</span>&#160;<span class="preprocessor">#       endif</span></div>
-<div class="line"><a name="l00030"></a><span class="lineno">   30</span>&#160;<span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00031"></a><span class="lineno">   31</span>&#160;</div>
-<div class="line"><a name="l00032"></a><span class="lineno">   32</span>&#160;<span class="keyword">namespace </span><a class="code" href="a00236.html">glm</a></div>
-<div class="line"><a name="l00033"></a><span class="lineno">   33</span>&#160;{</div>
-<div class="line"><a name="l00036"></a><span class="lineno">   36</span>&#160;</div>
-<div class="line"><a name="l00040"></a><span class="lineno">   40</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> genType&gt;</div>
-<div class="line"><a name="l00041"></a><span class="lineno">   41</span>&#160;        GLM_FUNC_DECL <span class="keywordtype">bool</span> <a class="code" href="a00331.html#gad3697a9700ea379739a667ea02573488">intersectRayPlane</a>(</div>
-<div class="line"><a name="l00042"></a><span class="lineno">   42</span>&#160;                genType <span class="keyword">const</span>&amp; orig, genType <span class="keyword">const</span>&amp; dir,</div>
-<div class="line"><a name="l00043"></a><span class="lineno">   43</span>&#160;                genType <span class="keyword">const</span>&amp; planeOrig, genType <span class="keyword">const</span>&amp; planeNormal,</div>
-<div class="line"><a name="l00044"></a><span class="lineno">   44</span>&#160;                <span class="keyword">typename</span> genType::value_type &amp; intersectionDistance);</div>
-<div class="line"><a name="l00045"></a><span class="lineno">   45</span>&#160;</div>
-<div class="line"><a name="l00049"></a><span class="lineno">   49</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T, qualifier Q&gt;</div>
-<div class="line"><a name="l00050"></a><span class="lineno">   50</span>&#160;        GLM_FUNC_DECL <span class="keywordtype">bool</span> <a class="code" href="a00331.html#ga65bf2c594482f04881c36bc761f9e946">intersectRayTriangle</a>(</div>
-<div class="line"><a name="l00051"></a><span class="lineno">   51</span>&#160;                vec&lt;3, T, Q&gt; <span class="keyword">const</span>&amp; orig, vec&lt;3, T, Q&gt; <span class="keyword">const</span>&amp; dir,</div>
-<div class="line"><a name="l00052"></a><span class="lineno">   52</span>&#160;                vec&lt;3, T, Q&gt; <span class="keyword">const</span>&amp; v0, vec&lt;3, T, Q&gt; <span class="keyword">const</span>&amp; v1, vec&lt;3, T, Q&gt; <span class="keyword">const</span>&amp; v2,</div>
-<div class="line"><a name="l00053"></a><span class="lineno">   53</span>&#160;                vec&lt;2, T, Q&gt;&amp; baryPosition, T&amp; <a class="code" href="a00279.html#gaa68de6c53e20dfb2dac2d20197562e3f">distance</a>);</div>
-<div class="line"><a name="l00054"></a><span class="lineno">   54</span>&#160;</div>
-<div class="line"><a name="l00057"></a><span class="lineno">   57</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> genType&gt;</div>
-<div class="line"><a name="l00058"></a><span class="lineno">   58</span>&#160;        GLM_FUNC_DECL <span class="keywordtype">bool</span> <a class="code" href="a00331.html#ga9d29b9b3acb504d43986502f42740df4">intersectLineTriangle</a>(</div>
-<div class="line"><a name="l00059"></a><span class="lineno">   59</span>&#160;                genType <span class="keyword">const</span>&amp; orig, genType <span class="keyword">const</span>&amp; dir,</div>
-<div class="line"><a name="l00060"></a><span class="lineno">   60</span>&#160;                genType <span class="keyword">const</span>&amp; vert0, genType <span class="keyword">const</span>&amp; vert1, genType <span class="keyword">const</span>&amp; vert2,</div>
-<div class="line"><a name="l00061"></a><span class="lineno">   61</span>&#160;                genType &amp; position);</div>
-<div class="line"><a name="l00062"></a><span class="lineno">   62</span>&#160;</div>
-<div class="line"><a name="l00066"></a><span class="lineno">   66</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> genType&gt;</div>
-<div class="line"><a name="l00067"></a><span class="lineno">   67</span>&#160;        GLM_FUNC_DECL <span class="keywordtype">bool</span> <a class="code" href="a00331.html#gad28c00515b823b579c608aafa1100c1d">intersectRaySphere</a>(</div>
-<div class="line"><a name="l00068"></a><span class="lineno">   68</span>&#160;                genType <span class="keyword">const</span>&amp; rayStarting, genType <span class="keyword">const</span>&amp; rayNormalizedDirection,</div>
-<div class="line"><a name="l00069"></a><span class="lineno">   69</span>&#160;                genType <span class="keyword">const</span>&amp; sphereCenter, <span class="keyword">typename</span> genType::value_type <span class="keyword">const</span> sphereRadiusSquared,</div>
-<div class="line"><a name="l00070"></a><span class="lineno">   70</span>&#160;                <span class="keyword">typename</span> genType::value_type &amp; intersectionDistance);</div>
-<div class="line"><a name="l00071"></a><span class="lineno">   71</span>&#160;</div>
-<div class="line"><a name="l00074"></a><span class="lineno">   74</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> genType&gt;</div>
-<div class="line"><a name="l00075"></a><span class="lineno">   75</span>&#160;        GLM_FUNC_DECL <span class="keywordtype">bool</span> <a class="code" href="a00331.html#gad28c00515b823b579c608aafa1100c1d">intersectRaySphere</a>(</div>
-<div class="line"><a name="l00076"></a><span class="lineno">   76</span>&#160;                genType <span class="keyword">const</span>&amp; rayStarting, genType <span class="keyword">const</span>&amp; rayNormalizedDirection,</div>
-<div class="line"><a name="l00077"></a><span class="lineno">   77</span>&#160;                genType <span class="keyword">const</span>&amp; sphereCenter, <span class="keyword">const</span> <span class="keyword">typename</span> genType::value_type sphereRadius,</div>
-<div class="line"><a name="l00078"></a><span class="lineno">   78</span>&#160;                genType &amp; intersectionPosition, genType &amp; intersectionNormal);</div>
-<div class="line"><a name="l00079"></a><span class="lineno">   79</span>&#160;</div>
-<div class="line"><a name="l00082"></a><span class="lineno">   82</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> genType&gt;</div>
-<div class="line"><a name="l00083"></a><span class="lineno">   83</span>&#160;        GLM_FUNC_DECL <span class="keywordtype">bool</span> <a class="code" href="a00331.html#ga9c68139f3d8a4f3d7fe45f9dbc0de5b7">intersectLineSphere</a>(</div>
-<div class="line"><a name="l00084"></a><span class="lineno">   84</span>&#160;                genType <span class="keyword">const</span>&amp; point0, genType <span class="keyword">const</span>&amp; point1,</div>
-<div class="line"><a name="l00085"></a><span class="lineno">   85</span>&#160;                genType <span class="keyword">const</span>&amp; sphereCenter, <span class="keyword">typename</span> genType::value_type sphereRadius,</div>
-<div class="line"><a name="l00086"></a><span class="lineno">   86</span>&#160;                genType &amp; intersectionPosition1, genType &amp; intersectionNormal1,</div>
-<div class="line"><a name="l00087"></a><span class="lineno">   87</span>&#160;                genType &amp; intersectionPosition2 = genType(), genType &amp; intersectionNormal2 = genType());</div>
-<div class="line"><a name="l00088"></a><span class="lineno">   88</span>&#160;</div>
-<div class="line"><a name="l00090"></a><span class="lineno">   90</span>&#160;}<span class="comment">//namespace glm</span></div>
-<div class="line"><a name="l00091"></a><span class="lineno">   91</span>&#160;</div>
-<div class="line"><a name="l00092"></a><span class="lineno">   92</span>&#160;<span class="preprocessor">#include &quot;intersect.inl&quot;</span></div>
-<div class="ttc" id="a00331_html_ga65bf2c594482f04881c36bc761f9e946"><div class="ttname"><a href="a00331.html#ga65bf2c594482f04881c36bc761f9e946">glm::intersectRayTriangle</a></div><div class="ttdeci">GLM_FUNC_DECL bool intersectRayTriangle(vec&lt; 3, T, Q &gt; const &amp;orig, vec&lt; 3, T, Q &gt; const &amp;dir, vec&lt; 3, T, Q &gt; const &amp;v0, vec&lt; 3, T, Q &gt; const &amp;v1, vec&lt; 3, T, Q &gt; const &amp;v2, vec&lt; 2, T, Q &gt; &amp;baryPosition, T &amp;distance)</div><div class="ttdoc">Compute the intersection of a ray and a triangle. </div></div>
-<div class="ttc" id="a00331_html_gad28c00515b823b579c608aafa1100c1d"><div class="ttname"><a href="a00331.html#gad28c00515b823b579c608aafa1100c1d">glm::intersectRaySphere</a></div><div class="ttdeci">GLM_FUNC_DECL bool intersectRaySphere(genType const &amp;rayStarting, genType const &amp;rayNormalizedDirection, genType const &amp;sphereCenter, const typename genType::value_type sphereRadius, genType &amp;intersectionPosition, genType &amp;intersectionNormal)</div><div class="ttdoc">Compute the intersection of a ray and a sphere. </div></div>
-<div class="ttc" id="a00331_html_gad3697a9700ea379739a667ea02573488"><div class="ttname"><a href="a00331.html#gad3697a9700ea379739a667ea02573488">glm::intersectRayPlane</a></div><div class="ttdeci">GLM_FUNC_DECL bool intersectRayPlane(genType const &amp;orig, genType const &amp;dir, genType const &amp;planeOrig, genType const &amp;planeNormal, typename genType::value_type &amp;intersectionDistance)</div><div class="ttdoc">Compute the intersection of a ray and a plane. </div></div>
-<div class="ttc" id="a00331_html_ga9d29b9b3acb504d43986502f42740df4"><div class="ttname"><a href="a00331.html#ga9d29b9b3acb504d43986502f42740df4">glm::intersectLineTriangle</a></div><div class="ttdeci">GLM_FUNC_DECL bool intersectLineTriangle(genType const &amp;orig, genType const &amp;dir, genType const &amp;vert0, genType const &amp;vert1, genType const &amp;vert2, genType &amp;position)</div><div class="ttdoc">Compute the intersection of a line and a triangle. </div></div>
-<div class="ttc" id="a00331_html_ga9c68139f3d8a4f3d7fe45f9dbc0de5b7"><div class="ttname"><a href="a00331.html#ga9c68139f3d8a4f3d7fe45f9dbc0de5b7">glm::intersectLineSphere</a></div><div class="ttdeci">GLM_FUNC_DECL bool intersectLineSphere(genType const &amp;point0, genType const &amp;point1, genType const &amp;sphereCenter, typename genType::value_type sphereRadius, genType &amp;intersectionPosition1, genType &amp;intersectionNormal1, genType &amp;intersectionPosition2=genType(), genType &amp;intersectionNormal2=genType())</div><div class="ttdoc">Compute the intersection of a line and a sphere. </div></div>
-<div class="ttc" id="a00279_html_gaa68de6c53e20dfb2dac2d20197562e3f"><div class="ttname"><a href="a00279.html#gaa68de6c53e20dfb2dac2d20197562e3f">glm::distance</a></div><div class="ttdeci">GLM_FUNC_DECL T distance(vec&lt; L, T, Q &gt; const &amp;p0, vec&lt; L, T, Q &gt; const &amp;p1)</div><div class="ttdoc">Returns the distance betwwen p0 and p1, i.e., length(p0 - p1). </div></div>
-<div class="ttc" id="a00236_html"><div class="ttname"><a href="a00236.html">glm</a></div><div class="ttdef"><b>Definition:</b> <a href="a00015_source.html#l00020">common.hpp:20</a></div></div>
+<a href="a00044.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span>&#160; </div>
+<div class="line"><a name="l00004"></a><span class="lineno">    4</span>&#160;<span class="preprocessor">#pragma once</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno">    5</span>&#160; </div>
+<div class="line"><a name="l00006"></a><span class="lineno">    6</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="a00074.html">type_vec2.hpp</a>&quot;</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno">    7</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="a00077.html">type_vec3.hpp</a>&quot;</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno">    8</span>&#160;<span class="preprocessor">#include &lt;limits&gt;</span></div>
+<div class="line"><a name="l00009"></a><span class="lineno">    9</span>&#160;<span class="preprocessor">#include &lt;cstddef&gt;</span></div>
+<div class="line"><a name="l00010"></a><span class="lineno">   10</span>&#160; </div>
+<div class="line"><a name="l00011"></a><span class="lineno">   11</span>&#160;<span class="keyword">namespace </span>glm</div>
+<div class="line"><a name="l00012"></a><span class="lineno">   12</span>&#160;{</div>
+<div class="line"><a name="l00013"></a><span class="lineno">   13</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T, qualifier Q&gt;</div>
+<div class="line"><a name="l00014"></a><span class="lineno">   14</span>&#160;        <span class="keyword">struct </span>mat&lt;2, 3, T, Q&gt;</div>
+<div class="line"><a name="l00015"></a><span class="lineno">   15</span>&#160;        {</div>
+<div class="line"><a name="l00016"></a><span class="lineno">   16</span>&#160;                <span class="keyword">typedef</span> vec&lt;3, T, Q&gt; col_type;</div>
+<div class="line"><a name="l00017"></a><span class="lineno">   17</span>&#160;                <span class="keyword">typedef</span> vec&lt;2, T, Q&gt; row_type;</div>
+<div class="line"><a name="l00018"></a><span class="lineno">   18</span>&#160;                <span class="keyword">typedef</span> mat&lt;2, 3, T, Q&gt; type;</div>
+<div class="line"><a name="l00019"></a><span class="lineno">   19</span>&#160;                <span class="keyword">typedef</span> mat&lt;3, 2, T, Q&gt; transpose_type;</div>
+<div class="line"><a name="l00020"></a><span class="lineno">   20</span>&#160;                <span class="keyword">typedef</span> T value_type;</div>
+<div class="line"><a name="l00021"></a><span class="lineno">   21</span>&#160; </div>
+<div class="line"><a name="l00022"></a><span class="lineno">   22</span>&#160;        <span class="keyword">private</span>:</div>
+<div class="line"><a name="l00023"></a><span class="lineno">   23</span>&#160;                col_type value[2];</div>
+<div class="line"><a name="l00024"></a><span class="lineno">   24</span>&#160; </div>
+<div class="line"><a name="l00025"></a><span class="lineno">   25</span>&#160;        <span class="keyword">public</span>:</div>
+<div class="line"><a name="l00026"></a><span class="lineno">   26</span>&#160;                <span class="comment">// -- Accesses --</span></div>
+<div class="line"><a name="l00027"></a><span class="lineno">   27</span>&#160; </div>
+<div class="line"><a name="l00028"></a><span class="lineno">   28</span>&#160;                <span class="keyword">typedef</span> length_t length_type;</div>
+<div class="line"><a name="l00029"></a><span class="lineno">   29</span>&#160;                GLM_FUNC_DECL <span class="keyword">static</span> GLM_CONSTEXPR length_type <a class="code" href="a00853.html#gab703732449be6c7199369b3f9a91ed38">length</a>() { <span class="keywordflow">return</span> 2; }</div>
+<div class="line"><a name="l00030"></a><span class="lineno">   30</span>&#160; </div>
+<div class="line"><a name="l00031"></a><span class="lineno">   31</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR col_type &amp; operator[](length_type i) GLM_NOEXCEPT;</div>
+<div class="line"><a name="l00032"></a><span class="lineno">   32</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR col_type <span class="keyword">const</span>&amp; operator[](length_type i) <span class="keyword">const</span> GLM_NOEXCEPT;</div>
+<div class="line"><a name="l00033"></a><span class="lineno">   33</span>&#160; </div>
+<div class="line"><a name="l00034"></a><span class="lineno">   34</span>&#160;                <span class="comment">// -- Constructors --</span></div>
+<div class="line"><a name="l00035"></a><span class="lineno">   35</span>&#160; </div>
+<div class="line"><a name="l00036"></a><span class="lineno">   36</span>&#160;                GLM_DEFAULTED_DEFAULT_CTOR_DECL GLM_CONSTEXPR mat() GLM_DEFAULT_CTOR;</div>
+<div class="line"><a name="l00037"></a><span class="lineno">   37</span>&#160;                template&lt;qualifier P&gt;</div>
+<div class="line"><a name="l00038"></a><span class="lineno">   38</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR mat(mat&lt;2, 3, T, P&gt; const&amp; m);</div>
+<div class="line"><a name="l00039"></a><span class="lineno">   39</span>&#160; </div>
+<div class="line"><a name="l00040"></a><span class="lineno">   40</span>&#160;                GLM_FUNC_DECL explicit GLM_CONSTEXPR mat(T scalar);</div>
+<div class="line"><a name="l00041"></a><span class="lineno">   41</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR mat(</div>
+<div class="line"><a name="l00042"></a><span class="lineno">   42</span>&#160;                        T x0, T y0, T z0,</div>
+<div class="line"><a name="l00043"></a><span class="lineno">   43</span>&#160;                        T x1, T y1, T z1);</div>
+<div class="line"><a name="l00044"></a><span class="lineno">   44</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR mat(</div>
+<div class="line"><a name="l00045"></a><span class="lineno">   45</span>&#160;                        col_type const&amp; v0,</div>
+<div class="line"><a name="l00046"></a><span class="lineno">   46</span>&#160;                        col_type const&amp; v1);</div>
+<div class="line"><a name="l00047"></a><span class="lineno">   47</span>&#160; </div>
+<div class="line"><a name="l00048"></a><span class="lineno">   48</span>&#160;                <span class="comment">// -- Conversions --</span></div>
+<div class="line"><a name="l00049"></a><span class="lineno">   49</span>&#160; </div>
+<div class="line"><a name="l00050"></a><span class="lineno">   50</span>&#160;                template&lt;typename X1, typename Y1, typename Z1, typename X2, typename Y2, typename Z2&gt;</div>
+<div class="line"><a name="l00051"></a><span class="lineno">   51</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR mat(</div>
+<div class="line"><a name="l00052"></a><span class="lineno">   52</span>&#160;                        X1 x1, Y1 y1, Z1 z1,</div>
+<div class="line"><a name="l00053"></a><span class="lineno">   53</span>&#160;                        X2 x2, Y2 y2, Z2 z2);</div>
+<div class="line"><a name="l00054"></a><span class="lineno">   54</span>&#160; </div>
+<div class="line"><a name="l00055"></a><span class="lineno">   55</span>&#160;                template&lt;typename U, typename V&gt;</div>
+<div class="line"><a name="l00056"></a><span class="lineno">   56</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR mat(</div>
+<div class="line"><a name="l00057"></a><span class="lineno">   57</span>&#160;                        vec&lt;3, U, Q&gt; const&amp; v1,</div>
+<div class="line"><a name="l00058"></a><span class="lineno">   58</span>&#160;                        vec&lt;3, V, Q&gt; const&amp; v2);</div>
+<div class="line"><a name="l00059"></a><span class="lineno">   59</span>&#160; </div>
+<div class="line"><a name="l00060"></a><span class="lineno">   60</span>&#160;                <span class="comment">// -- Matrix conversions --</span></div>
+<div class="line"><a name="l00061"></a><span class="lineno">   61</span>&#160; </div>
+<div class="line"><a name="l00062"></a><span class="lineno">   62</span>&#160;                template&lt;typename U, qualifier P&gt;</div>
+<div class="line"><a name="l00063"></a><span class="lineno">   63</span>&#160;                GLM_FUNC_DECL GLM_EXPLICIT GLM_CONSTEXPR mat(mat&lt;2, 3, U, P&gt; const&amp; m);</div>
+<div class="line"><a name="l00064"></a><span class="lineno">   64</span>&#160; </div>
+<div class="line"><a name="l00065"></a><span class="lineno">   65</span>&#160;                GLM_FUNC_DECL GLM_EXPLICIT GLM_CONSTEXPR mat(mat&lt;2, 2, T, Q&gt; const&amp; x);</div>
+<div class="line"><a name="l00066"></a><span class="lineno">   66</span>&#160;                GLM_FUNC_DECL GLM_EXPLICIT GLM_CONSTEXPR mat(mat&lt;3, 3, T, Q&gt; const&amp; x);</div>
+<div class="line"><a name="l00067"></a><span class="lineno">   67</span>&#160;                GLM_FUNC_DECL GLM_EXPLICIT GLM_CONSTEXPR mat(mat&lt;4, 4, T, Q&gt; const&amp; x);</div>
+<div class="line"><a name="l00068"></a><span class="lineno">   68</span>&#160;                GLM_FUNC_DECL GLM_EXPLICIT GLM_CONSTEXPR mat(mat&lt;2, 4, T, Q&gt; const&amp; x);</div>
+<div class="line"><a name="l00069"></a><span class="lineno">   69</span>&#160;                GLM_FUNC_DECL GLM_EXPLICIT GLM_CONSTEXPR mat(mat&lt;3, 2, T, Q&gt; const&amp; x);</div>
+<div class="line"><a name="l00070"></a><span class="lineno">   70</span>&#160;                GLM_FUNC_DECL GLM_EXPLICIT GLM_CONSTEXPR mat(mat&lt;3, 4, T, Q&gt; const&amp; x);</div>
+<div class="line"><a name="l00071"></a><span class="lineno">   71</span>&#160;                GLM_FUNC_DECL GLM_EXPLICIT GLM_CONSTEXPR mat(mat&lt;4, 2, T, Q&gt; const&amp; x);</div>
+<div class="line"><a name="l00072"></a><span class="lineno">   72</span>&#160;                GLM_FUNC_DECL GLM_EXPLICIT GLM_CONSTEXPR mat(mat&lt;4, 3, T, Q&gt; const&amp; x);</div>
+<div class="line"><a name="l00073"></a><span class="lineno">   73</span>&#160; </div>
+<div class="line"><a name="l00074"></a><span class="lineno">   74</span>&#160;                <span class="comment">// -- Unary arithmetic operators --</span></div>
+<div class="line"><a name="l00075"></a><span class="lineno">   75</span>&#160; </div>
+<div class="line"><a name="l00076"></a><span class="lineno">   76</span>&#160;                template&lt;typename U&gt;</div>
+<div class="line"><a name="l00077"></a><span class="lineno">   77</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR mat&lt;2, 3, T, Q&gt; &amp; operator=(mat&lt;2, 3, U, Q&gt; const&amp; m);</div>
+<div class="line"><a name="l00078"></a><span class="lineno">   78</span>&#160;                template&lt;typename U&gt;</div>
+<div class="line"><a name="l00079"></a><span class="lineno">   79</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR mat&lt;2, 3, T, Q&gt; &amp; operator+=(U s);</div>
+<div class="line"><a name="l00080"></a><span class="lineno">   80</span>&#160;                template&lt;typename U&gt;</div>
+<div class="line"><a name="l00081"></a><span class="lineno">   81</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR mat&lt;2, 3, T, Q&gt; &amp; operator+=(mat&lt;2, 3, U, Q&gt; const&amp; m);</div>
+<div class="line"><a name="l00082"></a><span class="lineno">   82</span>&#160;                template&lt;typename U&gt;</div>
+<div class="line"><a name="l00083"></a><span class="lineno">   83</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR mat&lt;2, 3, T, Q&gt; &amp; operator-=(U s);</div>
+<div class="line"><a name="l00084"></a><span class="lineno">   84</span>&#160;                template&lt;typename U&gt;</div>
+<div class="line"><a name="l00085"></a><span class="lineno">   85</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR mat&lt;2, 3, T, Q&gt; &amp; operator-=(mat&lt;2, 3, U, Q&gt; const&amp; m);</div>
+<div class="line"><a name="l00086"></a><span class="lineno">   86</span>&#160;                template&lt;typename U&gt;</div>
+<div class="line"><a name="l00087"></a><span class="lineno">   87</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR mat&lt;2, 3, T, Q&gt; &amp; operator*=(U s);</div>
+<div class="line"><a name="l00088"></a><span class="lineno">   88</span>&#160;                template&lt;typename U&gt;</div>
+<div class="line"><a name="l00089"></a><span class="lineno">   89</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR mat&lt;2, 3, T, Q&gt; &amp; operator/=(U s);</div>
+<div class="line"><a name="l00090"></a><span class="lineno">   90</span>&#160; </div>
+<div class="line"><a name="l00091"></a><span class="lineno">   91</span>&#160;                <span class="comment">// -- Increment and decrement operators --</span></div>
+<div class="line"><a name="l00092"></a><span class="lineno">   92</span>&#160; </div>
+<div class="line"><a name="l00093"></a><span class="lineno">   93</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR mat&lt;2, 3, T, Q&gt; &amp; operator++ ();</div>
+<div class="line"><a name="l00094"></a><span class="lineno">   94</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR mat&lt;2, 3, T, Q&gt; &amp; operator-- ();</div>
+<div class="line"><a name="l00095"></a><span class="lineno">   95</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR mat&lt;2, 3, T, Q&gt; operator++(<span class="keywordtype">int</span>);</div>
+<div class="line"><a name="l00096"></a><span class="lineno">   96</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR mat&lt;2, 3, T, Q&gt; operator--(<span class="keywordtype">int</span>);</div>
+<div class="line"><a name="l00097"></a><span class="lineno">   97</span>&#160;        };</div>
+<div class="line"><a name="l00098"></a><span class="lineno">   98</span>&#160; </div>
+<div class="line"><a name="l00099"></a><span class="lineno">   99</span>&#160;        <span class="comment">// -- Unary operators --</span></div>
+<div class="line"><a name="l00100"></a><span class="lineno">  100</span>&#160; </div>
+<div class="line"><a name="l00101"></a><span class="lineno">  101</span>&#160;        template&lt;typename T, qualifier Q&gt;</div>
+<div class="line"><a name="l00102"></a><span class="lineno">  102</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR mat&lt;2, 3, T, Q&gt; operator+(mat&lt;2, 3, T, Q&gt; const&amp; m);</div>
+<div class="line"><a name="l00103"></a><span class="lineno">  103</span>&#160; </div>
+<div class="line"><a name="l00104"></a><span class="lineno">  104</span>&#160;        template&lt;typename T, qualifier Q&gt;</div>
+<div class="line"><a name="l00105"></a><span class="lineno">  105</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR mat&lt;2, 3, T, Q&gt; operator-(mat&lt;2, 3, T, Q&gt; const&amp; m);</div>
+<div class="line"><a name="l00106"></a><span class="lineno">  106</span>&#160; </div>
+<div class="line"><a name="l00107"></a><span class="lineno">  107</span>&#160;        <span class="comment">// -- Binary operators --</span></div>
+<div class="line"><a name="l00108"></a><span class="lineno">  108</span>&#160; </div>
+<div class="line"><a name="l00109"></a><span class="lineno">  109</span>&#160;        template&lt;typename T, qualifier Q&gt;</div>
+<div class="line"><a name="l00110"></a><span class="lineno">  110</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR mat&lt;2, 3, T, Q&gt; operator+(mat&lt;2, 3, T, Q&gt; const&amp; m, T scalar);</div>
+<div class="line"><a name="l00111"></a><span class="lineno">  111</span>&#160; </div>
+<div class="line"><a name="l00112"></a><span class="lineno">  112</span>&#160;        template&lt;typename T, qualifier Q&gt;</div>
+<div class="line"><a name="l00113"></a><span class="lineno">  113</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR mat&lt;2, 3, T, Q&gt; operator+(mat&lt;2, 3, T, Q&gt; const&amp; m1, mat&lt;2, 3, T, Q&gt; const&amp; m2);</div>
+<div class="line"><a name="l00114"></a><span class="lineno">  114</span>&#160; </div>
+<div class="line"><a name="l00115"></a><span class="lineno">  115</span>&#160;        template&lt;typename T, qualifier Q&gt;</div>
+<div class="line"><a name="l00116"></a><span class="lineno">  116</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR mat&lt;2, 3, T, Q&gt; operator-(mat&lt;2, 3, T, Q&gt; const&amp; m, T scalar);</div>
+<div class="line"><a name="l00117"></a><span class="lineno">  117</span>&#160; </div>
+<div class="line"><a name="l00118"></a><span class="lineno">  118</span>&#160;        template&lt;typename T, qualifier Q&gt;</div>
+<div class="line"><a name="l00119"></a><span class="lineno">  119</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR mat&lt;2, 3, T, Q&gt; operator-(mat&lt;2, 3, T, Q&gt; const&amp; m1, mat&lt;2, 3, T, Q&gt; const&amp; m2);</div>
+<div class="line"><a name="l00120"></a><span class="lineno">  120</span>&#160; </div>
+<div class="line"><a name="l00121"></a><span class="lineno">  121</span>&#160;        template&lt;typename T, qualifier Q&gt;</div>
+<div class="line"><a name="l00122"></a><span class="lineno">  122</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR mat&lt;2, 3, T, Q&gt; operator*(mat&lt;2, 3, T, Q&gt; const&amp; m, T scalar);</div>
+<div class="line"><a name="l00123"></a><span class="lineno">  123</span>&#160; </div>
+<div class="line"><a name="l00124"></a><span class="lineno">  124</span>&#160;        template&lt;typename T, qualifier Q&gt;</div>
+<div class="line"><a name="l00125"></a><span class="lineno">  125</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR mat&lt;2, 3, T, Q&gt; operator*(T scalar, mat&lt;2, 3, T, Q&gt; const&amp; m);</div>
+<div class="line"><a name="l00126"></a><span class="lineno">  126</span>&#160; </div>
+<div class="line"><a name="l00127"></a><span class="lineno">  127</span>&#160;        template&lt;typename T, qualifier Q&gt;</div>
+<div class="line"><a name="l00128"></a><span class="lineno">  128</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR typename mat&lt;2, 3, T, Q&gt;::col_type operator*(mat&lt;2, 3, T, Q&gt; const&amp; m, typename mat&lt;2, 3, T, Q&gt;::row_type const&amp; v);</div>
+<div class="line"><a name="l00129"></a><span class="lineno">  129</span>&#160; </div>
+<div class="line"><a name="l00130"></a><span class="lineno">  130</span>&#160;        template&lt;typename T, qualifier Q&gt;</div>
+<div class="line"><a name="l00131"></a><span class="lineno">  131</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR typename mat&lt;2, 3, T, Q&gt;::row_type operator*(typename mat&lt;2, 3, T, Q&gt;::col_type const&amp; v, mat&lt;2, 3, T, Q&gt; const&amp; m);</div>
+<div class="line"><a name="l00132"></a><span class="lineno">  132</span>&#160; </div>
+<div class="line"><a name="l00133"></a><span class="lineno">  133</span>&#160;        template&lt;typename T, qualifier Q&gt;</div>
+<div class="line"><a name="l00134"></a><span class="lineno">  134</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR mat&lt;2, 3, T, Q&gt; operator*(mat&lt;2, 3, T, Q&gt; const&amp; m1, mat&lt;2, 2, T, Q&gt; const&amp; m2);</div>
+<div class="line"><a name="l00135"></a><span class="lineno">  135</span>&#160; </div>
+<div class="line"><a name="l00136"></a><span class="lineno">  136</span>&#160;        template&lt;typename T, qualifier Q&gt;</div>
+<div class="line"><a name="l00137"></a><span class="lineno">  137</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR mat&lt;3, 3, T, Q&gt; operator*(mat&lt;2, 3, T, Q&gt; const&amp; m1, mat&lt;3, 2, T, Q&gt; const&amp; m2);</div>
+<div class="line"><a name="l00138"></a><span class="lineno">  138</span>&#160; </div>
+<div class="line"><a name="l00139"></a><span class="lineno">  139</span>&#160;        template&lt;typename T, qualifier Q&gt;</div>
+<div class="line"><a name="l00140"></a><span class="lineno">  140</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR mat&lt;4, 3, T, Q&gt; operator*(mat&lt;2, 3, T, Q&gt; const&amp; m1, mat&lt;4, 2, T, Q&gt; const&amp; m2);</div>
+<div class="line"><a name="l00141"></a><span class="lineno">  141</span>&#160; </div>
+<div class="line"><a name="l00142"></a><span class="lineno">  142</span>&#160;        template&lt;typename T, qualifier Q&gt;</div>
+<div class="line"><a name="l00143"></a><span class="lineno">  143</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR mat&lt;2, 3, T, Q&gt; operator/(mat&lt;2, 3, T, Q&gt; const&amp; m, T scalar);</div>
+<div class="line"><a name="l00144"></a><span class="lineno">  144</span>&#160; </div>
+<div class="line"><a name="l00145"></a><span class="lineno">  145</span>&#160;        template&lt;typename T, qualifier Q&gt;</div>
+<div class="line"><a name="l00146"></a><span class="lineno">  146</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR mat&lt;2, 3, T, Q&gt; operator/(T scalar, mat&lt;2, 3, T, Q&gt; const&amp; m);</div>
+<div class="line"><a name="l00147"></a><span class="lineno">  147</span>&#160; </div>
+<div class="line"><a name="l00148"></a><span class="lineno">  148</span>&#160;        <span class="comment">// -- Boolean operators --</span></div>
+<div class="line"><a name="l00149"></a><span class="lineno">  149</span>&#160; </div>
+<div class="line"><a name="l00150"></a><span class="lineno">  150</span>&#160;        template&lt;typename T, qualifier Q&gt;</div>
+<div class="line"><a name="l00151"></a><span class="lineno">  151</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR <span class="keywordtype">bool</span> operator==(mat&lt;2, 3, T, Q&gt; const&amp; m1, mat&lt;2, 3, T, Q&gt; const&amp; m2);</div>
+<div class="line"><a name="l00152"></a><span class="lineno">  152</span>&#160; </div>
+<div class="line"><a name="l00153"></a><span class="lineno">  153</span>&#160;        template&lt;typename T, qualifier Q&gt;</div>
+<div class="line"><a name="l00154"></a><span class="lineno">  154</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR <span class="keywordtype">bool</span> operator!=(mat&lt;2, 3, T, Q&gt; const&amp; m1, mat&lt;2, 3, T, Q&gt; const&amp; m2);</div>
+<div class="line"><a name="l00155"></a><span class="lineno">  155</span>&#160;}<span class="comment">//namespace glm</span></div>
+<div class="line"><a name="l00156"></a><span class="lineno">  156</span>&#160; </div>
+<div class="line"><a name="l00157"></a><span class="lineno">  157</span>&#160;<span class="preprocessor">#ifndef GLM_EXTERNAL_TEMPLATE</span></div>
+<div class="line"><a name="l00158"></a><span class="lineno">  158</span>&#160;<span class="preprocessor">#include &quot;type_mat2x3.inl&quot;</span></div>
+<div class="line"><a name="l00159"></a><span class="lineno">  159</span>&#160;<span class="preprocessor">#endif</span></div>
 </div><!-- fragment --></div><!-- contents -->
+<div class="ttc" id="aa00074_html"><div class="ttname"><a href="a00074.html">type_vec2.hpp</a></div><div class="ttdoc">Core features</div></div>
+<div class="ttc" id="aa00853_html_gab703732449be6c7199369b3f9a91ed38"><div class="ttname"><a href="a00853.html#gab703732449be6c7199369b3f9a91ed38">glm::length</a></div><div class="ttdeci">GLM_FUNC_DECL T length(qua&lt; T, Q &gt; const &amp;q)</div><div class="ttdoc">Returns the norm of a quaternions.</div></div>
+<div class="ttc" id="aa00077_html"><div class="ttname"><a href="a00077.html">type_vec3.hpp</a></div><div class="ttdoc">Core features</div></div>
 <!-- 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.10
+</a> 1.8.18
 </small></address>
 </body>
 </html>

+ 0 - 114
doc/api/a00045.html

@@ -1,114 +0,0 @@
-<!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.10"/>
-<title>0.9.9 API documentation: io.hpp File Reference</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="search/search.css" rel="stylesheet" type="text/css"/>
-<script type="text/javascript" src="search/searchdata.js"></script>
-<script type="text/javascript" src="search/search.js"></script>
-<script type="text/javascript">
-  $(document).ready(function() { init_search(); });
-</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 id="projectlogo"><img alt="Logo" src="logo-mini.png"/></td>
-  <td id="projectalign" style="padding-left: 0.5em;">
-   <div id="projectname">0.9.9 API documentation
-   </div>
-  </td>
- </tr>
- </tbody>
-</table>
-</div>
-<!-- end header part -->
-<!-- Generated by Doxygen 1.8.10 -->
-<script type="text/javascript">
-var searchBox = new SearchBox("searchBox", "search",false,'Search');
-</script>
-  <div id="navrow1" class="tabs">
-    <ul class="tablist">
-      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
-      <li><a href="modules.html"><span>Modules</span></a></li>
-      <li class="current"><a href="files.html"><span>Files</span></a></li>
-      <li>
-        <div id="MSearchBox" class="MSearchBoxInactive">
-        <span class="left">
-          <img id="MSearchSelect" src="search/mag_sel.png"
-               onmouseover="return searchBox.OnSearchSelectShow()"
-               onmouseout="return searchBox.OnSearchSelectHide()"
-               alt=""/>
-          <input type="text" id="MSearchField" value="Search" accesskey="S"
-               onfocus="searchBox.OnSearchFieldFocus(true)" 
-               onblur="searchBox.OnSearchFieldFocus(false)" 
-               onkeyup="searchBox.OnSearchFieldChange(event)"/>
-          </span><span class="right">
-            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
-          </span>
-        </div>
-      </li>
-    </ul>
-  </div>
-  <div id="navrow2" class="tabs2">
-    <ul class="tablist">
-      <li><a href="files.html"><span>File&#160;List</span></a></li>
-    </ul>
-  </div>
-<!-- window showing the filter options -->
-<div id="MSearchSelectWindow"
-     onmouseover="return searchBox.OnSearchSelectShow()"
-     onmouseout="return searchBox.OnSearchSelectHide()"
-     onkeydown="return searchBox.OnSearchSelectKey(event)">
-</div>
-
-<!-- iframe showing the search results (closed by default) -->
-<div id="MSearchResultsWindow">
-<iframe src="javascript:void(0)" frameborder="0" 
-        name="MSearchResults" id="MSearchResults">
-</iframe>
-</div>
-
-<div id="nav-path" class="navpath">
-  <ul>
-<li class="navelem"><a class="el" href="dir_3a581ba30d25676e4b797b1f96d53b45.html">F:</a></li><li class="navelem"><a class="el" href="dir_9e5fe034a00e89334fd5186c3e7db156.html">G-Truc</a></li><li class="navelem"><a class="el" href="dir_d9496f0844b48bc7e53b5af8c99b9ab2.html">Source</a></li><li class="navelem"><a class="el" href="dir_a8bee7be44182a33f3820393ae0b105d.html">G-Truc</a></li><li class="navelem"><a class="el" href="dir_44e5e654415abd9ca6fdeaddaff8565e.html">glm</a></li><li class="navelem"><a class="el" href="dir_cef2d71d502cb69a9252bca2297d9549.html">glm</a></li><li class="navelem"><a class="el" href="dir_f35778ec600a1b9bbc4524e62e226aa2.html">gtx</a></li>  </ul>
-</div>
-</div><!-- top -->
-<div class="header">
-  <div class="headertitle">
-<div class="title">io.hpp File Reference</div>  </div>
-</div><!--header-->
-<div class="contents">
-
-<p><a class="el" href="a00332.html">GLM_GTX_io</a>  
-<a href="#details">More...</a></p>
-
-<p><a href="a00045_source.html">Go to the source code of this file.</a></p>
-<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
-<div class="textblock"><p><a class="el" href="a00332.html">GLM_GTX_io</a> </p>
-<dl class="section author"><dt>Author</dt><dd>Jan P Springer (<a href="#" onclick="location.href='mai'+'lto:'+'reg'+'ni'+'rps'+'j@'+'gma'+'il'+'.co'+'m'; return false;">regni<span style="display: none;">.nosp@m.</span>rpsj<span style="display: none;">.nosp@m.</span>@gmai<span style="display: none;">.nosp@m.</span>l.co<span style="display: none;">.nosp@m.</span>m</a>)</dd></dl>
-<dl class="section see"><dt>See also</dt><dd><a class="el" href="a00280.html" title="Features that implement in C++ the GLSL specification as closely as possible. ">Core features</a> (dependence) </dd>
-<dd>
-<a class="el" href="a00293.html" title="Include <glm/gtc/matrix_access.hpp> to use the features of this extension. ">GLM_GTC_matrix_access</a> (dependence) </dd>
-<dd>
-<a class="el" href="a00299.html" title="Include <glm/gtc/quaternion.hpp> to use the features of this extension. ">GLM_GTC_quaternion</a> (dependence) </dd></dl>
-
-<p>Definition in file <a class="el" href="a00045_source.html">io.hpp</a>.</p>
-</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.10
-</small></address>
-</body>
-</html>

+ 0 - 132
doc/api/a00046_source.html

@@ -1,132 +0,0 @@
-<!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.10"/>
-<title>0.9.9 API documentation: log_base.hpp Source File</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="search/search.css" rel="stylesheet" type="text/css"/>
-<script type="text/javascript" src="search/searchdata.js"></script>
-<script type="text/javascript" src="search/search.js"></script>
-<script type="text/javascript">
-  $(document).ready(function() { init_search(); });
-</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 id="projectlogo"><img alt="Logo" src="logo-mini.png"/></td>
-  <td id="projectalign" style="padding-left: 0.5em;">
-   <div id="projectname">0.9.9 API documentation
-   </div>
-  </td>
- </tr>
- </tbody>
-</table>
-</div>
-<!-- end header part -->
-<!-- Generated by Doxygen 1.8.10 -->
-<script type="text/javascript">
-var searchBox = new SearchBox("searchBox", "search",false,'Search');
-</script>
-  <div id="navrow1" class="tabs">
-    <ul class="tablist">
-      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
-      <li><a href="modules.html"><span>Modules</span></a></li>
-      <li class="current"><a href="files.html"><span>Files</span></a></li>
-      <li>
-        <div id="MSearchBox" class="MSearchBoxInactive">
-        <span class="left">
-          <img id="MSearchSelect" src="search/mag_sel.png"
-               onmouseover="return searchBox.OnSearchSelectShow()"
-               onmouseout="return searchBox.OnSearchSelectHide()"
-               alt=""/>
-          <input type="text" id="MSearchField" value="Search" accesskey="S"
-               onfocus="searchBox.OnSearchFieldFocus(true)" 
-               onblur="searchBox.OnSearchFieldFocus(false)" 
-               onkeyup="searchBox.OnSearchFieldChange(event)"/>
-          </span><span class="right">
-            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
-          </span>
-        </div>
-      </li>
-    </ul>
-  </div>
-  <div id="navrow2" class="tabs2">
-    <ul class="tablist">
-      <li><a href="files.html"><span>File&#160;List</span></a></li>
-    </ul>
-  </div>
-<!-- window showing the filter options -->
-<div id="MSearchSelectWindow"
-     onmouseover="return searchBox.OnSearchSelectShow()"
-     onmouseout="return searchBox.OnSearchSelectHide()"
-     onkeydown="return searchBox.OnSearchSelectKey(event)">
-</div>
-
-<!-- iframe showing the search results (closed by default) -->
-<div id="MSearchResultsWindow">
-<iframe src="javascript:void(0)" frameborder="0" 
-        name="MSearchResults" id="MSearchResults">
-</iframe>
-</div>
-
-<div id="nav-path" class="navpath">
-  <ul>
-<li class="navelem"><a class="el" href="dir_3a581ba30d25676e4b797b1f96d53b45.html">F:</a></li><li class="navelem"><a class="el" href="dir_9e5fe034a00e89334fd5186c3e7db156.html">G-Truc</a></li><li class="navelem"><a class="el" href="dir_d9496f0844b48bc7e53b5af8c99b9ab2.html">Source</a></li><li class="navelem"><a class="el" href="dir_a8bee7be44182a33f3820393ae0b105d.html">G-Truc</a></li><li class="navelem"><a class="el" href="dir_44e5e654415abd9ca6fdeaddaff8565e.html">glm</a></li><li class="navelem"><a class="el" href="dir_cef2d71d502cb69a9252bca2297d9549.html">glm</a></li><li class="navelem"><a class="el" href="dir_f35778ec600a1b9bbc4524e62e226aa2.html">gtx</a></li>  </ul>
-</div>
-</div><!-- top -->
-<div class="header">
-  <div class="headertitle">
-<div class="title">log_base.hpp</div>  </div>
-</div><!--header-->
-<div class="contents">
-<a href="a00046.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span>&#160;</div>
-<div class="line"><a name="l00013"></a><span class="lineno">   13</span>&#160;<span class="preprocessor">#pragma once</span></div>
-<div class="line"><a name="l00014"></a><span class="lineno">   14</span>&#160;</div>
-<div class="line"><a name="l00015"></a><span class="lineno">   15</span>&#160;<span class="comment">// Dependency:</span></div>
-<div class="line"><a name="l00016"></a><span class="lineno">   16</span>&#160;<span class="preprocessor">#include &quot;../glm.hpp&quot;</span></div>
-<div class="line"><a name="l00017"></a><span class="lineno">   17</span>&#160;</div>
-<div class="line"><a name="l00018"></a><span class="lineno">   18</span>&#160;<span class="preprocessor">#if GLM_MESSAGES == GLM_ENABLE &amp;&amp; !defined(GLM_EXT_INCLUDED)</span></div>
-<div class="line"><a name="l00019"></a><span class="lineno">   19</span>&#160;<span class="preprocessor">#       ifndef GLM_ENABLE_EXPERIMENTAL</span></div>
-<div class="line"><a name="l00020"></a><span class="lineno">   20</span>&#160;<span class="preprocessor">#               pragma message(&quot;GLM: GLM_GTX_log_base is an experimental extension and may change in the future. Use #define GLM_ENABLE_EXPERIMENTAL before including it, if you really want to use it.&quot;)</span></div>
-<div class="line"><a name="l00021"></a><span class="lineno">   21</span>&#160;<span class="preprocessor">#       else</span></div>
-<div class="line"><a name="l00022"></a><span class="lineno">   22</span>&#160;<span class="preprocessor">#               pragma message(&quot;GLM: GLM_GTX_log_base extension included&quot;)</span></div>
-<div class="line"><a name="l00023"></a><span class="lineno">   23</span>&#160;<span class="preprocessor">#       endif</span></div>
-<div class="line"><a name="l00024"></a><span class="lineno">   24</span>&#160;<span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00025"></a><span class="lineno">   25</span>&#160;</div>
-<div class="line"><a name="l00026"></a><span class="lineno">   26</span>&#160;<span class="keyword">namespace </span><a class="code" href="a00236.html">glm</a></div>
-<div class="line"><a name="l00027"></a><span class="lineno">   27</span>&#160;{</div>
-<div class="line"><a name="l00030"></a><span class="lineno">   30</span>&#160;</div>
-<div class="line"><a name="l00033"></a><span class="lineno">   33</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> genType&gt;</div>
-<div class="line"><a name="l00034"></a><span class="lineno">   34</span>&#160;        GLM_FUNC_DECL genType <a class="code" href="a00333.html#ga60a7b0a401da660869946b2b77c710c9">log</a>(</div>
-<div class="line"><a name="l00035"></a><span class="lineno">   35</span>&#160;                genType <span class="keyword">const</span>&amp; x,</div>
-<div class="line"><a name="l00036"></a><span class="lineno">   36</span>&#160;                genType <span class="keyword">const</span>&amp; base);</div>
-<div class="line"><a name="l00037"></a><span class="lineno">   37</span>&#160;</div>
-<div class="line"><a name="l00040"></a><span class="lineno">   40</span>&#160;        <span class="keyword">template</span>&lt;length_t L, <span class="keyword">typename</span> T, qualifier Q&gt;</div>
-<div class="line"><a name="l00041"></a><span class="lineno">   41</span>&#160;        GLM_FUNC_DECL vec&lt;L, T, Q&gt; <a class="code" href="a00333.html#ga04ef803a24f3d4f8c67dbccb33b0fce0">sign</a>(</div>
-<div class="line"><a name="l00042"></a><span class="lineno">   42</span>&#160;                vec&lt;L, T, Q&gt; <span class="keyword">const</span>&amp; x,</div>
-<div class="line"><a name="l00043"></a><span class="lineno">   43</span>&#160;                vec&lt;L, T, Q&gt; <span class="keyword">const</span>&amp; base);</div>
-<div class="line"><a name="l00044"></a><span class="lineno">   44</span>&#160;</div>
-<div class="line"><a name="l00046"></a><span class="lineno">   46</span>&#160;}<span class="comment">//namespace glm</span></div>
-<div class="line"><a name="l00047"></a><span class="lineno">   47</span>&#160;</div>
-<div class="line"><a name="l00048"></a><span class="lineno">   48</span>&#160;<span class="preprocessor">#include &quot;log_base.inl&quot;</span></div>
-<div class="ttc" id="a00333_html_ga04ef803a24f3d4f8c67dbccb33b0fce0"><div class="ttname"><a href="a00333.html#ga04ef803a24f3d4f8c67dbccb33b0fce0">glm::sign</a></div><div class="ttdeci">GLM_FUNC_DECL vec&lt; L, T, Q &gt; sign(vec&lt; L, T, Q &gt; const &amp;x, vec&lt; L, T, Q &gt; const &amp;base)</div><div class="ttdoc">Logarithm for any base. </div></div>
-<div class="ttc" id="a00333_html_ga60a7b0a401da660869946b2b77c710c9"><div class="ttname"><a href="a00333.html#ga60a7b0a401da660869946b2b77c710c9">glm::log</a></div><div class="ttdeci">GLM_FUNC_DECL genType log(genType const &amp;x, genType const &amp;base)</div><div class="ttdoc">Logarithm for any base. </div></div>
-<div class="ttc" id="a00236_html"><div class="ttname"><a href="a00236.html">glm</a></div><div class="ttdef"><b>Definition:</b> <a href="a00015_source.html#l00020">common.hpp:20</a></div></div>
-</div><!-- fragment --></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.10
-</small></address>
-</body>
-</html>

+ 33 - 38
doc/api/a00306.html → doc/api/a00047.html

@@ -1,19 +1,17 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://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.10"/>
-<title>0.9.9 API documentation: GLM_GTC_ulp</title>
+<meta name="generator" content="Doxygen 1.8.18"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>1.0.0 API documentation: type_mat2x4.hpp File Reference</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="search/search.css" rel="stylesheet" type="text/css"/>
 <script type="text/javascript" src="search/searchdata.js"></script>
 <script type="text/javascript" src="search/search.js"></script>
-<script type="text/javascript">
-  $(document).ready(function() { init_search(); });
-</script>
 <link href="doxygen.css" rel="stylesheet" type="text/css" />
 </head>
 <body>
@@ -24,7 +22,7 @@
  <tr style="height: 56px;">
   <td id="projectlogo"><img alt="Logo" src="logo-mini.png"/></td>
   <td id="projectalign" style="padding-left: 0.5em;">
-   <div id="projectname">0.9.9 API documentation
+   <div id="projectname">1.0.0 API documentation
    </div>
   </td>
  </tr>
@@ -32,34 +30,22 @@
 </table>
 </div>
 <!-- end header part -->
-<!-- Generated by Doxygen 1.8.10 -->
+<!-- Generated by Doxygen 1.8.18 -->
 <script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
 var searchBox = new SearchBox("searchBox", "search",false,'Search');
+/* @license-end */
 </script>
-  <div id="navrow1" class="tabs">
-    <ul class="tablist">
-      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
-      <li><a href="modules.html"><span>Modules</span></a></li>
-      <li><a href="files.html"><span>Files</span></a></li>
-      <li>
-        <div id="MSearchBox" class="MSearchBoxInactive">
-        <span class="left">
-          <img id="MSearchSelect" src="search/mag_sel.png"
-               onmouseover="return searchBox.OnSearchSelectShow()"
-               onmouseout="return searchBox.OnSearchSelectHide()"
-               alt=""/>
-          <input type="text" id="MSearchField" value="Search" accesskey="S"
-               onfocus="searchBox.OnSearchFieldFocus(true)" 
-               onblur="searchBox.OnSearchFieldFocus(false)" 
-               onkeyup="searchBox.OnSearchFieldChange(event)"/>
-          </span><span class="right">
-            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
-          </span>
-        </div>
-      </li>
-    </ul>
-  </div>
-</div><!-- top -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
 <!-- window showing the filter options -->
 <div id="MSearchSelectWindow"
      onmouseover="return searchBox.OnSearchSelectShow()"
@@ -74,22 +60,31 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 </iframe>
 </div>
 
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><a class="el" href="dir_885cc87fac2d91e269af0a5a959fa5f6.html">E:</a></li><li class="navelem"><a class="el" href="dir_63ed049134a778d525e06b63afc2c979.html">Github</a></li><li class="navelem"><a class="el" href="dir_c98a9ac98258ab9f831b188d66361a70.html">g-truc</a></li><li class="navelem"><a class="el" href="dir_50f12b6ceb23d7f6adfb377a1ae8b006.html">glm</a></li><li class="navelem"><a class="el" href="dir_fca33f1b5115d46f42c670590789c0d2.html">glm</a></li><li class="navelem"><a class="el" href="dir_382f4fd018b81be8753cb53c0a41a09a.html">detail</a></li>  </ul>
+</div>
+</div><!-- top -->
 <div class="header">
   <div class="headertitle">
-<div class="title">GLM_GTC_ulp<div class="ingroups"><a class="el" href="a00286.html">Recommended extensions</a></div></div>  </div>
+<div class="title">type_mat2x4.hpp File Reference</div>  </div>
 </div><!--header-->
 <div class="contents">
 
-<p>Include &lt;<a class="el" href="a00182.html" title="GLM_GTC_ulp ">glm/gtc/ulp.hpp</a>&gt; to use the features of this extension.  
+<p><a class="el" href="a00889.html">Core features</a>  
 <a href="#details">More...</a></p>
-<p>Include &lt;<a class="el" href="a00182.html" title="GLM_GTC_ulp ">glm/gtc/ulp.hpp</a>&gt; to use the features of this extension. </p>
-<p>Allow the measurement of the accuracy of a function against a reference implementation. This extension works on floating-point data and provide results in ULP. </p>
-</div><!-- contents -->
+
+<p><a href="a00047_source.html">Go to the source code of this file.</a></p>
+<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
+<div class="textblock"><p><a class="el" href="a00889.html">Core features</a> </p>
+
+<p class="definition">Definition in file <a class="el" href="a00047_source.html">type_mat2x4.hpp</a>.</p>
+</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.10
+</a> 1.8.18
 </small></address>
 </body>
 </html>

+ 183 - 2455
doc/api/a00047_source.html

@@ -1,19 +1,17 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://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.10"/>
-<title>0.9.9 API documentation: man.doxy Source File</title>
+<meta name="generator" content="Doxygen 1.8.18"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>1.0.0 API documentation: type_mat2x4.hpp Source File</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="search/search.css" rel="stylesheet" type="text/css"/>
 <script type="text/javascript" src="search/searchdata.js"></script>
 <script type="text/javascript" src="search/search.js"></script>
-<script type="text/javascript">
-  $(document).ready(function() { init_search(); });
-</script>
 <link href="doxygen.css" rel="stylesheet" type="text/css" />
 </head>
 <body>
@@ -24,7 +22,7 @@
  <tr style="height: 56px;">
   <td id="projectlogo"><img alt="Logo" src="logo-mini.png"/></td>
   <td id="projectalign" style="padding-left: 0.5em;">
-   <div id="projectname">0.9.9 API documentation
+   <div id="projectname">1.0.0 API documentation
    </div>
   </td>
  </tr>
@@ -32,38 +30,22 @@
 </table>
 </div>
 <!-- end header part -->
-<!-- Generated by Doxygen 1.8.10 -->
+<!-- Generated by Doxygen 1.8.18 -->
 <script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
 var searchBox = new SearchBox("searchBox", "search",false,'Search');
+/* @license-end */
 </script>
-  <div id="navrow1" class="tabs">
-    <ul class="tablist">
-      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
-      <li><a href="modules.html"><span>Modules</span></a></li>
-      <li class="current"><a href="files.html"><span>Files</span></a></li>
-      <li>
-        <div id="MSearchBox" class="MSearchBoxInactive">
-        <span class="left">
-          <img id="MSearchSelect" src="search/mag_sel.png"
-               onmouseover="return searchBox.OnSearchSelectShow()"
-               onmouseout="return searchBox.OnSearchSelectHide()"
-               alt=""/>
-          <input type="text" id="MSearchField" value="Search" accesskey="S"
-               onfocus="searchBox.OnSearchFieldFocus(true)" 
-               onblur="searchBox.OnSearchFieldFocus(false)" 
-               onkeyup="searchBox.OnSearchFieldChange(event)"/>
-          </span><span class="right">
-            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
-          </span>
-        </div>
-      </li>
-    </ul>
-  </div>
-  <div id="navrow2" class="tabs2">
-    <ul class="tablist">
-      <li><a href="files.html"><span>File&#160;List</span></a></li>
-    </ul>
-  </div>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
 <!-- window showing the filter options -->
 <div id="MSearchSelectWindow"
      onmouseover="return searchBox.OnSearchSelectShow()"
@@ -80,2436 +62,182 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 
 <div id="nav-path" class="navpath">
   <ul>
-<li class="navelem"><a class="el" href="dir_3a581ba30d25676e4b797b1f96d53b45.html">F:</a></li><li class="navelem"><a class="el" href="dir_9e5fe034a00e89334fd5186c3e7db156.html">G-Truc</a></li><li class="navelem"><a class="el" href="dir_d9496f0844b48bc7e53b5af8c99b9ab2.html">Source</a></li><li class="navelem"><a class="el" href="dir_a8bee7be44182a33f3820393ae0b105d.html">G-Truc</a></li><li class="navelem"><a class="el" href="dir_44e5e654415abd9ca6fdeaddaff8565e.html">glm</a></li><li class="navelem"><a class="el" href="dir_5189610d3ba09ec39b766fb99b34cd93.html">doc</a></li>  </ul>
+<li class="navelem"><a class="el" href="dir_885cc87fac2d91e269af0a5a959fa5f6.html">E:</a></li><li class="navelem"><a class="el" href="dir_63ed049134a778d525e06b63afc2c979.html">Github</a></li><li class="navelem"><a class="el" href="dir_c98a9ac98258ab9f831b188d66361a70.html">g-truc</a></li><li class="navelem"><a class="el" href="dir_50f12b6ceb23d7f6adfb377a1ae8b006.html">glm</a></li><li class="navelem"><a class="el" href="dir_fca33f1b5115d46f42c670590789c0d2.html">glm</a></li><li class="navelem"><a class="el" href="dir_382f4fd018b81be8753cb53c0a41a09a.html">detail</a></li>  </ul>
 </div>
 </div><!-- top -->
 <div class="header">
   <div class="headertitle">
-<div class="title">man.doxy</div>  </div>
+<div class="title">type_mat2x4.hpp</div>  </div>
 </div><!--header-->
 <div class="contents">
-<div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span>&#160;<span class="preprocessor"># Doxyfile 1.8.10</span></div>
-<div class="line"><a name="l00002"></a><span class="lineno">    2</span>&#160;</div>
-<div class="line"><a name="l00003"></a><span class="lineno">    3</span>&#160;<span class="preprocessor"># This file describes the settings to be used by the documentation system</span></div>
-<div class="line"><a name="l00004"></a><span class="lineno">    4</span>&#160;<span class="preprocessor"># doxygen (www.doxygen.org) for a project.</span></div>
-<div class="line"><a name="l00005"></a><span class="lineno">    5</span>&#160;<span class="preprocessor">#</span></div>
-<div class="line"><a name="l00006"></a><span class="lineno">    6</span>&#160;<span class="preprocessor"># All text after a double hash (##) is considered a comment and is placed in</span></div>
-<div class="line"><a name="l00007"></a><span class="lineno">    7</span>&#160;<span class="preprocessor"># front of the TAG it is preceding.</span></div>
-<div class="line"><a name="l00008"></a><span class="lineno">    8</span>&#160;<span class="preprocessor">#</span></div>
-<div class="line"><a name="l00009"></a><span class="lineno">    9</span>&#160;<span class="preprocessor"># All text after a single hash (#) is considered a comment and will be ignored.</span></div>
-<div class="line"><a name="l00010"></a><span class="lineno">   10</span>&#160;<span class="preprocessor"># The format is:</span></div>
-<div class="line"><a name="l00011"></a><span class="lineno">   11</span>&#160;<span class="preprocessor"># TAG = value [value, ...]</span></div>
-<div class="line"><a name="l00012"></a><span class="lineno">   12</span>&#160;<span class="preprocessor"># For lists, items can also be appended using:</span></div>
-<div class="line"><a name="l00013"></a><span class="lineno">   13</span>&#160;<span class="preprocessor"># TAG += value [value, ...]</span></div>
-<div class="line"><a name="l00014"></a><span class="lineno">   14</span>&#160;<span class="preprocessor"># Values that contain spaces should be placed between quotes (\&quot; \&quot;).</span></div>
-<div class="line"><a name="l00015"></a><span class="lineno">   15</span>&#160;</div>
-<div class="line"><a name="l00016"></a><span class="lineno">   16</span>&#160;<span class="preprocessor">#---------------------------------------------------------------------------</span></div>
-<div class="line"><a name="l00017"></a><span class="lineno">   17</span>&#160;<span class="preprocessor"># Project related configuration options</span></div>
-<div class="line"><a name="l00018"></a><span class="lineno">   18</span>&#160;<span class="preprocessor">#---------------------------------------------------------------------------</span></div>
-<div class="line"><a name="l00019"></a><span class="lineno">   19</span>&#160;</div>
-<div class="line"><a name="l00020"></a><span class="lineno">   20</span>&#160;<span class="preprocessor"># This tag specifies the encoding used for all characters in the config file</span></div>
-<div class="line"><a name="l00021"></a><span class="lineno">   21</span>&#160;<span class="preprocessor"># that follow. The default is UTF-8 which is also the encoding used for all text</span></div>
-<div class="line"><a name="l00022"></a><span class="lineno">   22</span>&#160;<span class="preprocessor"># before the first occurrence of this tag. Doxygen uses libiconv (or the iconv</span></div>
-<div class="line"><a name="l00023"></a><span class="lineno">   23</span>&#160;<span class="preprocessor"># built into libc) for the transcoding. See http://www.gnu.org/software/libiconv</span></div>
-<div class="line"><a name="l00024"></a><span class="lineno">   24</span>&#160;<span class="preprocessor"># for the list of possible encodings.</span></div>
-<div class="line"><a name="l00025"></a><span class="lineno">   25</span>&#160;<span class="preprocessor"># The default value is: UTF-8.</span></div>
-<div class="line"><a name="l00026"></a><span class="lineno">   26</span>&#160;</div>
-<div class="line"><a name="l00027"></a><span class="lineno">   27</span>&#160;DOXYFILE_ENCODING      = UTF-8</div>
-<div class="line"><a name="l00028"></a><span class="lineno">   28</span>&#160;</div>
-<div class="line"><a name="l00029"></a><span class="lineno">   29</span>&#160;<span class="preprocessor"># The PROJECT_NAME tag is a single word (or a sequence of words surrounded by</span></div>
-<div class="line"><a name="l00030"></a><span class="lineno">   30</span>&#160;<span class="preprocessor"># double-quotes, unless you are using Doxywizard) that should identify the</span></div>
-<div class="line"><a name="l00031"></a><span class="lineno">   31</span>&#160;<span class="preprocessor"># project for which the documentation is generated. This name is used in the</span></div>
-<div class="line"><a name="l00032"></a><span class="lineno">   32</span>&#160;<span class="preprocessor"># title of most generated pages and in a few other places.</span></div>
-<div class="line"><a name="l00033"></a><span class="lineno">   33</span>&#160;<span class="preprocessor"># The default value is: My Project.</span></div>
-<div class="line"><a name="l00034"></a><span class="lineno">   34</span>&#160;</div>
-<div class="line"><a name="l00035"></a><span class="lineno">   35</span>&#160;PROJECT_NAME           = <span class="stringliteral">&quot;0.9.9 API documentation&quot;</span></div>
-<div class="line"><a name="l00036"></a><span class="lineno">   36</span>&#160;</div>
-<div class="line"><a name="l00037"></a><span class="lineno">   37</span>&#160;<span class="preprocessor"># The PROJECT_NUMBER tag can be used to enter a project or revision number. This</span></div>
-<div class="line"><a name="l00038"></a><span class="lineno">   38</span>&#160;<span class="preprocessor"># could be handy for archiving the generated documentation or if some version</span></div>
-<div class="line"><a name="l00039"></a><span class="lineno">   39</span>&#160;<span class="preprocessor"># control system is used.</span></div>
-<div class="line"><a name="l00040"></a><span class="lineno">   40</span>&#160;</div>
-<div class="line"><a name="l00041"></a><span class="lineno">   41</span>&#160;PROJECT_NUMBER         = </div>
-<div class="line"><a name="l00042"></a><span class="lineno">   42</span>&#160;</div>
-<div class="line"><a name="l00043"></a><span class="lineno">   43</span>&#160;<span class="preprocessor"># Using the PROJECT_BRIEF tag one can provide an optional one line description</span></div>
-<div class="line"><a name="l00044"></a><span class="lineno">   44</span>&#160;<span class="preprocessor"># for a project that appears at the top of each page and should give viewer a</span></div>
-<div class="line"><a name="l00045"></a><span class="lineno">   45</span>&#160;<span class="preprocessor"># quick idea about the purpose of the project. Keep the description short.</span></div>
-<div class="line"><a name="l00046"></a><span class="lineno">   46</span>&#160;</div>
-<div class="line"><a name="l00047"></a><span class="lineno">   47</span>&#160;PROJECT_BRIEF          = </div>
-<div class="line"><a name="l00048"></a><span class="lineno">   48</span>&#160;</div>
-<div class="line"><a name="l00049"></a><span class="lineno">   49</span>&#160;<span class="preprocessor"># With the PROJECT_LOGO tag one can specify a logo or an icon that is included</span></div>
-<div class="line"><a name="l00050"></a><span class="lineno">   50</span>&#160;<span class="preprocessor"># in the documentation. The maximum height of the logo should not exceed 55</span></div>
-<div class="line"><a name="l00051"></a><span class="lineno">   51</span>&#160;<span class="preprocessor"># pixels and the maximum width should not exceed 200 pixels. Doxygen will copy</span></div>
-<div class="line"><a name="l00052"></a><span class="lineno">   52</span>&#160;<span class="preprocessor"># the logo to the output directory.</span></div>
-<div class="line"><a name="l00053"></a><span class="lineno">   53</span>&#160;</div>
-<div class="line"><a name="l00054"></a><span class="lineno">   54</span>&#160;PROJECT_LOGO           = theme/logo-mini.png</div>
-<div class="line"><a name="l00055"></a><span class="lineno">   55</span>&#160;</div>
-<div class="line"><a name="l00056"></a><span class="lineno">   56</span>&#160;<span class="preprocessor"># The OUTPUT_DIRECTORY tag is used to specify the (relative or absolute) path</span></div>
-<div class="line"><a name="l00057"></a><span class="lineno">   57</span>&#160;<span class="preprocessor"># into which the generated documentation will be written. If a relative path is</span></div>
-<div class="line"><a name="l00058"></a><span class="lineno">   58</span>&#160;<span class="preprocessor"># entered, it will be relative to the location where doxygen was started. If</span></div>
-<div class="line"><a name="l00059"></a><span class="lineno">   59</span>&#160;<span class="preprocessor"># left blank the current directory will be used.</span></div>
-<div class="line"><a name="l00060"></a><span class="lineno">   60</span>&#160;</div>
-<div class="line"><a name="l00061"></a><span class="lineno">   61</span>&#160;OUTPUT_DIRECTORY       = .</div>
-<div class="line"><a name="l00062"></a><span class="lineno">   62</span>&#160;</div>
-<div class="line"><a name="l00063"></a><span class="lineno">   63</span>&#160;# If the CREATE_SUBDIRS tag is set to YES then doxygen will create 4096 sub-</div>
-<div class="line"><a name="l00064"></a><span class="lineno">   64</span>&#160;<span class="preprocessor"># directories (in 2 levels) under the output directory of each output format and</span></div>
-<div class="line"><a name="l00065"></a><span class="lineno">   65</span>&#160;<span class="preprocessor"># will distribute the generated files over these directories. Enabling this</span></div>
-<div class="line"><a name="l00066"></a><span class="lineno">   66</span>&#160;<span class="preprocessor"># option can be useful when feeding doxygen a huge amount of source files, where</span></div>
-<div class="line"><a name="l00067"></a><span class="lineno">   67</span>&#160;<span class="preprocessor"># putting all generated files in the same directory would otherwise causes</span></div>
-<div class="line"><a name="l00068"></a><span class="lineno">   68</span>&#160;<span class="preprocessor"># performance problems for the file system.</span></div>
-<div class="line"><a name="l00069"></a><span class="lineno">   69</span>&#160;<span class="preprocessor"># The default value is: NO.</span></div>
-<div class="line"><a name="l00070"></a><span class="lineno">   70</span>&#160;</div>
-<div class="line"><a name="l00071"></a><span class="lineno">   71</span>&#160;CREATE_SUBDIRS         = NO</div>
-<div class="line"><a name="l00072"></a><span class="lineno">   72</span>&#160;</div>
-<div class="line"><a name="l00073"></a><span class="lineno">   73</span>&#160;<span class="preprocessor"># If the ALLOW_UNICODE_NAMES tag is set to YES, doxygen will allow non-ASCII</span></div>
-<div class="line"><a name="l00074"></a><span class="lineno">   74</span>&#160;<span class="preprocessor"># characters to appear in the names of generated files. If set to NO, non-ASCII</span></div>
-<div class="line"><a name="l00075"></a><span class="lineno">   75</span>&#160;<span class="preprocessor"># characters will be escaped, for example _xE3_x81_x84 will be used for Unicode</span></div>
-<div class="line"><a name="l00076"></a><span class="lineno">   76</span>&#160;<span class="preprocessor"># U+3044.</span></div>
-<div class="line"><a name="l00077"></a><span class="lineno">   77</span>&#160;<span class="preprocessor"># The default value is: NO.</span></div>
-<div class="line"><a name="l00078"></a><span class="lineno">   78</span>&#160;</div>
-<div class="line"><a name="l00079"></a><span class="lineno">   79</span>&#160;ALLOW_UNICODE_NAMES    = NO</div>
-<div class="line"><a name="l00080"></a><span class="lineno">   80</span>&#160;</div>
-<div class="line"><a name="l00081"></a><span class="lineno">   81</span>&#160;<span class="preprocessor"># The OUTPUT_LANGUAGE tag is used to specify the language in which all</span></div>
-<div class="line"><a name="l00082"></a><span class="lineno">   82</span>&#160;<span class="preprocessor"># documentation generated by doxygen is written. Doxygen will use this</span></div>
-<div class="line"><a name="l00083"></a><span class="lineno">   83</span>&#160;<span class="preprocessor"># information to generate all constant output in the proper language.</span></div>
-<div class="line"><a name="l00084"></a><span class="lineno">   84</span>&#160;<span class="preprocessor"># Possible values are: Afrikaans, Arabic, Armenian, Brazilian, Catalan, Chinese,</span></div>
-<div class="line"><a name="l00085"></a><span class="lineno">   85</span>&#160;<span class="preprocessor"># Chinese-Traditional, Croatian, Czech, Danish, Dutch, English (United States),</span></div>
-<div class="line"><a name="l00086"></a><span class="lineno">   86</span>&#160;<span class="preprocessor"># Esperanto, Farsi (Persian), Finnish, French, German, Greek, Hungarian,</span></div>
-<div class="line"><a name="l00087"></a><span class="lineno">   87</span>&#160;<span class="preprocessor"># Indonesian, Italian, Japanese, Japanese-en (Japanese with English messages),</span></div>
-<div class="line"><a name="l00088"></a><span class="lineno">   88</span>&#160;<span class="preprocessor"># Korean, Korean-en (Korean with English messages), Latvian, Lithuanian,</span></div>
-<div class="line"><a name="l00089"></a><span class="lineno">   89</span>&#160;<span class="preprocessor"># Macedonian, Norwegian, Persian (Farsi), Polish, Portuguese, Romanian, Russian,</span></div>
-<div class="line"><a name="l00090"></a><span class="lineno">   90</span>&#160;<span class="preprocessor"># Serbian, Serbian-Cyrillic, Slovak, Slovene, Spanish, Swedish, Turkish,</span></div>
-<div class="line"><a name="l00091"></a><span class="lineno">   91</span>&#160;<span class="preprocessor"># Ukrainian and Vietnamese.</span></div>
-<div class="line"><a name="l00092"></a><span class="lineno">   92</span>&#160;<span class="preprocessor"># The default value is: English.</span></div>
-<div class="line"><a name="l00093"></a><span class="lineno">   93</span>&#160;</div>
-<div class="line"><a name="l00094"></a><span class="lineno">   94</span>&#160;OUTPUT_LANGUAGE        = English</div>
-<div class="line"><a name="l00095"></a><span class="lineno">   95</span>&#160;</div>
-<div class="line"><a name="l00096"></a><span class="lineno">   96</span>&#160;<span class="preprocessor"># If the BRIEF_MEMBER_DESC tag is set to YES, doxygen will include brief member</span></div>
-<div class="line"><a name="l00097"></a><span class="lineno">   97</span>&#160;<span class="preprocessor"># descriptions after the members that are listed in the file and class</span></div>
-<div class="line"><a name="l00098"></a><span class="lineno">   98</span>&#160;<span class="preprocessor"># documentation (similar to Javadoc). Set to NO to disable this.</span></div>
-<div class="line"><a name="l00099"></a><span class="lineno">   99</span>&#160;<span class="preprocessor"># The default value is: YES.</span></div>
-<div class="line"><a name="l00100"></a><span class="lineno">  100</span>&#160;</div>
-<div class="line"><a name="l00101"></a><span class="lineno">  101</span>&#160;BRIEF_MEMBER_DESC      = YES</div>
-<div class="line"><a name="l00102"></a><span class="lineno">  102</span>&#160;</div>
-<div class="line"><a name="l00103"></a><span class="lineno">  103</span>&#160;<span class="preprocessor"># If the REPEAT_BRIEF tag is set to YES, doxygen will prepend the brief</span></div>
-<div class="line"><a name="l00104"></a><span class="lineno">  104</span>&#160;<span class="preprocessor"># description of a member or function before the detailed description</span></div>
-<div class="line"><a name="l00105"></a><span class="lineno">  105</span>&#160;<span class="preprocessor">#</span></div>
-<div class="line"><a name="l00106"></a><span class="lineno">  106</span>&#160;<span class="preprocessor"># Note: If both HIDE_UNDOC_MEMBERS and BRIEF_MEMBER_DESC are set to NO, the</span></div>
-<div class="line"><a name="l00107"></a><span class="lineno">  107</span>&#160;<span class="preprocessor"># brief descriptions will be completely suppressed.</span></div>
-<div class="line"><a name="l00108"></a><span class="lineno">  108</span>&#160;<span class="preprocessor"># The default value is: YES.</span></div>
-<div class="line"><a name="l00109"></a><span class="lineno">  109</span>&#160;</div>
-<div class="line"><a name="l00110"></a><span class="lineno">  110</span>&#160;REPEAT_BRIEF           = YES</div>
-<div class="line"><a name="l00111"></a><span class="lineno">  111</span>&#160;</div>
-<div class="line"><a name="l00112"></a><span class="lineno">  112</span>&#160;<span class="preprocessor"># This tag implements a quasi-intelligent brief description abbreviator that is</span></div>
-<div class="line"><a name="l00113"></a><span class="lineno">  113</span>&#160;<span class="preprocessor"># used to form the text in various listings. Each string in this list, if found</span></div>
-<div class="line"><a name="l00114"></a><span class="lineno">  114</span>&#160;<span class="preprocessor"># as the leading text of the brief description, will be stripped from the text</span></div>
-<div class="line"><a name="l00115"></a><span class="lineno">  115</span>&#160;<span class="preprocessor"># and the result, after processing the whole list, is used as the annotated</span></div>
-<div class="line"><a name="l00116"></a><span class="lineno">  116</span>&#160;<span class="preprocessor"># text. Otherwise, the brief description is used as-is. If left blank, the</span></div>
-<div class="line"><a name="l00117"></a><span class="lineno">  117</span>&#160;<span class="preprocessor"># following values are used ($name is automatically replaced with the name of</span></div>
-<div class="line"><a name="l00118"></a><span class="lineno">  118</span>&#160;<span class="preprocessor"># the entity):The $name class, The $name widget, The $name file, is, provides,</span></div>
-<div class="line"><a name="l00119"></a><span class="lineno">  119</span>&#160;<span class="preprocessor"># specifies, contains, represents, a, an and the.</span></div>
-<div class="line"><a name="l00120"></a><span class="lineno">  120</span>&#160;</div>
-<div class="line"><a name="l00121"></a><span class="lineno">  121</span>&#160;ABBREVIATE_BRIEF       = <span class="stringliteral">&quot;The $name class       &quot;</span> \</div>
-<div class="line"><a name="l00122"></a><span class="lineno">  122</span>&#160;                         <span class="stringliteral">&quot;The $name widget       &quot;</span> \</div>
-<div class="line"><a name="l00123"></a><span class="lineno">  123</span>&#160;                         <span class="stringliteral">&quot;The $name file       &quot;</span> \</div>
-<div class="line"><a name="l00124"></a><span class="lineno">  124</span>&#160;                         is \</div>
-<div class="line"><a name="l00125"></a><span class="lineno">  125</span>&#160;                         provides \</div>
-<div class="line"><a name="l00126"></a><span class="lineno">  126</span>&#160;                         specifies \</div>
-<div class="line"><a name="l00127"></a><span class="lineno">  127</span>&#160;                         contains \</div>
-<div class="line"><a name="l00128"></a><span class="lineno">  128</span>&#160;                         represents \</div>
-<div class="line"><a name="l00129"></a><span class="lineno">  129</span>&#160;                         a \</div>
-<div class="line"><a name="l00130"></a><span class="lineno">  130</span>&#160;                         an \</div>
-<div class="line"><a name="l00131"></a><span class="lineno">  131</span>&#160;                         the</div>
-<div class="line"><a name="l00132"></a><span class="lineno">  132</span>&#160;</div>
-<div class="line"><a name="l00133"></a><span class="lineno">  133</span>&#160;<span class="preprocessor"># If the ALWAYS_DETAILED_SEC and REPEAT_BRIEF tags are both set to YES then</span></div>
-<div class="line"><a name="l00134"></a><span class="lineno">  134</span>&#160;<span class="preprocessor"># doxygen will generate a detailed section even if there is only a brief</span></div>
-<div class="line"><a name="l00135"></a><span class="lineno">  135</span>&#160;<span class="preprocessor"># description.</span></div>
-<div class="line"><a name="l00136"></a><span class="lineno">  136</span>&#160;<span class="preprocessor"># The default value is: NO.</span></div>
-<div class="line"><a name="l00137"></a><span class="lineno">  137</span>&#160;</div>
-<div class="line"><a name="l00138"></a><span class="lineno">  138</span>&#160;ALWAYS_DETAILED_SEC    = NO</div>
-<div class="line"><a name="l00139"></a><span class="lineno">  139</span>&#160;</div>
-<div class="line"><a name="l00140"></a><span class="lineno">  140</span>&#160;<span class="preprocessor"># If the INLINE_INHERITED_MEMB tag is set to YES, doxygen will show all</span></div>
-<div class="line"><a name="l00141"></a><span class="lineno">  141</span>&#160;<span class="preprocessor"># inherited members of a class in the documentation of that class as if those</span></div>
-<div class="line"><a name="l00142"></a><span class="lineno">  142</span>&#160;<span class="preprocessor"># members were ordinary class members. Constructors, destructors and assignment</span></div>
-<div class="line"><a name="l00143"></a><span class="lineno">  143</span>&#160;<span class="preprocessor"># operators of the base classes will not be shown.</span></div>
-<div class="line"><a name="l00144"></a><span class="lineno">  144</span>&#160;<span class="preprocessor"># The default value is: NO.</span></div>
-<div class="line"><a name="l00145"></a><span class="lineno">  145</span>&#160;</div>
-<div class="line"><a name="l00146"></a><span class="lineno">  146</span>&#160;INLINE_INHERITED_MEMB  = NO</div>
-<div class="line"><a name="l00147"></a><span class="lineno">  147</span>&#160;</div>
-<div class="line"><a name="l00148"></a><span class="lineno">  148</span>&#160;<span class="preprocessor"># If the FULL_PATH_NAMES tag is set to YES, doxygen will prepend the full path</span></div>
-<div class="line"><a name="l00149"></a><span class="lineno">  149</span>&#160;<span class="preprocessor"># before files name in the file list and in the header files. If set to NO the</span></div>
-<div class="line"><a name="l00150"></a><span class="lineno">  150</span>&#160;<span class="preprocessor"># shortest path that makes the file name unique will be used</span></div>
-<div class="line"><a name="l00151"></a><span class="lineno">  151</span>&#160;<span class="preprocessor"># The default value is: YES.</span></div>
-<div class="line"><a name="l00152"></a><span class="lineno">  152</span>&#160;</div>
-<div class="line"><a name="l00153"></a><span class="lineno">  153</span>&#160;FULL_PATH_NAMES        = NO</div>
-<div class="line"><a name="l00154"></a><span class="lineno">  154</span>&#160;</div>
-<div class="line"><a name="l00155"></a><span class="lineno">  155</span>&#160;<span class="preprocessor"># The STRIP_FROM_PATH tag can be used to strip a user-defined part of the path.</span></div>
-<div class="line"><a name="l00156"></a><span class="lineno">  156</span>&#160;<span class="preprocessor"># Stripping is only done if one of the specified strings matches the left-hand</span></div>
-<div class="line"><a name="l00157"></a><span class="lineno">  157</span>&#160;<span class="preprocessor"># part of the path. The tag can be used to show relative paths in the file list.</span></div>
-<div class="line"><a name="l00158"></a><span class="lineno">  158</span>&#160;<span class="preprocessor"># If left blank the directory from which doxygen is run is used as the path to</span></div>
-<div class="line"><a name="l00159"></a><span class="lineno">  159</span>&#160;<span class="preprocessor"># strip.</span></div>
-<div class="line"><a name="l00160"></a><span class="lineno">  160</span>&#160;<span class="preprocessor">#</span></div>
-<div class="line"><a name="l00161"></a><span class="lineno">  161</span>&#160;<span class="preprocessor"># Note that you can specify absolute paths here, but also relative paths, which</span></div>
-<div class="line"><a name="l00162"></a><span class="lineno">  162</span>&#160;<span class="preprocessor"># will be relative from the directory where doxygen is started.</span></div>
-<div class="line"><a name="l00163"></a><span class="lineno">  163</span>&#160;<span class="preprocessor"># This tag requires that the tag FULL_PATH_NAMES is set to YES.</span></div>
-<div class="line"><a name="l00164"></a><span class="lineno">  164</span>&#160;</div>
-<div class="line"><a name="l00165"></a><span class="lineno">  165</span>&#160;STRIP_FROM_PATH        = <span class="stringliteral">&quot;C:/Documents and Settings/Groove/       &quot;</span></div>
-<div class="line"><a name="l00166"></a><span class="lineno">  166</span>&#160;</div>
-<div class="line"><a name="l00167"></a><span class="lineno">  167</span>&#160;<span class="preprocessor"># The STRIP_FROM_INC_PATH tag can be used to strip a user-defined part of the</span></div>
-<div class="line"><a name="l00168"></a><span class="lineno">  168</span>&#160;<span class="preprocessor"># path mentioned in the documentation of a class, which tells the reader which</span></div>
-<div class="line"><a name="l00169"></a><span class="lineno">  169</span>&#160;<span class="preprocessor"># header file to include in order to use a class. If left blank only the name of</span></div>
-<div class="line"><a name="l00170"></a><span class="lineno">  170</span>&#160;<span class="preprocessor"># the header file containing the class definition is used. Otherwise one should</span></div>
-<div class="line"><a name="l00171"></a><span class="lineno">  171</span>&#160;<span class="preprocessor"># specify the list of include paths that are normally passed to the compiler</span></div>
-<div class="line"><a name="l00172"></a><span class="lineno">  172</span>&#160;<span class="preprocessor"># using the -I flag.</span></div>
-<div class="line"><a name="l00173"></a><span class="lineno">  173</span>&#160;</div>
-<div class="line"><a name="l00174"></a><span class="lineno">  174</span>&#160;STRIP_FROM_INC_PATH    = </div>
-<div class="line"><a name="l00175"></a><span class="lineno">  175</span>&#160;</div>
-<div class="line"><a name="l00176"></a><span class="lineno">  176</span>&#160;<span class="preprocessor"># If the SHORT_NAMES tag is set to YES, doxygen will generate much shorter (but</span></div>
-<div class="line"><a name="l00177"></a><span class="lineno">  177</span>&#160;<span class="preprocessor"># less readable) file names. This can be useful is your file systems doesn&#39;t</span></div>
-<div class="line"><a name="l00178"></a><span class="lineno">  178</span>&#160;<span class="preprocessor"># support long names like on DOS, Mac, or CD-ROM.</span></div>
-<div class="line"><a name="l00179"></a><span class="lineno">  179</span>&#160;<span class="preprocessor"># The default value is: NO.</span></div>
-<div class="line"><a name="l00180"></a><span class="lineno">  180</span>&#160;</div>
-<div class="line"><a name="l00181"></a><span class="lineno">  181</span>&#160;SHORT_NAMES            = YES</div>
-<div class="line"><a name="l00182"></a><span class="lineno">  182</span>&#160;</div>
-<div class="line"><a name="l00183"></a><span class="lineno">  183</span>&#160;<span class="preprocessor"># If the JAVADOC_AUTOBRIEF tag is set to YES then doxygen will interpret the</span></div>
-<div class="line"><a name="l00184"></a><span class="lineno">  184</span>&#160;<span class="preprocessor"># first line (until the first dot) of a Javadoc-style comment as the brief</span></div>
-<div class="line"><a name="l00185"></a><span class="lineno">  185</span>&#160;<span class="preprocessor"># description. If set to NO, the Javadoc-style will behave just like regular Qt-</span></div>
-<div class="line"><a name="l00186"></a><span class="lineno">  186</span>&#160;<span class="preprocessor"># style comments (thus requiring an explicit @brief command for a brief</span></div>
-<div class="line"><a name="l00187"></a><span class="lineno">  187</span>&#160;<span class="preprocessor"># description.)</span></div>
-<div class="line"><a name="l00188"></a><span class="lineno">  188</span>&#160;<span class="preprocessor"># The default value is: NO.</span></div>
-<div class="line"><a name="l00189"></a><span class="lineno">  189</span>&#160;</div>
-<div class="line"><a name="l00190"></a><span class="lineno">  190</span>&#160;JAVADOC_AUTOBRIEF      = YES</div>
-<div class="line"><a name="l00191"></a><span class="lineno">  191</span>&#160;</div>
-<div class="line"><a name="l00192"></a><span class="lineno">  192</span>&#160;<span class="preprocessor"># If the QT_AUTOBRIEF tag is set to YES then doxygen will interpret the first</span></div>
-<div class="line"><a name="l00193"></a><span class="lineno">  193</span>&#160;<span class="preprocessor"># line (until the first dot) of a Qt-style comment as the brief description. If</span></div>
-<div class="line"><a name="l00194"></a><span class="lineno">  194</span>&#160;<span class="preprocessor"># set to NO, the Qt-style will behave just like regular Qt-style comments (thus</span></div>
-<div class="line"><a name="l00195"></a><span class="lineno">  195</span>&#160;<span class="preprocessor"># requiring an explicit \brief command for a brief description.)</span></div>
-<div class="line"><a name="l00196"></a><span class="lineno">  196</span>&#160;<span class="preprocessor"># The default value is: NO.</span></div>
-<div class="line"><a name="l00197"></a><span class="lineno">  197</span>&#160;</div>
-<div class="line"><a name="l00198"></a><span class="lineno">  198</span>&#160;QT_AUTOBRIEF           = NO</div>
-<div class="line"><a name="l00199"></a><span class="lineno">  199</span>&#160;</div>
-<div class="line"><a name="l00200"></a><span class="lineno">  200</span>&#160;<span class="preprocessor"># The MULTILINE_CPP_IS_BRIEF tag can be set to YES to make doxygen treat a</span></div>
-<div class="line"><a name="l00201"></a><span class="lineno">  201</span>&#160;<span class="preprocessor"># multi-line C++ special comment block (i.e. a block of </span></div>
-<div class="line"><a name="l00202"></a><span class="lineno">  202</span>&#160;<span class="preprocessor"># a brief description. This used to be the default behavior. The new default is</span></div>
-<div class="line"><a name="l00203"></a><span class="lineno">  203</span>&#160;<span class="preprocessor"># to treat a multi-line C++ comment block as a detailed description. Set this</span></div>
-<div class="line"><a name="l00204"></a><span class="lineno">  204</span>&#160;<span class="preprocessor"># tag to YES if you prefer the old behavior instead.</span></div>
-<div class="line"><a name="l00205"></a><span class="lineno">  205</span>&#160;<span class="preprocessor">#</span></div>
-<div class="line"><a name="l00206"></a><span class="lineno">  206</span>&#160;<span class="preprocessor"># Note that setting this tag to YES also means that rational rose comments are</span></div>
-<div class="line"><a name="l00207"></a><span class="lineno">  207</span>&#160;<span class="preprocessor"># not recognized any more.</span></div>
-<div class="line"><a name="l00208"></a><span class="lineno">  208</span>&#160;<span class="preprocessor"># The default value is: NO.</span></div>
-<div class="line"><a name="l00209"></a><span class="lineno">  209</span>&#160;</div>
-<div class="line"><a name="l00210"></a><span class="lineno">  210</span>&#160;MULTILINE_CPP_IS_BRIEF = NO</div>
-<div class="line"><a name="l00211"></a><span class="lineno">  211</span>&#160;</div>
-<div class="line"><a name="l00212"></a><span class="lineno">  212</span>&#160;<span class="preprocessor"># If the INHERIT_DOCS tag is set to YES then an undocumented member inherits the</span></div>
-<div class="line"><a name="l00213"></a><span class="lineno">  213</span>&#160;<span class="preprocessor"># documentation from any documented member that it re-implements.</span></div>
-<div class="line"><a name="l00214"></a><span class="lineno">  214</span>&#160;<span class="preprocessor"># The default value is: YES.</span></div>
-<div class="line"><a name="l00215"></a><span class="lineno">  215</span>&#160;</div>
-<div class="line"><a name="l00216"></a><span class="lineno">  216</span>&#160;INHERIT_DOCS           = YES</div>
-<div class="line"><a name="l00217"></a><span class="lineno">  217</span>&#160;</div>
-<div class="line"><a name="l00218"></a><span class="lineno">  218</span>&#160;<span class="preprocessor"># If the SEPARATE_MEMBER_PAGES tag is set to YES then doxygen will produce a new</span></div>
-<div class="line"><a name="l00219"></a><span class="lineno">  219</span>&#160;<span class="preprocessor"># page for each member. If set to NO, the documentation of a member will be part</span></div>
-<div class="line"><a name="l00220"></a><span class="lineno">  220</span>&#160;<span class="preprocessor"># of the file/class/namespace that contains it.</span></div>
-<div class="line"><a name="l00221"></a><span class="lineno">  221</span>&#160;<span class="preprocessor"># The default value is: NO.</span></div>
-<div class="line"><a name="l00222"></a><span class="lineno">  222</span>&#160;</div>
-<div class="line"><a name="l00223"></a><span class="lineno">  223</span>&#160;SEPARATE_MEMBER_PAGES  = NO</div>
-<div class="line"><a name="l00224"></a><span class="lineno">  224</span>&#160;</div>
-<div class="line"><a name="l00225"></a><span class="lineno">  225</span>&#160;<span class="preprocessor"># The TAB_SIZE tag can be used to set the number of spaces in a tab. Doxygen</span></div>
-<div class="line"><a name="l00226"></a><span class="lineno">  226</span>&#160;<span class="preprocessor"># uses this value to replace tabs by spaces in code fragments.</span></div>
-<div class="line"><a name="l00227"></a><span class="lineno">  227</span>&#160;<span class="preprocessor"># Minimum value: 1, maximum value: 16, default value: 4.</span></div>
-<div class="line"><a name="l00228"></a><span class="lineno">  228</span>&#160;</div>
-<div class="line"><a name="l00229"></a><span class="lineno">  229</span>&#160;TAB_SIZE               = 8</div>
-<div class="line"><a name="l00230"></a><span class="lineno">  230</span>&#160;</div>
-<div class="line"><a name="l00231"></a><span class="lineno">  231</span>&#160;<span class="preprocessor"># This tag can be used to specify a number of aliases that act as commands in</span></div>
-<div class="line"><a name="l00232"></a><span class="lineno">  232</span>&#160;<span class="preprocessor"># the documentation. An alias has the form:</span></div>
-<div class="line"><a name="l00233"></a><span class="lineno">  233</span>&#160;<span class="preprocessor"># name=value</span></div>
-<div class="line"><a name="l00234"></a><span class="lineno">  234</span>&#160;<span class="preprocessor"># For example adding</span></div>
-<div class="line"><a name="l00235"></a><span class="lineno">  235</span>&#160;<span class="preprocessor"># &quot;sideeffect=@par Side Effects:\n&quot;</span></div>
-<div class="line"><a name="l00236"></a><span class="lineno">  236</span>&#160;<span class="preprocessor"># will allow you to put the command \sideeffect (or @sideeffect) in the</span></div>
-<div class="line"><a name="l00237"></a><span class="lineno">  237</span>&#160;<span class="preprocessor"># documentation, which will result in a user-defined paragraph with heading</span></div>
-<div class="line"><a name="l00238"></a><span class="lineno">  238</span>&#160;<span class="preprocessor"># &quot;Side Effects:&quot;. You can put \n&#39;s in the value part of an alias to insert</span></div>
-<div class="line"><a name="l00239"></a><span class="lineno">  239</span>&#160;<span class="preprocessor"># newlines.</span></div>
-<div class="line"><a name="l00240"></a><span class="lineno">  240</span>&#160;</div>
-<div class="line"><a name="l00241"></a><span class="lineno">  241</span>&#160;ALIASES                = </div>
-<div class="line"><a name="l00242"></a><span class="lineno">  242</span>&#160;</div>
-<div class="line"><a name="l00243"></a><span class="lineno">  243</span>&#160;<span class="preprocessor"># This tag can be used to specify a number of word-keyword mappings (TCL only).</span></div>
-<div class="line"><a name="l00244"></a><span class="lineno">  244</span>&#160;<span class="preprocessor"># A mapping has the form &quot;name=value&quot;. For example adding &quot;class=itcl::class&quot;</span></div>
-<div class="line"><a name="l00245"></a><span class="lineno">  245</span>&#160;<span class="preprocessor"># will allow you to use the command class in the itcl::class meaning.</span></div>
-<div class="line"><a name="l00246"></a><span class="lineno">  246</span>&#160;</div>
-<div class="line"><a name="l00247"></a><span class="lineno">  247</span>&#160;TCL_SUBST              = </div>
-<div class="line"><a name="l00248"></a><span class="lineno">  248</span>&#160;</div>
-<div class="line"><a name="l00249"></a><span class="lineno">  249</span>&#160;<span class="preprocessor"># Set the OPTIMIZE_OUTPUT_FOR_C tag to YES if your project consists of C sources</span></div>
-<div class="line"><a name="l00250"></a><span class="lineno">  250</span>&#160;<span class="preprocessor"># only. Doxygen will then generate output that is more tailored for C. For</span></div>
-<div class="line"><a name="l00251"></a><span class="lineno">  251</span>&#160;<span class="preprocessor"># instance, some of the names that are used will be different. The list of all</span></div>
-<div class="line"><a name="l00252"></a><span class="lineno">  252</span>&#160;<span class="preprocessor"># members will be omitted, etc.</span></div>
-<div class="line"><a name="l00253"></a><span class="lineno">  253</span>&#160;<span class="preprocessor"># The default value is: NO.</span></div>
-<div class="line"><a name="l00254"></a><span class="lineno">  254</span>&#160;</div>
-<div class="line"><a name="l00255"></a><span class="lineno">  255</span>&#160;OPTIMIZE_OUTPUT_FOR_C  = NO</div>
-<div class="line"><a name="l00256"></a><span class="lineno">  256</span>&#160;</div>
-<div class="line"><a name="l00257"></a><span class="lineno">  257</span>&#160;<span class="preprocessor"># Set the OPTIMIZE_OUTPUT_JAVA tag to YES if your project consists of Java or</span></div>
-<div class="line"><a name="l00258"></a><span class="lineno">  258</span>&#160;<span class="preprocessor"># Python sources only. Doxygen will then generate output that is more tailored</span></div>
-<div class="line"><a name="l00259"></a><span class="lineno">  259</span>&#160;<span class="preprocessor"># for that language. For instance, namespaces will be presented as packages,</span></div>
-<div class="line"><a name="l00260"></a><span class="lineno">  260</span>&#160;<span class="preprocessor"># qualified scopes will look different, etc.</span></div>
-<div class="line"><a name="l00261"></a><span class="lineno">  261</span>&#160;<span class="preprocessor"># The default value is: NO.</span></div>
-<div class="line"><a name="l00262"></a><span class="lineno">  262</span>&#160;</div>
-<div class="line"><a name="l00263"></a><span class="lineno">  263</span>&#160;OPTIMIZE_OUTPUT_JAVA   = NO</div>
-<div class="line"><a name="l00264"></a><span class="lineno">  264</span>&#160;</div>
-<div class="line"><a name="l00265"></a><span class="lineno">  265</span>&#160;<span class="preprocessor"># Set the OPTIMIZE_FOR_FORTRAN tag to YES if your project consists of Fortran</span></div>
-<div class="line"><a name="l00266"></a><span class="lineno">  266</span>&#160;<span class="preprocessor"># sources. Doxygen will then generate output that is tailored for Fortran.</span></div>
-<div class="line"><a name="l00267"></a><span class="lineno">  267</span>&#160;<span class="preprocessor"># The default value is: NO.</span></div>
-<div class="line"><a name="l00268"></a><span class="lineno">  268</span>&#160;</div>
-<div class="line"><a name="l00269"></a><span class="lineno">  269</span>&#160;OPTIMIZE_FOR_FORTRAN   = NO</div>
-<div class="line"><a name="l00270"></a><span class="lineno">  270</span>&#160;</div>
-<div class="line"><a name="l00271"></a><span class="lineno">  271</span>&#160;<span class="preprocessor"># Set the OPTIMIZE_OUTPUT_VHDL tag to YES if your project consists of VHDL</span></div>
-<div class="line"><a name="l00272"></a><span class="lineno">  272</span>&#160;<span class="preprocessor"># sources. Doxygen will then generate output that is tailored for VHDL.</span></div>
-<div class="line"><a name="l00273"></a><span class="lineno">  273</span>&#160;<span class="preprocessor"># The default value is: NO.</span></div>
-<div class="line"><a name="l00274"></a><span class="lineno">  274</span>&#160;</div>
-<div class="line"><a name="l00275"></a><span class="lineno">  275</span>&#160;OPTIMIZE_OUTPUT_VHDL   = NO</div>
-<div class="line"><a name="l00276"></a><span class="lineno">  276</span>&#160;</div>
-<div class="line"><a name="l00277"></a><span class="lineno">  277</span>&#160;<span class="preprocessor"># Doxygen selects the parser to use depending on the extension of the files it</span></div>
-<div class="line"><a name="l00278"></a><span class="lineno">  278</span>&#160;<span class="preprocessor"># parses. With this tag you can assign which parser to use for a given</span></div>
-<div class="line"><a name="l00279"></a><span class="lineno">  279</span>&#160;<span class="preprocessor"># extension. Doxygen has a built-in mapping, but you can override or extend it</span></div>
-<div class="line"><a name="l00280"></a><span class="lineno">  280</span>&#160;<span class="preprocessor"># using this tag. The format is ext=language, where ext is a file extension, and</span></div>
-<div class="line"><a name="l00281"></a><span class="lineno">  281</span>&#160;<span class="preprocessor"># language is one of the parsers supported by doxygen: IDL, Java, Javascript,</span></div>
-<div class="line"><a name="l00282"></a><span class="lineno">  282</span>&#160;<span class="preprocessor"># C#, C, C++, D, PHP, Objective-C, Python, Fortran (fixed format Fortran:</span></div>
-<div class="line"><a name="l00283"></a><span class="lineno">  283</span>&#160;<span class="preprocessor"># FortranFixed, free formatted Fortran: FortranFree, unknown formatted Fortran:</span></div>
-<div class="line"><a name="l00284"></a><span class="lineno">  284</span>&#160;<span class="preprocessor"># Fortran. In the later case the parser tries to guess whether the code is fixed</span></div>
-<div class="line"><a name="l00285"></a><span class="lineno">  285</span>&#160;<span class="preprocessor"># or free formatted code, this is the default for Fortran type files), VHDL. For</span></div>
-<div class="line"><a name="l00286"></a><span class="lineno">  286</span>&#160;<span class="preprocessor"># instance to make doxygen treat .inc files as Fortran files (default is PHP),</span></div>
-<div class="line"><a name="l00287"></a><span class="lineno">  287</span>&#160;<span class="preprocessor"># and .f files as C (default is Fortran), use: inc=Fortran f=C.</span></div>
-<div class="line"><a name="l00288"></a><span class="lineno">  288</span>&#160;<span class="preprocessor">#</span></div>
-<div class="line"><a name="l00289"></a><span class="lineno">  289</span>&#160;<span class="preprocessor"># Note: For files without extension you can use no_extension as a placeholder.</span></div>
-<div class="line"><a name="l00290"></a><span class="lineno">  290</span>&#160;<span class="preprocessor">#</span></div>
-<div class="line"><a name="l00291"></a><span class="lineno">  291</span>&#160;<span class="preprocessor"># Note that for custom extensions you also need to set FILE_PATTERNS otherwise</span></div>
-<div class="line"><a name="l00292"></a><span class="lineno">  292</span>&#160;<span class="preprocessor"># the files are not read by doxygen.</span></div>
-<div class="line"><a name="l00293"></a><span class="lineno">  293</span>&#160;</div>
-<div class="line"><a name="l00294"></a><span class="lineno">  294</span>&#160;EXTENSION_MAPPING      = </div>
-<div class="line"><a name="l00295"></a><span class="lineno">  295</span>&#160;</div>
-<div class="line"><a name="l00296"></a><span class="lineno">  296</span>&#160;<span class="preprocessor"># If the MARKDOWN_SUPPORT tag is enabled then doxygen pre-processes all comments</span></div>
-<div class="line"><a name="l00297"></a><span class="lineno">  297</span>&#160;<span class="preprocessor"># according to the Markdown format, which allows for more readable</span></div>
-<div class="line"><a name="l00298"></a><span class="lineno">  298</span>&#160;<span class="preprocessor"># documentation. See http://daringfireball.net/projects/markdown/ for details.</span></div>
-<div class="line"><a name="l00299"></a><span class="lineno">  299</span>&#160;<span class="preprocessor"># The output of markdown processing is further processed by doxygen, so you can</span></div>
-<div class="line"><a name="l00300"></a><span class="lineno">  300</span>&#160;<span class="preprocessor"># mix doxygen, HTML, and XML commands with Markdown formatting. Disable only in</span></div>
-<div class="line"><a name="l00301"></a><span class="lineno">  301</span>&#160;<span class="preprocessor"># case of backward compatibilities issues.</span></div>
-<div class="line"><a name="l00302"></a><span class="lineno">  302</span>&#160;<span class="preprocessor"># The default value is: YES.</span></div>
-<div class="line"><a name="l00303"></a><span class="lineno">  303</span>&#160;</div>
-<div class="line"><a name="l00304"></a><span class="lineno">  304</span>&#160;MARKDOWN_SUPPORT       = YES</div>
-<div class="line"><a name="l00305"></a><span class="lineno">  305</span>&#160;</div>
-<div class="line"><a name="l00306"></a><span class="lineno">  306</span>&#160;<span class="preprocessor"># When enabled doxygen tries to link words that correspond to documented</span></div>
-<div class="line"><a name="l00307"></a><span class="lineno">  307</span>&#160;<span class="preprocessor"># classes, or namespaces to their corresponding documentation. Such a link can</span></div>
-<div class="line"><a name="l00308"></a><span class="lineno">  308</span>&#160;<span class="preprocessor"># be prevented in individual cases by putting a % sign in front of the word or</span></div>
-<div class="line"><a name="l00309"></a><span class="lineno">  309</span>&#160;<span class="preprocessor"># globally by setting AUTOLINK_SUPPORT to NO.</span></div>
-<div class="line"><a name="l00310"></a><span class="lineno">  310</span>&#160;<span class="preprocessor"># The default value is: YES.</span></div>
-<div class="line"><a name="l00311"></a><span class="lineno">  311</span>&#160;</div>
-<div class="line"><a name="l00312"></a><span class="lineno">  312</span>&#160;AUTOLINK_SUPPORT       = YES</div>
-<div class="line"><a name="l00313"></a><span class="lineno">  313</span>&#160;</div>
-<div class="line"><a name="l00314"></a><span class="lineno">  314</span>&#160;<span class="preprocessor"># If you use STL classes (i.e. std::string, std::vector, etc.) but do not want</span></div>
-<div class="line"><a name="l00315"></a><span class="lineno">  315</span>&#160;<span class="preprocessor"># to include (a tag file for) the STL sources as input, then you should set this</span></div>
-<div class="line"><a name="l00316"></a><span class="lineno">  316</span>&#160;<span class="preprocessor"># tag to YES in order to let doxygen match functions declarations and</span></div>
-<div class="line"><a name="l00317"></a><span class="lineno">  317</span>&#160;<span class="preprocessor"># definitions whose arguments contain STL classes (e.g. func(std::string);</span></div>
-<div class="line"><a name="l00318"></a><span class="lineno">  318</span>&#160;<span class="preprocessor"># versus func(std::string) {}). This also make the inheritance and collaboration</span></div>
-<div class="line"><a name="l00319"></a><span class="lineno">  319</span>&#160;<span class="preprocessor"># diagrams that involve STL classes more complete and accurate.</span></div>
-<div class="line"><a name="l00320"></a><span class="lineno">  320</span>&#160;<span class="preprocessor"># The default value is: NO.</span></div>
-<div class="line"><a name="l00321"></a><span class="lineno">  321</span>&#160;</div>
-<div class="line"><a name="l00322"></a><span class="lineno">  322</span>&#160;BUILTIN_STL_SUPPORT    = NO</div>
-<div class="line"><a name="l00323"></a><span class="lineno">  323</span>&#160;</div>
-<div class="line"><a name="l00324"></a><span class="lineno">  324</span>&#160;<span class="preprocessor"># If you use Microsoft&#39;s C++/CLI language, you should set this option to YES to</span></div>
-<div class="line"><a name="l00325"></a><span class="lineno">  325</span>&#160;<span class="preprocessor"># enable parsing support.</span></div>
-<div class="line"><a name="l00326"></a><span class="lineno">  326</span>&#160;<span class="preprocessor"># The default value is: NO.</span></div>
-<div class="line"><a name="l00327"></a><span class="lineno">  327</span>&#160;</div>
-<div class="line"><a name="l00328"></a><span class="lineno">  328</span>&#160;CPP_CLI_SUPPORT        = NO</div>
-<div class="line"><a name="l00329"></a><span class="lineno">  329</span>&#160;</div>
-<div class="line"><a name="l00330"></a><span class="lineno">  330</span>&#160;<span class="preprocessor"># Set the SIP_SUPPORT tag to YES if your project consists of sip (see:</span></div>
-<div class="line"><a name="l00331"></a><span class="lineno">  331</span>&#160;<span class="preprocessor"># http://www.riverbankcomputing.co.uk/software/sip/intro) sources only. Doxygen</span></div>
-<div class="line"><a name="l00332"></a><span class="lineno">  332</span>&#160;<span class="preprocessor"># will parse them like normal C++ but will assume all classes use public instead</span></div>
-<div class="line"><a name="l00333"></a><span class="lineno">  333</span>&#160;<span class="preprocessor"># of private inheritance when no explicit protection keyword is present.</span></div>
-<div class="line"><a name="l00334"></a><span class="lineno">  334</span>&#160;<span class="preprocessor"># The default value is: NO.</span></div>
-<div class="line"><a name="l00335"></a><span class="lineno">  335</span>&#160;</div>
-<div class="line"><a name="l00336"></a><span class="lineno">  336</span>&#160;SIP_SUPPORT            = NO</div>
-<div class="line"><a name="l00337"></a><span class="lineno">  337</span>&#160;</div>
-<div class="line"><a name="l00338"></a><span class="lineno">  338</span>&#160;<span class="preprocessor"># For Microsoft&#39;s IDL there are propget and propput attributes to indicate</span></div>
-<div class="line"><a name="l00339"></a><span class="lineno">  339</span>&#160;<span class="preprocessor"># getter and setter methods for a property. Setting this option to YES will make</span></div>
-<div class="line"><a name="l00340"></a><span class="lineno">  340</span>&#160;<span class="preprocessor"># doxygen to replace the get and set methods by a property in the documentation.</span></div>
-<div class="line"><a name="l00341"></a><span class="lineno">  341</span>&#160;<span class="preprocessor"># This will only work if the methods are indeed getting or setting a simple</span></div>
-<div class="line"><a name="l00342"></a><span class="lineno">  342</span>&#160;<span class="preprocessor"># type. If this is not the case, or you want to show the methods anyway, you</span></div>
-<div class="line"><a name="l00343"></a><span class="lineno">  343</span>&#160;<span class="preprocessor"># should set this option to NO.</span></div>
-<div class="line"><a name="l00344"></a><span class="lineno">  344</span>&#160;<span class="preprocessor"># The default value is: YES.</span></div>
-<div class="line"><a name="l00345"></a><span class="lineno">  345</span>&#160;</div>
-<div class="line"><a name="l00346"></a><span class="lineno">  346</span>&#160;IDL_PROPERTY_SUPPORT   = YES</div>
-<div class="line"><a name="l00347"></a><span class="lineno">  347</span>&#160;</div>
-<div class="line"><a name="l00348"></a><span class="lineno">  348</span>&#160;<span class="preprocessor"># If member grouping is used in the documentation and the DISTRIBUTE_GROUP_DOC</span></div>
-<div class="line"><a name="l00349"></a><span class="lineno">  349</span>&#160;<span class="preprocessor"># tag is set to YES then doxygen will reuse the documentation of the first</span></div>
-<div class="line"><a name="l00350"></a><span class="lineno">  350</span>&#160;<span class="preprocessor"># member in the group (if any) for the other members of the group. By default</span></div>
-<div class="line"><a name="l00351"></a><span class="lineno">  351</span>&#160;<span class="preprocessor"># all members of a group must be documented explicitly.</span></div>
-<div class="line"><a name="l00352"></a><span class="lineno">  352</span>&#160;<span class="preprocessor"># The default value is: NO.</span></div>
-<div class="line"><a name="l00353"></a><span class="lineno">  353</span>&#160;</div>
-<div class="line"><a name="l00354"></a><span class="lineno">  354</span>&#160;DISTRIBUTE_GROUP_DOC   = NO</div>
-<div class="line"><a name="l00355"></a><span class="lineno">  355</span>&#160;</div>
-<div class="line"><a name="l00356"></a><span class="lineno">  356</span>&#160;<span class="preprocessor"># If one adds a struct or class to a group and this option is enabled, then also</span></div>
-<div class="line"><a name="l00357"></a><span class="lineno">  357</span>&#160;<span class="preprocessor"># any nested class or struct is added to the same group. By default this option</span></div>
-<div class="line"><a name="l00358"></a><span class="lineno">  358</span>&#160;<span class="preprocessor"># is disabled and one has to add nested compounds explicitly via \ingroup.</span></div>
-<div class="line"><a name="l00359"></a><span class="lineno">  359</span>&#160;<span class="preprocessor"># The default value is: NO.</span></div>
-<div class="line"><a name="l00360"></a><span class="lineno">  360</span>&#160;</div>
-<div class="line"><a name="l00361"></a><span class="lineno">  361</span>&#160;GROUP_NESTED_COMPOUNDS = NO</div>
-<div class="line"><a name="l00362"></a><span class="lineno">  362</span>&#160;</div>
-<div class="line"><a name="l00363"></a><span class="lineno">  363</span>&#160;<span class="preprocessor"># Set the SUBGROUPING tag to YES to allow class member groups of the same type</span></div>
-<div class="line"><a name="l00364"></a><span class="lineno">  364</span>&#160;<span class="preprocessor"># (for instance a group of public functions) to be put as a subgroup of that</span></div>
-<div class="line"><a name="l00365"></a><span class="lineno">  365</span>&#160;<span class="preprocessor"># type (e.g. under the Public Functions section). Set it to NO to prevent</span></div>
-<div class="line"><a name="l00366"></a><span class="lineno">  366</span>&#160;<span class="preprocessor"># subgrouping. Alternatively, this can be done per class using the</span></div>
-<div class="line"><a name="l00367"></a><span class="lineno">  367</span>&#160;<span class="preprocessor"># \nosubgrouping command.</span></div>
-<div class="line"><a name="l00368"></a><span class="lineno">  368</span>&#160;<span class="preprocessor"># The default value is: YES.</span></div>
-<div class="line"><a name="l00369"></a><span class="lineno">  369</span>&#160;</div>
-<div class="line"><a name="l00370"></a><span class="lineno">  370</span>&#160;SUBGROUPING            = NO</div>
-<div class="line"><a name="l00371"></a><span class="lineno">  371</span>&#160;</div>
-<div class="line"><a name="l00372"></a><span class="lineno">  372</span>&#160;<span class="preprocessor"># When the INLINE_GROUPED_CLASSES tag is set to YES, classes, structs and unions</span></div>
-<div class="line"><a name="l00373"></a><span class="lineno">  373</span>&#160;<span class="preprocessor"># are shown inside the group in which they are included (e.g. using \ingroup)</span></div>
-<div class="line"><a name="l00374"></a><span class="lineno">  374</span>&#160;<span class="preprocessor"># instead of on a separate page (for HTML and Man pages) or section (for LaTeX</span></div>
-<div class="line"><a name="l00375"></a><span class="lineno">  375</span>&#160;<span class="preprocessor"># and RTF).</span></div>
-<div class="line"><a name="l00376"></a><span class="lineno">  376</span>&#160;<span class="preprocessor">#</span></div>
-<div class="line"><a name="l00377"></a><span class="lineno">  377</span>&#160;<span class="preprocessor"># Note that this feature does not work in combination with</span></div>
-<div class="line"><a name="l00378"></a><span class="lineno">  378</span>&#160;<span class="preprocessor"># SEPARATE_MEMBER_PAGES.</span></div>
-<div class="line"><a name="l00379"></a><span class="lineno">  379</span>&#160;<span class="preprocessor"># The default value is: NO.</span></div>
-<div class="line"><a name="l00380"></a><span class="lineno">  380</span>&#160;</div>
-<div class="line"><a name="l00381"></a><span class="lineno">  381</span>&#160;INLINE_GROUPED_CLASSES = NO</div>
-<div class="line"><a name="l00382"></a><span class="lineno">  382</span>&#160;</div>
-<div class="line"><a name="l00383"></a><span class="lineno">  383</span>&#160;<span class="preprocessor"># When the INLINE_SIMPLE_STRUCTS tag is set to YES, structs, classes, and unions</span></div>
-<div class="line"><a name="l00384"></a><span class="lineno">  384</span>&#160;<span class="preprocessor"># with only public data fields or simple typedef fields will be shown inline in</span></div>
-<div class="line"><a name="l00385"></a><span class="lineno">  385</span>&#160;<span class="preprocessor"># the documentation of the scope in which they are defined (i.e. file,</span></div>
-<div class="line"><a name="l00386"></a><span class="lineno">  386</span>&#160;<span class="preprocessor"># namespace, or group documentation), provided this scope is documented. If set</span></div>
-<div class="line"><a name="l00387"></a><span class="lineno">  387</span>&#160;<span class="preprocessor"># to NO, structs, classes, and unions are shown on a separate page (for HTML and</span></div>
-<div class="line"><a name="l00388"></a><span class="lineno">  388</span>&#160;<span class="preprocessor"># Man pages) or section (for LaTeX and RTF).</span></div>
-<div class="line"><a name="l00389"></a><span class="lineno">  389</span>&#160;<span class="preprocessor"># The default value is: NO.</span></div>
-<div class="line"><a name="l00390"></a><span class="lineno">  390</span>&#160;</div>
-<div class="line"><a name="l00391"></a><span class="lineno">  391</span>&#160;INLINE_SIMPLE_STRUCTS  = NO</div>
-<div class="line"><a name="l00392"></a><span class="lineno">  392</span>&#160;</div>
-<div class="line"><a name="l00393"></a><span class="lineno">  393</span>&#160;<span class="preprocessor"># When TYPEDEF_HIDES_STRUCT tag is enabled, a typedef of a struct, union, or</span></div>
-<div class="line"><a name="l00394"></a><span class="lineno">  394</span>&#160;<span class="preprocessor"># enum is documented as struct, union, or enum with the name of the typedef. So</span></div>
-<div class="line"><a name="l00395"></a><span class="lineno">  395</span>&#160;<span class="preprocessor"># typedef struct TypeS {} TypeT, will appear in the documentation as a struct</span></div>
-<div class="line"><a name="l00396"></a><span class="lineno">  396</span>&#160;<span class="preprocessor"># with name TypeT. When disabled the typedef will appear as a member of a file,</span></div>
-<div class="line"><a name="l00397"></a><span class="lineno">  397</span>&#160;<span class="preprocessor"># namespace, or class. And the struct will be named TypeS. This can typically be</span></div>
-<div class="line"><a name="l00398"></a><span class="lineno">  398</span>&#160;<span class="preprocessor"># useful for C code in case the coding convention dictates that all compound</span></div>
-<div class="line"><a name="l00399"></a><span class="lineno">  399</span>&#160;<span class="preprocessor"># types are typedef&#39;ed and only the typedef is referenced, never the tag name.</span></div>
-<div class="line"><a name="l00400"></a><span class="lineno">  400</span>&#160;<span class="preprocessor"># The default value is: NO.</span></div>
-<div class="line"><a name="l00401"></a><span class="lineno">  401</span>&#160;</div>
-<div class="line"><a name="l00402"></a><span class="lineno">  402</span>&#160;TYPEDEF_HIDES_STRUCT   = NO</div>
-<div class="line"><a name="l00403"></a><span class="lineno">  403</span>&#160;</div>
-<div class="line"><a name="l00404"></a><span class="lineno">  404</span>&#160;<span class="preprocessor"># The size of the symbol lookup cache can be set using LOOKUP_CACHE_SIZE. This</span></div>
-<div class="line"><a name="l00405"></a><span class="lineno">  405</span>&#160;<span class="preprocessor"># cache is used to resolve symbols given their name and scope. Since this can be</span></div>
-<div class="line"><a name="l00406"></a><span class="lineno">  406</span>&#160;<span class="preprocessor"># an expensive process and often the same symbol appears multiple times in the</span></div>
-<div class="line"><a name="l00407"></a><span class="lineno">  407</span>&#160;<span class="preprocessor"># code, doxygen keeps a cache of pre-resolved symbols. If the cache is too small</span></div>
-<div class="line"><a name="l00408"></a><span class="lineno">  408</span>&#160;<span class="preprocessor"># doxygen will become slower. If the cache is too large, memory is wasted. The</span></div>
-<div class="line"><a name="l00409"></a><span class="lineno">  409</span>&#160;<span class="preprocessor"># cache size is given by this formula: 2^(16+LOOKUP_CACHE_SIZE). The valid range</span></div>
-<div class="line"><a name="l00410"></a><span class="lineno">  410</span>&#160;<span class="preprocessor"># is 0..9, the default is 0, corresponding to a cache size of 2^16=65536</span></div>
-<div class="line"><a name="l00411"></a><span class="lineno">  411</span>&#160;<span class="preprocessor"># symbols. At the end of a run doxygen will report the cache usage and suggest</span></div>
-<div class="line"><a name="l00412"></a><span class="lineno">  412</span>&#160;<span class="preprocessor"># the optimal cache size from a speed point of view.</span></div>
-<div class="line"><a name="l00413"></a><span class="lineno">  413</span>&#160;<span class="preprocessor"># Minimum value: 0, maximum value: 9, default value: 0.</span></div>
-<div class="line"><a name="l00414"></a><span class="lineno">  414</span>&#160;</div>
-<div class="line"><a name="l00415"></a><span class="lineno">  415</span>&#160;LOOKUP_CACHE_SIZE      = 0</div>
-<div class="line"><a name="l00416"></a><span class="lineno">  416</span>&#160;</div>
-<div class="line"><a name="l00417"></a><span class="lineno">  417</span>&#160;<span class="preprocessor">#---------------------------------------------------------------------------</span></div>
-<div class="line"><a name="l00418"></a><span class="lineno">  418</span>&#160;<span class="preprocessor"># Build related configuration options</span></div>
-<div class="line"><a name="l00419"></a><span class="lineno">  419</span>&#160;<span class="preprocessor">#---------------------------------------------------------------------------</span></div>
-<div class="line"><a name="l00420"></a><span class="lineno">  420</span>&#160;</div>
-<div class="line"><a name="l00421"></a><span class="lineno">  421</span>&#160;<span class="preprocessor"># If the EXTRACT_ALL tag is set to YES, doxygen will assume all entities in</span></div>
-<div class="line"><a name="l00422"></a><span class="lineno">  422</span>&#160;<span class="preprocessor"># documentation are documented, even if no documentation was available. Private</span></div>
-<div class="line"><a name="l00423"></a><span class="lineno">  423</span>&#160;<span class="preprocessor"># class members and static file members will be hidden unless the</span></div>
-<div class="line"><a name="l00424"></a><span class="lineno">  424</span>&#160;<span class="preprocessor"># EXTRACT_PRIVATE respectively EXTRACT_STATIC tags are set to YES.</span></div>
-<div class="line"><a name="l00425"></a><span class="lineno">  425</span>&#160;<span class="preprocessor"># Note: This will also disable the warnings about undocumented members that are</span></div>
-<div class="line"><a name="l00426"></a><span class="lineno">  426</span>&#160;<span class="preprocessor"># normally produced when WARNINGS is set to YES.</span></div>
-<div class="line"><a name="l00427"></a><span class="lineno">  427</span>&#160;<span class="preprocessor"># The default value is: NO.</span></div>
-<div class="line"><a name="l00428"></a><span class="lineno">  428</span>&#160;</div>
-<div class="line"><a name="l00429"></a><span class="lineno">  429</span>&#160;EXTRACT_ALL            = NO</div>
-<div class="line"><a name="l00430"></a><span class="lineno">  430</span>&#160;</div>
-<div class="line"><a name="l00431"></a><span class="lineno">  431</span>&#160;<span class="preprocessor"># If the EXTRACT_PRIVATE tag is set to YES, all private members of a class will</span></div>
-<div class="line"><a name="l00432"></a><span class="lineno">  432</span>&#160;<span class="preprocessor"># be included in the documentation.</span></div>
-<div class="line"><a name="l00433"></a><span class="lineno">  433</span>&#160;<span class="preprocessor"># The default value is: NO.</span></div>
-<div class="line"><a name="l00434"></a><span class="lineno">  434</span>&#160;</div>
-<div class="line"><a name="l00435"></a><span class="lineno">  435</span>&#160;EXTRACT_PRIVATE        = NO</div>
-<div class="line"><a name="l00436"></a><span class="lineno">  436</span>&#160;</div>
-<div class="line"><a name="l00437"></a><span class="lineno">  437</span>&#160;<span class="preprocessor"># If the EXTRACT_PACKAGE tag is set to YES, all members with package or internal</span></div>
-<div class="line"><a name="l00438"></a><span class="lineno">  438</span>&#160;<span class="preprocessor"># scope will be included in the documentation.</span></div>
-<div class="line"><a name="l00439"></a><span class="lineno">  439</span>&#160;<span class="preprocessor"># The default value is: NO.</span></div>
-<div class="line"><a name="l00440"></a><span class="lineno">  440</span>&#160;</div>
-<div class="line"><a name="l00441"></a><span class="lineno">  441</span>&#160;EXTRACT_PACKAGE        = NO</div>
-<div class="line"><a name="l00442"></a><span class="lineno">  442</span>&#160;</div>
-<div class="line"><a name="l00443"></a><span class="lineno">  443</span>&#160;<span class="preprocessor"># If the EXTRACT_STATIC tag is set to YES, all static members of a file will be</span></div>
-<div class="line"><a name="l00444"></a><span class="lineno">  444</span>&#160;<span class="preprocessor"># included in the documentation.</span></div>
-<div class="line"><a name="l00445"></a><span class="lineno">  445</span>&#160;<span class="preprocessor"># The default value is: NO.</span></div>
-<div class="line"><a name="l00446"></a><span class="lineno">  446</span>&#160;</div>
-<div class="line"><a name="l00447"></a><span class="lineno">  447</span>&#160;EXTRACT_STATIC         = YES</div>
-<div class="line"><a name="l00448"></a><span class="lineno">  448</span>&#160;</div>
-<div class="line"><a name="l00449"></a><span class="lineno">  449</span>&#160;<span class="preprocessor"># If the EXTRACT_LOCAL_CLASSES tag is set to YES, classes (and structs) defined</span></div>
-<div class="line"><a name="l00450"></a><span class="lineno">  450</span>&#160;<span class="preprocessor"># locally in source files will be included in the documentation. If set to NO,</span></div>
-<div class="line"><a name="l00451"></a><span class="lineno">  451</span>&#160;<span class="preprocessor"># only classes defined in header files are included. Does not have any effect</span></div>
-<div class="line"><a name="l00452"></a><span class="lineno">  452</span>&#160;<span class="preprocessor"># for Java sources.</span></div>
-<div class="line"><a name="l00453"></a><span class="lineno">  453</span>&#160;<span class="preprocessor"># The default value is: YES.</span></div>
-<div class="line"><a name="l00454"></a><span class="lineno">  454</span>&#160;</div>
-<div class="line"><a name="l00455"></a><span class="lineno">  455</span>&#160;EXTRACT_LOCAL_CLASSES  = NO</div>
-<div class="line"><a name="l00456"></a><span class="lineno">  456</span>&#160;</div>
-<div class="line"><a name="l00457"></a><span class="lineno">  457</span>&#160;<span class="preprocessor"># This flag is only useful for Objective-C code. If set to YES, local methods,</span></div>
-<div class="line"><a name="l00458"></a><span class="lineno">  458</span>&#160;<span class="preprocessor"># which are defined in the implementation section but not in the interface are</span></div>
-<div class="line"><a name="l00459"></a><span class="lineno">  459</span>&#160;<span class="preprocessor"># included in the documentation. If set to NO, only methods in the interface are</span></div>
-<div class="line"><a name="l00460"></a><span class="lineno">  460</span>&#160;<span class="preprocessor"># included.</span></div>
-<div class="line"><a name="l00461"></a><span class="lineno">  461</span>&#160;<span class="preprocessor"># The default value is: NO.</span></div>
-<div class="line"><a name="l00462"></a><span class="lineno">  462</span>&#160;</div>
-<div class="line"><a name="l00463"></a><span class="lineno">  463</span>&#160;EXTRACT_LOCAL_METHODS  = NO</div>
-<div class="line"><a name="l00464"></a><span class="lineno">  464</span>&#160;</div>
-<div class="line"><a name="l00465"></a><span class="lineno">  465</span>&#160;<span class="preprocessor"># If this flag is set to YES, the members of anonymous namespaces will be</span></div>
-<div class="line"><a name="l00466"></a><span class="lineno">  466</span>&#160;<span class="preprocessor"># extracted and appear in the documentation as a namespace called</span></div>
-<div class="line"><a name="l00467"></a><span class="lineno">  467</span>&#160;<span class="preprocessor"># &#39;anonymous_namespace{file}&#39;, where file will be replaced with the base name of</span></div>
-<div class="line"><a name="l00468"></a><span class="lineno">  468</span>&#160;<span class="preprocessor"># the file that contains the anonymous namespace. By default anonymous namespace</span></div>
-<div class="line"><a name="l00469"></a><span class="lineno">  469</span>&#160;<span class="preprocessor"># are hidden.</span></div>
-<div class="line"><a name="l00470"></a><span class="lineno">  470</span>&#160;<span class="preprocessor"># The default value is: NO.</span></div>
-<div class="line"><a name="l00471"></a><span class="lineno">  471</span>&#160;</div>
-<div class="line"><a name="l00472"></a><span class="lineno">  472</span>&#160;EXTRACT_ANON_NSPACES   = NO</div>
-<div class="line"><a name="l00473"></a><span class="lineno">  473</span>&#160;</div>
-<div class="line"><a name="l00474"></a><span class="lineno">  474</span>&#160;<span class="preprocessor"># If the HIDE_UNDOC_MEMBERS tag is set to YES, doxygen will hide all</span></div>
-<div class="line"><a name="l00475"></a><span class="lineno">  475</span>&#160;<span class="preprocessor"># undocumented members inside documented classes or files. If set to NO these</span></div>
-<div class="line"><a name="l00476"></a><span class="lineno">  476</span>&#160;<span class="preprocessor"># members will be included in the various overviews, but no documentation</span></div>
-<div class="line"><a name="l00477"></a><span class="lineno">  477</span>&#160;<span class="preprocessor"># section is generated. This option has no effect if EXTRACT_ALL is enabled.</span></div>
-<div class="line"><a name="l00478"></a><span class="lineno">  478</span>&#160;<span class="preprocessor"># The default value is: NO.</span></div>
-<div class="line"><a name="l00479"></a><span class="lineno">  479</span>&#160;</div>
-<div class="line"><a name="l00480"></a><span class="lineno">  480</span>&#160;HIDE_UNDOC_MEMBERS     = YES</div>
-<div class="line"><a name="l00481"></a><span class="lineno">  481</span>&#160;</div>
-<div class="line"><a name="l00482"></a><span class="lineno">  482</span>&#160;<span class="preprocessor"># If the HIDE_UNDOC_CLASSES tag is set to YES, doxygen will hide all</span></div>
-<div class="line"><a name="l00483"></a><span class="lineno">  483</span>&#160;<span class="preprocessor"># undocumented classes that are normally visible in the class hierarchy. If set</span></div>
-<div class="line"><a name="l00484"></a><span class="lineno">  484</span>&#160;<span class="preprocessor"># to NO, these classes will be included in the various overviews. This option</span></div>
-<div class="line"><a name="l00485"></a><span class="lineno">  485</span>&#160;<span class="preprocessor"># has no effect if EXTRACT_ALL is enabled.</span></div>
-<div class="line"><a name="l00486"></a><span class="lineno">  486</span>&#160;<span class="preprocessor"># The default value is: NO.</span></div>
-<div class="line"><a name="l00487"></a><span class="lineno">  487</span>&#160;</div>
-<div class="line"><a name="l00488"></a><span class="lineno">  488</span>&#160;HIDE_UNDOC_CLASSES     = YES</div>
-<div class="line"><a name="l00489"></a><span class="lineno">  489</span>&#160;</div>
-<div class="line"><a name="l00490"></a><span class="lineno">  490</span>&#160;<span class="preprocessor"># If the HIDE_FRIEND_COMPOUNDS tag is set to YES, doxygen will hide all friend</span></div>
-<div class="line"><a name="l00491"></a><span class="lineno">  491</span>&#160;<span class="preprocessor"># (class|struct|union) declarations. If set to NO, these declarations will be</span></div>
-<div class="line"><a name="l00492"></a><span class="lineno">  492</span>&#160;<span class="preprocessor"># included in the documentation.</span></div>
-<div class="line"><a name="l00493"></a><span class="lineno">  493</span>&#160;<span class="preprocessor"># The default value is: NO.</span></div>
-<div class="line"><a name="l00494"></a><span class="lineno">  494</span>&#160;</div>
-<div class="line"><a name="l00495"></a><span class="lineno">  495</span>&#160;HIDE_FRIEND_COMPOUNDS  = YES</div>
-<div class="line"><a name="l00496"></a><span class="lineno">  496</span>&#160;</div>
-<div class="line"><a name="l00497"></a><span class="lineno">  497</span>&#160;<span class="preprocessor"># If the HIDE_IN_BODY_DOCS tag is set to YES, doxygen will hide any</span></div>
-<div class="line"><a name="l00498"></a><span class="lineno">  498</span>&#160;<span class="preprocessor"># documentation blocks found inside the body of a function. If set to NO, these</span></div>
-<div class="line"><a name="l00499"></a><span class="lineno">  499</span>&#160;<span class="preprocessor"># blocks will be appended to the function&#39;s detailed documentation block.</span></div>
-<div class="line"><a name="l00500"></a><span class="lineno">  500</span>&#160;<span class="preprocessor"># The default value is: NO.</span></div>
-<div class="line"><a name="l00501"></a><span class="lineno">  501</span>&#160;</div>
-<div class="line"><a name="l00502"></a><span class="lineno">  502</span>&#160;HIDE_IN_BODY_DOCS      = YES</div>
-<div class="line"><a name="l00503"></a><span class="lineno">  503</span>&#160;</div>
-<div class="line"><a name="l00504"></a><span class="lineno">  504</span>&#160;<span class="preprocessor"># The INTERNAL_DOCS tag determines if documentation that is typed after a</span></div>
-<div class="line"><a name="l00505"></a><span class="lineno">  505</span>&#160;<span class="preprocessor"># \internal command is included. If the tag is set to NO then the documentation</span></div>
-<div class="line"><a name="l00506"></a><span class="lineno">  506</span>&#160;<span class="preprocessor"># will be excluded. Set it to YES to include the internal documentation.</span></div>
-<div class="line"><a name="l00507"></a><span class="lineno">  507</span>&#160;<span class="preprocessor"># The default value is: NO.</span></div>
-<div class="line"><a name="l00508"></a><span class="lineno">  508</span>&#160;</div>
-<div class="line"><a name="l00509"></a><span class="lineno">  509</span>&#160;INTERNAL_DOCS          = NO</div>
-<div class="line"><a name="l00510"></a><span class="lineno">  510</span>&#160;</div>
-<div class="line"><a name="l00511"></a><span class="lineno">  511</span>&#160;<span class="preprocessor"># If the CASE_SENSE_NAMES tag is set to NO then doxygen will only generate file</span></div>
-<div class="line"><a name="l00512"></a><span class="lineno">  512</span>&#160;<span class="preprocessor"># names in lower-case letters. If set to YES, upper-case letters are also</span></div>
-<div class="line"><a name="l00513"></a><span class="lineno">  513</span>&#160;<span class="preprocessor"># allowed. This is useful if you have classes or files whose names only differ</span></div>
-<div class="line"><a name="l00514"></a><span class="lineno">  514</span>&#160;<span class="preprocessor"># in case and if your file system supports case sensitive file names. Windows</span></div>
-<div class="line"><a name="l00515"></a><span class="lineno">  515</span>&#160;<span class="preprocessor"># and Mac users are advised to set this option to NO.</span></div>
-<div class="line"><a name="l00516"></a><span class="lineno">  516</span>&#160;<span class="preprocessor"># The default value is: system dependent.</span></div>
-<div class="line"><a name="l00517"></a><span class="lineno">  517</span>&#160;</div>
-<div class="line"><a name="l00518"></a><span class="lineno">  518</span>&#160;CASE_SENSE_NAMES       = YES</div>
-<div class="line"><a name="l00519"></a><span class="lineno">  519</span>&#160;</div>
-<div class="line"><a name="l00520"></a><span class="lineno">  520</span>&#160;<span class="preprocessor"># If the HIDE_SCOPE_NAMES tag is set to NO then doxygen will show members with</span></div>
-<div class="line"><a name="l00521"></a><span class="lineno">  521</span>&#160;<span class="preprocessor"># their full class and namespace scopes in the documentation. If set to YES, the</span></div>
-<div class="line"><a name="l00522"></a><span class="lineno">  522</span>&#160;<span class="preprocessor"># scope will be hidden.</span></div>
-<div class="line"><a name="l00523"></a><span class="lineno">  523</span>&#160;<span class="preprocessor"># The default value is: NO.</span></div>
-<div class="line"><a name="l00524"></a><span class="lineno">  524</span>&#160;</div>
-<div class="line"><a name="l00525"></a><span class="lineno">  525</span>&#160;HIDE_SCOPE_NAMES       = YES</div>
-<div class="line"><a name="l00526"></a><span class="lineno">  526</span>&#160;</div>
-<div class="line"><a name="l00527"></a><span class="lineno">  527</span>&#160;<span class="preprocessor"># If the HIDE_COMPOUND_REFERENCE tag is set to NO (default) then doxygen will</span></div>
-<div class="line"><a name="l00528"></a><span class="lineno">  528</span>&#160;<span class="preprocessor"># append additional text to a page&#39;s title, such as Class Reference. If set to</span></div>
-<div class="line"><a name="l00529"></a><span class="lineno">  529</span>&#160;<span class="preprocessor"># YES the compound reference will be hidden.</span></div>
-<div class="line"><a name="l00530"></a><span class="lineno">  530</span>&#160;<span class="preprocessor"># The default value is: NO.</span></div>
-<div class="line"><a name="l00531"></a><span class="lineno">  531</span>&#160;</div>
-<div class="line"><a name="l00532"></a><span class="lineno">  532</span>&#160;HIDE_COMPOUND_REFERENCE= NO</div>
-<div class="line"><a name="l00533"></a><span class="lineno">  533</span>&#160;</div>
-<div class="line"><a name="l00534"></a><span class="lineno">  534</span>&#160;<span class="preprocessor"># If the SHOW_INCLUDE_FILES tag is set to YES then doxygen will put a list of</span></div>
-<div class="line"><a name="l00535"></a><span class="lineno">  535</span>&#160;<span class="preprocessor"># the files that are included by a file in the documentation of that file.</span></div>
-<div class="line"><a name="l00536"></a><span class="lineno">  536</span>&#160;<span class="preprocessor"># The default value is: YES.</span></div>
-<div class="line"><a name="l00537"></a><span class="lineno">  537</span>&#160;</div>
-<div class="line"><a name="l00538"></a><span class="lineno">  538</span>&#160;SHOW_INCLUDE_FILES     = NO</div>
-<div class="line"><a name="l00539"></a><span class="lineno">  539</span>&#160;</div>
-<div class="line"><a name="l00540"></a><span class="lineno">  540</span>&#160;<span class="preprocessor"># If the SHOW_GROUPED_MEMB_INC tag is set to YES then Doxygen will add for each</span></div>
-<div class="line"><a name="l00541"></a><span class="lineno">  541</span>&#160;<span class="preprocessor"># grouped member an include statement to the documentation, telling the reader</span></div>
-<div class="line"><a name="l00542"></a><span class="lineno">  542</span>&#160;<span class="preprocessor"># which file to include in order to use the member.</span></div>
-<div class="line"><a name="l00543"></a><span class="lineno">  543</span>&#160;<span class="preprocessor"># The default value is: NO.</span></div>
-<div class="line"><a name="l00544"></a><span class="lineno">  544</span>&#160;</div>
-<div class="line"><a name="l00545"></a><span class="lineno">  545</span>&#160;SHOW_GROUPED_MEMB_INC  = NO</div>
-<div class="line"><a name="l00546"></a><span class="lineno">  546</span>&#160;</div>
-<div class="line"><a name="l00547"></a><span class="lineno">  547</span>&#160;<span class="preprocessor"># If the FORCE_LOCAL_INCLUDES tag is set to YES then doxygen will list include</span></div>
-<div class="line"><a name="l00548"></a><span class="lineno">  548</span>&#160;<span class="preprocessor"># files with double quotes in the documentation rather than with sharp brackets.</span></div>
-<div class="line"><a name="l00549"></a><span class="lineno">  549</span>&#160;<span class="preprocessor"># The default value is: NO.</span></div>
-<div class="line"><a name="l00550"></a><span class="lineno">  550</span>&#160;</div>
-<div class="line"><a name="l00551"></a><span class="lineno">  551</span>&#160;FORCE_LOCAL_INCLUDES   = NO</div>
-<div class="line"><a name="l00552"></a><span class="lineno">  552</span>&#160;</div>
-<div class="line"><a name="l00553"></a><span class="lineno">  553</span>&#160;<span class="preprocessor"># If the INLINE_INFO tag is set to YES then a tag [inline] is inserted in the</span></div>
-<div class="line"><a name="l00554"></a><span class="lineno">  554</span>&#160;<span class="preprocessor"># documentation for inline members.</span></div>
-<div class="line"><a name="l00555"></a><span class="lineno">  555</span>&#160;<span class="preprocessor"># The default value is: YES.</span></div>
-<div class="line"><a name="l00556"></a><span class="lineno">  556</span>&#160;</div>
-<div class="line"><a name="l00557"></a><span class="lineno">  557</span>&#160;INLINE_INFO            = NO</div>
-<div class="line"><a name="l00558"></a><span class="lineno">  558</span>&#160;</div>
-<div class="line"><a name="l00559"></a><span class="lineno">  559</span>&#160;<span class="preprocessor"># If the SORT_MEMBER_DOCS tag is set to YES then doxygen will sort the</span></div>
-<div class="line"><a name="l00560"></a><span class="lineno">  560</span>&#160;<span class="preprocessor"># (detailed) documentation of file and class members alphabetically by member</span></div>
-<div class="line"><a name="l00561"></a><span class="lineno">  561</span>&#160;<span class="preprocessor"># name. If set to NO, the members will appear in declaration order.</span></div>
-<div class="line"><a name="l00562"></a><span class="lineno">  562</span>&#160;<span class="preprocessor"># The default value is: YES.</span></div>
-<div class="line"><a name="l00563"></a><span class="lineno">  563</span>&#160;</div>
-<div class="line"><a name="l00564"></a><span class="lineno">  564</span>&#160;SORT_MEMBER_DOCS       = YES</div>
-<div class="line"><a name="l00565"></a><span class="lineno">  565</span>&#160;</div>
-<div class="line"><a name="l00566"></a><span class="lineno">  566</span>&#160;<span class="preprocessor"># If the SORT_BRIEF_DOCS tag is set to YES then doxygen will sort the brief</span></div>
-<div class="line"><a name="l00567"></a><span class="lineno">  567</span>&#160;<span class="preprocessor"># descriptions of file, namespace and class members alphabetically by member</span></div>
-<div class="line"><a name="l00568"></a><span class="lineno">  568</span>&#160;<span class="preprocessor"># name. If set to NO, the members will appear in declaration order. Note that</span></div>
-<div class="line"><a name="l00569"></a><span class="lineno">  569</span>&#160;<span class="preprocessor"># this will also influence the order of the classes in the class list.</span></div>
-<div class="line"><a name="l00570"></a><span class="lineno">  570</span>&#160;<span class="preprocessor"># The default value is: NO.</span></div>
-<div class="line"><a name="l00571"></a><span class="lineno">  571</span>&#160;</div>
-<div class="line"><a name="l00572"></a><span class="lineno">  572</span>&#160;SORT_BRIEF_DOCS        = YES</div>
-<div class="line"><a name="l00573"></a><span class="lineno">  573</span>&#160;</div>
-<div class="line"><a name="l00574"></a><span class="lineno">  574</span>&#160;<span class="preprocessor"># If the SORT_MEMBERS_CTORS_1ST tag is set to YES then doxygen will sort the</span></div>
-<div class="line"><a name="l00575"></a><span class="lineno">  575</span>&#160;<span class="preprocessor"># (brief and detailed) documentation of class members so that constructors and</span></div>
-<div class="line"><a name="l00576"></a><span class="lineno">  576</span>&#160;<span class="preprocessor"># destructors are listed first. If set to NO the constructors will appear in the</span></div>
-<div class="line"><a name="l00577"></a><span class="lineno">  577</span>&#160;<span class="preprocessor"># respective orders defined by SORT_BRIEF_DOCS and SORT_MEMBER_DOCS.</span></div>
-<div class="line"><a name="l00578"></a><span class="lineno">  578</span>&#160;<span class="preprocessor"># Note: If SORT_BRIEF_DOCS is set to NO this option is ignored for sorting brief</span></div>
-<div class="line"><a name="l00579"></a><span class="lineno">  579</span>&#160;<span class="preprocessor"># member documentation.</span></div>
-<div class="line"><a name="l00580"></a><span class="lineno">  580</span>&#160;<span class="preprocessor"># Note: If SORT_MEMBER_DOCS is set to NO this option is ignored for sorting</span></div>
-<div class="line"><a name="l00581"></a><span class="lineno">  581</span>&#160;<span class="preprocessor"># detailed member documentation.</span></div>
-<div class="line"><a name="l00582"></a><span class="lineno">  582</span>&#160;<span class="preprocessor"># The default value is: NO.</span></div>
-<div class="line"><a name="l00583"></a><span class="lineno">  583</span>&#160;</div>
-<div class="line"><a name="l00584"></a><span class="lineno">  584</span>&#160;SORT_MEMBERS_CTORS_1ST = NO</div>
-<div class="line"><a name="l00585"></a><span class="lineno">  585</span>&#160;</div>
-<div class="line"><a name="l00586"></a><span class="lineno">  586</span>&#160;<span class="preprocessor"># If the SORT_GROUP_NAMES tag is set to YES then doxygen will sort the hierarchy</span></div>
-<div class="line"><a name="l00587"></a><span class="lineno">  587</span>&#160;<span class="preprocessor"># of group names into alphabetical order. If set to NO the group names will</span></div>
-<div class="line"><a name="l00588"></a><span class="lineno">  588</span>&#160;<span class="preprocessor"># appear in their defined order.</span></div>
-<div class="line"><a name="l00589"></a><span class="lineno">  589</span>&#160;<span class="preprocessor"># The default value is: NO.</span></div>
-<div class="line"><a name="l00590"></a><span class="lineno">  590</span>&#160;</div>
-<div class="line"><a name="l00591"></a><span class="lineno">  591</span>&#160;SORT_GROUP_NAMES       = NO</div>
-<div class="line"><a name="l00592"></a><span class="lineno">  592</span>&#160;</div>
-<div class="line"><a name="l00593"></a><span class="lineno">  593</span>&#160;<span class="preprocessor"># If the SORT_BY_SCOPE_NAME tag is set to YES, the class list will be sorted by</span></div>
-<div class="line"><a name="l00594"></a><span class="lineno">  594</span>&#160;<span class="preprocessor"># fully-qualified names, including namespaces. If set to NO, the class list will</span></div>
-<div class="line"><a name="l00595"></a><span class="lineno">  595</span>&#160;<span class="preprocessor"># be sorted only by class name, not including the namespace part.</span></div>
-<div class="line"><a name="l00596"></a><span class="lineno">  596</span>&#160;<span class="preprocessor"># Note: This option is not very useful if HIDE_SCOPE_NAMES is set to YES.</span></div>
-<div class="line"><a name="l00597"></a><span class="lineno">  597</span>&#160;<span class="preprocessor"># Note: This option applies only to the class list, not to the alphabetical</span></div>
-<div class="line"><a name="l00598"></a><span class="lineno">  598</span>&#160;<span class="preprocessor"># list.</span></div>
-<div class="line"><a name="l00599"></a><span class="lineno">  599</span>&#160;<span class="preprocessor"># The default value is: NO.</span></div>
-<div class="line"><a name="l00600"></a><span class="lineno">  600</span>&#160;</div>
-<div class="line"><a name="l00601"></a><span class="lineno">  601</span>&#160;SORT_BY_SCOPE_NAME     = YES</div>
-<div class="line"><a name="l00602"></a><span class="lineno">  602</span>&#160;</div>
-<div class="line"><a name="l00603"></a><span class="lineno">  603</span>&#160;<span class="preprocessor"># If the STRICT_PROTO_MATCHING option is enabled and doxygen fails to do proper</span></div>
-<div class="line"><a name="l00604"></a><span class="lineno">  604</span>&#160;<span class="preprocessor"># type resolution of all parameters of a function it will reject a match between</span></div>
-<div class="line"><a name="l00605"></a><span class="lineno">  605</span>&#160;<span class="preprocessor"># the prototype and the implementation of a member function even if there is</span></div>
-<div class="line"><a name="l00606"></a><span class="lineno">  606</span>&#160;<span class="preprocessor"># only one candidate or it is obvious which candidate to choose by doing a</span></div>
-<div class="line"><a name="l00607"></a><span class="lineno">  607</span>&#160;<span class="preprocessor"># simple string match. By disabling STRICT_PROTO_MATCHING doxygen will still</span></div>
-<div class="line"><a name="l00608"></a><span class="lineno">  608</span>&#160;<span class="preprocessor"># accept a match between prototype and implementation in such cases.</span></div>
-<div class="line"><a name="l00609"></a><span class="lineno">  609</span>&#160;<span class="preprocessor"># The default value is: NO.</span></div>
-<div class="line"><a name="l00610"></a><span class="lineno">  610</span>&#160;</div>
-<div class="line"><a name="l00611"></a><span class="lineno">  611</span>&#160;STRICT_PROTO_MATCHING  = NO</div>
-<div class="line"><a name="l00612"></a><span class="lineno">  612</span>&#160;</div>
-<div class="line"><a name="l00613"></a><span class="lineno">  613</span>&#160;<span class="preprocessor"># The GENERATE_TODOLIST tag can be used to enable (YES) or disable (NO) the todo</span></div>
-<div class="line"><a name="l00614"></a><span class="lineno">  614</span>&#160;<span class="preprocessor"># list. This list is created by putting \todo commands in the documentation.</span></div>
-<div class="line"><a name="l00615"></a><span class="lineno">  615</span>&#160;<span class="preprocessor"># The default value is: YES.</span></div>
-<div class="line"><a name="l00616"></a><span class="lineno">  616</span>&#160;</div>
-<div class="line"><a name="l00617"></a><span class="lineno">  617</span>&#160;GENERATE_TODOLIST      = YES</div>
-<div class="line"><a name="l00618"></a><span class="lineno">  618</span>&#160;</div>
-<div class="line"><a name="l00619"></a><span class="lineno">  619</span>&#160;<span class="preprocessor"># The GENERATE_TESTLIST tag can be used to enable (YES) or disable (NO) the test</span></div>
-<div class="line"><a name="l00620"></a><span class="lineno">  620</span>&#160;<span class="preprocessor"># list. This list is created by putting \test commands in the documentation.</span></div>
-<div class="line"><a name="l00621"></a><span class="lineno">  621</span>&#160;<span class="preprocessor"># The default value is: YES.</span></div>
-<div class="line"><a name="l00622"></a><span class="lineno">  622</span>&#160;</div>
-<div class="line"><a name="l00623"></a><span class="lineno">  623</span>&#160;GENERATE_TESTLIST      = YES</div>
-<div class="line"><a name="l00624"></a><span class="lineno">  624</span>&#160;</div>
-<div class="line"><a name="l00625"></a><span class="lineno">  625</span>&#160;<span class="preprocessor"># The GENERATE_BUGLIST tag can be used to enable (YES) or disable (NO) the bug</span></div>
-<div class="line"><a name="l00626"></a><span class="lineno">  626</span>&#160;<span class="preprocessor"># list. This list is created by putting \bug commands in the documentation.</span></div>
-<div class="line"><a name="l00627"></a><span class="lineno">  627</span>&#160;<span class="preprocessor"># The default value is: YES.</span></div>
-<div class="line"><a name="l00628"></a><span class="lineno">  628</span>&#160;</div>
-<div class="line"><a name="l00629"></a><span class="lineno">  629</span>&#160;GENERATE_BUGLIST       = YES</div>
-<div class="line"><a name="l00630"></a><span class="lineno">  630</span>&#160;</div>
-<div class="line"><a name="l00631"></a><span class="lineno">  631</span>&#160;<span class="preprocessor"># The GENERATE_DEPRECATEDLIST tag can be used to enable (YES) or disable (NO)</span></div>
-<div class="line"><a name="l00632"></a><span class="lineno">  632</span>&#160;<span class="preprocessor"># the deprecated list. This list is created by putting \deprecated commands in</span></div>
-<div class="line"><a name="l00633"></a><span class="lineno">  633</span>&#160;<span class="preprocessor"># the documentation.</span></div>
-<div class="line"><a name="l00634"></a><span class="lineno">  634</span>&#160;<span class="preprocessor"># The default value is: YES.</span></div>
-<div class="line"><a name="l00635"></a><span class="lineno">  635</span>&#160;</div>
-<div class="line"><a name="l00636"></a><span class="lineno">  636</span>&#160;GENERATE_DEPRECATEDLIST= YES</div>
-<div class="line"><a name="l00637"></a><span class="lineno">  637</span>&#160;</div>
-<div class="line"><a name="l00638"></a><span class="lineno">  638</span>&#160;<span class="preprocessor"># The ENABLED_SECTIONS tag can be used to enable conditional documentation</span></div>
-<div class="line"><a name="l00639"></a><span class="lineno">  639</span>&#160;<span class="preprocessor"># sections, marked by \if &lt;section_label&gt; ... \endif and \cond &lt;section_label&gt;</span></div>
-<div class="line"><a name="l00640"></a><span class="lineno">  640</span>&#160;<span class="preprocessor"># ... \endcond blocks.</span></div>
-<div class="line"><a name="l00641"></a><span class="lineno">  641</span>&#160;</div>
-<div class="line"><a name="l00642"></a><span class="lineno">  642</span>&#160;ENABLED_SECTIONS       = </div>
-<div class="line"><a name="l00643"></a><span class="lineno">  643</span>&#160;</div>
-<div class="line"><a name="l00644"></a><span class="lineno">  644</span>&#160;<span class="preprocessor"># The MAX_INITIALIZER_LINES tag determines the maximum number of lines that the</span></div>
-<div class="line"><a name="l00645"></a><span class="lineno">  645</span>&#160;<span class="preprocessor"># initial value of a variable or macro / define can have for it to appear in the</span></div>
-<div class="line"><a name="l00646"></a><span class="lineno">  646</span>&#160;<span class="preprocessor"># documentation. If the initializer consists of more lines than specified here</span></div>
-<div class="line"><a name="l00647"></a><span class="lineno">  647</span>&#160;<span class="preprocessor"># it will be hidden. Use a value of 0 to hide initializers completely. The</span></div>
-<div class="line"><a name="l00648"></a><span class="lineno">  648</span>&#160;<span class="preprocessor"># appearance of the value of individual variables and macros / defines can be</span></div>
-<div class="line"><a name="l00649"></a><span class="lineno">  649</span>&#160;<span class="preprocessor"># controlled using \showinitializer or \hideinitializer command in the</span></div>
-<div class="line"><a name="l00650"></a><span class="lineno">  650</span>&#160;<span class="preprocessor"># documentation regardless of this setting.</span></div>
-<div class="line"><a name="l00651"></a><span class="lineno">  651</span>&#160;<span class="preprocessor"># Minimum value: 0, maximum value: 10000, default value: 30.</span></div>
-<div class="line"><a name="l00652"></a><span class="lineno">  652</span>&#160;</div>
-<div class="line"><a name="l00653"></a><span class="lineno">  653</span>&#160;MAX_INITIALIZER_LINES  = 30</div>
-<div class="line"><a name="l00654"></a><span class="lineno">  654</span>&#160;</div>
-<div class="line"><a name="l00655"></a><span class="lineno">  655</span>&#160;<span class="preprocessor"># Set the SHOW_USED_FILES tag to NO to disable the list of files generated at</span></div>
-<div class="line"><a name="l00656"></a><span class="lineno">  656</span>&#160;<span class="preprocessor"># the bottom of the documentation of classes and structs. If set to YES, the</span></div>
-<div class="line"><a name="l00657"></a><span class="lineno">  657</span>&#160;<span class="preprocessor"># list will mention the files that were used to generate the documentation.</span></div>
-<div class="line"><a name="l00658"></a><span class="lineno">  658</span>&#160;<span class="preprocessor"># The default value is: YES.</span></div>
-<div class="line"><a name="l00659"></a><span class="lineno">  659</span>&#160;</div>
-<div class="line"><a name="l00660"></a><span class="lineno">  660</span>&#160;SHOW_USED_FILES        = NO</div>
-<div class="line"><a name="l00661"></a><span class="lineno">  661</span>&#160;</div>
-<div class="line"><a name="l00662"></a><span class="lineno">  662</span>&#160;<span class="preprocessor"># Set the SHOW_FILES tag to NO to disable the generation of the Files page. This</span></div>
-<div class="line"><a name="l00663"></a><span class="lineno">  663</span>&#160;<span class="preprocessor"># will remove the Files entry from the Quick Index and from the Folder Tree View</span></div>
-<div class="line"><a name="l00664"></a><span class="lineno">  664</span>&#160;<span class="preprocessor"># (if specified).</span></div>
-<div class="line"><a name="l00665"></a><span class="lineno">  665</span>&#160;<span class="preprocessor"># The default value is: YES.</span></div>
-<div class="line"><a name="l00666"></a><span class="lineno">  666</span>&#160;</div>
-<div class="line"><a name="l00667"></a><span class="lineno">  667</span>&#160;SHOW_FILES             = YES</div>
-<div class="line"><a name="l00668"></a><span class="lineno">  668</span>&#160;</div>
-<div class="line"><a name="l00669"></a><span class="lineno">  669</span>&#160;<span class="preprocessor"># Set the SHOW_NAMESPACES tag to NO to disable the generation of the Namespaces</span></div>
-<div class="line"><a name="l00670"></a><span class="lineno">  670</span>&#160;<span class="preprocessor"># page. This will remove the Namespaces entry from the Quick Index and from the</span></div>
-<div class="line"><a name="l00671"></a><span class="lineno">  671</span>&#160;<span class="preprocessor"># Folder Tree View (if specified).</span></div>
-<div class="line"><a name="l00672"></a><span class="lineno">  672</span>&#160;<span class="preprocessor"># The default value is: YES.</span></div>
-<div class="line"><a name="l00673"></a><span class="lineno">  673</span>&#160;</div>
-<div class="line"><a name="l00674"></a><span class="lineno">  674</span>&#160;SHOW_NAMESPACES        = YES</div>
-<div class="line"><a name="l00675"></a><span class="lineno">  675</span>&#160;</div>
-<div class="line"><a name="l00676"></a><span class="lineno">  676</span>&#160;<span class="preprocessor"># The FILE_VERSION_FILTER tag can be used to specify a program or script that</span></div>
-<div class="line"><a name="l00677"></a><span class="lineno">  677</span>&#160;<span class="preprocessor"># doxygen should invoke to get the current version for each file (typically from</span></div>
-<div class="line"><a name="l00678"></a><span class="lineno">  678</span>&#160;<span class="preprocessor"># the version control system). Doxygen will invoke the program by executing (via</span></div>
-<div class="line"><a name="l00679"></a><span class="lineno">  679</span>&#160;<span class="preprocessor"># popen()) the command command input-file, where command is the value of the</span></div>
-<div class="line"><a name="l00680"></a><span class="lineno">  680</span>&#160;<span class="preprocessor"># FILE_VERSION_FILTER tag, and input-file is the name of an input file provided</span></div>
-<div class="line"><a name="l00681"></a><span class="lineno">  681</span>&#160;<span class="preprocessor"># by doxygen. Whatever the program writes to standard output is used as the file</span></div>
-<div class="line"><a name="l00682"></a><span class="lineno">  682</span>&#160;<span class="preprocessor"># version. For an example see the documentation.</span></div>
-<div class="line"><a name="l00683"></a><span class="lineno">  683</span>&#160;</div>
-<div class="line"><a name="l00684"></a><span class="lineno">  684</span>&#160;FILE_VERSION_FILTER    = </div>
-<div class="line"><a name="l00685"></a><span class="lineno">  685</span>&#160;</div>
-<div class="line"><a name="l00686"></a><span class="lineno">  686</span>&#160;<span class="preprocessor"># The LAYOUT_FILE tag can be used to specify a layout file which will be parsed</span></div>
-<div class="line"><a name="l00687"></a><span class="lineno">  687</span>&#160;<span class="preprocessor"># by doxygen. The layout file controls the global structure of the generated</span></div>
-<div class="line"><a name="l00688"></a><span class="lineno">  688</span>&#160;<span class="preprocessor"># output files in an output format independent way. To create the layout file</span></div>
-<div class="line"><a name="l00689"></a><span class="lineno">  689</span>&#160;<span class="preprocessor"># that represents doxygen&#39;s defaults, run doxygen with the -l option. You can</span></div>
-<div class="line"><a name="l00690"></a><span class="lineno">  690</span>&#160;<span class="preprocessor"># optionally specify a file name after the option, if omitted DoxygenLayout.xml</span></div>
-<div class="line"><a name="l00691"></a><span class="lineno">  691</span>&#160;<span class="preprocessor"># will be used as the name of the layout file.</span></div>
-<div class="line"><a name="l00692"></a><span class="lineno">  692</span>&#160;<span class="preprocessor">#</span></div>
-<div class="line"><a name="l00693"></a><span class="lineno">  693</span>&#160;<span class="preprocessor"># Note that if you run doxygen from a directory containing a file called</span></div>
-<div class="line"><a name="l00694"></a><span class="lineno">  694</span>&#160;<span class="preprocessor"># DoxygenLayout.xml, doxygen will parse it automatically even if the LAYOUT_FILE</span></div>
-<div class="line"><a name="l00695"></a><span class="lineno">  695</span>&#160;<span class="preprocessor"># tag is left empty.</span></div>
-<div class="line"><a name="l00696"></a><span class="lineno">  696</span>&#160;</div>
-<div class="line"><a name="l00697"></a><span class="lineno">  697</span>&#160;LAYOUT_FILE            = </div>
-<div class="line"><a name="l00698"></a><span class="lineno">  698</span>&#160;</div>
-<div class="line"><a name="l00699"></a><span class="lineno">  699</span>&#160;<span class="preprocessor"># The CITE_BIB_FILES tag can be used to specify one or more bib files containing</span></div>
-<div class="line"><a name="l00700"></a><span class="lineno">  700</span>&#160;<span class="preprocessor"># the reference definitions. This must be a list of .bib files. The .bib</span></div>
-<div class="line"><a name="l00701"></a><span class="lineno">  701</span>&#160;<span class="preprocessor"># extension is automatically appended if omitted. This requires the bibtex tool</span></div>
-<div class="line"><a name="l00702"></a><span class="lineno">  702</span>&#160;<span class="preprocessor"># to be installed. See also http://en.wikipedia.org/wiki/BibTeX for more info.</span></div>
-<div class="line"><a name="l00703"></a><span class="lineno">  703</span>&#160;<span class="preprocessor"># For LaTeX the style of the bibliography can be controlled using</span></div>
-<div class="line"><a name="l00704"></a><span class="lineno">  704</span>&#160;<span class="preprocessor"># LATEX_BIB_STYLE. To use this feature you need bibtex and perl available in the</span></div>
-<div class="line"><a name="l00705"></a><span class="lineno">  705</span>&#160;<span class="preprocessor"># search path. See also \cite for info how to create references.</span></div>
-<div class="line"><a name="l00706"></a><span class="lineno">  706</span>&#160;</div>
-<div class="line"><a name="l00707"></a><span class="lineno">  707</span>&#160;CITE_BIB_FILES         = </div>
-<div class="line"><a name="l00708"></a><span class="lineno">  708</span>&#160;</div>
-<div class="line"><a name="l00709"></a><span class="lineno">  709</span>&#160;<span class="preprocessor">#---------------------------------------------------------------------------</span></div>
-<div class="line"><a name="l00710"></a><span class="lineno">  710</span>&#160;<span class="preprocessor"># Configuration options related to warning and progress messages</span></div>
-<div class="line"><a name="l00711"></a><span class="lineno">  711</span>&#160;<span class="preprocessor">#---------------------------------------------------------------------------</span></div>
-<div class="line"><a name="l00712"></a><span class="lineno">  712</span>&#160;</div>
-<div class="line"><a name="l00713"></a><span class="lineno">  713</span>&#160;<span class="preprocessor"># The QUIET tag can be used to turn on/off the messages that are generated to</span></div>
-<div class="line"><a name="l00714"></a><span class="lineno">  714</span>&#160;<span class="preprocessor"># standard output by doxygen. If QUIET is set to YES this implies that the</span></div>
-<div class="line"><a name="l00715"></a><span class="lineno">  715</span>&#160;<span class="preprocessor"># messages are off.</span></div>
-<div class="line"><a name="l00716"></a><span class="lineno">  716</span>&#160;<span class="preprocessor"># The default value is: NO.</span></div>
-<div class="line"><a name="l00717"></a><span class="lineno">  717</span>&#160;</div>
-<div class="line"><a name="l00718"></a><span class="lineno">  718</span>&#160;QUIET                  = NO</div>
-<div class="line"><a name="l00719"></a><span class="lineno">  719</span>&#160;</div>
-<div class="line"><a name="l00720"></a><span class="lineno">  720</span>&#160;<span class="preprocessor"># The WARNINGS tag can be used to turn on/off the warning messages that are</span></div>
-<div class="line"><a name="l00721"></a><span class="lineno">  721</span>&#160;<span class="preprocessor"># generated to standard error (stderr) by doxygen. If WARNINGS is set to YES</span></div>
-<div class="line"><a name="l00722"></a><span class="lineno">  722</span>&#160;<span class="preprocessor"># this implies that the warnings are on.</span></div>
-<div class="line"><a name="l00723"></a><span class="lineno">  723</span>&#160;<span class="preprocessor">#</span></div>
-<div class="line"><a name="l00724"></a><span class="lineno">  724</span>&#160;<span class="preprocessor"># Tip: Turn warnings on while writing the documentation.</span></div>
-<div class="line"><a name="l00725"></a><span class="lineno">  725</span>&#160;<span class="preprocessor"># The default value is: YES.</span></div>
-<div class="line"><a name="l00726"></a><span class="lineno">  726</span>&#160;</div>
-<div class="line"><a name="l00727"></a><span class="lineno">  727</span>&#160;WARNINGS               = YES</div>
-<div class="line"><a name="l00728"></a><span class="lineno">  728</span>&#160;</div>
-<div class="line"><a name="l00729"></a><span class="lineno">  729</span>&#160;<span class="preprocessor"># If the WARN_IF_UNDOCUMENTED tag is set to YES then doxygen will generate</span></div>
-<div class="line"><a name="l00730"></a><span class="lineno">  730</span>&#160;<span class="preprocessor"># warnings for undocumented members. If EXTRACT_ALL is set to YES then this flag</span></div>
-<div class="line"><a name="l00731"></a><span class="lineno">  731</span>&#160;<span class="preprocessor"># will automatically be disabled.</span></div>
-<div class="line"><a name="l00732"></a><span class="lineno">  732</span>&#160;<span class="preprocessor"># The default value is: YES.</span></div>
-<div class="line"><a name="l00733"></a><span class="lineno">  733</span>&#160;</div>
-<div class="line"><a name="l00734"></a><span class="lineno">  734</span>&#160;WARN_IF_UNDOCUMENTED   = YES</div>
-<div class="line"><a name="l00735"></a><span class="lineno">  735</span>&#160;</div>
-<div class="line"><a name="l00736"></a><span class="lineno">  736</span>&#160;<span class="preprocessor"># If the WARN_IF_DOC_ERROR tag is set to YES, doxygen will generate warnings for</span></div>
-<div class="line"><a name="l00737"></a><span class="lineno">  737</span>&#160;<span class="preprocessor"># potential errors in the documentation, such as not documenting some parameters</span></div>
-<div class="line"><a name="l00738"></a><span class="lineno">  738</span>&#160;<span class="preprocessor"># in a documented function, or documenting parameters that don&#39;t exist or using</span></div>
-<div class="line"><a name="l00739"></a><span class="lineno">  739</span>&#160;<span class="preprocessor"># markup commands wrongly.</span></div>
-<div class="line"><a name="l00740"></a><span class="lineno">  740</span>&#160;<span class="preprocessor"># The default value is: YES.</span></div>
-<div class="line"><a name="l00741"></a><span class="lineno">  741</span>&#160;</div>
-<div class="line"><a name="l00742"></a><span class="lineno">  742</span>&#160;WARN_IF_DOC_ERROR      = YES</div>
-<div class="line"><a name="l00743"></a><span class="lineno">  743</span>&#160;</div>
-<div class="line"><a name="l00744"></a><span class="lineno">  744</span>&#160;<span class="preprocessor"># This WARN_NO_PARAMDOC option can be enabled to get warnings for functions that</span></div>
-<div class="line"><a name="l00745"></a><span class="lineno">  745</span>&#160;<span class="preprocessor"># are documented, but have no documentation for their parameters or return</span></div>
-<div class="line"><a name="l00746"></a><span class="lineno">  746</span>&#160;<span class="preprocessor"># value. If set to NO, doxygen will only warn about wrong or incomplete</span></div>
-<div class="line"><a name="l00747"></a><span class="lineno">  747</span>&#160;<span class="preprocessor"># parameter documentation, but not about the absence of documentation.</span></div>
-<div class="line"><a name="l00748"></a><span class="lineno">  748</span>&#160;<span class="preprocessor"># The default value is: NO.</span></div>
-<div class="line"><a name="l00749"></a><span class="lineno">  749</span>&#160;</div>
-<div class="line"><a name="l00750"></a><span class="lineno">  750</span>&#160;WARN_NO_PARAMDOC       = NO</div>
-<div class="line"><a name="l00751"></a><span class="lineno">  751</span>&#160;</div>
-<div class="line"><a name="l00752"></a><span class="lineno">  752</span>&#160;<span class="preprocessor"># The WARN_FORMAT tag determines the format of the warning messages that doxygen</span></div>
-<div class="line"><a name="l00753"></a><span class="lineno">  753</span>&#160;<span class="preprocessor"># can produce. The string should contain the $file, $line, and $text tags, which</span></div>
-<div class="line"><a name="l00754"></a><span class="lineno">  754</span>&#160;<span class="preprocessor"># will be replaced by the file and line number from which the warning originated</span></div>
-<div class="line"><a name="l00755"></a><span class="lineno">  755</span>&#160;<span class="preprocessor"># and the warning text. Optionally the format may contain $version, which will</span></div>
-<div class="line"><a name="l00756"></a><span class="lineno">  756</span>&#160;<span class="preprocessor"># be replaced by the version of the file (if it could be obtained via</span></div>
-<div class="line"><a name="l00757"></a><span class="lineno">  757</span>&#160;<span class="preprocessor"># FILE_VERSION_FILTER)</span></div>
-<div class="line"><a name="l00758"></a><span class="lineno">  758</span>&#160;<span class="preprocessor"># The default value is: $file:$line: $text.</span></div>
-<div class="line"><a name="l00759"></a><span class="lineno">  759</span>&#160;</div>
-<div class="line"><a name="l00760"></a><span class="lineno">  760</span>&#160;WARN_FORMAT            = <span class="stringliteral">&quot;$file:$line: $text&quot;</span></div>
-<div class="line"><a name="l00761"></a><span class="lineno">  761</span>&#160;</div>
-<div class="line"><a name="l00762"></a><span class="lineno">  762</span>&#160;<span class="preprocessor"># The WARN_LOGFILE tag can be used to specify a file to which warning and error</span></div>
-<div class="line"><a name="l00763"></a><span class="lineno">  763</span>&#160;<span class="preprocessor"># messages should be written. If left blank the output is written to standard</span></div>
-<div class="line"><a name="l00764"></a><span class="lineno">  764</span>&#160;<span class="preprocessor"># error (stderr).</span></div>
-<div class="line"><a name="l00765"></a><span class="lineno">  765</span>&#160;</div>
-<div class="line"><a name="l00766"></a><span class="lineno">  766</span>&#160;WARN_LOGFILE           = </div>
-<div class="line"><a name="l00767"></a><span class="lineno">  767</span>&#160;</div>
-<div class="line"><a name="l00768"></a><span class="lineno">  768</span>&#160;<span class="preprocessor">#---------------------------------------------------------------------------</span></div>
-<div class="line"><a name="l00769"></a><span class="lineno">  769</span>&#160;<span class="preprocessor"># Configuration options related to the input files</span></div>
-<div class="line"><a name="l00770"></a><span class="lineno">  770</span>&#160;<span class="preprocessor">#---------------------------------------------------------------------------</span></div>
-<div class="line"><a name="l00771"></a><span class="lineno">  771</span>&#160;</div>
-<div class="line"><a name="l00772"></a><span class="lineno">  772</span>&#160;<span class="preprocessor"># The INPUT tag is used to specify the files and/or directories that contain</span></div>
-<div class="line"><a name="l00773"></a><span class="lineno">  773</span>&#160;<span class="preprocessor"># documented source files. You may enter file names like myfile.cpp or</span></div>
-<div class="line"><a name="l00774"></a><span class="lineno">  774</span>&#160;<span class="preprocessor"># directories like /usr/src/myproject. Separate the files or directories with</span></div>
-<div class="line"><a name="l00775"></a><span class="lineno">  775</span>&#160;<span class="preprocessor"># spaces. See also FILE_PATTERNS and EXTENSION_MAPPING</span></div>
-<div class="line"><a name="l00776"></a><span class="lineno">  776</span>&#160;<span class="preprocessor"># Note: If this tag is empty the current directory is searched.</span></div>
-<div class="line"><a name="l00777"></a><span class="lineno">  777</span>&#160;</div>
-<div class="line"><a name="l00778"></a><span class="lineno">  778</span>&#160;INPUT                  = ../<a class="code" href="a00236.html">glm</a> \</div>
-<div class="line"><a name="l00779"></a><span class="lineno">  779</span>&#160;                         .</div>
-<div class="line"><a name="l00780"></a><span class="lineno">  780</span>&#160;</div>
-<div class="line"><a name="l00781"></a><span class="lineno">  781</span>&#160;# This tag can be used to specify the character encoding of the source files</div>
-<div class="line"><a name="l00782"></a><span class="lineno">  782</span>&#160;<span class="preprocessor"># that doxygen parses. Internally doxygen uses the UTF-8 encoding. Doxygen uses</span></div>
-<div class="line"><a name="l00783"></a><span class="lineno">  783</span>&#160;<span class="preprocessor"># libiconv (or the iconv built into libc) for the transcoding. See the libiconv</span></div>
-<div class="line"><a name="l00784"></a><span class="lineno">  784</span>&#160;<span class="preprocessor"># documentation (see: http://www.gnu.org/software/libiconv) for the list of</span></div>
-<div class="line"><a name="l00785"></a><span class="lineno">  785</span>&#160;<span class="preprocessor"># possible encodings.</span></div>
-<div class="line"><a name="l00786"></a><span class="lineno">  786</span>&#160;<span class="preprocessor"># The default value is: UTF-8.</span></div>
-<div class="line"><a name="l00787"></a><span class="lineno">  787</span>&#160;</div>
-<div class="line"><a name="l00788"></a><span class="lineno">  788</span>&#160;INPUT_ENCODING         = UTF-8</div>
-<div class="line"><a name="l00789"></a><span class="lineno">  789</span>&#160;</div>
-<div class="line"><a name="l00790"></a><span class="lineno">  790</span>&#160;<span class="preprocessor"># If the value of the INPUT tag contains directories, you can use the</span></div>
-<div class="line"><a name="l00791"></a><span class="lineno">  791</span>&#160;<span class="preprocessor"># FILE_PATTERNS tag to specify one or more wildcard patterns (like *.cpp and</span></div>
-<div class="line"><a name="l00792"></a><span class="lineno">  792</span>&#160;<span class="preprocessor"># *.h) to filter out the source-files in the directories.</span></div>
-<div class="line"><a name="l00793"></a><span class="lineno">  793</span>&#160;<span class="preprocessor">#</span></div>
-<div class="line"><a name="l00794"></a><span class="lineno">  794</span>&#160;<span class="preprocessor"># Note that for custom extensions or not directly supported extensions you also</span></div>
-<div class="line"><a name="l00795"></a><span class="lineno">  795</span>&#160;<span class="preprocessor"># need to set EXTENSION_MAPPING for the extension otherwise the files are not</span></div>
-<div class="line"><a name="l00796"></a><span class="lineno">  796</span>&#160;<span class="preprocessor"># read by doxygen.</span></div>
-<div class="line"><a name="l00797"></a><span class="lineno">  797</span>&#160;<span class="preprocessor">#</span></div>
-<div class="line"><a name="l00798"></a><span class="lineno">  798</span>&#160;<span class="preprocessor"># If left blank the following patterns are tested:*.c, *.cc, *.cxx, *.cpp,</span></div>
-<div class="line"><a name="l00799"></a><span class="lineno">  799</span>&#160;<span class="preprocessor"># *.c++, *.java, *.ii, *.ixx, *.ipp, *.i++, *.inl, *.idl, *.ddl, *.odl, *.h,</span></div>
-<div class="line"><a name="l00800"></a><span class="lineno">  800</span>&#160;<span class="preprocessor"># *.hh, *.hxx, *.hpp, *.h++, *.cs, *.d, *.php, *.php4, *.php5, *.phtml, *.inc,</span></div>
-<div class="line"><a name="l00801"></a><span class="lineno">  801</span>&#160;<span class="preprocessor"># *.m, *.markdown, *.md, *.mm, *.dox, *.py, *.f90, *.f, *.for, *.tcl, *.vhd,</span></div>
-<div class="line"><a name="l00802"></a><span class="lineno">  802</span>&#160;<span class="preprocessor"># *.vhdl, *.ucf, *.qsf, *.as and *.js.</span></div>
-<div class="line"><a name="l00803"></a><span class="lineno">  803</span>&#160;</div>
-<div class="line"><a name="l00804"></a><span class="lineno">  804</span>&#160;FILE_PATTERNS          = *.hpp \</div>
-<div class="line"><a name="l00805"></a><span class="lineno">  805</span>&#160;                         *.doxy</div>
-<div class="line"><a name="l00806"></a><span class="lineno">  806</span>&#160;</div>
-<div class="line"><a name="l00807"></a><span class="lineno">  807</span>&#160;<span class="preprocessor"># The RECURSIVE tag can be used to specify whether or not subdirectories should</span></div>
-<div class="line"><a name="l00808"></a><span class="lineno">  808</span>&#160;<span class="preprocessor"># be searched for input files as well.</span></div>
-<div class="line"><a name="l00809"></a><span class="lineno">  809</span>&#160;<span class="preprocessor"># The default value is: NO.</span></div>
-<div class="line"><a name="l00810"></a><span class="lineno">  810</span>&#160;</div>
-<div class="line"><a name="l00811"></a><span class="lineno">  811</span>&#160;RECURSIVE              = YES</div>
-<div class="line"><a name="l00812"></a><span class="lineno">  812</span>&#160;</div>
-<div class="line"><a name="l00813"></a><span class="lineno">  813</span>&#160;<span class="preprocessor"># The EXCLUDE tag can be used to specify files and/or directories that should be</span></div>
-<div class="line"><a name="l00814"></a><span class="lineno">  814</span>&#160;<span class="preprocessor"># excluded from the INPUT source files. This way you can easily exclude a</span></div>
-<div class="line"><a name="l00815"></a><span class="lineno">  815</span>&#160;<span class="preprocessor"># subdirectory from a directory tree whose root is specified with the INPUT tag.</span></div>
-<div class="line"><a name="l00816"></a><span class="lineno">  816</span>&#160;<span class="preprocessor">#</span></div>
-<div class="line"><a name="l00817"></a><span class="lineno">  817</span>&#160;<span class="preprocessor"># Note that relative paths are relative to the directory from which doxygen is</span></div>
-<div class="line"><a name="l00818"></a><span class="lineno">  818</span>&#160;<span class="preprocessor"># run.</span></div>
-<div class="line"><a name="l00819"></a><span class="lineno">  819</span>&#160;</div>
-<div class="line"><a name="l00820"></a><span class="lineno">  820</span>&#160;EXCLUDE                = </div>
-<div class="line"><a name="l00821"></a><span class="lineno">  821</span>&#160;</div>
-<div class="line"><a name="l00822"></a><span class="lineno">  822</span>&#160;<span class="preprocessor"># The EXCLUDE_SYMLINKS tag can be used to select whether or not files or</span></div>
-<div class="line"><a name="l00823"></a><span class="lineno">  823</span>&#160;<span class="preprocessor"># directories that are symbolic links (a Unix file system feature) are excluded</span></div>
-<div class="line"><a name="l00824"></a><span class="lineno">  824</span>&#160;<span class="preprocessor"># from the input.</span></div>
-<div class="line"><a name="l00825"></a><span class="lineno">  825</span>&#160;<span class="preprocessor"># The default value is: NO.</span></div>
-<div class="line"><a name="l00826"></a><span class="lineno">  826</span>&#160;</div>
-<div class="line"><a name="l00827"></a><span class="lineno">  827</span>&#160;EXCLUDE_SYMLINKS       = NO</div>
-<div class="line"><a name="l00828"></a><span class="lineno">  828</span>&#160;</div>
-<div class="line"><a name="l00829"></a><span class="lineno">  829</span>&#160;<span class="preprocessor"># If the value of the INPUT tag contains directories, you can use the</span></div>
-<div class="line"><a name="l00830"></a><span class="lineno">  830</span>&#160;<span class="preprocessor"># EXCLUDE_PATTERNS tag to specify one or more wildcard patterns to exclude</span></div>
-<div class="line"><a name="l00831"></a><span class="lineno">  831</span>&#160;<span class="preprocessor"># certain files from those directories.</span></div>
-<div class="line"><a name="l00832"></a><span class="lineno">  832</span>&#160;<span class="preprocessor">#</span></div>
-<div class="line"><a name="l00833"></a><span class="lineno">  833</span>&#160;<span class="preprocessor"># Note that the wildcards are matched against the file with absolute path, so to</span></div>
-<div class="line"><a name="l00834"></a><span class="lineno">  834</span>&#160;<span class="preprocessor"># exclude all test directories for example use the pattern */test</span><span class="comment">/*</span></div>
-<div class="line"><a name="l00835"></a><span class="lineno">  835</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l00836"></a><span class="lineno">  836</span>&#160;<span class="comment">EXCLUDE_PATTERNS       = </span></div>
-<div class="line"><a name="l00837"></a><span class="lineno">  837</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l00838"></a><span class="lineno">  838</span>&#160;<span class="comment"># The EXCLUDE_SYMBOLS tag can be used to specify one or more symbol names</span></div>
-<div class="line"><a name="l00839"></a><span class="lineno">  839</span>&#160;<span class="comment"># (namespaces, classes, functions, etc.) that should be excluded from the</span></div>
-<div class="line"><a name="l00840"></a><span class="lineno">  840</span>&#160;<span class="comment"># output. The symbol name can be a fully qualified name, a word, or if the</span></div>
-<div class="line"><a name="l00841"></a><span class="lineno">  841</span>&#160;<span class="comment"># wildcard * is used, a substring. Examples: ANamespace, AClass,</span></div>
-<div class="line"><a name="l00842"></a><span class="lineno">  842</span>&#160;<span class="comment"># AClass::ANamespace, ANamespace::*Test</span></div>
-<div class="line"><a name="l00843"></a><span class="lineno">  843</span>&#160;<span class="comment">#</span></div>
-<div class="line"><a name="l00844"></a><span class="lineno">  844</span>&#160;<span class="comment"># Note that the wildcards are matched against the file with absolute path, so to</span></div>
-<div class="line"><a name="l00845"></a><span class="lineno">  845</span>&#160;<span class="comment"># exclude all test directories use the pattern */</span><span class="preprocessor">test</span><span class="comment">/*</span></div>
-<div class="line"><a name="l00846"></a><span class="lineno">  846</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l00847"></a><span class="lineno">  847</span>&#160;<span class="comment">EXCLUDE_SYMBOLS        = </span></div>
-<div class="line"><a name="l00848"></a><span class="lineno">  848</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l00849"></a><span class="lineno">  849</span>&#160;<span class="comment"># The EXAMPLE_PATH tag can be used to specify one or more files or directories</span></div>
-<div class="line"><a name="l00850"></a><span class="lineno">  850</span>&#160;<span class="comment"># that contain example code fragments that are included (see the \include</span></div>
-<div class="line"><a name="l00851"></a><span class="lineno">  851</span>&#160;<span class="comment"># command).</span></div>
-<div class="line"><a name="l00852"></a><span class="lineno">  852</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l00853"></a><span class="lineno">  853</span>&#160;<span class="comment">EXAMPLE_PATH           = </span></div>
-<div class="line"><a name="l00854"></a><span class="lineno">  854</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l00855"></a><span class="lineno">  855</span>&#160;<span class="comment"># If the value of the EXAMPLE_PATH tag contains directories, you can use the</span></div>
-<div class="line"><a name="l00856"></a><span class="lineno">  856</span>&#160;<span class="comment"># EXAMPLE_PATTERNS tag to specify one or more wildcard pattern (like *.cpp and</span></div>
-<div class="line"><a name="l00857"></a><span class="lineno">  857</span>&#160;<span class="comment"># *.h) to filter out the source-files in the directories. If left blank all</span></div>
-<div class="line"><a name="l00858"></a><span class="lineno">  858</span>&#160;<span class="comment"># files are included.</span></div>
-<div class="line"><a name="l00859"></a><span class="lineno">  859</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l00860"></a><span class="lineno">  860</span>&#160;<span class="comment">EXAMPLE_PATTERNS       = *</span></div>
-<div class="line"><a name="l00861"></a><span class="lineno">  861</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l00862"></a><span class="lineno">  862</span>&#160;<span class="comment"># If the EXAMPLE_RECURSIVE tag is set to YES then subdirectories will be</span></div>
-<div class="line"><a name="l00863"></a><span class="lineno">  863</span>&#160;<span class="comment"># searched for input files to be used with the \include or \dontinclude commands</span></div>
-<div class="line"><a name="l00864"></a><span class="lineno">  864</span>&#160;<span class="comment"># irrespective of the value of the RECURSIVE tag.</span></div>
-<div class="line"><a name="l00865"></a><span class="lineno">  865</span>&#160;<span class="comment"># The default value is: NO.</span></div>
-<div class="line"><a name="l00866"></a><span class="lineno">  866</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l00867"></a><span class="lineno">  867</span>&#160;<span class="comment">EXAMPLE_RECURSIVE      = NO</span></div>
-<div class="line"><a name="l00868"></a><span class="lineno">  868</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l00869"></a><span class="lineno">  869</span>&#160;<span class="comment"># The IMAGE_PATH tag can be used to specify one or more files or directories</span></div>
-<div class="line"><a name="l00870"></a><span class="lineno">  870</span>&#160;<span class="comment"># that contain images that are to be included in the documentation (see the</span></div>
-<div class="line"><a name="l00871"></a><span class="lineno">  871</span>&#160;<span class="comment"># \image command).</span></div>
-<div class="line"><a name="l00872"></a><span class="lineno">  872</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l00873"></a><span class="lineno">  873</span>&#160;<span class="comment">IMAGE_PATH             = </span></div>
-<div class="line"><a name="l00874"></a><span class="lineno">  874</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l00875"></a><span class="lineno">  875</span>&#160;<span class="comment"># The INPUT_FILTER tag can be used to specify a program that doxygen should</span></div>
-<div class="line"><a name="l00876"></a><span class="lineno">  876</span>&#160;<span class="comment"># invoke to filter for each input file. Doxygen will invoke the filter program</span></div>
-<div class="line"><a name="l00877"></a><span class="lineno">  877</span>&#160;<span class="comment"># by executing (via popen()) the command:</span></div>
-<div class="line"><a name="l00878"></a><span class="lineno">  878</span>&#160;<span class="comment">#</span></div>
-<div class="line"><a name="l00879"></a><span class="lineno">  879</span>&#160;<span class="comment"># &lt;filter&gt; &lt;input-file&gt;</span></div>
-<div class="line"><a name="l00880"></a><span class="lineno">  880</span>&#160;<span class="comment">#</span></div>
-<div class="line"><a name="l00881"></a><span class="lineno">  881</span>&#160;<span class="comment"># where &lt;filter&gt; is the value of the INPUT_FILTER tag, and &lt;input-file&gt; is the</span></div>
-<div class="line"><a name="l00882"></a><span class="lineno">  882</span>&#160;<span class="comment"># name of an input file. Doxygen will then use the output that the filter</span></div>
-<div class="line"><a name="l00883"></a><span class="lineno">  883</span>&#160;<span class="comment"># program writes to standard output. If FILTER_PATTERNS is specified, this tag</span></div>
-<div class="line"><a name="l00884"></a><span class="lineno">  884</span>&#160;<span class="comment"># will be ignored.</span></div>
-<div class="line"><a name="l00885"></a><span class="lineno">  885</span>&#160;<span class="comment">#</span></div>
-<div class="line"><a name="l00886"></a><span class="lineno">  886</span>&#160;<span class="comment"># Note that the filter must not add or remove lines; it is applied before the</span></div>
-<div class="line"><a name="l00887"></a><span class="lineno">  887</span>&#160;<span class="comment"># code is scanned, but not when the output code is generated. If lines are added</span></div>
-<div class="line"><a name="l00888"></a><span class="lineno">  888</span>&#160;<span class="comment"># or removed, the anchors will not be placed correctly.</span></div>
-<div class="line"><a name="l00889"></a><span class="lineno">  889</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l00890"></a><span class="lineno">  890</span>&#160;<span class="comment">INPUT_FILTER           = </span></div>
-<div class="line"><a name="l00891"></a><span class="lineno">  891</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l00892"></a><span class="lineno">  892</span>&#160;<span class="comment"># The FILTER_PATTERNS tag can be used to specify filters on a per file pattern</span></div>
-<div class="line"><a name="l00893"></a><span class="lineno">  893</span>&#160;<span class="comment"># basis. Doxygen will compare the file name with each pattern and apply the</span></div>
-<div class="line"><a name="l00894"></a><span class="lineno">  894</span>&#160;<span class="comment"># filter if there is a match. The filters are a list of the form: pattern=filter</span></div>
-<div class="line"><a name="l00895"></a><span class="lineno">  895</span>&#160;<span class="comment"># (like *.cpp=my_cpp_filter). See INPUT_FILTER for further information on how</span></div>
-<div class="line"><a name="l00896"></a><span class="lineno">  896</span>&#160;<span class="comment"># filters are used. If the FILTER_PATTERNS tag is empty or if none of the</span></div>
-<div class="line"><a name="l00897"></a><span class="lineno">  897</span>&#160;<span class="comment"># patterns match the file name, INPUT_FILTER is applied.</span></div>
-<div class="line"><a name="l00898"></a><span class="lineno">  898</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l00899"></a><span class="lineno">  899</span>&#160;<span class="comment">FILTER_PATTERNS        = </span></div>
-<div class="line"><a name="l00900"></a><span class="lineno">  900</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l00901"></a><span class="lineno">  901</span>&#160;<span class="comment"># If the FILTER_SOURCE_FILES tag is set to YES, the input filter (if set using</span></div>
-<div class="line"><a name="l00902"></a><span class="lineno">  902</span>&#160;<span class="comment"># INPUT_FILTER) will also be used to filter the input files that are used for</span></div>
-<div class="line"><a name="l00903"></a><span class="lineno">  903</span>&#160;<span class="comment"># producing the source files to browse (i.e. when SOURCE_BROWSER is set to YES).</span></div>
-<div class="line"><a name="l00904"></a><span class="lineno">  904</span>&#160;<span class="comment"># The default value is: NO.</span></div>
-<div class="line"><a name="l00905"></a><span class="lineno">  905</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l00906"></a><span class="lineno">  906</span>&#160;<span class="comment">FILTER_SOURCE_FILES    = NO</span></div>
-<div class="line"><a name="l00907"></a><span class="lineno">  907</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l00908"></a><span class="lineno">  908</span>&#160;<span class="comment"># The FILTER_SOURCE_PATTERNS tag can be used to specify source filters per file</span></div>
-<div class="line"><a name="l00909"></a><span class="lineno">  909</span>&#160;<span class="comment"># pattern. A pattern will override the setting for FILTER_PATTERN (if any) and</span></div>
-<div class="line"><a name="l00910"></a><span class="lineno">  910</span>&#160;<span class="comment"># it is also possible to disable source filtering for a specific pattern using</span></div>
-<div class="line"><a name="l00911"></a><span class="lineno">  911</span>&#160;<span class="comment"># *.ext= (so without naming a filter).</span></div>
-<div class="line"><a name="l00912"></a><span class="lineno">  912</span>&#160;<span class="comment"># This tag requires that the tag FILTER_SOURCE_FILES is set to YES.</span></div>
-<div class="line"><a name="l00913"></a><span class="lineno">  913</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l00914"></a><span class="lineno">  914</span>&#160;<span class="comment">FILTER_SOURCE_PATTERNS = </span></div>
-<div class="line"><a name="l00915"></a><span class="lineno">  915</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l00916"></a><span class="lineno">  916</span>&#160;<span class="comment"># If the USE_MDFILE_AS_MAINPAGE tag refers to the name of a markdown file that</span></div>
-<div class="line"><a name="l00917"></a><span class="lineno">  917</span>&#160;<span class="comment"># is part of the input, its contents will be placed on the main page</span></div>
-<div class="line"><a name="l00918"></a><span class="lineno">  918</span>&#160;<span class="comment"># (index.html). This can be useful if you have a project on for instance GitHub</span></div>
-<div class="line"><a name="l00919"></a><span class="lineno">  919</span>&#160;<span class="comment"># and want to reuse the introduction page also for the doxygen output.</span></div>
-<div class="line"><a name="l00920"></a><span class="lineno">  920</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l00921"></a><span class="lineno">  921</span>&#160;<span class="comment">USE_MDFILE_AS_MAINPAGE = </span></div>
-<div class="line"><a name="l00922"></a><span class="lineno">  922</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l00923"></a><span class="lineno">  923</span>&#160;<span class="comment">#---------------------------------------------------------------------------</span></div>
-<div class="line"><a name="l00924"></a><span class="lineno">  924</span>&#160;<span class="comment"># Configuration options related to source browsing</span></div>
-<div class="line"><a name="l00925"></a><span class="lineno">  925</span>&#160;<span class="comment">#---------------------------------------------------------------------------</span></div>
-<div class="line"><a name="l00926"></a><span class="lineno">  926</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l00927"></a><span class="lineno">  927</span>&#160;<span class="comment"># If the SOURCE_BROWSER tag is set to YES then a list of source files will be</span></div>
-<div class="line"><a name="l00928"></a><span class="lineno">  928</span>&#160;<span class="comment"># generated. Documented entities will be cross-referenced with these sources.</span></div>
-<div class="line"><a name="l00929"></a><span class="lineno">  929</span>&#160;<span class="comment">#</span></div>
-<div class="line"><a name="l00930"></a><span class="lineno">  930</span>&#160;<span class="comment"># Note: To get rid of all source code in the generated output, make sure that</span></div>
-<div class="line"><a name="l00931"></a><span class="lineno">  931</span>&#160;<span class="comment"># also VERBATIM_HEADERS is set to NO.</span></div>
-<div class="line"><a name="l00932"></a><span class="lineno">  932</span>&#160;<span class="comment"># The default value is: NO.</span></div>
-<div class="line"><a name="l00933"></a><span class="lineno">  933</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l00934"></a><span class="lineno">  934</span>&#160;<span class="comment">SOURCE_BROWSER         = YES</span></div>
-<div class="line"><a name="l00935"></a><span class="lineno">  935</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l00936"></a><span class="lineno">  936</span>&#160;<span class="comment"># Setting the INLINE_SOURCES tag to YES will include the body of functions,</span></div>
-<div class="line"><a name="l00937"></a><span class="lineno">  937</span>&#160;<span class="comment"># classes and enums directly into the documentation.</span></div>
-<div class="line"><a name="l00938"></a><span class="lineno">  938</span>&#160;<span class="comment"># The default value is: NO.</span></div>
-<div class="line"><a name="l00939"></a><span class="lineno">  939</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l00940"></a><span class="lineno">  940</span>&#160;<span class="comment">INLINE_SOURCES         = NO</span></div>
-<div class="line"><a name="l00941"></a><span class="lineno">  941</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l00942"></a><span class="lineno">  942</span>&#160;<span class="comment"># Setting the STRIP_CODE_COMMENTS tag to YES will instruct doxygen to hide any</span></div>
-<div class="line"><a name="l00943"></a><span class="lineno">  943</span>&#160;<span class="comment"># special comment blocks from generated source code fragments. Normal C, C++ and</span></div>
-<div class="line"><a name="l00944"></a><span class="lineno">  944</span>&#160;<span class="comment"># Fortran comments will always remain visible.</span></div>
-<div class="line"><a name="l00945"></a><span class="lineno">  945</span>&#160;<span class="comment"># The default value is: YES.</span></div>
-<div class="line"><a name="l00946"></a><span class="lineno">  946</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l00947"></a><span class="lineno">  947</span>&#160;<span class="comment">STRIP_CODE_COMMENTS    = YES</span></div>
-<div class="line"><a name="l00948"></a><span class="lineno">  948</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l00949"></a><span class="lineno">  949</span>&#160;<span class="comment"># If the REFERENCED_BY_RELATION tag is set to YES then for each documented</span></div>
-<div class="line"><a name="l00950"></a><span class="lineno">  950</span>&#160;<span class="comment"># function all documented functions referencing it will be listed.</span></div>
-<div class="line"><a name="l00951"></a><span class="lineno">  951</span>&#160;<span class="comment"># The default value is: NO.</span></div>
-<div class="line"><a name="l00952"></a><span class="lineno">  952</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l00953"></a><span class="lineno">  953</span>&#160;<span class="comment">REFERENCED_BY_RELATION = YES</span></div>
-<div class="line"><a name="l00954"></a><span class="lineno">  954</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l00955"></a><span class="lineno">  955</span>&#160;<span class="comment"># If the REFERENCES_RELATION tag is set to YES then for each documented function</span></div>
-<div class="line"><a name="l00956"></a><span class="lineno">  956</span>&#160;<span class="comment"># all documented entities called/used by that function will be listed.</span></div>
-<div class="line"><a name="l00957"></a><span class="lineno">  957</span>&#160;<span class="comment"># The default value is: NO.</span></div>
-<div class="line"><a name="l00958"></a><span class="lineno">  958</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l00959"></a><span class="lineno">  959</span>&#160;<span class="comment">REFERENCES_RELATION    = YES</span></div>
-<div class="line"><a name="l00960"></a><span class="lineno">  960</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l00961"></a><span class="lineno">  961</span>&#160;<span class="comment"># If the REFERENCES_LINK_SOURCE tag is set to YES and SOURCE_BROWSER tag is set</span></div>
-<div class="line"><a name="l00962"></a><span class="lineno">  962</span>&#160;<span class="comment"># to YES then the hyperlinks from functions in REFERENCES_RELATION and</span></div>
-<div class="line"><a name="l00963"></a><span class="lineno">  963</span>&#160;<span class="comment"># REFERENCED_BY_RELATION lists will link to the source code. Otherwise they will</span></div>
-<div class="line"><a name="l00964"></a><span class="lineno">  964</span>&#160;<span class="comment"># link to the documentation.</span></div>
-<div class="line"><a name="l00965"></a><span class="lineno">  965</span>&#160;<span class="comment"># The default value is: YES.</span></div>
-<div class="line"><a name="l00966"></a><span class="lineno">  966</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l00967"></a><span class="lineno">  967</span>&#160;<span class="comment">REFERENCES_LINK_SOURCE = YES</span></div>
-<div class="line"><a name="l00968"></a><span class="lineno">  968</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l00969"></a><span class="lineno">  969</span>&#160;<span class="comment"># If SOURCE_TOOLTIPS is enabled (the default) then hovering a hyperlink in the</span></div>
-<div class="line"><a name="l00970"></a><span class="lineno">  970</span>&#160;<span class="comment"># source code will show a tooltip with additional information such as prototype,</span></div>
-<div class="line"><a name="l00971"></a><span class="lineno">  971</span>&#160;<span class="comment"># brief description and links to the definition and documentation. Since this</span></div>
-<div class="line"><a name="l00972"></a><span class="lineno">  972</span>&#160;<span class="comment"># will make the HTML file larger and loading of large files a bit slower, you</span></div>
-<div class="line"><a name="l00973"></a><span class="lineno">  973</span>&#160;<span class="comment"># can opt to disable this feature.</span></div>
-<div class="line"><a name="l00974"></a><span class="lineno">  974</span>&#160;<span class="comment"># The default value is: YES.</span></div>
-<div class="line"><a name="l00975"></a><span class="lineno">  975</span>&#160;<span class="comment"># This tag requires that the tag SOURCE_BROWSER is set to YES.</span></div>
-<div class="line"><a name="l00976"></a><span class="lineno">  976</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l00977"></a><span class="lineno">  977</span>&#160;<span class="comment">SOURCE_TOOLTIPS        = YES</span></div>
-<div class="line"><a name="l00978"></a><span class="lineno">  978</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l00979"></a><span class="lineno">  979</span>&#160;<span class="comment"># If the USE_HTAGS tag is set to YES then the references to source code will</span></div>
-<div class="line"><a name="l00980"></a><span class="lineno">  980</span>&#160;<span class="comment"># point to the HTML generated by the htags(1) tool instead of doxygen built-in</span></div>
-<div class="line"><a name="l00981"></a><span class="lineno">  981</span>&#160;<span class="comment"># source browser. The htags tool is part of GNU&#39;s global source tagging system</span></div>
-<div class="line"><a name="l00982"></a><span class="lineno">  982</span>&#160;<span class="comment"># (see http://www.gnu.org/software/global/global.html). You will need version</span></div>
-<div class="line"><a name="l00983"></a><span class="lineno">  983</span>&#160;<span class="comment"># 4.8.6 or higher.</span></div>
-<div class="line"><a name="l00984"></a><span class="lineno">  984</span>&#160;<span class="comment">#</span></div>
-<div class="line"><a name="l00985"></a><span class="lineno">  985</span>&#160;<span class="comment"># To use it do the following:</span></div>
-<div class="line"><a name="l00986"></a><span class="lineno">  986</span>&#160;<span class="comment"># - Install the latest version of global</span></div>
-<div class="line"><a name="l00987"></a><span class="lineno">  987</span>&#160;<span class="comment"># - Enable SOURCE_BROWSER and USE_HTAGS in the config file</span></div>
-<div class="line"><a name="l00988"></a><span class="lineno">  988</span>&#160;<span class="comment"># - Make sure the INPUT points to the root of the source tree</span></div>
-<div class="line"><a name="l00989"></a><span class="lineno">  989</span>&#160;<span class="comment"># - Run doxygen as normal</span></div>
-<div class="line"><a name="l00990"></a><span class="lineno">  990</span>&#160;<span class="comment">#</span></div>
-<div class="line"><a name="l00991"></a><span class="lineno">  991</span>&#160;<span class="comment"># Doxygen will invoke htags (and that will in turn invoke gtags), so these</span></div>
-<div class="line"><a name="l00992"></a><span class="lineno">  992</span>&#160;<span class="comment"># tools must be available from the command line (i.e. in the search path).</span></div>
-<div class="line"><a name="l00993"></a><span class="lineno">  993</span>&#160;<span class="comment">#</span></div>
-<div class="line"><a name="l00994"></a><span class="lineno">  994</span>&#160;<span class="comment"># The result: instead of the source browser generated by doxygen, the links to</span></div>
-<div class="line"><a name="l00995"></a><span class="lineno">  995</span>&#160;<span class="comment"># source code will now point to the output of htags.</span></div>
-<div class="line"><a name="l00996"></a><span class="lineno">  996</span>&#160;<span class="comment"># The default value is: NO.</span></div>
-<div class="line"><a name="l00997"></a><span class="lineno">  997</span>&#160;<span class="comment"># This tag requires that the tag SOURCE_BROWSER is set to YES.</span></div>
-<div class="line"><a name="l00998"></a><span class="lineno">  998</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l00999"></a><span class="lineno">  999</span>&#160;<span class="comment">USE_HTAGS              = NO</span></div>
-<div class="line"><a name="l01000"></a><span class="lineno"> 1000</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l01001"></a><span class="lineno"> 1001</span>&#160;<span class="comment"># If the VERBATIM_HEADERS tag is set the YES then doxygen will generate a</span></div>
-<div class="line"><a name="l01002"></a><span class="lineno"> 1002</span>&#160;<span class="comment"># verbatim copy of the header file for each class for which an include is</span></div>
-<div class="line"><a name="l01003"></a><span class="lineno"> 1003</span>&#160;<span class="comment"># specified. Set to NO to disable this.</span></div>
-<div class="line"><a name="l01004"></a><span class="lineno"> 1004</span>&#160;<span class="comment"># See also: Section \class.</span></div>
-<div class="line"><a name="l01005"></a><span class="lineno"> 1005</span>&#160;<span class="comment"># The default value is: YES.</span></div>
-<div class="line"><a name="l01006"></a><span class="lineno"> 1006</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l01007"></a><span class="lineno"> 1007</span>&#160;<span class="comment">VERBATIM_HEADERS       = YES</span></div>
-<div class="line"><a name="l01008"></a><span class="lineno"> 1008</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l01009"></a><span class="lineno"> 1009</span>&#160;<span class="comment"># If the CLANG_ASSISTED_PARSING tag is set to YES then doxygen will use the</span></div>
-<div class="line"><a name="l01010"></a><span class="lineno"> 1010</span>&#160;<span class="comment"># clang parser (see: http://clang.llvm.org/) for more accurate parsing at the</span></div>
-<div class="line"><a name="l01011"></a><span class="lineno"> 1011</span>&#160;<span class="comment"># cost of reduced performance. This can be particularly helpful with template</span></div>
-<div class="line"><a name="l01012"></a><span class="lineno"> 1012</span>&#160;<span class="comment"># rich C++ code for which doxygen&#39;s built-in parser lacks the necessary type</span></div>
-<div class="line"><a name="l01013"></a><span class="lineno"> 1013</span>&#160;<span class="comment"># information.</span></div>
-<div class="line"><a name="l01014"></a><span class="lineno"> 1014</span>&#160;<span class="comment"># Note: The availability of this option depends on whether or not doxygen was</span></div>
-<div class="line"><a name="l01015"></a><span class="lineno"> 1015</span>&#160;<span class="comment"># compiled with the --with-libclang option.</span></div>
-<div class="line"><a name="l01016"></a><span class="lineno"> 1016</span>&#160;<span class="comment"># The default value is: NO.</span></div>
-<div class="line"><a name="l01017"></a><span class="lineno"> 1017</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l01018"></a><span class="lineno"> 1018</span>&#160;<span class="comment">CLANG_ASSISTED_PARSING = NO</span></div>
-<div class="line"><a name="l01019"></a><span class="lineno"> 1019</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l01020"></a><span class="lineno"> 1020</span>&#160;<span class="comment"># If clang assisted parsing is enabled you can provide the compiler with command</span></div>
-<div class="line"><a name="l01021"></a><span class="lineno"> 1021</span>&#160;<span class="comment"># line options that you would normally use when invoking the compiler. Note that</span></div>
-<div class="line"><a name="l01022"></a><span class="lineno"> 1022</span>&#160;<span class="comment"># the include paths will already be set by doxygen for the files and directories</span></div>
-<div class="line"><a name="l01023"></a><span class="lineno"> 1023</span>&#160;<span class="comment"># specified with INPUT and INCLUDE_PATH.</span></div>
-<div class="line"><a name="l01024"></a><span class="lineno"> 1024</span>&#160;<span class="comment"># This tag requires that the tag CLANG_ASSISTED_PARSING is set to YES.</span></div>
-<div class="line"><a name="l01025"></a><span class="lineno"> 1025</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l01026"></a><span class="lineno"> 1026</span>&#160;<span class="comment">CLANG_OPTIONS          = </span></div>
-<div class="line"><a name="l01027"></a><span class="lineno"> 1027</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l01028"></a><span class="lineno"> 1028</span>&#160;<span class="comment">#---------------------------------------------------------------------------</span></div>
-<div class="line"><a name="l01029"></a><span class="lineno"> 1029</span>&#160;<span class="comment"># Configuration options related to the alphabetical class index</span></div>
-<div class="line"><a name="l01030"></a><span class="lineno"> 1030</span>&#160;<span class="comment">#---------------------------------------------------------------------------</span></div>
-<div class="line"><a name="l01031"></a><span class="lineno"> 1031</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l01032"></a><span class="lineno"> 1032</span>&#160;<span class="comment"># If the ALPHABETICAL_INDEX tag is set to YES, an alphabetical index of all</span></div>
-<div class="line"><a name="l01033"></a><span class="lineno"> 1033</span>&#160;<span class="comment"># compounds will be generated. Enable this if the project contains a lot of</span></div>
-<div class="line"><a name="l01034"></a><span class="lineno"> 1034</span>&#160;<span class="comment"># classes, structs, unions or interfaces.</span></div>
-<div class="line"><a name="l01035"></a><span class="lineno"> 1035</span>&#160;<span class="comment"># The default value is: YES.</span></div>
-<div class="line"><a name="l01036"></a><span class="lineno"> 1036</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l01037"></a><span class="lineno"> 1037</span>&#160;<span class="comment">ALPHABETICAL_INDEX     = NO</span></div>
-<div class="line"><a name="l01038"></a><span class="lineno"> 1038</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l01039"></a><span class="lineno"> 1039</span>&#160;<span class="comment"># The COLS_IN_ALPHA_INDEX tag can be used to specify the number of columns in</span></div>
-<div class="line"><a name="l01040"></a><span class="lineno"> 1040</span>&#160;<span class="comment"># which the alphabetical index list will be split.</span></div>
-<div class="line"><a name="l01041"></a><span class="lineno"> 1041</span>&#160;<span class="comment"># Minimum value: 1, maximum value: 20, default value: 5.</span></div>
-<div class="line"><a name="l01042"></a><span class="lineno"> 1042</span>&#160;<span class="comment"># This tag requires that the tag ALPHABETICAL_INDEX is set to YES.</span></div>
-<div class="line"><a name="l01043"></a><span class="lineno"> 1043</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l01044"></a><span class="lineno"> 1044</span>&#160;<span class="comment">COLS_IN_ALPHA_INDEX    = 5</span></div>
-<div class="line"><a name="l01045"></a><span class="lineno"> 1045</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l01046"></a><span class="lineno"> 1046</span>&#160;<span class="comment"># In case all classes in a project start with a common prefix, all classes will</span></div>
-<div class="line"><a name="l01047"></a><span class="lineno"> 1047</span>&#160;<span class="comment"># be put under the same header in the alphabetical index. The IGNORE_PREFIX tag</span></div>
-<div class="line"><a name="l01048"></a><span class="lineno"> 1048</span>&#160;<span class="comment"># can be used to specify a prefix (or a list of prefixes) that should be ignored</span></div>
-<div class="line"><a name="l01049"></a><span class="lineno"> 1049</span>&#160;<span class="comment"># while generating the index headers.</span></div>
-<div class="line"><a name="l01050"></a><span class="lineno"> 1050</span>&#160;<span class="comment"># This tag requires that the tag ALPHABETICAL_INDEX is set to YES.</span></div>
-<div class="line"><a name="l01051"></a><span class="lineno"> 1051</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l01052"></a><span class="lineno"> 1052</span>&#160;<span class="comment">IGNORE_PREFIX          = </span></div>
-<div class="line"><a name="l01053"></a><span class="lineno"> 1053</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l01054"></a><span class="lineno"> 1054</span>&#160;<span class="comment">#---------------------------------------------------------------------------</span></div>
-<div class="line"><a name="l01055"></a><span class="lineno"> 1055</span>&#160;<span class="comment"># Configuration options related to the HTML output</span></div>
-<div class="line"><a name="l01056"></a><span class="lineno"> 1056</span>&#160;<span class="comment">#---------------------------------------------------------------------------</span></div>
-<div class="line"><a name="l01057"></a><span class="lineno"> 1057</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l01058"></a><span class="lineno"> 1058</span>&#160;<span class="comment"># If the GENERATE_HTML tag is set to YES, doxygen will generate HTML output</span></div>
-<div class="line"><a name="l01059"></a><span class="lineno"> 1059</span>&#160;<span class="comment"># The default value is: YES.</span></div>
-<div class="line"><a name="l01060"></a><span class="lineno"> 1060</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l01061"></a><span class="lineno"> 1061</span>&#160;<span class="comment">GENERATE_HTML          = YES</span></div>
-<div class="line"><a name="l01062"></a><span class="lineno"> 1062</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l01063"></a><span class="lineno"> 1063</span>&#160;<span class="comment"># The HTML_OUTPUT tag is used to specify where the HTML docs will be put. If a</span></div>
-<div class="line"><a name="l01064"></a><span class="lineno"> 1064</span>&#160;<span class="comment"># relative path is entered the value of OUTPUT_DIRECTORY will be put in front of</span></div>
-<div class="line"><a name="l01065"></a><span class="lineno"> 1065</span>&#160;<span class="comment"># it.</span></div>
-<div class="line"><a name="l01066"></a><span class="lineno"> 1066</span>&#160;<span class="comment"># The default directory is: html.</span></div>
-<div class="line"><a name="l01067"></a><span class="lineno"> 1067</span>&#160;<span class="comment"># This tag requires that the tag GENERATE_HTML is set to YES.</span></div>
-<div class="line"><a name="l01068"></a><span class="lineno"> 1068</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l01069"></a><span class="lineno"> 1069</span>&#160;<span class="comment">HTML_OUTPUT            = html</span></div>
-<div class="line"><a name="l01070"></a><span class="lineno"> 1070</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l01071"></a><span class="lineno"> 1071</span>&#160;<span class="comment"># The HTML_FILE_EXTENSION tag can be used to specify the file extension for each</span></div>
-<div class="line"><a name="l01072"></a><span class="lineno"> 1072</span>&#160;<span class="comment"># generated HTML page (for example: .htm, .php, .asp).</span></div>
-<div class="line"><a name="l01073"></a><span class="lineno"> 1073</span>&#160;<span class="comment"># The default value is: .html.</span></div>
-<div class="line"><a name="l01074"></a><span class="lineno"> 1074</span>&#160;<span class="comment"># This tag requires that the tag GENERATE_HTML is set to YES.</span></div>
-<div class="line"><a name="l01075"></a><span class="lineno"> 1075</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l01076"></a><span class="lineno"> 1076</span>&#160;<span class="comment">HTML_FILE_EXTENSION    = .html</span></div>
-<div class="line"><a name="l01077"></a><span class="lineno"> 1077</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l01078"></a><span class="lineno"> 1078</span>&#160;<span class="comment"># The HTML_HEADER tag can be used to specify a user-defined HTML header file for</span></div>
-<div class="line"><a name="l01079"></a><span class="lineno"> 1079</span>&#160;<span class="comment"># each generated HTML page. If the tag is left blank doxygen will generate a</span></div>
-<div class="line"><a name="l01080"></a><span class="lineno"> 1080</span>&#160;<span class="comment"># standard header.</span></div>
-<div class="line"><a name="l01081"></a><span class="lineno"> 1081</span>&#160;<span class="comment">#</span></div>
-<div class="line"><a name="l01082"></a><span class="lineno"> 1082</span>&#160;<span class="comment"># To get valid HTML the header file that includes any scripts and style sheets</span></div>
-<div class="line"><a name="l01083"></a><span class="lineno"> 1083</span>&#160;<span class="comment"># that doxygen needs, which is dependent on the configuration options used (e.g.</span></div>
-<div class="line"><a name="l01084"></a><span class="lineno"> 1084</span>&#160;<span class="comment"># the setting GENERATE_TREEVIEW). It is highly recommended to start with a</span></div>
-<div class="line"><a name="l01085"></a><span class="lineno"> 1085</span>&#160;<span class="comment"># default header using</span></div>
-<div class="line"><a name="l01086"></a><span class="lineno"> 1086</span>&#160;<span class="comment"># doxygen -w html new_header.html new_footer.html new_stylesheet.css</span></div>
-<div class="line"><a name="l01087"></a><span class="lineno"> 1087</span>&#160;<span class="comment"># YourConfigFile</span></div>
-<div class="line"><a name="l01088"></a><span class="lineno"> 1088</span>&#160;<span class="comment"># and then modify the file new_header.html. See also section &quot;Doxygen usage&quot;</span></div>
-<div class="line"><a name="l01089"></a><span class="lineno"> 1089</span>&#160;<span class="comment"># for information on how to generate the default header that doxygen normally</span></div>
-<div class="line"><a name="l01090"></a><span class="lineno"> 1090</span>&#160;<span class="comment"># uses.</span></div>
-<div class="line"><a name="l01091"></a><span class="lineno"> 1091</span>&#160;<span class="comment"># Note: The header is subject to change so you typically have to regenerate the</span></div>
-<div class="line"><a name="l01092"></a><span class="lineno"> 1092</span>&#160;<span class="comment"># default header when upgrading to a newer version of doxygen. For a description</span></div>
-<div class="line"><a name="l01093"></a><span class="lineno"> 1093</span>&#160;<span class="comment"># of the possible markers and block names see the documentation.</span></div>
-<div class="line"><a name="l01094"></a><span class="lineno"> 1094</span>&#160;<span class="comment"># This tag requires that the tag GENERATE_HTML is set to YES.</span></div>
-<div class="line"><a name="l01095"></a><span class="lineno"> 1095</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l01096"></a><span class="lineno"> 1096</span>&#160;<span class="comment">HTML_HEADER            = </span></div>
-<div class="line"><a name="l01097"></a><span class="lineno"> 1097</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l01098"></a><span class="lineno"> 1098</span>&#160;<span class="comment"># The HTML_FOOTER tag can be used to specify a user-defined HTML footer for each</span></div>
-<div class="line"><a name="l01099"></a><span class="lineno"> 1099</span>&#160;<span class="comment"># generated HTML page. If the tag is left blank doxygen will generate a standard</span></div>
-<div class="line"><a name="l01100"></a><span class="lineno"> 1100</span>&#160;<span class="comment"># footer. See HTML_HEADER for more information on how to generate a default</span></div>
-<div class="line"><a name="l01101"></a><span class="lineno"> 1101</span>&#160;<span class="comment"># footer and what special commands can be used inside the footer. See also</span></div>
-<div class="line"><a name="l01102"></a><span class="lineno"> 1102</span>&#160;<span class="comment"># section &quot;Doxygen usage&quot; for information on how to generate the default footer</span></div>
-<div class="line"><a name="l01103"></a><span class="lineno"> 1103</span>&#160;<span class="comment"># that doxygen normally uses.</span></div>
-<div class="line"><a name="l01104"></a><span class="lineno"> 1104</span>&#160;<span class="comment"># This tag requires that the tag GENERATE_HTML is set to YES.</span></div>
-<div class="line"><a name="l01105"></a><span class="lineno"> 1105</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l01106"></a><span class="lineno"> 1106</span>&#160;<span class="comment">HTML_FOOTER            = </span></div>
-<div class="line"><a name="l01107"></a><span class="lineno"> 1107</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l01108"></a><span class="lineno"> 1108</span>&#160;<span class="comment"># The HTML_STYLESHEET tag can be used to specify a user-defined cascading style</span></div>
-<div class="line"><a name="l01109"></a><span class="lineno"> 1109</span>&#160;<span class="comment"># sheet that is used by each HTML page. It can be used to fine-tune the look of</span></div>
-<div class="line"><a name="l01110"></a><span class="lineno"> 1110</span>&#160;<span class="comment"># the HTML output. If left blank doxygen will generate a default style sheet.</span></div>
-<div class="line"><a name="l01111"></a><span class="lineno"> 1111</span>&#160;<span class="comment"># See also section &quot;Doxygen usage&quot; for information on how to generate the style</span></div>
-<div class="line"><a name="l01112"></a><span class="lineno"> 1112</span>&#160;<span class="comment"># sheet that doxygen normally uses.</span></div>
-<div class="line"><a name="l01113"></a><span class="lineno"> 1113</span>&#160;<span class="comment"># Note: It is recommended to use HTML_EXTRA_STYLESHEET instead of this tag, as</span></div>
-<div class="line"><a name="l01114"></a><span class="lineno"> 1114</span>&#160;<span class="comment"># it is more robust and this tag (HTML_STYLESHEET) will in the future become</span></div>
-<div class="line"><a name="l01115"></a><span class="lineno"> 1115</span>&#160;<span class="comment"># obsolete.</span></div>
-<div class="line"><a name="l01116"></a><span class="lineno"> 1116</span>&#160;<span class="comment"># This tag requires that the tag GENERATE_HTML is set to YES.</span></div>
-<div class="line"><a name="l01117"></a><span class="lineno"> 1117</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l01118"></a><span class="lineno"> 1118</span>&#160;<span class="comment">HTML_STYLESHEET        = </span></div>
-<div class="line"><a name="l01119"></a><span class="lineno"> 1119</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l01120"></a><span class="lineno"> 1120</span>&#160;<span class="comment"># The HTML_EXTRA_STYLESHEET tag can be used to specify additional user-defined</span></div>
-<div class="line"><a name="l01121"></a><span class="lineno"> 1121</span>&#160;<span class="comment"># cascading style sheets that are included after the standard style sheets</span></div>
-<div class="line"><a name="l01122"></a><span class="lineno"> 1122</span>&#160;<span class="comment"># created by doxygen. Using this option one can overrule certain style aspects.</span></div>
-<div class="line"><a name="l01123"></a><span class="lineno"> 1123</span>&#160;<span class="comment"># This is preferred over using HTML_STYLESHEET since it does not replace the</span></div>
-<div class="line"><a name="l01124"></a><span class="lineno"> 1124</span>&#160;<span class="comment"># standard style sheet and is therefore more robust against future updates.</span></div>
-<div class="line"><a name="l01125"></a><span class="lineno"> 1125</span>&#160;<span class="comment"># Doxygen will copy the style sheet files to the output directory.</span></div>
-<div class="line"><a name="l01126"></a><span class="lineno"> 1126</span>&#160;<span class="comment"># Note: The order of the extra style sheet files is of importance (e.g. the last</span></div>
-<div class="line"><a name="l01127"></a><span class="lineno"> 1127</span>&#160;<span class="comment"># style sheet in the list overrules the setting of the previous ones in the</span></div>
-<div class="line"><a name="l01128"></a><span class="lineno"> 1128</span>&#160;<span class="comment"># list). For an example see the documentation.</span></div>
-<div class="line"><a name="l01129"></a><span class="lineno"> 1129</span>&#160;<span class="comment"># This tag requires that the tag GENERATE_HTML is set to YES.</span></div>
-<div class="line"><a name="l01130"></a><span class="lineno"> 1130</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l01131"></a><span class="lineno"> 1131</span>&#160;<span class="comment">HTML_EXTRA_STYLESHEET  = </span></div>
-<div class="line"><a name="l01132"></a><span class="lineno"> 1132</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l01133"></a><span class="lineno"> 1133</span>&#160;<span class="comment"># The HTML_EXTRA_FILES tag can be used to specify one or more extra images or</span></div>
-<div class="line"><a name="l01134"></a><span class="lineno"> 1134</span>&#160;<span class="comment"># other source files which should be copied to the HTML output directory. Note</span></div>
-<div class="line"><a name="l01135"></a><span class="lineno"> 1135</span>&#160;<span class="comment"># that these files will be copied to the base HTML output directory. Use the</span></div>
-<div class="line"><a name="l01136"></a><span class="lineno"> 1136</span>&#160;<span class="comment"># $relpath^ marker in the HTML_HEADER and/or HTML_FOOTER files to load these</span></div>
-<div class="line"><a name="l01137"></a><span class="lineno"> 1137</span>&#160;<span class="comment"># files. In the HTML_STYLESHEET file, use the file name only. Also note that the</span></div>
-<div class="line"><a name="l01138"></a><span class="lineno"> 1138</span>&#160;<span class="comment"># files will be copied as-is; there are no commands or markers available.</span></div>
-<div class="line"><a name="l01139"></a><span class="lineno"> 1139</span>&#160;<span class="comment"># This tag requires that the tag GENERATE_HTML is set to YES.</span></div>
-<div class="line"><a name="l01140"></a><span class="lineno"> 1140</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l01141"></a><span class="lineno"> 1141</span>&#160;<span class="comment">HTML_EXTRA_FILES       = </span></div>
-<div class="line"><a name="l01142"></a><span class="lineno"> 1142</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l01143"></a><span class="lineno"> 1143</span>&#160;<span class="comment"># The HTML_COLORSTYLE_HUE tag controls the color of the HTML output. Doxygen</span></div>
-<div class="line"><a name="l01144"></a><span class="lineno"> 1144</span>&#160;<span class="comment"># will adjust the colors in the style sheet and background images according to</span></div>
-<div class="line"><a name="l01145"></a><span class="lineno"> 1145</span>&#160;<span class="comment"># this color. Hue is specified as an angle on a colorwheel, see</span></div>
-<div class="line"><a name="l01146"></a><span class="lineno"> 1146</span>&#160;<span class="comment"># http://en.wikipedia.org/wiki/Hue for more information. For instance the value</span></div>
-<div class="line"><a name="l01147"></a><span class="lineno"> 1147</span>&#160;<span class="comment"># 0 represents red, 60 is yellow, 120 is green, 180 is cyan, 240 is blue, 300</span></div>
-<div class="line"><a name="l01148"></a><span class="lineno"> 1148</span>&#160;<span class="comment"># purple, and 360 is red again.</span></div>
-<div class="line"><a name="l01149"></a><span class="lineno"> 1149</span>&#160;<span class="comment"># Minimum value: 0, maximum value: 359, default value: 220.</span></div>
-<div class="line"><a name="l01150"></a><span class="lineno"> 1150</span>&#160;<span class="comment"># This tag requires that the tag GENERATE_HTML is set to YES.</span></div>
-<div class="line"><a name="l01151"></a><span class="lineno"> 1151</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l01152"></a><span class="lineno"> 1152</span>&#160;<span class="comment">HTML_COLORSTYLE_HUE    = 220</span></div>
-<div class="line"><a name="l01153"></a><span class="lineno"> 1153</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l01154"></a><span class="lineno"> 1154</span>&#160;<span class="comment"># The HTML_COLORSTYLE_SAT tag controls the purity (or saturation) of the colors</span></div>
-<div class="line"><a name="l01155"></a><span class="lineno"> 1155</span>&#160;<span class="comment"># in the HTML output. For a value of 0 the output will use grayscales only. A</span></div>
-<div class="line"><a name="l01156"></a><span class="lineno"> 1156</span>&#160;<span class="comment"># value of 255 will produce the most vivid colors.</span></div>
-<div class="line"><a name="l01157"></a><span class="lineno"> 1157</span>&#160;<span class="comment"># Minimum value: 0, maximum value: 255, default value: 100.</span></div>
-<div class="line"><a name="l01158"></a><span class="lineno"> 1158</span>&#160;<span class="comment"># This tag requires that the tag GENERATE_HTML is set to YES.</span></div>
-<div class="line"><a name="l01159"></a><span class="lineno"> 1159</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l01160"></a><span class="lineno"> 1160</span>&#160;<span class="comment">HTML_COLORSTYLE_SAT    = 100</span></div>
-<div class="line"><a name="l01161"></a><span class="lineno"> 1161</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l01162"></a><span class="lineno"> 1162</span>&#160;<span class="comment"># The HTML_COLORSTYLE_GAMMA tag controls the gamma correction applied to the</span></div>
-<div class="line"><a name="l01163"></a><span class="lineno"> 1163</span>&#160;<span class="comment"># luminance component of the colors in the HTML output. Values below 100</span></div>
-<div class="line"><a name="l01164"></a><span class="lineno"> 1164</span>&#160;<span class="comment"># gradually make the output lighter, whereas values above 100 make the output</span></div>
-<div class="line"><a name="l01165"></a><span class="lineno"> 1165</span>&#160;<span class="comment"># darker. The value divided by 100 is the actual gamma applied, so 80 represents</span></div>
-<div class="line"><a name="l01166"></a><span class="lineno"> 1166</span>&#160;<span class="comment"># a gamma of 0.8, The value 220 represents a gamma of 2.2, and 100 does not</span></div>
-<div class="line"><a name="l01167"></a><span class="lineno"> 1167</span>&#160;<span class="comment"># change the gamma.</span></div>
-<div class="line"><a name="l01168"></a><span class="lineno"> 1168</span>&#160;<span class="comment"># Minimum value: 40, maximum value: 240, default value: 80.</span></div>
-<div class="line"><a name="l01169"></a><span class="lineno"> 1169</span>&#160;<span class="comment"># This tag requires that the tag GENERATE_HTML is set to YES.</span></div>
-<div class="line"><a name="l01170"></a><span class="lineno"> 1170</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l01171"></a><span class="lineno"> 1171</span>&#160;<span class="comment">HTML_COLORSTYLE_GAMMA  = 80</span></div>
-<div class="line"><a name="l01172"></a><span class="lineno"> 1172</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l01173"></a><span class="lineno"> 1173</span>&#160;<span class="comment"># If the HTML_TIMESTAMP tag is set to YES then the footer of each generated HTML</span></div>
-<div class="line"><a name="l01174"></a><span class="lineno"> 1174</span>&#160;<span class="comment"># page will contain the date and time when the page was generated. Setting this</span></div>
-<div class="line"><a name="l01175"></a><span class="lineno"> 1175</span>&#160;<span class="comment"># to YES can help to show when doxygen was last run and thus if the</span></div>
-<div class="line"><a name="l01176"></a><span class="lineno"> 1176</span>&#160;<span class="comment"># documentation is up to date.</span></div>
-<div class="line"><a name="l01177"></a><span class="lineno"> 1177</span>&#160;<span class="comment"># The default value is: NO.</span></div>
-<div class="line"><a name="l01178"></a><span class="lineno"> 1178</span>&#160;<span class="comment"># This tag requires that the tag GENERATE_HTML is set to YES.</span></div>
-<div class="line"><a name="l01179"></a><span class="lineno"> 1179</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l01180"></a><span class="lineno"> 1180</span>&#160;<span class="comment">HTML_TIMESTAMP         = NO</span></div>
-<div class="line"><a name="l01181"></a><span class="lineno"> 1181</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l01182"></a><span class="lineno"> 1182</span>&#160;<span class="comment"># If the HTML_DYNAMIC_SECTIONS tag is set to YES then the generated HTML</span></div>
-<div class="line"><a name="l01183"></a><span class="lineno"> 1183</span>&#160;<span class="comment"># documentation will contain sections that can be hidden and shown after the</span></div>
-<div class="line"><a name="l01184"></a><span class="lineno"> 1184</span>&#160;<span class="comment"># page has loaded.</span></div>
-<div class="line"><a name="l01185"></a><span class="lineno"> 1185</span>&#160;<span class="comment"># The default value is: NO.</span></div>
-<div class="line"><a name="l01186"></a><span class="lineno"> 1186</span>&#160;<span class="comment"># This tag requires that the tag GENERATE_HTML is set to YES.</span></div>
-<div class="line"><a name="l01187"></a><span class="lineno"> 1187</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l01188"></a><span class="lineno"> 1188</span>&#160;<span class="comment">HTML_DYNAMIC_SECTIONS  = NO</span></div>
-<div class="line"><a name="l01189"></a><span class="lineno"> 1189</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l01190"></a><span class="lineno"> 1190</span>&#160;<span class="comment"># With HTML_INDEX_NUM_ENTRIES one can control the preferred number of entries</span></div>
-<div class="line"><a name="l01191"></a><span class="lineno"> 1191</span>&#160;<span class="comment"># shown in the various tree structured indices initially; the user can expand</span></div>
-<div class="line"><a name="l01192"></a><span class="lineno"> 1192</span>&#160;<span class="comment"># and collapse entries dynamically later on. Doxygen will expand the tree to</span></div>
-<div class="line"><a name="l01193"></a><span class="lineno"> 1193</span>&#160;<span class="comment"># such a level that at most the specified number of entries are visible (unless</span></div>
-<div class="line"><a name="l01194"></a><span class="lineno"> 1194</span>&#160;<span class="comment"># a fully collapsed tree already exceeds this amount). So setting the number of</span></div>
-<div class="line"><a name="l01195"></a><span class="lineno"> 1195</span>&#160;<span class="comment"># entries 1 will produce a full collapsed tree by default. 0 is a special value</span></div>
-<div class="line"><a name="l01196"></a><span class="lineno"> 1196</span>&#160;<span class="comment"># representing an infinite number of entries and will result in a full expanded</span></div>
-<div class="line"><a name="l01197"></a><span class="lineno"> 1197</span>&#160;<span class="comment"># tree by default.</span></div>
-<div class="line"><a name="l01198"></a><span class="lineno"> 1198</span>&#160;<span class="comment"># Minimum value: 0, maximum value: 9999, default value: 100.</span></div>
-<div class="line"><a name="l01199"></a><span class="lineno"> 1199</span>&#160;<span class="comment"># This tag requires that the tag GENERATE_HTML is set to YES.</span></div>
-<div class="line"><a name="l01200"></a><span class="lineno"> 1200</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l01201"></a><span class="lineno"> 1201</span>&#160;<span class="comment">HTML_INDEX_NUM_ENTRIES = 100</span></div>
-<div class="line"><a name="l01202"></a><span class="lineno"> 1202</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l01203"></a><span class="lineno"> 1203</span>&#160;<span class="comment"># If the GENERATE_DOCSET tag is set to YES, additional index files will be</span></div>
-<div class="line"><a name="l01204"></a><span class="lineno"> 1204</span>&#160;<span class="comment"># generated that can be used as input for Apple&#39;s Xcode 3 integrated development</span></div>
-<div class="line"><a name="l01205"></a><span class="lineno"> 1205</span>&#160;<span class="comment"># environment (see: http://developer.apple.com/tools/xcode/), introduced with</span></div>
-<div class="line"><a name="l01206"></a><span class="lineno"> 1206</span>&#160;<span class="comment"># OSX 10.5 (Leopard). To create a documentation set, doxygen will generate a</span></div>
-<div class="line"><a name="l01207"></a><span class="lineno"> 1207</span>&#160;<span class="comment"># Makefile in the HTML output directory. Running make will produce the docset in</span></div>
-<div class="line"><a name="l01208"></a><span class="lineno"> 1208</span>&#160;<span class="comment"># that directory and running make install will install the docset in</span></div>
-<div class="line"><a name="l01209"></a><span class="lineno"> 1209</span>&#160;<span class="comment"># ~/Library/Developer/Shared/Documentation/DocSets so that Xcode will find it at</span></div>
-<div class="line"><a name="l01210"></a><span class="lineno"> 1210</span>&#160;<span class="comment"># startup. See http://developer.apple.com/tools/creatingdocsetswithdoxygen.html</span></div>
-<div class="line"><a name="l01211"></a><span class="lineno"> 1211</span>&#160;<span class="comment"># for more information.</span></div>
-<div class="line"><a name="l01212"></a><span class="lineno"> 1212</span>&#160;<span class="comment"># The default value is: NO.</span></div>
-<div class="line"><a name="l01213"></a><span class="lineno"> 1213</span>&#160;<span class="comment"># This tag requires that the tag GENERATE_HTML is set to YES.</span></div>
-<div class="line"><a name="l01214"></a><span class="lineno"> 1214</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l01215"></a><span class="lineno"> 1215</span>&#160;<span class="comment">GENERATE_DOCSET        = NO</span></div>
-<div class="line"><a name="l01216"></a><span class="lineno"> 1216</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l01217"></a><span class="lineno"> 1217</span>&#160;<span class="comment"># This tag determines the name of the docset feed. A documentation feed provides</span></div>
-<div class="line"><a name="l01218"></a><span class="lineno"> 1218</span>&#160;<span class="comment"># an umbrella under which multiple documentation sets from a single provider</span></div>
-<div class="line"><a name="l01219"></a><span class="lineno"> 1219</span>&#160;<span class="comment"># (such as a company or product suite) can be grouped.</span></div>
-<div class="line"><a name="l01220"></a><span class="lineno"> 1220</span>&#160;<span class="comment"># The default value is: Doxygen generated docs.</span></div>
-<div class="line"><a name="l01221"></a><span class="lineno"> 1221</span>&#160;<span class="comment"># This tag requires that the tag GENERATE_DOCSET is set to YES.</span></div>
-<div class="line"><a name="l01222"></a><span class="lineno"> 1222</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l01223"></a><span class="lineno"> 1223</span>&#160;<span class="comment">DOCSET_FEEDNAME        = &quot;Doxygen generated docs&quot;</span></div>
-<div class="line"><a name="l01224"></a><span class="lineno"> 1224</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l01225"></a><span class="lineno"> 1225</span>&#160;<span class="comment"># This tag specifies a string that should uniquely identify the documentation</span></div>
-<div class="line"><a name="l01226"></a><span class="lineno"> 1226</span>&#160;<span class="comment"># set bundle. This should be a reverse domain-name style string, e.g.</span></div>
-<div class="line"><a name="l01227"></a><span class="lineno"> 1227</span>&#160;<span class="comment"># com.mycompany.MyDocSet. Doxygen will append .docset to the name.</span></div>
-<div class="line"><a name="l01228"></a><span class="lineno"> 1228</span>&#160;<span class="comment"># The default value is: org.doxygen.Project.</span></div>
-<div class="line"><a name="l01229"></a><span class="lineno"> 1229</span>&#160;<span class="comment"># This tag requires that the tag GENERATE_DOCSET is set to YES.</span></div>
-<div class="line"><a name="l01230"></a><span class="lineno"> 1230</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l01231"></a><span class="lineno"> 1231</span>&#160;<span class="comment">DOCSET_BUNDLE_ID       = org.doxygen.Project</span></div>
-<div class="line"><a name="l01232"></a><span class="lineno"> 1232</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l01233"></a><span class="lineno"> 1233</span>&#160;<span class="comment"># The DOCSET_PUBLISHER_ID tag specifies a string that should uniquely identify</span></div>
-<div class="line"><a name="l01234"></a><span class="lineno"> 1234</span>&#160;<span class="comment"># the documentation publisher. This should be a reverse domain-name style</span></div>
-<div class="line"><a name="l01235"></a><span class="lineno"> 1235</span>&#160;<span class="comment"># string, e.g. com.mycompany.MyDocSet.documentation.</span></div>
-<div class="line"><a name="l01236"></a><span class="lineno"> 1236</span>&#160;<span class="comment"># The default value is: org.doxygen.Publisher.</span></div>
-<div class="line"><a name="l01237"></a><span class="lineno"> 1237</span>&#160;<span class="comment"># This tag requires that the tag GENERATE_DOCSET is set to YES.</span></div>
-<div class="line"><a name="l01238"></a><span class="lineno"> 1238</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l01239"></a><span class="lineno"> 1239</span>&#160;<span class="comment">DOCSET_PUBLISHER_ID    = org.doxygen.Publisher</span></div>
-<div class="line"><a name="l01240"></a><span class="lineno"> 1240</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l01241"></a><span class="lineno"> 1241</span>&#160;<span class="comment"># The DOCSET_PUBLISHER_NAME tag identifies the documentation publisher.</span></div>
-<div class="line"><a name="l01242"></a><span class="lineno"> 1242</span>&#160;<span class="comment"># The default value is: Publisher.</span></div>
-<div class="line"><a name="l01243"></a><span class="lineno"> 1243</span>&#160;<span class="comment"># This tag requires that the tag GENERATE_DOCSET is set to YES.</span></div>
-<div class="line"><a name="l01244"></a><span class="lineno"> 1244</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l01245"></a><span class="lineno"> 1245</span>&#160;<span class="comment">DOCSET_PUBLISHER_NAME  = Publisher</span></div>
-<div class="line"><a name="l01246"></a><span class="lineno"> 1246</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l01247"></a><span class="lineno"> 1247</span>&#160;<span class="comment"># If the GENERATE_HTMLHELP tag is set to YES then doxygen generates three</span></div>
-<div class="line"><a name="l01248"></a><span class="lineno"> 1248</span>&#160;<span class="comment"># additional HTML index files: index.hhp, index.hhc, and index.hhk. The</span></div>
-<div class="line"><a name="l01249"></a><span class="lineno"> 1249</span>&#160;<span class="comment"># index.hhp is a project file that can be read by Microsoft&#39;s HTML Help Workshop</span></div>
-<div class="line"><a name="l01250"></a><span class="lineno"> 1250</span>&#160;<span class="comment"># (see: http://www.microsoft.com/en-us/download/details.aspx?id=21138) on</span></div>
-<div class="line"><a name="l01251"></a><span class="lineno"> 1251</span>&#160;<span class="comment"># Windows.</span></div>
-<div class="line"><a name="l01252"></a><span class="lineno"> 1252</span>&#160;<span class="comment">#</span></div>
-<div class="line"><a name="l01253"></a><span class="lineno"> 1253</span>&#160;<span class="comment"># The HTML Help Workshop contains a compiler that can convert all HTML output</span></div>
-<div class="line"><a name="l01254"></a><span class="lineno"> 1254</span>&#160;<span class="comment"># generated by doxygen into a single compiled HTML file (.chm). Compiled HTML</span></div>
-<div class="line"><a name="l01255"></a><span class="lineno"> 1255</span>&#160;<span class="comment"># files are now used as the Windows 98 help format, and will replace the old</span></div>
-<div class="line"><a name="l01256"></a><span class="lineno"> 1256</span>&#160;<span class="comment"># Windows help format (.hlp) on all Windows platforms in the future. Compressed</span></div>
-<div class="line"><a name="l01257"></a><span class="lineno"> 1257</span>&#160;<span class="comment"># HTML files also contain an index, a table of contents, and you can search for</span></div>
-<div class="line"><a name="l01258"></a><span class="lineno"> 1258</span>&#160;<span class="comment"># words in the documentation. The HTML workshop also contains a viewer for</span></div>
-<div class="line"><a name="l01259"></a><span class="lineno"> 1259</span>&#160;<span class="comment"># compressed HTML files.</span></div>
-<div class="line"><a name="l01260"></a><span class="lineno"> 1260</span>&#160;<span class="comment"># The default value is: NO.</span></div>
-<div class="line"><a name="l01261"></a><span class="lineno"> 1261</span>&#160;<span class="comment"># This tag requires that the tag GENERATE_HTML is set to YES.</span></div>
-<div class="line"><a name="l01262"></a><span class="lineno"> 1262</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l01263"></a><span class="lineno"> 1263</span>&#160;<span class="comment">GENERATE_HTMLHELP      = NO</span></div>
-<div class="line"><a name="l01264"></a><span class="lineno"> 1264</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l01265"></a><span class="lineno"> 1265</span>&#160;<span class="comment"># The CHM_FILE tag can be used to specify the file name of the resulting .chm</span></div>
-<div class="line"><a name="l01266"></a><span class="lineno"> 1266</span>&#160;<span class="comment"># file. You can add a path in front of the file if the result should not be</span></div>
-<div class="line"><a name="l01267"></a><span class="lineno"> 1267</span>&#160;<span class="comment"># written to the html output directory.</span></div>
-<div class="line"><a name="l01268"></a><span class="lineno"> 1268</span>&#160;<span class="comment"># This tag requires that the tag GENERATE_HTMLHELP is set to YES.</span></div>
-<div class="line"><a name="l01269"></a><span class="lineno"> 1269</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l01270"></a><span class="lineno"> 1270</span>&#160;<span class="comment">CHM_FILE               = </span></div>
-<div class="line"><a name="l01271"></a><span class="lineno"> 1271</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l01272"></a><span class="lineno"> 1272</span>&#160;<span class="comment"># The HHC_LOCATION tag can be used to specify the location (absolute path</span></div>
-<div class="line"><a name="l01273"></a><span class="lineno"> 1273</span>&#160;<span class="comment"># including file name) of the HTML help compiler (hhc.exe). If non-empty,</span></div>
-<div class="line"><a name="l01274"></a><span class="lineno"> 1274</span>&#160;<span class="comment"># doxygen will try to run the HTML help compiler on the generated index.hhp.</span></div>
-<div class="line"><a name="l01275"></a><span class="lineno"> 1275</span>&#160;<span class="comment"># The file has to be specified with full path.</span></div>
-<div class="line"><a name="l01276"></a><span class="lineno"> 1276</span>&#160;<span class="comment"># This tag requires that the tag GENERATE_HTMLHELP is set to YES.</span></div>
-<div class="line"><a name="l01277"></a><span class="lineno"> 1277</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l01278"></a><span class="lineno"> 1278</span>&#160;<span class="comment">HHC_LOCATION           = </span></div>
-<div class="line"><a name="l01279"></a><span class="lineno"> 1279</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l01280"></a><span class="lineno"> 1280</span>&#160;<span class="comment"># The GENERATE_CHI flag controls if a separate .chi index file is generated</span></div>
-<div class="line"><a name="l01281"></a><span class="lineno"> 1281</span>&#160;<span class="comment"># (YES) or that it should be included in the master .chm file (NO).</span></div>
-<div class="line"><a name="l01282"></a><span class="lineno"> 1282</span>&#160;<span class="comment"># The default value is: NO.</span></div>
-<div class="line"><a name="l01283"></a><span class="lineno"> 1283</span>&#160;<span class="comment"># This tag requires that the tag GENERATE_HTMLHELP is set to YES.</span></div>
-<div class="line"><a name="l01284"></a><span class="lineno"> 1284</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l01285"></a><span class="lineno"> 1285</span>&#160;<span class="comment">GENERATE_CHI           = NO</span></div>
-<div class="line"><a name="l01286"></a><span class="lineno"> 1286</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l01287"></a><span class="lineno"> 1287</span>&#160;<span class="comment"># The CHM_INDEX_ENCODING is used to encode HtmlHelp index (hhk), content (hhc)</span></div>
-<div class="line"><a name="l01288"></a><span class="lineno"> 1288</span>&#160;<span class="comment"># and project file content.</span></div>
-<div class="line"><a name="l01289"></a><span class="lineno"> 1289</span>&#160;<span class="comment"># This tag requires that the tag GENERATE_HTMLHELP is set to YES.</span></div>
-<div class="line"><a name="l01290"></a><span class="lineno"> 1290</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l01291"></a><span class="lineno"> 1291</span>&#160;<span class="comment">CHM_INDEX_ENCODING     = </span></div>
-<div class="line"><a name="l01292"></a><span class="lineno"> 1292</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l01293"></a><span class="lineno"> 1293</span>&#160;<span class="comment"># The BINARY_TOC flag controls whether a binary table of contents is generated</span></div>
-<div class="line"><a name="l01294"></a><span class="lineno"> 1294</span>&#160;<span class="comment"># (YES) or a normal table of contents (NO) in the .chm file. Furthermore it</span></div>
-<div class="line"><a name="l01295"></a><span class="lineno"> 1295</span>&#160;<span class="comment"># enables the Previous and Next buttons.</span></div>
-<div class="line"><a name="l01296"></a><span class="lineno"> 1296</span>&#160;<span class="comment"># The default value is: NO.</span></div>
-<div class="line"><a name="l01297"></a><span class="lineno"> 1297</span>&#160;<span class="comment"># This tag requires that the tag GENERATE_HTMLHELP is set to YES.</span></div>
-<div class="line"><a name="l01298"></a><span class="lineno"> 1298</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l01299"></a><span class="lineno"> 1299</span>&#160;<span class="comment">BINARY_TOC             = NO</span></div>
-<div class="line"><a name="l01300"></a><span class="lineno"> 1300</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l01301"></a><span class="lineno"> 1301</span>&#160;<span class="comment"># The TOC_EXPAND flag can be set to YES to add extra items for group members to</span></div>
-<div class="line"><a name="l01302"></a><span class="lineno"> 1302</span>&#160;<span class="comment"># the table of contents of the HTML help documentation and to the tree view.</span></div>
-<div class="line"><a name="l01303"></a><span class="lineno"> 1303</span>&#160;<span class="comment"># The default value is: NO.</span></div>
-<div class="line"><a name="l01304"></a><span class="lineno"> 1304</span>&#160;<span class="comment"># This tag requires that the tag GENERATE_HTMLHELP is set to YES.</span></div>
-<div class="line"><a name="l01305"></a><span class="lineno"> 1305</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l01306"></a><span class="lineno"> 1306</span>&#160;<span class="comment">TOC_EXPAND             = NO</span></div>
-<div class="line"><a name="l01307"></a><span class="lineno"> 1307</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l01308"></a><span class="lineno"> 1308</span>&#160;<span class="comment"># If the GENERATE_QHP tag is set to YES and both QHP_NAMESPACE and</span></div>
-<div class="line"><a name="l01309"></a><span class="lineno"> 1309</span>&#160;<span class="comment"># QHP_VIRTUAL_FOLDER are set, an additional index file will be generated that</span></div>
-<div class="line"><a name="l01310"></a><span class="lineno"> 1310</span>&#160;<span class="comment"># can be used as input for Qt&#39;s qhelpgenerator to generate a Qt Compressed Help</span></div>
-<div class="line"><a name="l01311"></a><span class="lineno"> 1311</span>&#160;<span class="comment"># (.qch) of the generated HTML documentation.</span></div>
-<div class="line"><a name="l01312"></a><span class="lineno"> 1312</span>&#160;<span class="comment"># The default value is: NO.</span></div>
-<div class="line"><a name="l01313"></a><span class="lineno"> 1313</span>&#160;<span class="comment"># This tag requires that the tag GENERATE_HTML is set to YES.</span></div>
-<div class="line"><a name="l01314"></a><span class="lineno"> 1314</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l01315"></a><span class="lineno"> 1315</span>&#160;<span class="comment">GENERATE_QHP           = NO</span></div>
-<div class="line"><a name="l01316"></a><span class="lineno"> 1316</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l01317"></a><span class="lineno"> 1317</span>&#160;<span class="comment"># If the QHG_LOCATION tag is specified, the QCH_FILE tag can be used to specify</span></div>
-<div class="line"><a name="l01318"></a><span class="lineno"> 1318</span>&#160;<span class="comment"># the file name of the resulting .qch file. The path specified is relative to</span></div>
-<div class="line"><a name="l01319"></a><span class="lineno"> 1319</span>&#160;<span class="comment"># the HTML output folder.</span></div>
-<div class="line"><a name="l01320"></a><span class="lineno"> 1320</span>&#160;<span class="comment"># This tag requires that the tag GENERATE_QHP is set to YES.</span></div>
-<div class="line"><a name="l01321"></a><span class="lineno"> 1321</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l01322"></a><span class="lineno"> 1322</span>&#160;<span class="comment">QCH_FILE               = </span></div>
-<div class="line"><a name="l01323"></a><span class="lineno"> 1323</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l01324"></a><span class="lineno"> 1324</span>&#160;<span class="comment"># The QHP_NAMESPACE tag specifies the namespace to use when generating Qt Help</span></div>
-<div class="line"><a name="l01325"></a><span class="lineno"> 1325</span>&#160;<span class="comment"># Project output. For more information please see Qt Help Project / Namespace</span></div>
-<div class="line"><a name="l01326"></a><span class="lineno"> 1326</span>&#160;<span class="comment"># (see: http://qt-project.org/doc/qt-4.8/qthelpproject.html#namespace).</span></div>
-<div class="line"><a name="l01327"></a><span class="lineno"> 1327</span>&#160;<span class="comment"># The default value is: org.doxygen.Project.</span></div>
-<div class="line"><a name="l01328"></a><span class="lineno"> 1328</span>&#160;<span class="comment"># This tag requires that the tag GENERATE_QHP is set to YES.</span></div>
-<div class="line"><a name="l01329"></a><span class="lineno"> 1329</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l01330"></a><span class="lineno"> 1330</span>&#160;<span class="comment">QHP_NAMESPACE          = org.doxygen.Project</span></div>
-<div class="line"><a name="l01331"></a><span class="lineno"> 1331</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l01332"></a><span class="lineno"> 1332</span>&#160;<span class="comment"># The QHP_VIRTUAL_FOLDER tag specifies the namespace to use when generating Qt</span></div>
-<div class="line"><a name="l01333"></a><span class="lineno"> 1333</span>&#160;<span class="comment"># Help Project output. For more information please see Qt Help Project / Virtual</span></div>
-<div class="line"><a name="l01334"></a><span class="lineno"> 1334</span>&#160;<span class="comment"># Folders (see: http://qt-project.org/doc/qt-4.8/qthelpproject.html#virtual-</span></div>
-<div class="line"><a name="l01335"></a><span class="lineno"> 1335</span>&#160;<span class="comment"># folders).</span></div>
-<div class="line"><a name="l01336"></a><span class="lineno"> 1336</span>&#160;<span class="comment"># The default value is: doc.</span></div>
-<div class="line"><a name="l01337"></a><span class="lineno"> 1337</span>&#160;<span class="comment"># This tag requires that the tag GENERATE_QHP is set to YES.</span></div>
-<div class="line"><a name="l01338"></a><span class="lineno"> 1338</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l01339"></a><span class="lineno"> 1339</span>&#160;<span class="comment">QHP_VIRTUAL_FOLDER     = doc</span></div>
-<div class="line"><a name="l01340"></a><span class="lineno"> 1340</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l01341"></a><span class="lineno"> 1341</span>&#160;<span class="comment"># If the QHP_CUST_FILTER_NAME tag is set, it specifies the name of a custom</span></div>
-<div class="line"><a name="l01342"></a><span class="lineno"> 1342</span>&#160;<span class="comment"># filter to add. For more information please see Qt Help Project / Custom</span></div>
-<div class="line"><a name="l01343"></a><span class="lineno"> 1343</span>&#160;<span class="comment"># Filters (see: http://qt-project.org/doc/qt-4.8/qthelpproject.html#custom-</span></div>
-<div class="line"><a name="l01344"></a><span class="lineno"> 1344</span>&#160;<span class="comment"># filters).</span></div>
-<div class="line"><a name="l01345"></a><span class="lineno"> 1345</span>&#160;<span class="comment"># This tag requires that the tag GENERATE_QHP is set to YES.</span></div>
-<div class="line"><a name="l01346"></a><span class="lineno"> 1346</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l01347"></a><span class="lineno"> 1347</span>&#160;<span class="comment">QHP_CUST_FILTER_NAME   = </span></div>
-<div class="line"><a name="l01348"></a><span class="lineno"> 1348</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l01349"></a><span class="lineno"> 1349</span>&#160;<span class="comment"># The QHP_CUST_FILTER_ATTRS tag specifies the list of the attributes of the</span></div>
-<div class="line"><a name="l01350"></a><span class="lineno"> 1350</span>&#160;<span class="comment"># custom filter to add. For more information please see Qt Help Project / Custom</span></div>
-<div class="line"><a name="l01351"></a><span class="lineno"> 1351</span>&#160;<span class="comment"># Filters (see: http://qt-project.org/doc/qt-4.8/qthelpproject.html#custom-</span></div>
-<div class="line"><a name="l01352"></a><span class="lineno"> 1352</span>&#160;<span class="comment"># filters).</span></div>
-<div class="line"><a name="l01353"></a><span class="lineno"> 1353</span>&#160;<span class="comment"># This tag requires that the tag GENERATE_QHP is set to YES.</span></div>
-<div class="line"><a name="l01354"></a><span class="lineno"> 1354</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l01355"></a><span class="lineno"> 1355</span>&#160;<span class="comment">QHP_CUST_FILTER_ATTRS  = </span></div>
-<div class="line"><a name="l01356"></a><span class="lineno"> 1356</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l01357"></a><span class="lineno"> 1357</span>&#160;<span class="comment"># The QHP_SECT_FILTER_ATTRS tag specifies the list of the attributes this</span></div>
-<div class="line"><a name="l01358"></a><span class="lineno"> 1358</span>&#160;<span class="comment"># project&#39;s filter section matches. Qt Help Project / Filter Attributes (see:</span></div>
-<div class="line"><a name="l01359"></a><span class="lineno"> 1359</span>&#160;<span class="comment"># http://qt-project.org/doc/qt-4.8/qthelpproject.html#filter-attributes).</span></div>
-<div class="line"><a name="l01360"></a><span class="lineno"> 1360</span>&#160;<span class="comment"># This tag requires that the tag GENERATE_QHP is set to YES.</span></div>
-<div class="line"><a name="l01361"></a><span class="lineno"> 1361</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l01362"></a><span class="lineno"> 1362</span>&#160;<span class="comment">QHP_SECT_FILTER_ATTRS  = </span></div>
-<div class="line"><a name="l01363"></a><span class="lineno"> 1363</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l01364"></a><span class="lineno"> 1364</span>&#160;<span class="comment"># The QHG_LOCATION tag can be used to specify the location of Qt&#39;s</span></div>
-<div class="line"><a name="l01365"></a><span class="lineno"> 1365</span>&#160;<span class="comment"># qhelpgenerator. If non-empty doxygen will try to run qhelpgenerator on the</span></div>
-<div class="line"><a name="l01366"></a><span class="lineno"> 1366</span>&#160;<span class="comment"># generated .qhp file.</span></div>
-<div class="line"><a name="l01367"></a><span class="lineno"> 1367</span>&#160;<span class="comment"># This tag requires that the tag GENERATE_QHP is set to YES.</span></div>
-<div class="line"><a name="l01368"></a><span class="lineno"> 1368</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l01369"></a><span class="lineno"> 1369</span>&#160;<span class="comment">QHG_LOCATION           = </span></div>
-<div class="line"><a name="l01370"></a><span class="lineno"> 1370</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l01371"></a><span class="lineno"> 1371</span>&#160;<span class="comment"># If the GENERATE_ECLIPSEHELP tag is set to YES, additional index files will be</span></div>
-<div class="line"><a name="l01372"></a><span class="lineno"> 1372</span>&#160;<span class="comment"># generated, together with the HTML files, they form an Eclipse help plugin. To</span></div>
-<div class="line"><a name="l01373"></a><span class="lineno"> 1373</span>&#160;<span class="comment"># install this plugin and make it available under the help contents menu in</span></div>
-<div class="line"><a name="l01374"></a><span class="lineno"> 1374</span>&#160;<span class="comment"># Eclipse, the contents of the directory containing the HTML and XML files needs</span></div>
-<div class="line"><a name="l01375"></a><span class="lineno"> 1375</span>&#160;<span class="comment"># to be copied into the plugins directory of eclipse. The name of the directory</span></div>
-<div class="line"><a name="l01376"></a><span class="lineno"> 1376</span>&#160;<span class="comment"># within the plugins directory should be the same as the ECLIPSE_DOC_ID value.</span></div>
-<div class="line"><a name="l01377"></a><span class="lineno"> 1377</span>&#160;<span class="comment"># After copying Eclipse needs to be restarted before the help appears.</span></div>
-<div class="line"><a name="l01378"></a><span class="lineno"> 1378</span>&#160;<span class="comment"># The default value is: NO.</span></div>
-<div class="line"><a name="l01379"></a><span class="lineno"> 1379</span>&#160;<span class="comment"># This tag requires that the tag GENERATE_HTML is set to YES.</span></div>
-<div class="line"><a name="l01380"></a><span class="lineno"> 1380</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l01381"></a><span class="lineno"> 1381</span>&#160;<span class="comment">GENERATE_ECLIPSEHELP   = NO</span></div>
-<div class="line"><a name="l01382"></a><span class="lineno"> 1382</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l01383"></a><span class="lineno"> 1383</span>&#160;<span class="comment"># A unique identifier for the Eclipse help plugin. When installing the plugin</span></div>
-<div class="line"><a name="l01384"></a><span class="lineno"> 1384</span>&#160;<span class="comment"># the directory name containing the HTML and XML files should also have this</span></div>
-<div class="line"><a name="l01385"></a><span class="lineno"> 1385</span>&#160;<span class="comment"># name. Each documentation set should have its own identifier.</span></div>
-<div class="line"><a name="l01386"></a><span class="lineno"> 1386</span>&#160;<span class="comment"># The default value is: org.doxygen.Project.</span></div>
-<div class="line"><a name="l01387"></a><span class="lineno"> 1387</span>&#160;<span class="comment"># This tag requires that the tag GENERATE_ECLIPSEHELP is set to YES.</span></div>
-<div class="line"><a name="l01388"></a><span class="lineno"> 1388</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l01389"></a><span class="lineno"> 1389</span>&#160;<span class="comment">ECLIPSE_DOC_ID         = org.doxygen.Project</span></div>
-<div class="line"><a name="l01390"></a><span class="lineno"> 1390</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l01391"></a><span class="lineno"> 1391</span>&#160;<span class="comment"># If you want full control over the layout of the generated HTML pages it might</span></div>
-<div class="line"><a name="l01392"></a><span class="lineno"> 1392</span>&#160;<span class="comment"># be necessary to disable the index and replace it with your own. The</span></div>
-<div class="line"><a name="l01393"></a><span class="lineno"> 1393</span>&#160;<span class="comment"># DISABLE_INDEX tag can be used to turn on/off the condensed index (tabs) at top</span></div>
-<div class="line"><a name="l01394"></a><span class="lineno"> 1394</span>&#160;<span class="comment"># of each HTML page. A value of NO enables the index and the value YES disables</span></div>
-<div class="line"><a name="l01395"></a><span class="lineno"> 1395</span>&#160;<span class="comment"># it. Since the tabs in the index contain the same information as the navigation</span></div>
-<div class="line"><a name="l01396"></a><span class="lineno"> 1396</span>&#160;<span class="comment"># tree, you can set this option to YES if you also set GENERATE_TREEVIEW to YES.</span></div>
-<div class="line"><a name="l01397"></a><span class="lineno"> 1397</span>&#160;<span class="comment"># The default value is: NO.</span></div>
-<div class="line"><a name="l01398"></a><span class="lineno"> 1398</span>&#160;<span class="comment"># This tag requires that the tag GENERATE_HTML is set to YES.</span></div>
-<div class="line"><a name="l01399"></a><span class="lineno"> 1399</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l01400"></a><span class="lineno"> 1400</span>&#160;<span class="comment">DISABLE_INDEX          = NO</span></div>
-<div class="line"><a name="l01401"></a><span class="lineno"> 1401</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l01402"></a><span class="lineno"> 1402</span>&#160;<span class="comment"># The GENERATE_TREEVIEW tag is used to specify whether a tree-like index</span></div>
-<div class="line"><a name="l01403"></a><span class="lineno"> 1403</span>&#160;<span class="comment"># structure should be generated to display hierarchical information. If the tag</span></div>
-<div class="line"><a name="l01404"></a><span class="lineno"> 1404</span>&#160;<span class="comment"># value is set to YES, a side panel will be generated containing a tree-like</span></div>
-<div class="line"><a name="l01405"></a><span class="lineno"> 1405</span>&#160;<span class="comment"># index structure (just like the one that is generated for HTML Help). For this</span></div>
-<div class="line"><a name="l01406"></a><span class="lineno"> 1406</span>&#160;<span class="comment"># to work a browser that supports JavaScript, DHTML, CSS and frames is required</span></div>
-<div class="line"><a name="l01407"></a><span class="lineno"> 1407</span>&#160;<span class="comment"># (i.e. any modern browser). Windows users are probably better off using the</span></div>
-<div class="line"><a name="l01408"></a><span class="lineno"> 1408</span>&#160;<span class="comment"># HTML help feature. Via custom style sheets (see HTML_EXTRA_STYLESHEET) one can</span></div>
-<div class="line"><a name="l01409"></a><span class="lineno"> 1409</span>&#160;<span class="comment"># further fine-tune the look of the index. As an example, the default style</span></div>
-<div class="line"><a name="l01410"></a><span class="lineno"> 1410</span>&#160;<span class="comment"># sheet generated by doxygen has an example that shows how to put an image at</span></div>
-<div class="line"><a name="l01411"></a><span class="lineno"> 1411</span>&#160;<span class="comment"># the root of the tree instead of the PROJECT_NAME. Since the tree basically has</span></div>
-<div class="line"><a name="l01412"></a><span class="lineno"> 1412</span>&#160;<span class="comment"># the same information as the tab index, you could consider setting</span></div>
-<div class="line"><a name="l01413"></a><span class="lineno"> 1413</span>&#160;<span class="comment"># DISABLE_INDEX to YES when enabling this option.</span></div>
-<div class="line"><a name="l01414"></a><span class="lineno"> 1414</span>&#160;<span class="comment"># The default value is: NO.</span></div>
-<div class="line"><a name="l01415"></a><span class="lineno"> 1415</span>&#160;<span class="comment"># This tag requires that the tag GENERATE_HTML is set to YES.</span></div>
-<div class="line"><a name="l01416"></a><span class="lineno"> 1416</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l01417"></a><span class="lineno"> 1417</span>&#160;<span class="comment">GENERATE_TREEVIEW      = NO</span></div>
-<div class="line"><a name="l01418"></a><span class="lineno"> 1418</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l01419"></a><span class="lineno"> 1419</span>&#160;<span class="comment"># The ENUM_VALUES_PER_LINE tag can be used to set the number of enum values that</span></div>
-<div class="line"><a name="l01420"></a><span class="lineno"> 1420</span>&#160;<span class="comment"># doxygen will group on one line in the generated HTML documentation.</span></div>
-<div class="line"><a name="l01421"></a><span class="lineno"> 1421</span>&#160;<span class="comment">#</span></div>
-<div class="line"><a name="l01422"></a><span class="lineno"> 1422</span>&#160;<span class="comment"># Note that a value of 0 will completely suppress the enum values from appearing</span></div>
-<div class="line"><a name="l01423"></a><span class="lineno"> 1423</span>&#160;<span class="comment"># in the overview section.</span></div>
-<div class="line"><a name="l01424"></a><span class="lineno"> 1424</span>&#160;<span class="comment"># Minimum value: 0, maximum value: 20, default value: 4.</span></div>
-<div class="line"><a name="l01425"></a><span class="lineno"> 1425</span>&#160;<span class="comment"># This tag requires that the tag GENERATE_HTML is set to YES.</span></div>
-<div class="line"><a name="l01426"></a><span class="lineno"> 1426</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l01427"></a><span class="lineno"> 1427</span>&#160;<span class="comment">ENUM_VALUES_PER_LINE   = 4</span></div>
-<div class="line"><a name="l01428"></a><span class="lineno"> 1428</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l01429"></a><span class="lineno"> 1429</span>&#160;<span class="comment"># If the treeview is enabled (see GENERATE_TREEVIEW) then this tag can be used</span></div>
-<div class="line"><a name="l01430"></a><span class="lineno"> 1430</span>&#160;<span class="comment"># to set the initial width (in pixels) of the frame in which the tree is shown.</span></div>
-<div class="line"><a name="l01431"></a><span class="lineno"> 1431</span>&#160;<span class="comment"># Minimum value: 0, maximum value: 1500, default value: 250.</span></div>
-<div class="line"><a name="l01432"></a><span class="lineno"> 1432</span>&#160;<span class="comment"># This tag requires that the tag GENERATE_HTML is set to YES.</span></div>
-<div class="line"><a name="l01433"></a><span class="lineno"> 1433</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l01434"></a><span class="lineno"> 1434</span>&#160;<span class="comment">TREEVIEW_WIDTH         = 250</span></div>
-<div class="line"><a name="l01435"></a><span class="lineno"> 1435</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l01436"></a><span class="lineno"> 1436</span>&#160;<span class="comment"># If the EXT_LINKS_IN_WINDOW option is set to YES, doxygen will open links to</span></div>
-<div class="line"><a name="l01437"></a><span class="lineno"> 1437</span>&#160;<span class="comment"># external symbols imported via tag files in a separate window.</span></div>
-<div class="line"><a name="l01438"></a><span class="lineno"> 1438</span>&#160;<span class="comment"># The default value is: NO.</span></div>
-<div class="line"><a name="l01439"></a><span class="lineno"> 1439</span>&#160;<span class="comment"># This tag requires that the tag GENERATE_HTML is set to YES.</span></div>
-<div class="line"><a name="l01440"></a><span class="lineno"> 1440</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l01441"></a><span class="lineno"> 1441</span>&#160;<span class="comment">EXT_LINKS_IN_WINDOW    = NO</span></div>
-<div class="line"><a name="l01442"></a><span class="lineno"> 1442</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l01443"></a><span class="lineno"> 1443</span>&#160;<span class="comment"># Use this tag to change the font size of LaTeX formulas included as images in</span></div>
-<div class="line"><a name="l01444"></a><span class="lineno"> 1444</span>&#160;<span class="comment"># the HTML documentation. When you change the font size after a successful</span></div>
-<div class="line"><a name="l01445"></a><span class="lineno"> 1445</span>&#160;<span class="comment"># doxygen run you need to manually remove any form_*.png images from the HTML</span></div>
-<div class="line"><a name="l01446"></a><span class="lineno"> 1446</span>&#160;<span class="comment"># output directory to force them to be regenerated.</span></div>
-<div class="line"><a name="l01447"></a><span class="lineno"> 1447</span>&#160;<span class="comment"># Minimum value: 8, maximum value: 50, default value: 10.</span></div>
-<div class="line"><a name="l01448"></a><span class="lineno"> 1448</span>&#160;<span class="comment"># This tag requires that the tag GENERATE_HTML is set to YES.</span></div>
-<div class="line"><a name="l01449"></a><span class="lineno"> 1449</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l01450"></a><span class="lineno"> 1450</span>&#160;<span class="comment">FORMULA_FONTSIZE       = 10</span></div>
-<div class="line"><a name="l01451"></a><span class="lineno"> 1451</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l01452"></a><span class="lineno"> 1452</span>&#160;<span class="comment"># Use the FORMULA_TRANPARENT tag to determine whether or not the images</span></div>
-<div class="line"><a name="l01453"></a><span class="lineno"> 1453</span>&#160;<span class="comment"># generated for formulas are transparent PNGs. Transparent PNGs are not</span></div>
-<div class="line"><a name="l01454"></a><span class="lineno"> 1454</span>&#160;<span class="comment"># supported properly for IE 6.0, but are supported on all modern browsers.</span></div>
-<div class="line"><a name="l01455"></a><span class="lineno"> 1455</span>&#160;<span class="comment">#</span></div>
-<div class="line"><a name="l01456"></a><span class="lineno"> 1456</span>&#160;<span class="comment"># Note that when changing this option you need to delete any form_*.png files in</span></div>
-<div class="line"><a name="l01457"></a><span class="lineno"> 1457</span>&#160;<span class="comment"># the HTML output directory before the changes have effect.</span></div>
-<div class="line"><a name="l01458"></a><span class="lineno"> 1458</span>&#160;<span class="comment"># The default value is: YES.</span></div>
-<div class="line"><a name="l01459"></a><span class="lineno"> 1459</span>&#160;<span class="comment"># This tag requires that the tag GENERATE_HTML is set to YES.</span></div>
-<div class="line"><a name="l01460"></a><span class="lineno"> 1460</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l01461"></a><span class="lineno"> 1461</span>&#160;<span class="comment">FORMULA_TRANSPARENT    = YES</span></div>
-<div class="line"><a name="l01462"></a><span class="lineno"> 1462</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l01463"></a><span class="lineno"> 1463</span>&#160;<span class="comment"># Enable the USE_MATHJAX option to render LaTeX formulas using MathJax (see</span></div>
-<div class="line"><a name="l01464"></a><span class="lineno"> 1464</span>&#160;<span class="comment"># http://www.mathjax.org) which uses client side Javascript for the rendering</span></div>
-<div class="line"><a name="l01465"></a><span class="lineno"> 1465</span>&#160;<span class="comment"># instead of using pre-rendered bitmaps. Use this if you do not have LaTeX</span></div>
-<div class="line"><a name="l01466"></a><span class="lineno"> 1466</span>&#160;<span class="comment"># installed or if you want to formulas look prettier in the HTML output. When</span></div>
-<div class="line"><a name="l01467"></a><span class="lineno"> 1467</span>&#160;<span class="comment"># enabled you may also need to install MathJax separately and configure the path</span></div>
-<div class="line"><a name="l01468"></a><span class="lineno"> 1468</span>&#160;<span class="comment"># to it using the MATHJAX_RELPATH option.</span></div>
-<div class="line"><a name="l01469"></a><span class="lineno"> 1469</span>&#160;<span class="comment"># The default value is: NO.</span></div>
-<div class="line"><a name="l01470"></a><span class="lineno"> 1470</span>&#160;<span class="comment"># This tag requires that the tag GENERATE_HTML is set to YES.</span></div>
-<div class="line"><a name="l01471"></a><span class="lineno"> 1471</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l01472"></a><span class="lineno"> 1472</span>&#160;<span class="comment">USE_MATHJAX            = NO</span></div>
-<div class="line"><a name="l01473"></a><span class="lineno"> 1473</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l01474"></a><span class="lineno"> 1474</span>&#160;<span class="comment"># When MathJax is enabled you can set the default output format to be used for</span></div>
-<div class="line"><a name="l01475"></a><span class="lineno"> 1475</span>&#160;<span class="comment"># the MathJax output. See the MathJax site (see:</span></div>
-<div class="line"><a name="l01476"></a><span class="lineno"> 1476</span>&#160;<span class="comment"># http://docs.mathjax.org/en/latest/output.html) for more details.</span></div>
-<div class="line"><a name="l01477"></a><span class="lineno"> 1477</span>&#160;<span class="comment"># Possible values are: HTML-CSS (which is slower, but has the best</span></div>
-<div class="line"><a name="l01478"></a><span class="lineno"> 1478</span>&#160;<span class="comment"># compatibility), NativeMML (i.e. MathML) and SVG.</span></div>
-<div class="line"><a name="l01479"></a><span class="lineno"> 1479</span>&#160;<span class="comment"># The default value is: HTML-CSS.</span></div>
-<div class="line"><a name="l01480"></a><span class="lineno"> 1480</span>&#160;<span class="comment"># This tag requires that the tag USE_MATHJAX is set to YES.</span></div>
-<div class="line"><a name="l01481"></a><span class="lineno"> 1481</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l01482"></a><span class="lineno"> 1482</span>&#160;<span class="comment">MATHJAX_FORMAT         = HTML-CSS</span></div>
-<div class="line"><a name="l01483"></a><span class="lineno"> 1483</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l01484"></a><span class="lineno"> 1484</span>&#160;<span class="comment"># When MathJax is enabled you need to specify the location relative to the HTML</span></div>
-<div class="line"><a name="l01485"></a><span class="lineno"> 1485</span>&#160;<span class="comment"># output directory using the MATHJAX_RELPATH option. The destination directory</span></div>
-<div class="line"><a name="l01486"></a><span class="lineno"> 1486</span>&#160;<span class="comment"># should contain the MathJax.js script. For instance, if the mathjax directory</span></div>
-<div class="line"><a name="l01487"></a><span class="lineno"> 1487</span>&#160;<span class="comment"># is located at the same level as the HTML output directory, then</span></div>
-<div class="line"><a name="l01488"></a><span class="lineno"> 1488</span>&#160;<span class="comment"># MATHJAX_RELPATH should be ../mathjax. The default value points to the MathJax</span></div>
-<div class="line"><a name="l01489"></a><span class="lineno"> 1489</span>&#160;<span class="comment"># Content Delivery Network so you can quickly see the result without installing</span></div>
-<div class="line"><a name="l01490"></a><span class="lineno"> 1490</span>&#160;<span class="comment"># MathJax. However, it is strongly recommended to install a local copy of</span></div>
-<div class="line"><a name="l01491"></a><span class="lineno"> 1491</span>&#160;<span class="comment"># MathJax from http://www.mathjax.org before deployment.</span></div>
-<div class="line"><a name="l01492"></a><span class="lineno"> 1492</span>&#160;<span class="comment"># The default value is: http://cdn.mathjax.org/mathjax/latest.</span></div>
-<div class="line"><a name="l01493"></a><span class="lineno"> 1493</span>&#160;<span class="comment"># This tag requires that the tag USE_MATHJAX is set to YES.</span></div>
-<div class="line"><a name="l01494"></a><span class="lineno"> 1494</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l01495"></a><span class="lineno"> 1495</span>&#160;<span class="comment">MATHJAX_RELPATH        = http://www.mathjax.org/mathjax</span></div>
-<div class="line"><a name="l01496"></a><span class="lineno"> 1496</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l01497"></a><span class="lineno"> 1497</span>&#160;<span class="comment"># The MATHJAX_EXTENSIONS tag can be used to specify one or more MathJax</span></div>
-<div class="line"><a name="l01498"></a><span class="lineno"> 1498</span>&#160;<span class="comment"># extension names that should be enabled during MathJax rendering. For example</span></div>
-<div class="line"><a name="l01499"></a><span class="lineno"> 1499</span>&#160;<span class="comment"># MATHJAX_EXTENSIONS = TeX/AMSmath TeX/AMSsymbols</span></div>
-<div class="line"><a name="l01500"></a><span class="lineno"> 1500</span>&#160;<span class="comment"># This tag requires that the tag USE_MATHJAX is set to YES.</span></div>
-<div class="line"><a name="l01501"></a><span class="lineno"> 1501</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l01502"></a><span class="lineno"> 1502</span>&#160;<span class="comment">MATHJAX_EXTENSIONS     = </span></div>
-<div class="line"><a name="l01503"></a><span class="lineno"> 1503</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l01504"></a><span class="lineno"> 1504</span>&#160;<span class="comment"># The MATHJAX_CODEFILE tag can be used to specify a file with javascript pieces</span></div>
-<div class="line"><a name="l01505"></a><span class="lineno"> 1505</span>&#160;<span class="comment"># of code that will be used on startup of the MathJax code. See the MathJax site</span></div>
-<div class="line"><a name="l01506"></a><span class="lineno"> 1506</span>&#160;<span class="comment"># (see: http://docs.mathjax.org/en/latest/output.html) for more details. For an</span></div>
-<div class="line"><a name="l01507"></a><span class="lineno"> 1507</span>&#160;<span class="comment"># example see the documentation.</span></div>
-<div class="line"><a name="l01508"></a><span class="lineno"> 1508</span>&#160;<span class="comment"># This tag requires that the tag USE_MATHJAX is set to YES.</span></div>
-<div class="line"><a name="l01509"></a><span class="lineno"> 1509</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l01510"></a><span class="lineno"> 1510</span>&#160;<span class="comment">MATHJAX_CODEFILE       = </span></div>
-<div class="line"><a name="l01511"></a><span class="lineno"> 1511</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l01512"></a><span class="lineno"> 1512</span>&#160;<span class="comment"># When the SEARCHENGINE tag is enabled doxygen will generate a search box for</span></div>
-<div class="line"><a name="l01513"></a><span class="lineno"> 1513</span>&#160;<span class="comment"># the HTML output. The underlying search engine uses javascript and DHTML and</span></div>
-<div class="line"><a name="l01514"></a><span class="lineno"> 1514</span>&#160;<span class="comment"># should work on any modern browser. Note that when using HTML help</span></div>
-<div class="line"><a name="l01515"></a><span class="lineno"> 1515</span>&#160;<span class="comment"># (GENERATE_HTMLHELP), Qt help (GENERATE_QHP), or docsets (GENERATE_DOCSET)</span></div>
-<div class="line"><a name="l01516"></a><span class="lineno"> 1516</span>&#160;<span class="comment"># there is already a search function so this one should typically be disabled.</span></div>
-<div class="line"><a name="l01517"></a><span class="lineno"> 1517</span>&#160;<span class="comment"># For large projects the javascript based search engine can be slow, then</span></div>
-<div class="line"><a name="l01518"></a><span class="lineno"> 1518</span>&#160;<span class="comment"># enabling SERVER_BASED_SEARCH may provide a better solution. It is possible to</span></div>
-<div class="line"><a name="l01519"></a><span class="lineno"> 1519</span>&#160;<span class="comment"># search using the keyboard; to jump to the search box use &lt;access key&gt; + S</span></div>
-<div class="line"><a name="l01520"></a><span class="lineno"> 1520</span>&#160;<span class="comment"># (what the &lt;access key&gt; is depends on the OS and browser, but it is typically</span></div>
-<div class="line"><a name="l01521"></a><span class="lineno"> 1521</span>&#160;<span class="comment"># &lt;CTRL&gt;, &lt;ALT&gt;/&lt;option&gt;, or both). Inside the search box use the &lt;cursor down</span></div>
-<div class="line"><a name="l01522"></a><span class="lineno"> 1522</span>&#160;<span class="comment"># key&gt; to jump into the search results window, the results can be navigated</span></div>
-<div class="line"><a name="l01523"></a><span class="lineno"> 1523</span>&#160;<span class="comment"># using the &lt;cursor keys&gt;. Press &lt;Enter&gt; to select an item or &lt;escape&gt; to cancel</span></div>
-<div class="line"><a name="l01524"></a><span class="lineno"> 1524</span>&#160;<span class="comment"># the search. The filter options can be selected when the cursor is inside the</span></div>
-<div class="line"><a name="l01525"></a><span class="lineno"> 1525</span>&#160;<span class="comment"># search box by pressing &lt;Shift&gt;+&lt;cursor down&gt;. Also here use the &lt;cursor keys&gt;</span></div>
-<div class="line"><a name="l01526"></a><span class="lineno"> 1526</span>&#160;<span class="comment"># to select a filter and &lt;Enter&gt; or &lt;escape&gt; to activate or cancel the filter</span></div>
-<div class="line"><a name="l01527"></a><span class="lineno"> 1527</span>&#160;<span class="comment"># option.</span></div>
-<div class="line"><a name="l01528"></a><span class="lineno"> 1528</span>&#160;<span class="comment"># The default value is: YES.</span></div>
-<div class="line"><a name="l01529"></a><span class="lineno"> 1529</span>&#160;<span class="comment"># This tag requires that the tag GENERATE_HTML is set to YES.</span></div>
-<div class="line"><a name="l01530"></a><span class="lineno"> 1530</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l01531"></a><span class="lineno"> 1531</span>&#160;<span class="comment">SEARCHENGINE           = YES</span></div>
-<div class="line"><a name="l01532"></a><span class="lineno"> 1532</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l01533"></a><span class="lineno"> 1533</span>&#160;<span class="comment"># When the SERVER_BASED_SEARCH tag is enabled the search engine will be</span></div>
-<div class="line"><a name="l01534"></a><span class="lineno"> 1534</span>&#160;<span class="comment"># implemented using a web server instead of a web client using Javascript. There</span></div>
-<div class="line"><a name="l01535"></a><span class="lineno"> 1535</span>&#160;<span class="comment"># are two flavors of web server based searching depending on the EXTERNAL_SEARCH</span></div>
-<div class="line"><a name="l01536"></a><span class="lineno"> 1536</span>&#160;<span class="comment"># setting. When disabled, doxygen will generate a PHP script for searching and</span></div>
-<div class="line"><a name="l01537"></a><span class="lineno"> 1537</span>&#160;<span class="comment"># an index file used by the script. When EXTERNAL_SEARCH is enabled the indexing</span></div>
-<div class="line"><a name="l01538"></a><span class="lineno"> 1538</span>&#160;<span class="comment"># and searching needs to be provided by external tools. See the section</span></div>
-<div class="line"><a name="l01539"></a><span class="lineno"> 1539</span>&#160;<span class="comment"># &quot;External Indexing and Searching&quot; for details.</span></div>
-<div class="line"><a name="l01540"></a><span class="lineno"> 1540</span>&#160;<span class="comment"># The default value is: NO.</span></div>
-<div class="line"><a name="l01541"></a><span class="lineno"> 1541</span>&#160;<span class="comment"># This tag requires that the tag SEARCHENGINE is set to YES.</span></div>
-<div class="line"><a name="l01542"></a><span class="lineno"> 1542</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l01543"></a><span class="lineno"> 1543</span>&#160;<span class="comment">SERVER_BASED_SEARCH    = NO</span></div>
-<div class="line"><a name="l01544"></a><span class="lineno"> 1544</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l01545"></a><span class="lineno"> 1545</span>&#160;<span class="comment"># When EXTERNAL_SEARCH tag is enabled doxygen will no longer generate the PHP</span></div>
-<div class="line"><a name="l01546"></a><span class="lineno"> 1546</span>&#160;<span class="comment"># script for searching. Instead the search results are written to an XML file</span></div>
-<div class="line"><a name="l01547"></a><span class="lineno"> 1547</span>&#160;<span class="comment"># which needs to be processed by an external indexer. Doxygen will invoke an</span></div>
-<div class="line"><a name="l01548"></a><span class="lineno"> 1548</span>&#160;<span class="comment"># external search engine pointed to by the SEARCHENGINE_URL option to obtain the</span></div>
-<div class="line"><a name="l01549"></a><span class="lineno"> 1549</span>&#160;<span class="comment"># search results.</span></div>
-<div class="line"><a name="l01550"></a><span class="lineno"> 1550</span>&#160;<span class="comment">#</span></div>
-<div class="line"><a name="l01551"></a><span class="lineno"> 1551</span>&#160;<span class="comment"># Doxygen ships with an example indexer (doxyindexer) and search engine</span></div>
-<div class="line"><a name="l01552"></a><span class="lineno"> 1552</span>&#160;<span class="comment"># (doxysearch.cgi) which are based on the open source search engine library</span></div>
-<div class="line"><a name="l01553"></a><span class="lineno"> 1553</span>&#160;<span class="comment"># Xapian (see: http://xapian.org/).</span></div>
-<div class="line"><a name="l01554"></a><span class="lineno"> 1554</span>&#160;<span class="comment">#</span></div>
-<div class="line"><a name="l01555"></a><span class="lineno"> 1555</span>&#160;<span class="comment"># See the section &quot;External Indexing and Searching&quot; for details.</span></div>
-<div class="line"><a name="l01556"></a><span class="lineno"> 1556</span>&#160;<span class="comment"># The default value is: NO.</span></div>
-<div class="line"><a name="l01557"></a><span class="lineno"> 1557</span>&#160;<span class="comment"># This tag requires that the tag SEARCHENGINE is set to YES.</span></div>
-<div class="line"><a name="l01558"></a><span class="lineno"> 1558</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l01559"></a><span class="lineno"> 1559</span>&#160;<span class="comment">EXTERNAL_SEARCH        = NO</span></div>
-<div class="line"><a name="l01560"></a><span class="lineno"> 1560</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l01561"></a><span class="lineno"> 1561</span>&#160;<span class="comment"># The SEARCHENGINE_URL should point to a search engine hosted by a web server</span></div>
-<div class="line"><a name="l01562"></a><span class="lineno"> 1562</span>&#160;<span class="comment"># which will return the search results when EXTERNAL_SEARCH is enabled.</span></div>
-<div class="line"><a name="l01563"></a><span class="lineno"> 1563</span>&#160;<span class="comment">#</span></div>
-<div class="line"><a name="l01564"></a><span class="lineno"> 1564</span>&#160;<span class="comment"># Doxygen ships with an example indexer (doxyindexer) and search engine</span></div>
-<div class="line"><a name="l01565"></a><span class="lineno"> 1565</span>&#160;<span class="comment"># (doxysearch.cgi) which are based on the open source search engine library</span></div>
-<div class="line"><a name="l01566"></a><span class="lineno"> 1566</span>&#160;<span class="comment"># Xapian (see: http://xapian.org/). See the section &quot;External Indexing and</span></div>
-<div class="line"><a name="l01567"></a><span class="lineno"> 1567</span>&#160;<span class="comment"># Searching&quot; for details.</span></div>
-<div class="line"><a name="l01568"></a><span class="lineno"> 1568</span>&#160;<span class="comment"># This tag requires that the tag SEARCHENGINE is set to YES.</span></div>
-<div class="line"><a name="l01569"></a><span class="lineno"> 1569</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l01570"></a><span class="lineno"> 1570</span>&#160;<span class="comment">SEARCHENGINE_URL       = </span></div>
-<div class="line"><a name="l01571"></a><span class="lineno"> 1571</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l01572"></a><span class="lineno"> 1572</span>&#160;<span class="comment"># When SERVER_BASED_SEARCH and EXTERNAL_SEARCH are both enabled the unindexed</span></div>
-<div class="line"><a name="l01573"></a><span class="lineno"> 1573</span>&#160;<span class="comment"># search data is written to a file for indexing by an external tool. With the</span></div>
-<div class="line"><a name="l01574"></a><span class="lineno"> 1574</span>&#160;<span class="comment"># SEARCHDATA_FILE tag the name of this file can be specified.</span></div>
-<div class="line"><a name="l01575"></a><span class="lineno"> 1575</span>&#160;<span class="comment"># The default file is: searchdata.xml.</span></div>
-<div class="line"><a name="l01576"></a><span class="lineno"> 1576</span>&#160;<span class="comment"># This tag requires that the tag SEARCHENGINE is set to YES.</span></div>
-<div class="line"><a name="l01577"></a><span class="lineno"> 1577</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l01578"></a><span class="lineno"> 1578</span>&#160;<span class="comment">SEARCHDATA_FILE        = searchdata.xml</span></div>
-<div class="line"><a name="l01579"></a><span class="lineno"> 1579</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l01580"></a><span class="lineno"> 1580</span>&#160;<span class="comment"># When SERVER_BASED_SEARCH and EXTERNAL_SEARCH are both enabled the</span></div>
-<div class="line"><a name="l01581"></a><span class="lineno"> 1581</span>&#160;<span class="comment"># EXTERNAL_SEARCH_ID tag can be used as an identifier for the project. This is</span></div>
-<div class="line"><a name="l01582"></a><span class="lineno"> 1582</span>&#160;<span class="comment"># useful in combination with EXTRA_SEARCH_MAPPINGS to search through multiple</span></div>
-<div class="line"><a name="l01583"></a><span class="lineno"> 1583</span>&#160;<span class="comment"># projects and redirect the results back to the right project.</span></div>
-<div class="line"><a name="l01584"></a><span class="lineno"> 1584</span>&#160;<span class="comment"># This tag requires that the tag SEARCHENGINE is set to YES.</span></div>
-<div class="line"><a name="l01585"></a><span class="lineno"> 1585</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l01586"></a><span class="lineno"> 1586</span>&#160;<span class="comment">EXTERNAL_SEARCH_ID     = </span></div>
-<div class="line"><a name="l01587"></a><span class="lineno"> 1587</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l01588"></a><span class="lineno"> 1588</span>&#160;<span class="comment"># The EXTRA_SEARCH_MAPPINGS tag can be used to enable searching through doxygen</span></div>
-<div class="line"><a name="l01589"></a><span class="lineno"> 1589</span>&#160;<span class="comment"># projects other than the one defined by this configuration file, but that are</span></div>
-<div class="line"><a name="l01590"></a><span class="lineno"> 1590</span>&#160;<span class="comment"># all added to the same external search index. Each project needs to have a</span></div>
-<div class="line"><a name="l01591"></a><span class="lineno"> 1591</span>&#160;<span class="comment"># unique id set via EXTERNAL_SEARCH_ID. The search mapping then maps the id of</span></div>
-<div class="line"><a name="l01592"></a><span class="lineno"> 1592</span>&#160;<span class="comment"># to a relative location where the documentation can be found. The format is:</span></div>
-<div class="line"><a name="l01593"></a><span class="lineno"> 1593</span>&#160;<span class="comment"># EXTRA_SEARCH_MAPPINGS = tagname1=loc1 tagname2=loc2 ...</span></div>
-<div class="line"><a name="l01594"></a><span class="lineno"> 1594</span>&#160;<span class="comment"># This tag requires that the tag SEARCHENGINE is set to YES.</span></div>
-<div class="line"><a name="l01595"></a><span class="lineno"> 1595</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l01596"></a><span class="lineno"> 1596</span>&#160;<span class="comment">EXTRA_SEARCH_MAPPINGS  = </span></div>
-<div class="line"><a name="l01597"></a><span class="lineno"> 1597</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l01598"></a><span class="lineno"> 1598</span>&#160;<span class="comment">#---------------------------------------------------------------------------</span></div>
-<div class="line"><a name="l01599"></a><span class="lineno"> 1599</span>&#160;<span class="comment"># Configuration options related to the LaTeX output</span></div>
-<div class="line"><a name="l01600"></a><span class="lineno"> 1600</span>&#160;<span class="comment">#---------------------------------------------------------------------------</span></div>
-<div class="line"><a name="l01601"></a><span class="lineno"> 1601</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l01602"></a><span class="lineno"> 1602</span>&#160;<span class="comment"># If the GENERATE_LATEX tag is set to YES, doxygen will generate LaTeX output.</span></div>
-<div class="line"><a name="l01603"></a><span class="lineno"> 1603</span>&#160;<span class="comment"># The default value is: YES.</span></div>
-<div class="line"><a name="l01604"></a><span class="lineno"> 1604</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l01605"></a><span class="lineno"> 1605</span>&#160;<span class="comment">GENERATE_LATEX         = NO</span></div>
-<div class="line"><a name="l01606"></a><span class="lineno"> 1606</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l01607"></a><span class="lineno"> 1607</span>&#160;<span class="comment"># The LATEX_OUTPUT tag is used to specify where the LaTeX docs will be put. If a</span></div>
-<div class="line"><a name="l01608"></a><span class="lineno"> 1608</span>&#160;<span class="comment"># relative path is entered the value of OUTPUT_DIRECTORY will be put in front of</span></div>
-<div class="line"><a name="l01609"></a><span class="lineno"> 1609</span>&#160;<span class="comment"># it.</span></div>
-<div class="line"><a name="l01610"></a><span class="lineno"> 1610</span>&#160;<span class="comment"># The default directory is: latex.</span></div>
-<div class="line"><a name="l01611"></a><span class="lineno"> 1611</span>&#160;<span class="comment"># This tag requires that the tag GENERATE_LATEX is set to YES.</span></div>
-<div class="line"><a name="l01612"></a><span class="lineno"> 1612</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l01613"></a><span class="lineno"> 1613</span>&#160;<span class="comment">LATEX_OUTPUT           = latex</span></div>
-<div class="line"><a name="l01614"></a><span class="lineno"> 1614</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l01615"></a><span class="lineno"> 1615</span>&#160;<span class="comment"># The LATEX_CMD_NAME tag can be used to specify the LaTeX command name to be</span></div>
-<div class="line"><a name="l01616"></a><span class="lineno"> 1616</span>&#160;<span class="comment"># invoked.</span></div>
-<div class="line"><a name="l01617"></a><span class="lineno"> 1617</span>&#160;<span class="comment">#</span></div>
-<div class="line"><a name="l01618"></a><span class="lineno"> 1618</span>&#160;<span class="comment"># Note that when enabling USE_PDFLATEX this option is only used for generating</span></div>
-<div class="line"><a name="l01619"></a><span class="lineno"> 1619</span>&#160;<span class="comment"># bitmaps for formulas in the HTML output, but not in the Makefile that is</span></div>
-<div class="line"><a name="l01620"></a><span class="lineno"> 1620</span>&#160;<span class="comment"># written to the output directory.</span></div>
-<div class="line"><a name="l01621"></a><span class="lineno"> 1621</span>&#160;<span class="comment"># The default file is: latex.</span></div>
-<div class="line"><a name="l01622"></a><span class="lineno"> 1622</span>&#160;<span class="comment"># This tag requires that the tag GENERATE_LATEX is set to YES.</span></div>
-<div class="line"><a name="l01623"></a><span class="lineno"> 1623</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l01624"></a><span class="lineno"> 1624</span>&#160;<span class="comment">LATEX_CMD_NAME         = latex</span></div>
-<div class="line"><a name="l01625"></a><span class="lineno"> 1625</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l01626"></a><span class="lineno"> 1626</span>&#160;<span class="comment"># The MAKEINDEX_CMD_NAME tag can be used to specify the command name to generate</span></div>
-<div class="line"><a name="l01627"></a><span class="lineno"> 1627</span>&#160;<span class="comment"># index for LaTeX.</span></div>
-<div class="line"><a name="l01628"></a><span class="lineno"> 1628</span>&#160;<span class="comment"># The default file is: makeindex.</span></div>
-<div class="line"><a name="l01629"></a><span class="lineno"> 1629</span>&#160;<span class="comment"># This tag requires that the tag GENERATE_LATEX is set to YES.</span></div>
-<div class="line"><a name="l01630"></a><span class="lineno"> 1630</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l01631"></a><span class="lineno"> 1631</span>&#160;<span class="comment">MAKEINDEX_CMD_NAME     = makeindex</span></div>
-<div class="line"><a name="l01632"></a><span class="lineno"> 1632</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l01633"></a><span class="lineno"> 1633</span>&#160;<span class="comment"># If the COMPACT_LATEX tag is set to YES, doxygen generates more compact LaTeX</span></div>
-<div class="line"><a name="l01634"></a><span class="lineno"> 1634</span>&#160;<span class="comment"># documents. This may be useful for small projects and may help to save some</span></div>
-<div class="line"><a name="l01635"></a><span class="lineno"> 1635</span>&#160;<span class="comment"># trees in general.</span></div>
-<div class="line"><a name="l01636"></a><span class="lineno"> 1636</span>&#160;<span class="comment"># The default value is: NO.</span></div>
-<div class="line"><a name="l01637"></a><span class="lineno"> 1637</span>&#160;<span class="comment"># This tag requires that the tag GENERATE_LATEX is set to YES.</span></div>
-<div class="line"><a name="l01638"></a><span class="lineno"> 1638</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l01639"></a><span class="lineno"> 1639</span>&#160;<span class="comment">COMPACT_LATEX          = NO</span></div>
-<div class="line"><a name="l01640"></a><span class="lineno"> 1640</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l01641"></a><span class="lineno"> 1641</span>&#160;<span class="comment"># The PAPER_TYPE tag can be used to set the paper type that is used by the</span></div>
-<div class="line"><a name="l01642"></a><span class="lineno"> 1642</span>&#160;<span class="comment"># printer.</span></div>
-<div class="line"><a name="l01643"></a><span class="lineno"> 1643</span>&#160;<span class="comment"># Possible values are: a4 (210 x 297 mm), letter (8.5 x 11 inches), legal (8.5 x</span></div>
-<div class="line"><a name="l01644"></a><span class="lineno"> 1644</span>&#160;<span class="comment"># 14 inches) and executive (7.25 x 10.5 inches).</span></div>
-<div class="line"><a name="l01645"></a><span class="lineno"> 1645</span>&#160;<span class="comment"># The default value is: a4.</span></div>
-<div class="line"><a name="l01646"></a><span class="lineno"> 1646</span>&#160;<span class="comment"># This tag requires that the tag GENERATE_LATEX is set to YES.</span></div>
-<div class="line"><a name="l01647"></a><span class="lineno"> 1647</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l01648"></a><span class="lineno"> 1648</span>&#160;<span class="comment">PAPER_TYPE             = a4wide</span></div>
-<div class="line"><a name="l01649"></a><span class="lineno"> 1649</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l01650"></a><span class="lineno"> 1650</span>&#160;<span class="comment"># The EXTRA_PACKAGES tag can be used to specify one or more LaTeX package names</span></div>
-<div class="line"><a name="l01651"></a><span class="lineno"> 1651</span>&#160;<span class="comment"># that should be included in the LaTeX output. The package can be specified just</span></div>
-<div class="line"><a name="l01652"></a><span class="lineno"> 1652</span>&#160;<span class="comment"># by its name or with the correct syntax as to be used with the LaTeX</span></div>
-<div class="line"><a name="l01653"></a><span class="lineno"> 1653</span>&#160;<span class="comment"># \usepackage command. To get the times font for instance you can specify :</span></div>
-<div class="line"><a name="l01654"></a><span class="lineno"> 1654</span>&#160;<span class="comment"># EXTRA_PACKAGES=times or EXTRA_PACKAGES={times}</span></div>
-<div class="line"><a name="l01655"></a><span class="lineno"> 1655</span>&#160;<span class="comment"># To use the option intlimits with the amsmath package you can specify:</span></div>
-<div class="line"><a name="l01656"></a><span class="lineno"> 1656</span>&#160;<span class="comment"># EXTRA_PACKAGES=[intlimits]{amsmath}</span></div>
-<div class="line"><a name="l01657"></a><span class="lineno"> 1657</span>&#160;<span class="comment"># If left blank no extra packages will be included.</span></div>
-<div class="line"><a name="l01658"></a><span class="lineno"> 1658</span>&#160;<span class="comment"># This tag requires that the tag GENERATE_LATEX is set to YES.</span></div>
-<div class="line"><a name="l01659"></a><span class="lineno"> 1659</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l01660"></a><span class="lineno"> 1660</span>&#160;<span class="comment">EXTRA_PACKAGES         = </span></div>
-<div class="line"><a name="l01661"></a><span class="lineno"> 1661</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l01662"></a><span class="lineno"> 1662</span>&#160;<span class="comment"># The LATEX_HEADER tag can be used to specify a personal LaTeX header for the</span></div>
-<div class="line"><a name="l01663"></a><span class="lineno"> 1663</span>&#160;<span class="comment"># generated LaTeX document. The header should contain everything until the first</span></div>
-<div class="line"><a name="l01664"></a><span class="lineno"> 1664</span>&#160;<span class="comment"># chapter. If it is left blank doxygen will generate a standard header. See</span></div>
-<div class="line"><a name="l01665"></a><span class="lineno"> 1665</span>&#160;<span class="comment"># section &quot;Doxygen usage&quot; for information on how to let doxygen write the</span></div>
-<div class="line"><a name="l01666"></a><span class="lineno"> 1666</span>&#160;<span class="comment"># default header to a separate file.</span></div>
-<div class="line"><a name="l01667"></a><span class="lineno"> 1667</span>&#160;<span class="comment">#</span></div>
-<div class="line"><a name="l01668"></a><span class="lineno"> 1668</span>&#160;<span class="comment"># Note: Only use a user-defined header if you know what you are doing! The</span></div>
-<div class="line"><a name="l01669"></a><span class="lineno"> 1669</span>&#160;<span class="comment"># following commands have a special meaning inside the header: $title,</span></div>
-<div class="line"><a name="l01670"></a><span class="lineno"> 1670</span>&#160;<span class="comment"># $datetime, $date, $doxygenversion, $projectname, $projectnumber,</span></div>
-<div class="line"><a name="l01671"></a><span class="lineno"> 1671</span>&#160;<span class="comment"># $projectbrief, $projectlogo. Doxygen will replace $title with the empty</span></div>
-<div class="line"><a name="l01672"></a><span class="lineno"> 1672</span>&#160;<span class="comment"># string, for the replacement values of the other commands the user is referred</span></div>
-<div class="line"><a name="l01673"></a><span class="lineno"> 1673</span>&#160;<span class="comment"># to HTML_HEADER.</span></div>
-<div class="line"><a name="l01674"></a><span class="lineno"> 1674</span>&#160;<span class="comment"># This tag requires that the tag GENERATE_LATEX is set to YES.</span></div>
-<div class="line"><a name="l01675"></a><span class="lineno"> 1675</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l01676"></a><span class="lineno"> 1676</span>&#160;<span class="comment">LATEX_HEADER           = </span></div>
-<div class="line"><a name="l01677"></a><span class="lineno"> 1677</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l01678"></a><span class="lineno"> 1678</span>&#160;<span class="comment"># The LATEX_FOOTER tag can be used to specify a personal LaTeX footer for the</span></div>
-<div class="line"><a name="l01679"></a><span class="lineno"> 1679</span>&#160;<span class="comment"># generated LaTeX document. The footer should contain everything after the last</span></div>
-<div class="line"><a name="l01680"></a><span class="lineno"> 1680</span>&#160;<span class="comment"># chapter. If it is left blank doxygen will generate a standard footer. See</span></div>
-<div class="line"><a name="l01681"></a><span class="lineno"> 1681</span>&#160;<span class="comment"># LATEX_HEADER for more information on how to generate a default footer and what</span></div>
-<div class="line"><a name="l01682"></a><span class="lineno"> 1682</span>&#160;<span class="comment"># special commands can be used inside the footer.</span></div>
-<div class="line"><a name="l01683"></a><span class="lineno"> 1683</span>&#160;<span class="comment">#</span></div>
-<div class="line"><a name="l01684"></a><span class="lineno"> 1684</span>&#160;<span class="comment"># Note: Only use a user-defined footer if you know what you are doing!</span></div>
-<div class="line"><a name="l01685"></a><span class="lineno"> 1685</span>&#160;<span class="comment"># This tag requires that the tag GENERATE_LATEX is set to YES.</span></div>
-<div class="line"><a name="l01686"></a><span class="lineno"> 1686</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l01687"></a><span class="lineno"> 1687</span>&#160;<span class="comment">LATEX_FOOTER           = </span></div>
-<div class="line"><a name="l01688"></a><span class="lineno"> 1688</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l01689"></a><span class="lineno"> 1689</span>&#160;<span class="comment"># The LATEX_EXTRA_STYLESHEET tag can be used to specify additional user-defined</span></div>
-<div class="line"><a name="l01690"></a><span class="lineno"> 1690</span>&#160;<span class="comment"># LaTeX style sheets that are included after the standard style sheets created</span></div>
-<div class="line"><a name="l01691"></a><span class="lineno"> 1691</span>&#160;<span class="comment"># by doxygen. Using this option one can overrule certain style aspects. Doxygen</span></div>
-<div class="line"><a name="l01692"></a><span class="lineno"> 1692</span>&#160;<span class="comment"># will copy the style sheet files to the output directory.</span></div>
-<div class="line"><a name="l01693"></a><span class="lineno"> 1693</span>&#160;<span class="comment"># Note: The order of the extra style sheet files is of importance (e.g. the last</span></div>
-<div class="line"><a name="l01694"></a><span class="lineno"> 1694</span>&#160;<span class="comment"># style sheet in the list overrules the setting of the previous ones in the</span></div>
-<div class="line"><a name="l01695"></a><span class="lineno"> 1695</span>&#160;<span class="comment"># list).</span></div>
-<div class="line"><a name="l01696"></a><span class="lineno"> 1696</span>&#160;<span class="comment"># This tag requires that the tag GENERATE_LATEX is set to YES.</span></div>
-<div class="line"><a name="l01697"></a><span class="lineno"> 1697</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l01698"></a><span class="lineno"> 1698</span>&#160;<span class="comment">LATEX_EXTRA_STYLESHEET = </span></div>
-<div class="line"><a name="l01699"></a><span class="lineno"> 1699</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l01700"></a><span class="lineno"> 1700</span>&#160;<span class="comment"># The LATEX_EXTRA_FILES tag can be used to specify one or more extra images or</span></div>
-<div class="line"><a name="l01701"></a><span class="lineno"> 1701</span>&#160;<span class="comment"># other source files which should be copied to the LATEX_OUTPUT output</span></div>
-<div class="line"><a name="l01702"></a><span class="lineno"> 1702</span>&#160;<span class="comment"># directory. Note that the files will be copied as-is; there are no commands or</span></div>
-<div class="line"><a name="l01703"></a><span class="lineno"> 1703</span>&#160;<span class="comment"># markers available.</span></div>
-<div class="line"><a name="l01704"></a><span class="lineno"> 1704</span>&#160;<span class="comment"># This tag requires that the tag GENERATE_LATEX is set to YES.</span></div>
-<div class="line"><a name="l01705"></a><span class="lineno"> 1705</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l01706"></a><span class="lineno"> 1706</span>&#160;<span class="comment">LATEX_EXTRA_FILES      = </span></div>
-<div class="line"><a name="l01707"></a><span class="lineno"> 1707</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l01708"></a><span class="lineno"> 1708</span>&#160;<span class="comment"># If the PDF_HYPERLINKS tag is set to YES, the LaTeX that is generated is</span></div>
-<div class="line"><a name="l01709"></a><span class="lineno"> 1709</span>&#160;<span class="comment"># prepared for conversion to PDF (using ps2pdf or pdflatex). The PDF file will</span></div>
-<div class="line"><a name="l01710"></a><span class="lineno"> 1710</span>&#160;<span class="comment"># contain links (just like the HTML output) instead of page references. This</span></div>
-<div class="line"><a name="l01711"></a><span class="lineno"> 1711</span>&#160;<span class="comment"># makes the output suitable for online browsing using a PDF viewer.</span></div>
-<div class="line"><a name="l01712"></a><span class="lineno"> 1712</span>&#160;<span class="comment"># The default value is: YES.</span></div>
-<div class="line"><a name="l01713"></a><span class="lineno"> 1713</span>&#160;<span class="comment"># This tag requires that the tag GENERATE_LATEX is set to YES.</span></div>
-<div class="line"><a name="l01714"></a><span class="lineno"> 1714</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l01715"></a><span class="lineno"> 1715</span>&#160;<span class="comment">PDF_HYPERLINKS         = NO</span></div>
-<div class="line"><a name="l01716"></a><span class="lineno"> 1716</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l01717"></a><span class="lineno"> 1717</span>&#160;<span class="comment"># If the USE_PDFLATEX tag is set to YES, doxygen will use pdflatex to generate</span></div>
-<div class="line"><a name="l01718"></a><span class="lineno"> 1718</span>&#160;<span class="comment"># the PDF file directly from the LaTeX files. Set this option to YES, to get a</span></div>
-<div class="line"><a name="l01719"></a><span class="lineno"> 1719</span>&#160;<span class="comment"># higher quality PDF documentation.</span></div>
-<div class="line"><a name="l01720"></a><span class="lineno"> 1720</span>&#160;<span class="comment"># The default value is: YES.</span></div>
-<div class="line"><a name="l01721"></a><span class="lineno"> 1721</span>&#160;<span class="comment"># This tag requires that the tag GENERATE_LATEX is set to YES.</span></div>
-<div class="line"><a name="l01722"></a><span class="lineno"> 1722</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l01723"></a><span class="lineno"> 1723</span>&#160;<span class="comment">USE_PDFLATEX           = YES</span></div>
-<div class="line"><a name="l01724"></a><span class="lineno"> 1724</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l01725"></a><span class="lineno"> 1725</span>&#160;<span class="comment"># If the LATEX_BATCHMODE tag is set to YES, doxygen will add the \batchmode</span></div>
-<div class="line"><a name="l01726"></a><span class="lineno"> 1726</span>&#160;<span class="comment"># command to the generated LaTeX files. This will instruct LaTeX to keep running</span></div>
-<div class="line"><a name="l01727"></a><span class="lineno"> 1727</span>&#160;<span class="comment"># if errors occur, instead of asking the user for help. This option is also used</span></div>
-<div class="line"><a name="l01728"></a><span class="lineno"> 1728</span>&#160;<span class="comment"># when generating formulas in HTML.</span></div>
-<div class="line"><a name="l01729"></a><span class="lineno"> 1729</span>&#160;<span class="comment"># The default value is: NO.</span></div>
-<div class="line"><a name="l01730"></a><span class="lineno"> 1730</span>&#160;<span class="comment"># This tag requires that the tag GENERATE_LATEX is set to YES.</span></div>
-<div class="line"><a name="l01731"></a><span class="lineno"> 1731</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l01732"></a><span class="lineno"> 1732</span>&#160;<span class="comment">LATEX_BATCHMODE        = NO</span></div>
-<div class="line"><a name="l01733"></a><span class="lineno"> 1733</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l01734"></a><span class="lineno"> 1734</span>&#160;<span class="comment"># If the LATEX_HIDE_INDICES tag is set to YES then doxygen will not include the</span></div>
-<div class="line"><a name="l01735"></a><span class="lineno"> 1735</span>&#160;<span class="comment"># index chapters (such as File Index, Compound Index, etc.) in the output.</span></div>
-<div class="line"><a name="l01736"></a><span class="lineno"> 1736</span>&#160;<span class="comment"># The default value is: NO.</span></div>
-<div class="line"><a name="l01737"></a><span class="lineno"> 1737</span>&#160;<span class="comment"># This tag requires that the tag GENERATE_LATEX is set to YES.</span></div>
-<div class="line"><a name="l01738"></a><span class="lineno"> 1738</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l01739"></a><span class="lineno"> 1739</span>&#160;<span class="comment">LATEX_HIDE_INDICES     = NO</span></div>
-<div class="line"><a name="l01740"></a><span class="lineno"> 1740</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l01741"></a><span class="lineno"> 1741</span>&#160;<span class="comment"># If the LATEX_SOURCE_CODE tag is set to YES then doxygen will include source</span></div>
-<div class="line"><a name="l01742"></a><span class="lineno"> 1742</span>&#160;<span class="comment"># code with syntax highlighting in the LaTeX output.</span></div>
-<div class="line"><a name="l01743"></a><span class="lineno"> 1743</span>&#160;<span class="comment">#</span></div>
-<div class="line"><a name="l01744"></a><span class="lineno"> 1744</span>&#160;<span class="comment"># Note that which sources are shown also depends on other settings such as</span></div>
-<div class="line"><a name="l01745"></a><span class="lineno"> 1745</span>&#160;<span class="comment"># SOURCE_BROWSER.</span></div>
-<div class="line"><a name="l01746"></a><span class="lineno"> 1746</span>&#160;<span class="comment"># The default value is: NO.</span></div>
-<div class="line"><a name="l01747"></a><span class="lineno"> 1747</span>&#160;<span class="comment"># This tag requires that the tag GENERATE_LATEX is set to YES.</span></div>
-<div class="line"><a name="l01748"></a><span class="lineno"> 1748</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l01749"></a><span class="lineno"> 1749</span>&#160;<span class="comment">LATEX_SOURCE_CODE      = NO</span></div>
-<div class="line"><a name="l01750"></a><span class="lineno"> 1750</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l01751"></a><span class="lineno"> 1751</span>&#160;<span class="comment"># The LATEX_BIB_STYLE tag can be used to specify the style to use for the</span></div>
-<div class="line"><a name="l01752"></a><span class="lineno"> 1752</span>&#160;<span class="comment"># bibliography, e.g. plainnat, or ieeetr. See</span></div>
-<div class="line"><a name="l01753"></a><span class="lineno"> 1753</span>&#160;<span class="comment"># http://en.wikipedia.org/wiki/BibTeX and \cite for more info.</span></div>
-<div class="line"><a name="l01754"></a><span class="lineno"> 1754</span>&#160;<span class="comment"># The default value is: plain.</span></div>
-<div class="line"><a name="l01755"></a><span class="lineno"> 1755</span>&#160;<span class="comment"># This tag requires that the tag GENERATE_LATEX is set to YES.</span></div>
-<div class="line"><a name="l01756"></a><span class="lineno"> 1756</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l01757"></a><span class="lineno"> 1757</span>&#160;<span class="comment">LATEX_BIB_STYLE        = plain</span></div>
-<div class="line"><a name="l01758"></a><span class="lineno"> 1758</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l01759"></a><span class="lineno"> 1759</span>&#160;<span class="comment">#---------------------------------------------------------------------------</span></div>
-<div class="line"><a name="l01760"></a><span class="lineno"> 1760</span>&#160;<span class="comment"># Configuration options related to the RTF output</span></div>
-<div class="line"><a name="l01761"></a><span class="lineno"> 1761</span>&#160;<span class="comment">#---------------------------------------------------------------------------</span></div>
-<div class="line"><a name="l01762"></a><span class="lineno"> 1762</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l01763"></a><span class="lineno"> 1763</span>&#160;<span class="comment"># If the GENERATE_RTF tag is set to YES, doxygen will generate RTF output. The</span></div>
-<div class="line"><a name="l01764"></a><span class="lineno"> 1764</span>&#160;<span class="comment"># RTF output is optimized for Word 97 and may not look too pretty with other RTF</span></div>
-<div class="line"><a name="l01765"></a><span class="lineno"> 1765</span>&#160;<span class="comment"># readers/editors.</span></div>
-<div class="line"><a name="l01766"></a><span class="lineno"> 1766</span>&#160;<span class="comment"># The default value is: NO.</span></div>
-<div class="line"><a name="l01767"></a><span class="lineno"> 1767</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l01768"></a><span class="lineno"> 1768</span>&#160;<span class="comment">GENERATE_RTF           = NO</span></div>
-<div class="line"><a name="l01769"></a><span class="lineno"> 1769</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l01770"></a><span class="lineno"> 1770</span>&#160;<span class="comment"># The RTF_OUTPUT tag is used to specify where the RTF docs will be put. If a</span></div>
-<div class="line"><a name="l01771"></a><span class="lineno"> 1771</span>&#160;<span class="comment"># relative path is entered the value of OUTPUT_DIRECTORY will be put in front of</span></div>
-<div class="line"><a name="l01772"></a><span class="lineno"> 1772</span>&#160;<span class="comment"># it.</span></div>
-<div class="line"><a name="l01773"></a><span class="lineno"> 1773</span>&#160;<span class="comment"># The default directory is: rtf.</span></div>
-<div class="line"><a name="l01774"></a><span class="lineno"> 1774</span>&#160;<span class="comment"># This tag requires that the tag GENERATE_RTF is set to YES.</span></div>
-<div class="line"><a name="l01775"></a><span class="lineno"> 1775</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l01776"></a><span class="lineno"> 1776</span>&#160;<span class="comment">RTF_OUTPUT             = glm.rtf</span></div>
-<div class="line"><a name="l01777"></a><span class="lineno"> 1777</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l01778"></a><span class="lineno"> 1778</span>&#160;<span class="comment"># If the COMPACT_RTF tag is set to YES, doxygen generates more compact RTF</span></div>
-<div class="line"><a name="l01779"></a><span class="lineno"> 1779</span>&#160;<span class="comment"># documents. This may be useful for small projects and may help to save some</span></div>
-<div class="line"><a name="l01780"></a><span class="lineno"> 1780</span>&#160;<span class="comment"># trees in general.</span></div>
-<div class="line"><a name="l01781"></a><span class="lineno"> 1781</span>&#160;<span class="comment"># The default value is: NO.</span></div>
-<div class="line"><a name="l01782"></a><span class="lineno"> 1782</span>&#160;<span class="comment"># This tag requires that the tag GENERATE_RTF is set to YES.</span></div>
-<div class="line"><a name="l01783"></a><span class="lineno"> 1783</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l01784"></a><span class="lineno"> 1784</span>&#160;<span class="comment">COMPACT_RTF            = NO</span></div>
-<div class="line"><a name="l01785"></a><span class="lineno"> 1785</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l01786"></a><span class="lineno"> 1786</span>&#160;<span class="comment"># If the RTF_HYPERLINKS tag is set to YES, the RTF that is generated will</span></div>
-<div class="line"><a name="l01787"></a><span class="lineno"> 1787</span>&#160;<span class="comment"># contain hyperlink fields. The RTF file will contain links (just like the HTML</span></div>
-<div class="line"><a name="l01788"></a><span class="lineno"> 1788</span>&#160;<span class="comment"># output) instead of page references. This makes the output suitable for online</span></div>
-<div class="line"><a name="l01789"></a><span class="lineno"> 1789</span>&#160;<span class="comment"># browsing using Word or some other Word compatible readers that support those</span></div>
-<div class="line"><a name="l01790"></a><span class="lineno"> 1790</span>&#160;<span class="comment"># fields.</span></div>
-<div class="line"><a name="l01791"></a><span class="lineno"> 1791</span>&#160;<span class="comment">#</span></div>
-<div class="line"><a name="l01792"></a><span class="lineno"> 1792</span>&#160;<span class="comment"># Note: WordPad (write) and others do not support links.</span></div>
-<div class="line"><a name="l01793"></a><span class="lineno"> 1793</span>&#160;<span class="comment"># The default value is: NO.</span></div>
-<div class="line"><a name="l01794"></a><span class="lineno"> 1794</span>&#160;<span class="comment"># This tag requires that the tag GENERATE_RTF is set to YES.</span></div>
-<div class="line"><a name="l01795"></a><span class="lineno"> 1795</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l01796"></a><span class="lineno"> 1796</span>&#160;<span class="comment">RTF_HYPERLINKS         = YES</span></div>
-<div class="line"><a name="l01797"></a><span class="lineno"> 1797</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l01798"></a><span class="lineno"> 1798</span>&#160;<span class="comment"># Load stylesheet definitions from file. Syntax is similar to doxygen&#39;s config</span></div>
-<div class="line"><a name="l01799"></a><span class="lineno"> 1799</span>&#160;<span class="comment"># file, i.e. a series of assignments. You only have to provide replacements,</span></div>
-<div class="line"><a name="l01800"></a><span class="lineno"> 1800</span>&#160;<span class="comment"># missing definitions are set to their default value.</span></div>
-<div class="line"><a name="l01801"></a><span class="lineno"> 1801</span>&#160;<span class="comment">#</span></div>
-<div class="line"><a name="l01802"></a><span class="lineno"> 1802</span>&#160;<span class="comment"># See also section &quot;Doxygen usage&quot; for information on how to generate the</span></div>
-<div class="line"><a name="l01803"></a><span class="lineno"> 1803</span>&#160;<span class="comment"># default style sheet that doxygen normally uses.</span></div>
-<div class="line"><a name="l01804"></a><span class="lineno"> 1804</span>&#160;<span class="comment"># This tag requires that the tag GENERATE_RTF is set to YES.</span></div>
-<div class="line"><a name="l01805"></a><span class="lineno"> 1805</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l01806"></a><span class="lineno"> 1806</span>&#160;<span class="comment">RTF_STYLESHEET_FILE    = </span></div>
-<div class="line"><a name="l01807"></a><span class="lineno"> 1807</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l01808"></a><span class="lineno"> 1808</span>&#160;<span class="comment"># Set optional variables used in the generation of an RTF document. Syntax is</span></div>
-<div class="line"><a name="l01809"></a><span class="lineno"> 1809</span>&#160;<span class="comment"># similar to doxygen&#39;s config file. A template extensions file can be generated</span></div>
-<div class="line"><a name="l01810"></a><span class="lineno"> 1810</span>&#160;<span class="comment"># using doxygen -e rtf extensionFile.</span></div>
-<div class="line"><a name="l01811"></a><span class="lineno"> 1811</span>&#160;<span class="comment"># This tag requires that the tag GENERATE_RTF is set to YES.</span></div>
-<div class="line"><a name="l01812"></a><span class="lineno"> 1812</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l01813"></a><span class="lineno"> 1813</span>&#160;<span class="comment">RTF_EXTENSIONS_FILE    = </span></div>
-<div class="line"><a name="l01814"></a><span class="lineno"> 1814</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l01815"></a><span class="lineno"> 1815</span>&#160;<span class="comment"># If the RTF_SOURCE_CODE tag is set to YES then doxygen will include source code</span></div>
-<div class="line"><a name="l01816"></a><span class="lineno"> 1816</span>&#160;<span class="comment"># with syntax highlighting in the RTF output.</span></div>
-<div class="line"><a name="l01817"></a><span class="lineno"> 1817</span>&#160;<span class="comment">#</span></div>
-<div class="line"><a name="l01818"></a><span class="lineno"> 1818</span>&#160;<span class="comment"># Note that which sources are shown also depends on other settings such as</span></div>
-<div class="line"><a name="l01819"></a><span class="lineno"> 1819</span>&#160;<span class="comment"># SOURCE_BROWSER.</span></div>
-<div class="line"><a name="l01820"></a><span class="lineno"> 1820</span>&#160;<span class="comment"># The default value is: NO.</span></div>
-<div class="line"><a name="l01821"></a><span class="lineno"> 1821</span>&#160;<span class="comment"># This tag requires that the tag GENERATE_RTF is set to YES.</span></div>
-<div class="line"><a name="l01822"></a><span class="lineno"> 1822</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l01823"></a><span class="lineno"> 1823</span>&#160;<span class="comment">RTF_SOURCE_CODE        = NO</span></div>
-<div class="line"><a name="l01824"></a><span class="lineno"> 1824</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l01825"></a><span class="lineno"> 1825</span>&#160;<span class="comment">#---------------------------------------------------------------------------</span></div>
-<div class="line"><a name="l01826"></a><span class="lineno"> 1826</span>&#160;<span class="comment"># Configuration options related to the man page output</span></div>
-<div class="line"><a name="l01827"></a><span class="lineno"> 1827</span>&#160;<span class="comment">#---------------------------------------------------------------------------</span></div>
-<div class="line"><a name="l01828"></a><span class="lineno"> 1828</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l01829"></a><span class="lineno"> 1829</span>&#160;<span class="comment"># If the GENERATE_MAN tag is set to YES, doxygen will generate man pages for</span></div>
-<div class="line"><a name="l01830"></a><span class="lineno"> 1830</span>&#160;<span class="comment"># classes and files.</span></div>
-<div class="line"><a name="l01831"></a><span class="lineno"> 1831</span>&#160;<span class="comment"># The default value is: NO.</span></div>
-<div class="line"><a name="l01832"></a><span class="lineno"> 1832</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l01833"></a><span class="lineno"> 1833</span>&#160;<span class="comment">GENERATE_MAN           = NO</span></div>
-<div class="line"><a name="l01834"></a><span class="lineno"> 1834</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l01835"></a><span class="lineno"> 1835</span>&#160;<span class="comment"># The MAN_OUTPUT tag is used to specify where the man pages will be put. If a</span></div>
-<div class="line"><a name="l01836"></a><span class="lineno"> 1836</span>&#160;<span class="comment"># relative path is entered the value of OUTPUT_DIRECTORY will be put in front of</span></div>
-<div class="line"><a name="l01837"></a><span class="lineno"> 1837</span>&#160;<span class="comment"># it. A directory man3 will be created inside the directory specified by</span></div>
-<div class="line"><a name="l01838"></a><span class="lineno"> 1838</span>&#160;<span class="comment"># MAN_OUTPUT.</span></div>
-<div class="line"><a name="l01839"></a><span class="lineno"> 1839</span>&#160;<span class="comment"># The default directory is: man.</span></div>
-<div class="line"><a name="l01840"></a><span class="lineno"> 1840</span>&#160;<span class="comment"># This tag requires that the tag GENERATE_MAN is set to YES.</span></div>
-<div class="line"><a name="l01841"></a><span class="lineno"> 1841</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l01842"></a><span class="lineno"> 1842</span>&#160;<span class="comment">MAN_OUTPUT             = man</span></div>
-<div class="line"><a name="l01843"></a><span class="lineno"> 1843</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l01844"></a><span class="lineno"> 1844</span>&#160;<span class="comment"># The MAN_EXTENSION tag determines the extension that is added to the generated</span></div>
-<div class="line"><a name="l01845"></a><span class="lineno"> 1845</span>&#160;<span class="comment"># man pages. In case the manual section does not start with a number, the number</span></div>
-<div class="line"><a name="l01846"></a><span class="lineno"> 1846</span>&#160;<span class="comment"># 3 is prepended. The dot (.) at the beginning of the MAN_EXTENSION tag is</span></div>
-<div class="line"><a name="l01847"></a><span class="lineno"> 1847</span>&#160;<span class="comment"># optional.</span></div>
-<div class="line"><a name="l01848"></a><span class="lineno"> 1848</span>&#160;<span class="comment"># The default value is: .3.</span></div>
-<div class="line"><a name="l01849"></a><span class="lineno"> 1849</span>&#160;<span class="comment"># This tag requires that the tag GENERATE_MAN is set to YES.</span></div>
-<div class="line"><a name="l01850"></a><span class="lineno"> 1850</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l01851"></a><span class="lineno"> 1851</span>&#160;<span class="comment">MAN_EXTENSION          = .3</span></div>
-<div class="line"><a name="l01852"></a><span class="lineno"> 1852</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l01853"></a><span class="lineno"> 1853</span>&#160;<span class="comment"># The MAN_SUBDIR tag determines the name of the directory created within</span></div>
-<div class="line"><a name="l01854"></a><span class="lineno"> 1854</span>&#160;<span class="comment"># MAN_OUTPUT in which the man pages are placed. If defaults to man followed by</span></div>
-<div class="line"><a name="l01855"></a><span class="lineno"> 1855</span>&#160;<span class="comment"># MAN_EXTENSION with the initial . removed.</span></div>
-<div class="line"><a name="l01856"></a><span class="lineno"> 1856</span>&#160;<span class="comment"># This tag requires that the tag GENERATE_MAN is set to YES.</span></div>
-<div class="line"><a name="l01857"></a><span class="lineno"> 1857</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l01858"></a><span class="lineno"> 1858</span>&#160;<span class="comment">MAN_SUBDIR             = </span></div>
-<div class="line"><a name="l01859"></a><span class="lineno"> 1859</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l01860"></a><span class="lineno"> 1860</span>&#160;<span class="comment"># If the MAN_LINKS tag is set to YES and doxygen generates man output, then it</span></div>
-<div class="line"><a name="l01861"></a><span class="lineno"> 1861</span>&#160;<span class="comment"># will generate one additional man file for each entity documented in the real</span></div>
-<div class="line"><a name="l01862"></a><span class="lineno"> 1862</span>&#160;<span class="comment"># man page(s). These additional files only source the real man page, but without</span></div>
-<div class="line"><a name="l01863"></a><span class="lineno"> 1863</span>&#160;<span class="comment"># them the man command would be unable to find the correct page.</span></div>
-<div class="line"><a name="l01864"></a><span class="lineno"> 1864</span>&#160;<span class="comment"># The default value is: NO.</span></div>
-<div class="line"><a name="l01865"></a><span class="lineno"> 1865</span>&#160;<span class="comment"># This tag requires that the tag GENERATE_MAN is set to YES.</span></div>
-<div class="line"><a name="l01866"></a><span class="lineno"> 1866</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l01867"></a><span class="lineno"> 1867</span>&#160;<span class="comment">MAN_LINKS              = NO</span></div>
-<div class="line"><a name="l01868"></a><span class="lineno"> 1868</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l01869"></a><span class="lineno"> 1869</span>&#160;<span class="comment">#---------------------------------------------------------------------------</span></div>
-<div class="line"><a name="l01870"></a><span class="lineno"> 1870</span>&#160;<span class="comment"># Configuration options related to the XML output</span></div>
-<div class="line"><a name="l01871"></a><span class="lineno"> 1871</span>&#160;<span class="comment">#---------------------------------------------------------------------------</span></div>
-<div class="line"><a name="l01872"></a><span class="lineno"> 1872</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l01873"></a><span class="lineno"> 1873</span>&#160;<span class="comment"># If the GENERATE_XML tag is set to YES, doxygen will generate an XML file that</span></div>
-<div class="line"><a name="l01874"></a><span class="lineno"> 1874</span>&#160;<span class="comment"># captures the structure of the code including all documentation.</span></div>
-<div class="line"><a name="l01875"></a><span class="lineno"> 1875</span>&#160;<span class="comment"># The default value is: NO.</span></div>
-<div class="line"><a name="l01876"></a><span class="lineno"> 1876</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l01877"></a><span class="lineno"> 1877</span>&#160;<span class="comment">GENERATE_XML           = NO</span></div>
-<div class="line"><a name="l01878"></a><span class="lineno"> 1878</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l01879"></a><span class="lineno"> 1879</span>&#160;<span class="comment"># The XML_OUTPUT tag is used to specify where the XML pages will be put. If a</span></div>
-<div class="line"><a name="l01880"></a><span class="lineno"> 1880</span>&#160;<span class="comment"># relative path is entered the value of OUTPUT_DIRECTORY will be put in front of</span></div>
-<div class="line"><a name="l01881"></a><span class="lineno"> 1881</span>&#160;<span class="comment"># it.</span></div>
-<div class="line"><a name="l01882"></a><span class="lineno"> 1882</span>&#160;<span class="comment"># The default directory is: xml.</span></div>
-<div class="line"><a name="l01883"></a><span class="lineno"> 1883</span>&#160;<span class="comment"># This tag requires that the tag GENERATE_XML is set to YES.</span></div>
-<div class="line"><a name="l01884"></a><span class="lineno"> 1884</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l01885"></a><span class="lineno"> 1885</span>&#160;<span class="comment">XML_OUTPUT             = xml</span></div>
-<div class="line"><a name="l01886"></a><span class="lineno"> 1886</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l01887"></a><span class="lineno"> 1887</span>&#160;<span class="comment"># If the XML_PROGRAMLISTING tag is set to YES, doxygen will dump the program</span></div>
-<div class="line"><a name="l01888"></a><span class="lineno"> 1888</span>&#160;<span class="comment"># listings (including syntax highlighting and cross-referencing information) to</span></div>
-<div class="line"><a name="l01889"></a><span class="lineno"> 1889</span>&#160;<span class="comment"># the XML output. Note that enabling this will significantly increase the size</span></div>
-<div class="line"><a name="l01890"></a><span class="lineno"> 1890</span>&#160;<span class="comment"># of the XML output.</span></div>
-<div class="line"><a name="l01891"></a><span class="lineno"> 1891</span>&#160;<span class="comment"># The default value is: YES.</span></div>
-<div class="line"><a name="l01892"></a><span class="lineno"> 1892</span>&#160;<span class="comment"># This tag requires that the tag GENERATE_XML is set to YES.</span></div>
-<div class="line"><a name="l01893"></a><span class="lineno"> 1893</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l01894"></a><span class="lineno"> 1894</span>&#160;<span class="comment">XML_PROGRAMLISTING     = YES</span></div>
-<div class="line"><a name="l01895"></a><span class="lineno"> 1895</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l01896"></a><span class="lineno"> 1896</span>&#160;<span class="comment">#---------------------------------------------------------------------------</span></div>
-<div class="line"><a name="l01897"></a><span class="lineno"> 1897</span>&#160;<span class="comment"># Configuration options related to the DOCBOOK output</span></div>
-<div class="line"><a name="l01898"></a><span class="lineno"> 1898</span>&#160;<span class="comment">#---------------------------------------------------------------------------</span></div>
-<div class="line"><a name="l01899"></a><span class="lineno"> 1899</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l01900"></a><span class="lineno"> 1900</span>&#160;<span class="comment"># If the GENERATE_DOCBOOK tag is set to YES, doxygen will generate Docbook files</span></div>
-<div class="line"><a name="l01901"></a><span class="lineno"> 1901</span>&#160;<span class="comment"># that can be used to generate PDF.</span></div>
-<div class="line"><a name="l01902"></a><span class="lineno"> 1902</span>&#160;<span class="comment"># The default value is: NO.</span></div>
-<div class="line"><a name="l01903"></a><span class="lineno"> 1903</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l01904"></a><span class="lineno"> 1904</span>&#160;<span class="comment">GENERATE_DOCBOOK       = NO</span></div>
-<div class="line"><a name="l01905"></a><span class="lineno"> 1905</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l01906"></a><span class="lineno"> 1906</span>&#160;<span class="comment"># The DOCBOOK_OUTPUT tag is used to specify where the Docbook pages will be put.</span></div>
-<div class="line"><a name="l01907"></a><span class="lineno"> 1907</span>&#160;<span class="comment"># If a relative path is entered the value of OUTPUT_DIRECTORY will be put in</span></div>
-<div class="line"><a name="l01908"></a><span class="lineno"> 1908</span>&#160;<span class="comment"># front of it.</span></div>
-<div class="line"><a name="l01909"></a><span class="lineno"> 1909</span>&#160;<span class="comment"># The default directory is: docbook.</span></div>
-<div class="line"><a name="l01910"></a><span class="lineno"> 1910</span>&#160;<span class="comment"># This tag requires that the tag GENERATE_DOCBOOK is set to YES.</span></div>
-<div class="line"><a name="l01911"></a><span class="lineno"> 1911</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l01912"></a><span class="lineno"> 1912</span>&#160;<span class="comment">DOCBOOK_OUTPUT         = docbook</span></div>
-<div class="line"><a name="l01913"></a><span class="lineno"> 1913</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l01914"></a><span class="lineno"> 1914</span>&#160;<span class="comment"># If the DOCBOOK_PROGRAMLISTING tag is set to YES, doxygen will include the</span></div>
-<div class="line"><a name="l01915"></a><span class="lineno"> 1915</span>&#160;<span class="comment"># program listings (including syntax highlighting and cross-referencing</span></div>
-<div class="line"><a name="l01916"></a><span class="lineno"> 1916</span>&#160;<span class="comment"># information) to the DOCBOOK output. Note that enabling this will significantly</span></div>
-<div class="line"><a name="l01917"></a><span class="lineno"> 1917</span>&#160;<span class="comment"># increase the size of the DOCBOOK output.</span></div>
-<div class="line"><a name="l01918"></a><span class="lineno"> 1918</span>&#160;<span class="comment"># The default value is: NO.</span></div>
-<div class="line"><a name="l01919"></a><span class="lineno"> 1919</span>&#160;<span class="comment"># This tag requires that the tag GENERATE_DOCBOOK is set to YES.</span></div>
-<div class="line"><a name="l01920"></a><span class="lineno"> 1920</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l01921"></a><span class="lineno"> 1921</span>&#160;<span class="comment">DOCBOOK_PROGRAMLISTING = NO</span></div>
-<div class="line"><a name="l01922"></a><span class="lineno"> 1922</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l01923"></a><span class="lineno"> 1923</span>&#160;<span class="comment">#---------------------------------------------------------------------------</span></div>
-<div class="line"><a name="l01924"></a><span class="lineno"> 1924</span>&#160;<span class="comment"># Configuration options for the AutoGen Definitions output</span></div>
-<div class="line"><a name="l01925"></a><span class="lineno"> 1925</span>&#160;<span class="comment">#---------------------------------------------------------------------------</span></div>
-<div class="line"><a name="l01926"></a><span class="lineno"> 1926</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l01927"></a><span class="lineno"> 1927</span>&#160;<span class="comment"># If the GENERATE_AUTOGEN_DEF tag is set to YES, doxygen will generate an</span></div>
-<div class="line"><a name="l01928"></a><span class="lineno"> 1928</span>&#160;<span class="comment"># AutoGen Definitions (see http://autogen.sf.net) file that captures the</span></div>
-<div class="line"><a name="l01929"></a><span class="lineno"> 1929</span>&#160;<span class="comment"># structure of the code including all documentation. Note that this feature is</span></div>
-<div class="line"><a name="l01930"></a><span class="lineno"> 1930</span>&#160;<span class="comment"># still experimental and incomplete at the moment.</span></div>
-<div class="line"><a name="l01931"></a><span class="lineno"> 1931</span>&#160;<span class="comment"># The default value is: NO.</span></div>
-<div class="line"><a name="l01932"></a><span class="lineno"> 1932</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l01933"></a><span class="lineno"> 1933</span>&#160;<span class="comment">GENERATE_AUTOGEN_DEF   = NO</span></div>
-<div class="line"><a name="l01934"></a><span class="lineno"> 1934</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l01935"></a><span class="lineno"> 1935</span>&#160;<span class="comment">#---------------------------------------------------------------------------</span></div>
-<div class="line"><a name="l01936"></a><span class="lineno"> 1936</span>&#160;<span class="comment"># Configuration options related to the Perl module output</span></div>
-<div class="line"><a name="l01937"></a><span class="lineno"> 1937</span>&#160;<span class="comment">#---------------------------------------------------------------------------</span></div>
-<div class="line"><a name="l01938"></a><span class="lineno"> 1938</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l01939"></a><span class="lineno"> 1939</span>&#160;<span class="comment"># If the GENERATE_PERLMOD tag is set to YES, doxygen will generate a Perl module</span></div>
-<div class="line"><a name="l01940"></a><span class="lineno"> 1940</span>&#160;<span class="comment"># file that captures the structure of the code including all documentation.</span></div>
-<div class="line"><a name="l01941"></a><span class="lineno"> 1941</span>&#160;<span class="comment">#</span></div>
-<div class="line"><a name="l01942"></a><span class="lineno"> 1942</span>&#160;<span class="comment"># Note that this feature is still experimental and incomplete at the moment.</span></div>
-<div class="line"><a name="l01943"></a><span class="lineno"> 1943</span>&#160;<span class="comment"># The default value is: NO.</span></div>
-<div class="line"><a name="l01944"></a><span class="lineno"> 1944</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l01945"></a><span class="lineno"> 1945</span>&#160;<span class="comment">GENERATE_PERLMOD       = NO</span></div>
-<div class="line"><a name="l01946"></a><span class="lineno"> 1946</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l01947"></a><span class="lineno"> 1947</span>&#160;<span class="comment"># If the PERLMOD_LATEX tag is set to YES, doxygen will generate the necessary</span></div>
-<div class="line"><a name="l01948"></a><span class="lineno"> 1948</span>&#160;<span class="comment"># Makefile rules, Perl scripts and LaTeX code to be able to generate PDF and DVI</span></div>
-<div class="line"><a name="l01949"></a><span class="lineno"> 1949</span>&#160;<span class="comment"># output from the Perl module output.</span></div>
-<div class="line"><a name="l01950"></a><span class="lineno"> 1950</span>&#160;<span class="comment"># The default value is: NO.</span></div>
-<div class="line"><a name="l01951"></a><span class="lineno"> 1951</span>&#160;<span class="comment"># This tag requires that the tag GENERATE_PERLMOD is set to YES.</span></div>
-<div class="line"><a name="l01952"></a><span class="lineno"> 1952</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l01953"></a><span class="lineno"> 1953</span>&#160;<span class="comment">PERLMOD_LATEX          = NO</span></div>
-<div class="line"><a name="l01954"></a><span class="lineno"> 1954</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l01955"></a><span class="lineno"> 1955</span>&#160;<span class="comment"># If the PERLMOD_PRETTY tag is set to YES, the Perl module output will be nicely</span></div>
-<div class="line"><a name="l01956"></a><span class="lineno"> 1956</span>&#160;<span class="comment"># formatted so it can be parsed by a human reader. This is useful if you want to</span></div>
-<div class="line"><a name="l01957"></a><span class="lineno"> 1957</span>&#160;<span class="comment"># understand what is going on. On the other hand, if this tag is set to NO, the</span></div>
-<div class="line"><a name="l01958"></a><span class="lineno"> 1958</span>&#160;<span class="comment"># size of the Perl module output will be much smaller and Perl will parse it</span></div>
-<div class="line"><a name="l01959"></a><span class="lineno"> 1959</span>&#160;<span class="comment"># just the same.</span></div>
-<div class="line"><a name="l01960"></a><span class="lineno"> 1960</span>&#160;<span class="comment"># The default value is: YES.</span></div>
-<div class="line"><a name="l01961"></a><span class="lineno"> 1961</span>&#160;<span class="comment"># This tag requires that the tag GENERATE_PERLMOD is set to YES.</span></div>
-<div class="line"><a name="l01962"></a><span class="lineno"> 1962</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l01963"></a><span class="lineno"> 1963</span>&#160;<span class="comment">PERLMOD_PRETTY         = YES</span></div>
-<div class="line"><a name="l01964"></a><span class="lineno"> 1964</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l01965"></a><span class="lineno"> 1965</span>&#160;<span class="comment"># The names of the make variables in the generated doxyrules.make file are</span></div>
-<div class="line"><a name="l01966"></a><span class="lineno"> 1966</span>&#160;<span class="comment"># prefixed with the string contained in PERLMOD_MAKEVAR_PREFIX. This is useful</span></div>
-<div class="line"><a name="l01967"></a><span class="lineno"> 1967</span>&#160;<span class="comment"># so different doxyrules.make files included by the same Makefile don&#39;t</span></div>
-<div class="line"><a name="l01968"></a><span class="lineno"> 1968</span>&#160;<span class="comment"># overwrite each other&#39;s variables.</span></div>
-<div class="line"><a name="l01969"></a><span class="lineno"> 1969</span>&#160;<span class="comment"># This tag requires that the tag GENERATE_PERLMOD is set to YES.</span></div>
-<div class="line"><a name="l01970"></a><span class="lineno"> 1970</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l01971"></a><span class="lineno"> 1971</span>&#160;<span class="comment">PERLMOD_MAKEVAR_PREFIX = </span></div>
-<div class="line"><a name="l01972"></a><span class="lineno"> 1972</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l01973"></a><span class="lineno"> 1973</span>&#160;<span class="comment">#---------------------------------------------------------------------------</span></div>
-<div class="line"><a name="l01974"></a><span class="lineno"> 1974</span>&#160;<span class="comment"># Configuration options related to the preprocessor</span></div>
-<div class="line"><a name="l01975"></a><span class="lineno"> 1975</span>&#160;<span class="comment">#---------------------------------------------------------------------------</span></div>
-<div class="line"><a name="l01976"></a><span class="lineno"> 1976</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l01977"></a><span class="lineno"> 1977</span>&#160;<span class="comment"># If the ENABLE_PREPROCESSING tag is set to YES, doxygen will evaluate all</span></div>
-<div class="line"><a name="l01978"></a><span class="lineno"> 1978</span>&#160;<span class="comment"># C-preprocessor directives found in the sources and include files.</span></div>
-<div class="line"><a name="l01979"></a><span class="lineno"> 1979</span>&#160;<span class="comment"># The default value is: YES.</span></div>
-<div class="line"><a name="l01980"></a><span class="lineno"> 1980</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l01981"></a><span class="lineno"> 1981</span>&#160;<span class="comment">ENABLE_PREPROCESSING   = YES</span></div>
-<div class="line"><a name="l01982"></a><span class="lineno"> 1982</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l01983"></a><span class="lineno"> 1983</span>&#160;<span class="comment"># If the MACRO_EXPANSION tag is set to YES, doxygen will expand all macro names</span></div>
-<div class="line"><a name="l01984"></a><span class="lineno"> 1984</span>&#160;<span class="comment"># in the source code. If set to NO, only conditional compilation will be</span></div>
-<div class="line"><a name="l01985"></a><span class="lineno"> 1985</span>&#160;<span class="comment"># performed. Macro expansion can be done in a controlled way by setting</span></div>
-<div class="line"><a name="l01986"></a><span class="lineno"> 1986</span>&#160;<span class="comment"># EXPAND_ONLY_PREDEF to YES.</span></div>
-<div class="line"><a name="l01987"></a><span class="lineno"> 1987</span>&#160;<span class="comment"># The default value is: NO.</span></div>
-<div class="line"><a name="l01988"></a><span class="lineno"> 1988</span>&#160;<span class="comment"># This tag requires that the tag ENABLE_PREPROCESSING is set to YES.</span></div>
-<div class="line"><a name="l01989"></a><span class="lineno"> 1989</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l01990"></a><span class="lineno"> 1990</span>&#160;<span class="comment">MACRO_EXPANSION        = NO</span></div>
-<div class="line"><a name="l01991"></a><span class="lineno"> 1991</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l01992"></a><span class="lineno"> 1992</span>&#160;<span class="comment"># If the EXPAND_ONLY_PREDEF and MACRO_EXPANSION tags are both set to YES then</span></div>
-<div class="line"><a name="l01993"></a><span class="lineno"> 1993</span>&#160;<span class="comment"># the macro expansion is limited to the macros specified with the PREDEFINED and</span></div>
-<div class="line"><a name="l01994"></a><span class="lineno"> 1994</span>&#160;<span class="comment"># EXPAND_AS_DEFINED tags.</span></div>
-<div class="line"><a name="l01995"></a><span class="lineno"> 1995</span>&#160;<span class="comment"># The default value is: NO.</span></div>
-<div class="line"><a name="l01996"></a><span class="lineno"> 1996</span>&#160;<span class="comment"># This tag requires that the tag ENABLE_PREPROCESSING is set to YES.</span></div>
-<div class="line"><a name="l01997"></a><span class="lineno"> 1997</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l01998"></a><span class="lineno"> 1998</span>&#160;<span class="comment">EXPAND_ONLY_PREDEF     = NO</span></div>
-<div class="line"><a name="l01999"></a><span class="lineno"> 1999</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l02000"></a><span class="lineno"> 2000</span>&#160;<span class="comment"># If the SEARCH_INCLUDES tag is set to YES, the include files in the</span></div>
-<div class="line"><a name="l02001"></a><span class="lineno"> 2001</span>&#160;<span class="comment"># INCLUDE_PATH will be searched if a #include is found.</span></div>
-<div class="line"><a name="l02002"></a><span class="lineno"> 2002</span>&#160;<span class="comment"># The default value is: YES.</span></div>
-<div class="line"><a name="l02003"></a><span class="lineno"> 2003</span>&#160;<span class="comment"># This tag requires that the tag ENABLE_PREPROCESSING is set to YES.</span></div>
-<div class="line"><a name="l02004"></a><span class="lineno"> 2004</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l02005"></a><span class="lineno"> 2005</span>&#160;<span class="comment">SEARCH_INCLUDES        = YES</span></div>
-<div class="line"><a name="l02006"></a><span class="lineno"> 2006</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l02007"></a><span class="lineno"> 2007</span>&#160;<span class="comment"># The INCLUDE_PATH tag can be used to specify one or more directories that</span></div>
-<div class="line"><a name="l02008"></a><span class="lineno"> 2008</span>&#160;<span class="comment"># contain include files that are not input files but should be processed by the</span></div>
-<div class="line"><a name="l02009"></a><span class="lineno"> 2009</span>&#160;<span class="comment"># preprocessor.</span></div>
-<div class="line"><a name="l02010"></a><span class="lineno"> 2010</span>&#160;<span class="comment"># This tag requires that the tag SEARCH_INCLUDES is set to YES.</span></div>
-<div class="line"><a name="l02011"></a><span class="lineno"> 2011</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l02012"></a><span class="lineno"> 2012</span>&#160;<span class="comment">INCLUDE_PATH           = </span></div>
-<div class="line"><a name="l02013"></a><span class="lineno"> 2013</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l02014"></a><span class="lineno"> 2014</span>&#160;<span class="comment"># You can use the INCLUDE_FILE_PATTERNS tag to specify one or more wildcard</span></div>
-<div class="line"><a name="l02015"></a><span class="lineno"> 2015</span>&#160;<span class="comment"># patterns (like *.h and *.hpp) to filter out the header-files in the</span></div>
-<div class="line"><a name="l02016"></a><span class="lineno"> 2016</span>&#160;<span class="comment"># directories. If left blank, the patterns specified with FILE_PATTERNS will be</span></div>
-<div class="line"><a name="l02017"></a><span class="lineno"> 2017</span>&#160;<span class="comment"># used.</span></div>
-<div class="line"><a name="l02018"></a><span class="lineno"> 2018</span>&#160;<span class="comment"># This tag requires that the tag ENABLE_PREPROCESSING is set to YES.</span></div>
-<div class="line"><a name="l02019"></a><span class="lineno"> 2019</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l02020"></a><span class="lineno"> 2020</span>&#160;<span class="comment">INCLUDE_FILE_PATTERNS  = </span></div>
-<div class="line"><a name="l02021"></a><span class="lineno"> 2021</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l02022"></a><span class="lineno"> 2022</span>&#160;<span class="comment"># The PREDEFINED tag can be used to specify one or more macro names that are</span></div>
-<div class="line"><a name="l02023"></a><span class="lineno"> 2023</span>&#160;<span class="comment"># defined before the preprocessor is started (similar to the -D option of e.g.</span></div>
-<div class="line"><a name="l02024"></a><span class="lineno"> 2024</span>&#160;<span class="comment"># gcc). The argument of the tag is a list of macros of the form: name or</span></div>
-<div class="line"><a name="l02025"></a><span class="lineno"> 2025</span>&#160;<span class="comment"># name=definition (no spaces). If the definition and the &quot;=&quot; are omitted, &quot;=1&quot;</span></div>
-<div class="line"><a name="l02026"></a><span class="lineno"> 2026</span>&#160;<span class="comment"># is assumed. To prevent a macro definition from being undefined via #undef or</span></div>
-<div class="line"><a name="l02027"></a><span class="lineno"> 2027</span>&#160;<span class="comment"># recursively expanded use the := operator instead of the = operator.</span></div>
-<div class="line"><a name="l02028"></a><span class="lineno"> 2028</span>&#160;<span class="comment"># This tag requires that the tag ENABLE_PREPROCESSING is set to YES.</span></div>
-<div class="line"><a name="l02029"></a><span class="lineno"> 2029</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l02030"></a><span class="lineno"> 2030</span>&#160;<span class="comment">PREDEFINED             = </span></div>
-<div class="line"><a name="l02031"></a><span class="lineno"> 2031</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l02032"></a><span class="lineno"> 2032</span>&#160;<span class="comment"># If the MACRO_EXPANSION and EXPAND_ONLY_PREDEF tags are set to YES then this</span></div>
-<div class="line"><a name="l02033"></a><span class="lineno"> 2033</span>&#160;<span class="comment"># tag can be used to specify a list of macro names that should be expanded. The</span></div>
-<div class="line"><a name="l02034"></a><span class="lineno"> 2034</span>&#160;<span class="comment"># macro definition that is found in the sources will be used. Use the PREDEFINED</span></div>
-<div class="line"><a name="l02035"></a><span class="lineno"> 2035</span>&#160;<span class="comment"># tag if you want to use a different macro definition that overrules the</span></div>
-<div class="line"><a name="l02036"></a><span class="lineno"> 2036</span>&#160;<span class="comment"># definition found in the source code.</span></div>
-<div class="line"><a name="l02037"></a><span class="lineno"> 2037</span>&#160;<span class="comment"># This tag requires that the tag ENABLE_PREPROCESSING is set to YES.</span></div>
-<div class="line"><a name="l02038"></a><span class="lineno"> 2038</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l02039"></a><span class="lineno"> 2039</span>&#160;<span class="comment">EXPAND_AS_DEFINED      = </span></div>
-<div class="line"><a name="l02040"></a><span class="lineno"> 2040</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l02041"></a><span class="lineno"> 2041</span>&#160;<span class="comment"># If the SKIP_FUNCTION_MACROS tag is set to YES then doxygen&#39;s preprocessor will</span></div>
-<div class="line"><a name="l02042"></a><span class="lineno"> 2042</span>&#160;<span class="comment"># remove all references to function-like macros that are alone on a line, have</span></div>
-<div class="line"><a name="l02043"></a><span class="lineno"> 2043</span>&#160;<span class="comment"># an all uppercase name, and do not end with a semicolon. Such function macros</span></div>
-<div class="line"><a name="l02044"></a><span class="lineno"> 2044</span>&#160;<span class="comment"># are typically used for boiler-plate code, and will confuse the parser if not</span></div>
-<div class="line"><a name="l02045"></a><span class="lineno"> 2045</span>&#160;<span class="comment"># removed.</span></div>
-<div class="line"><a name="l02046"></a><span class="lineno"> 2046</span>&#160;<span class="comment"># The default value is: YES.</span></div>
-<div class="line"><a name="l02047"></a><span class="lineno"> 2047</span>&#160;<span class="comment"># This tag requires that the tag ENABLE_PREPROCESSING is set to YES.</span></div>
-<div class="line"><a name="l02048"></a><span class="lineno"> 2048</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l02049"></a><span class="lineno"> 2049</span>&#160;<span class="comment">SKIP_FUNCTION_MACROS   = YES</span></div>
-<div class="line"><a name="l02050"></a><span class="lineno"> 2050</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l02051"></a><span class="lineno"> 2051</span>&#160;<span class="comment">#---------------------------------------------------------------------------</span></div>
-<div class="line"><a name="l02052"></a><span class="lineno"> 2052</span>&#160;<span class="comment"># Configuration options related to external references</span></div>
-<div class="line"><a name="l02053"></a><span class="lineno"> 2053</span>&#160;<span class="comment">#---------------------------------------------------------------------------</span></div>
-<div class="line"><a name="l02054"></a><span class="lineno"> 2054</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l02055"></a><span class="lineno"> 2055</span>&#160;<span class="comment"># The TAGFILES tag can be used to specify one or more tag files. For each tag</span></div>
-<div class="line"><a name="l02056"></a><span class="lineno"> 2056</span>&#160;<span class="comment"># file the location of the external documentation should be added. The format of</span></div>
-<div class="line"><a name="l02057"></a><span class="lineno"> 2057</span>&#160;<span class="comment"># a tag file without this location is as follows:</span></div>
-<div class="line"><a name="l02058"></a><span class="lineno"> 2058</span>&#160;<span class="comment"># TAGFILES = file1 file2 ...</span></div>
-<div class="line"><a name="l02059"></a><span class="lineno"> 2059</span>&#160;<span class="comment"># Adding location for the tag files is done as follows:</span></div>
-<div class="line"><a name="l02060"></a><span class="lineno"> 2060</span>&#160;<span class="comment"># TAGFILES = file1=loc1 &quot;file2 = loc2&quot; ...</span></div>
-<div class="line"><a name="l02061"></a><span class="lineno"> 2061</span>&#160;<span class="comment"># where loc1 and loc2 can be relative or absolute paths or URLs. See the</span></div>
-<div class="line"><a name="l02062"></a><span class="lineno"> 2062</span>&#160;<span class="comment"># section &quot;Linking to external documentation&quot; for more information about the use</span></div>
-<div class="line"><a name="l02063"></a><span class="lineno"> 2063</span>&#160;<span class="comment"># of tag files.</span></div>
-<div class="line"><a name="l02064"></a><span class="lineno"> 2064</span>&#160;<span class="comment"># Note: Each tag file must have a unique name (where the name does NOT include</span></div>
-<div class="line"><a name="l02065"></a><span class="lineno"> 2065</span>&#160;<span class="comment"># the path). If a tag file is not located in the directory in which doxygen is</span></div>
-<div class="line"><a name="l02066"></a><span class="lineno"> 2066</span>&#160;<span class="comment"># run, you must also specify the path to the tagfile here.</span></div>
-<div class="line"><a name="l02067"></a><span class="lineno"> 2067</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l02068"></a><span class="lineno"> 2068</span>&#160;<span class="comment">TAGFILES               = </span></div>
-<div class="line"><a name="l02069"></a><span class="lineno"> 2069</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l02070"></a><span class="lineno"> 2070</span>&#160;<span class="comment"># When a file name is specified after GENERATE_TAGFILE, doxygen will create a</span></div>
-<div class="line"><a name="l02071"></a><span class="lineno"> 2071</span>&#160;<span class="comment"># tag file that is based on the input files it reads. See section &quot;Linking to</span></div>
-<div class="line"><a name="l02072"></a><span class="lineno"> 2072</span>&#160;<span class="comment"># external documentation&quot; for more information about the usage of tag files.</span></div>
-<div class="line"><a name="l02073"></a><span class="lineno"> 2073</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l02074"></a><span class="lineno"> 2074</span>&#160;<span class="comment">GENERATE_TAGFILE       = </span></div>
-<div class="line"><a name="l02075"></a><span class="lineno"> 2075</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l02076"></a><span class="lineno"> 2076</span>&#160;<span class="comment"># If the ALLEXTERNALS tag is set to YES, all external class will be listed in</span></div>
-<div class="line"><a name="l02077"></a><span class="lineno"> 2077</span>&#160;<span class="comment"># the class index. If set to NO, only the inherited external classes will be</span></div>
-<div class="line"><a name="l02078"></a><span class="lineno"> 2078</span>&#160;<span class="comment"># listed.</span></div>
-<div class="line"><a name="l02079"></a><span class="lineno"> 2079</span>&#160;<span class="comment"># The default value is: NO.</span></div>
-<div class="line"><a name="l02080"></a><span class="lineno"> 2080</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l02081"></a><span class="lineno"> 2081</span>&#160;<span class="comment">ALLEXTERNALS           = NO</span></div>
-<div class="line"><a name="l02082"></a><span class="lineno"> 2082</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l02083"></a><span class="lineno"> 2083</span>&#160;<span class="comment"># If the EXTERNAL_GROUPS tag is set to YES, all external groups will be listed</span></div>
-<div class="line"><a name="l02084"></a><span class="lineno"> 2084</span>&#160;<span class="comment"># in the modules index. If set to NO, only the current project&#39;s groups will be</span></div>
-<div class="line"><a name="l02085"></a><span class="lineno"> 2085</span>&#160;<span class="comment"># listed.</span></div>
-<div class="line"><a name="l02086"></a><span class="lineno"> 2086</span>&#160;<span class="comment"># The default value is: YES.</span></div>
-<div class="line"><a name="l02087"></a><span class="lineno"> 2087</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l02088"></a><span class="lineno"> 2088</span>&#160;<span class="comment">EXTERNAL_GROUPS        = YES</span></div>
-<div class="line"><a name="l02089"></a><span class="lineno"> 2089</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l02090"></a><span class="lineno"> 2090</span>&#160;<span class="comment"># If the EXTERNAL_PAGES tag is set to YES, all external pages will be listed in</span></div>
-<div class="line"><a name="l02091"></a><span class="lineno"> 2091</span>&#160;<span class="comment"># the related pages index. If set to NO, only the current project&#39;s pages will</span></div>
-<div class="line"><a name="l02092"></a><span class="lineno"> 2092</span>&#160;<span class="comment"># be listed.</span></div>
-<div class="line"><a name="l02093"></a><span class="lineno"> 2093</span>&#160;<span class="comment"># The default value is: YES.</span></div>
-<div class="line"><a name="l02094"></a><span class="lineno"> 2094</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l02095"></a><span class="lineno"> 2095</span>&#160;<span class="comment">EXTERNAL_PAGES         = YES</span></div>
-<div class="line"><a name="l02096"></a><span class="lineno"> 2096</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l02097"></a><span class="lineno"> 2097</span>&#160;<span class="comment"># The PERL_PATH should be the absolute path and name of the perl script</span></div>
-<div class="line"><a name="l02098"></a><span class="lineno"> 2098</span>&#160;<span class="comment"># interpreter (i.e. the result of &#39;which perl&#39;).</span></div>
-<div class="line"><a name="l02099"></a><span class="lineno"> 2099</span>&#160;<span class="comment"># The default file (with absolute path) is: /usr/bin/perl.</span></div>
-<div class="line"><a name="l02100"></a><span class="lineno"> 2100</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l02101"></a><span class="lineno"> 2101</span>&#160;<span class="comment">PERL_PATH              = /usr/bin/perl</span></div>
-<div class="line"><a name="l02102"></a><span class="lineno"> 2102</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l02103"></a><span class="lineno"> 2103</span>&#160;<span class="comment">#---------------------------------------------------------------------------</span></div>
-<div class="line"><a name="l02104"></a><span class="lineno"> 2104</span>&#160;<span class="comment"># Configuration options related to the dot tool</span></div>
-<div class="line"><a name="l02105"></a><span class="lineno"> 2105</span>&#160;<span class="comment">#---------------------------------------------------------------------------</span></div>
-<div class="line"><a name="l02106"></a><span class="lineno"> 2106</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l02107"></a><span class="lineno"> 2107</span>&#160;<span class="comment"># If the CLASS_DIAGRAMS tag is set to YES, doxygen will generate a class diagram</span></div>
-<div class="line"><a name="l02108"></a><span class="lineno"> 2108</span>&#160;<span class="comment"># (in HTML and LaTeX) for classes with base or super classes. Setting the tag to</span></div>
-<div class="line"><a name="l02109"></a><span class="lineno"> 2109</span>&#160;<span class="comment"># NO turns the diagrams off. Note that this option also works with HAVE_DOT</span></div>
-<div class="line"><a name="l02110"></a><span class="lineno"> 2110</span>&#160;<span class="comment"># disabled, but it is recommended to install and use dot, since it yields more</span></div>
-<div class="line"><a name="l02111"></a><span class="lineno"> 2111</span>&#160;<span class="comment"># powerful graphs.</span></div>
-<div class="line"><a name="l02112"></a><span class="lineno"> 2112</span>&#160;<span class="comment"># The default value is: YES.</span></div>
-<div class="line"><a name="l02113"></a><span class="lineno"> 2113</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l02114"></a><span class="lineno"> 2114</span>&#160;<span class="comment">CLASS_DIAGRAMS         = YES</span></div>
-<div class="line"><a name="l02115"></a><span class="lineno"> 2115</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l02116"></a><span class="lineno"> 2116</span>&#160;<span class="comment"># You can define message sequence charts within doxygen comments using the \msc</span></div>
-<div class="line"><a name="l02117"></a><span class="lineno"> 2117</span>&#160;<span class="comment"># command. Doxygen will then run the mscgen tool (see:</span></div>
-<div class="line"><a name="l02118"></a><span class="lineno"> 2118</span>&#160;<span class="comment"># http://www.mcternan.me.uk/mscgen/)) to produce the chart and insert it in the</span></div>
-<div class="line"><a name="l02119"></a><span class="lineno"> 2119</span>&#160;<span class="comment"># documentation. The MSCGEN_PATH tag allows you to specify the directory where</span></div>
-<div class="line"><a name="l02120"></a><span class="lineno"> 2120</span>&#160;<span class="comment"># the mscgen tool resides. If left empty the tool is assumed to be found in the</span></div>
-<div class="line"><a name="l02121"></a><span class="lineno"> 2121</span>&#160;<span class="comment"># default search path.</span></div>
-<div class="line"><a name="l02122"></a><span class="lineno"> 2122</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l02123"></a><span class="lineno"> 2123</span>&#160;<span class="comment">MSCGEN_PATH            = </span></div>
-<div class="line"><a name="l02124"></a><span class="lineno"> 2124</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l02125"></a><span class="lineno"> 2125</span>&#160;<span class="comment"># You can include diagrams made with dia in doxygen documentation. Doxygen will</span></div>
-<div class="line"><a name="l02126"></a><span class="lineno"> 2126</span>&#160;<span class="comment"># then run dia to produce the diagram and insert it in the documentation. The</span></div>
-<div class="line"><a name="l02127"></a><span class="lineno"> 2127</span>&#160;<span class="comment"># DIA_PATH tag allows you to specify the directory where the dia binary resides.</span></div>
-<div class="line"><a name="l02128"></a><span class="lineno"> 2128</span>&#160;<span class="comment"># If left empty dia is assumed to be found in the default search path.</span></div>
-<div class="line"><a name="l02129"></a><span class="lineno"> 2129</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l02130"></a><span class="lineno"> 2130</span>&#160;<span class="comment">DIA_PATH               = </span></div>
-<div class="line"><a name="l02131"></a><span class="lineno"> 2131</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l02132"></a><span class="lineno"> 2132</span>&#160;<span class="comment"># If set to YES the inheritance and collaboration graphs will hide inheritance</span></div>
-<div class="line"><a name="l02133"></a><span class="lineno"> 2133</span>&#160;<span class="comment"># and usage relations if the target is undocumented or is not a class.</span></div>
-<div class="line"><a name="l02134"></a><span class="lineno"> 2134</span>&#160;<span class="comment"># The default value is: YES.</span></div>
-<div class="line"><a name="l02135"></a><span class="lineno"> 2135</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l02136"></a><span class="lineno"> 2136</span>&#160;<span class="comment">HIDE_UNDOC_RELATIONS   = YES</span></div>
-<div class="line"><a name="l02137"></a><span class="lineno"> 2137</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l02138"></a><span class="lineno"> 2138</span>&#160;<span class="comment"># If you set the HAVE_DOT tag to YES then doxygen will assume the dot tool is</span></div>
-<div class="line"><a name="l02139"></a><span class="lineno"> 2139</span>&#160;<span class="comment"># available from the path. This tool is part of Graphviz (see:</span></div>
-<div class="line"><a name="l02140"></a><span class="lineno"> 2140</span>&#160;<span class="comment"># http://www.graphviz.org/), a graph visualization toolkit from AT&amp;T and Lucent</span></div>
-<div class="line"><a name="l02141"></a><span class="lineno"> 2141</span>&#160;<span class="comment"># Bell Labs. The other options in this section have no effect if this option is</span></div>
-<div class="line"><a name="l02142"></a><span class="lineno"> 2142</span>&#160;<span class="comment"># set to NO</span></div>
-<div class="line"><a name="l02143"></a><span class="lineno"> 2143</span>&#160;<span class="comment"># The default value is: NO.</span></div>
-<div class="line"><a name="l02144"></a><span class="lineno"> 2144</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l02145"></a><span class="lineno"> 2145</span>&#160;<span class="comment">HAVE_DOT               = NO</span></div>
-<div class="line"><a name="l02146"></a><span class="lineno"> 2146</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l02147"></a><span class="lineno"> 2147</span>&#160;<span class="comment"># The DOT_NUM_THREADS specifies the number of dot invocations doxygen is allowed</span></div>
-<div class="line"><a name="l02148"></a><span class="lineno"> 2148</span>&#160;<span class="comment"># to run in parallel. When set to 0 doxygen will base this on the number of</span></div>
-<div class="line"><a name="l02149"></a><span class="lineno"> 2149</span>&#160;<span class="comment"># processors available in the system. You can set it explicitly to a value</span></div>
-<div class="line"><a name="l02150"></a><span class="lineno"> 2150</span>&#160;<span class="comment"># larger than 0 to get control over the balance between CPU load and processing</span></div>
-<div class="line"><a name="l02151"></a><span class="lineno"> 2151</span>&#160;<span class="comment"># speed.</span></div>
-<div class="line"><a name="l02152"></a><span class="lineno"> 2152</span>&#160;<span class="comment"># Minimum value: 0, maximum value: 32, default value: 0.</span></div>
-<div class="line"><a name="l02153"></a><span class="lineno"> 2153</span>&#160;<span class="comment"># This tag requires that the tag HAVE_DOT is set to YES.</span></div>
-<div class="line"><a name="l02154"></a><span class="lineno"> 2154</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l02155"></a><span class="lineno"> 2155</span>&#160;<span class="comment">DOT_NUM_THREADS        = 0</span></div>
-<div class="line"><a name="l02156"></a><span class="lineno"> 2156</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l02157"></a><span class="lineno"> 2157</span>&#160;<span class="comment"># When you want a differently looking font in the dot files that doxygen</span></div>
-<div class="line"><a name="l02158"></a><span class="lineno"> 2158</span>&#160;<span class="comment"># generates you can specify the font name using DOT_FONTNAME. You need to make</span></div>
-<div class="line"><a name="l02159"></a><span class="lineno"> 2159</span>&#160;<span class="comment"># sure dot is able to find the font, which can be done by putting it in a</span></div>
-<div class="line"><a name="l02160"></a><span class="lineno"> 2160</span>&#160;<span class="comment"># standard location or by setting the DOTFONTPATH environment variable or by</span></div>
-<div class="line"><a name="l02161"></a><span class="lineno"> 2161</span>&#160;<span class="comment"># setting DOT_FONTPATH to the directory containing the font.</span></div>
-<div class="line"><a name="l02162"></a><span class="lineno"> 2162</span>&#160;<span class="comment"># The default value is: Helvetica.</span></div>
-<div class="line"><a name="l02163"></a><span class="lineno"> 2163</span>&#160;<span class="comment"># This tag requires that the tag HAVE_DOT is set to YES.</span></div>
-<div class="line"><a name="l02164"></a><span class="lineno"> 2164</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l02165"></a><span class="lineno"> 2165</span>&#160;<span class="comment">DOT_FONTNAME           = Helvetica</span></div>
-<div class="line"><a name="l02166"></a><span class="lineno"> 2166</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l02167"></a><span class="lineno"> 2167</span>&#160;<span class="comment"># The DOT_FONTSIZE tag can be used to set the size (in points) of the font of</span></div>
-<div class="line"><a name="l02168"></a><span class="lineno"> 2168</span>&#160;<span class="comment"># dot graphs.</span></div>
-<div class="line"><a name="l02169"></a><span class="lineno"> 2169</span>&#160;<span class="comment"># Minimum value: 4, maximum value: 24, default value: 10.</span></div>
-<div class="line"><a name="l02170"></a><span class="lineno"> 2170</span>&#160;<span class="comment"># This tag requires that the tag HAVE_DOT is set to YES.</span></div>
-<div class="line"><a name="l02171"></a><span class="lineno"> 2171</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l02172"></a><span class="lineno"> 2172</span>&#160;<span class="comment">DOT_FONTSIZE           = 10</span></div>
-<div class="line"><a name="l02173"></a><span class="lineno"> 2173</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l02174"></a><span class="lineno"> 2174</span>&#160;<span class="comment"># By default doxygen will tell dot to use the default font as specified with</span></div>
-<div class="line"><a name="l02175"></a><span class="lineno"> 2175</span>&#160;<span class="comment"># DOT_FONTNAME. If you specify a different font using DOT_FONTNAME you can set</span></div>
-<div class="line"><a name="l02176"></a><span class="lineno"> 2176</span>&#160;<span class="comment"># the path where dot can find it using this tag.</span></div>
-<div class="line"><a name="l02177"></a><span class="lineno"> 2177</span>&#160;<span class="comment"># This tag requires that the tag HAVE_DOT is set to YES.</span></div>
-<div class="line"><a name="l02178"></a><span class="lineno"> 2178</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l02179"></a><span class="lineno"> 2179</span>&#160;<span class="comment">DOT_FONTPATH           = </span></div>
-<div class="line"><a name="l02180"></a><span class="lineno"> 2180</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l02181"></a><span class="lineno"> 2181</span>&#160;<span class="comment"># If the CLASS_GRAPH tag is set to YES then doxygen will generate a graph for</span></div>
-<div class="line"><a name="l02182"></a><span class="lineno"> 2182</span>&#160;<span class="comment"># each documented class showing the direct and indirect inheritance relations.</span></div>
-<div class="line"><a name="l02183"></a><span class="lineno"> 2183</span>&#160;<span class="comment"># Setting this tag to YES will force the CLASS_DIAGRAMS tag to NO.</span></div>
-<div class="line"><a name="l02184"></a><span class="lineno"> 2184</span>&#160;<span class="comment"># The default value is: YES.</span></div>
-<div class="line"><a name="l02185"></a><span class="lineno"> 2185</span>&#160;<span class="comment"># This tag requires that the tag HAVE_DOT is set to YES.</span></div>
-<div class="line"><a name="l02186"></a><span class="lineno"> 2186</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l02187"></a><span class="lineno"> 2187</span>&#160;<span class="comment">CLASS_GRAPH            = YES</span></div>
-<div class="line"><a name="l02188"></a><span class="lineno"> 2188</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l02189"></a><span class="lineno"> 2189</span>&#160;<span class="comment"># If the COLLABORATION_GRAPH tag is set to YES then doxygen will generate a</span></div>
-<div class="line"><a name="l02190"></a><span class="lineno"> 2190</span>&#160;<span class="comment"># graph for each documented class showing the direct and indirect implementation</span></div>
-<div class="line"><a name="l02191"></a><span class="lineno"> 2191</span>&#160;<span class="comment"># dependencies (inheritance, containment, and class references variables) of the</span></div>
-<div class="line"><a name="l02192"></a><span class="lineno"> 2192</span>&#160;<span class="comment"># class with other documented classes.</span></div>
-<div class="line"><a name="l02193"></a><span class="lineno"> 2193</span>&#160;<span class="comment"># The default value is: YES.</span></div>
-<div class="line"><a name="l02194"></a><span class="lineno"> 2194</span>&#160;<span class="comment"># This tag requires that the tag HAVE_DOT is set to YES.</span></div>
-<div class="line"><a name="l02195"></a><span class="lineno"> 2195</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l02196"></a><span class="lineno"> 2196</span>&#160;<span class="comment">COLLABORATION_GRAPH    = YES</span></div>
-<div class="line"><a name="l02197"></a><span class="lineno"> 2197</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l02198"></a><span class="lineno"> 2198</span>&#160;<span class="comment"># If the GROUP_GRAPHS tag is set to YES then doxygen will generate a graph for</span></div>
-<div class="line"><a name="l02199"></a><span class="lineno"> 2199</span>&#160;<span class="comment"># groups, showing the direct groups dependencies.</span></div>
-<div class="line"><a name="l02200"></a><span class="lineno"> 2200</span>&#160;<span class="comment"># The default value is: YES.</span></div>
-<div class="line"><a name="l02201"></a><span class="lineno"> 2201</span>&#160;<span class="comment"># This tag requires that the tag HAVE_DOT is set to YES.</span></div>
-<div class="line"><a name="l02202"></a><span class="lineno"> 2202</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l02203"></a><span class="lineno"> 2203</span>&#160;<span class="comment">GROUP_GRAPHS           = YES</span></div>
-<div class="line"><a name="l02204"></a><span class="lineno"> 2204</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l02205"></a><span class="lineno"> 2205</span>&#160;<span class="comment"># If the UML_LOOK tag is set to YES, doxygen will generate inheritance and</span></div>
-<div class="line"><a name="l02206"></a><span class="lineno"> 2206</span>&#160;<span class="comment"># collaboration diagrams in a style similar to the OMG&#39;s Unified Modeling</span></div>
-<div class="line"><a name="l02207"></a><span class="lineno"> 2207</span>&#160;<span class="comment"># Language.</span></div>
-<div class="line"><a name="l02208"></a><span class="lineno"> 2208</span>&#160;<span class="comment"># The default value is: NO.</span></div>
-<div class="line"><a name="l02209"></a><span class="lineno"> 2209</span>&#160;<span class="comment"># This tag requires that the tag HAVE_DOT is set to YES.</span></div>
-<div class="line"><a name="l02210"></a><span class="lineno"> 2210</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l02211"></a><span class="lineno"> 2211</span>&#160;<span class="comment">UML_LOOK               = NO</span></div>
-<div class="line"><a name="l02212"></a><span class="lineno"> 2212</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l02213"></a><span class="lineno"> 2213</span>&#160;<span class="comment"># If the UML_LOOK tag is enabled, the fields and methods are shown inside the</span></div>
-<div class="line"><a name="l02214"></a><span class="lineno"> 2214</span>&#160;<span class="comment"># class node. If there are many fields or methods and many nodes the graph may</span></div>
-<div class="line"><a name="l02215"></a><span class="lineno"> 2215</span>&#160;<span class="comment"># become too big to be useful. The UML_LIMIT_NUM_FIELDS threshold limits the</span></div>
-<div class="line"><a name="l02216"></a><span class="lineno"> 2216</span>&#160;<span class="comment"># number of items for each type to make the size more manageable. Set this to 0</span></div>
-<div class="line"><a name="l02217"></a><span class="lineno"> 2217</span>&#160;<span class="comment"># for no limit. Note that the threshold may be exceeded by 50% before the limit</span></div>
-<div class="line"><a name="l02218"></a><span class="lineno"> 2218</span>&#160;<span class="comment"># is enforced. So when you set the threshold to 10, up to 15 fields may appear,</span></div>
-<div class="line"><a name="l02219"></a><span class="lineno"> 2219</span>&#160;<span class="comment"># but if the number exceeds 15, the total amount of fields shown is limited to</span></div>
-<div class="line"><a name="l02220"></a><span class="lineno"> 2220</span>&#160;<span class="comment"># 10.</span></div>
-<div class="line"><a name="l02221"></a><span class="lineno"> 2221</span>&#160;<span class="comment"># Minimum value: 0, maximum value: 100, default value: 10.</span></div>
-<div class="line"><a name="l02222"></a><span class="lineno"> 2222</span>&#160;<span class="comment"># This tag requires that the tag HAVE_DOT is set to YES.</span></div>
-<div class="line"><a name="l02223"></a><span class="lineno"> 2223</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l02224"></a><span class="lineno"> 2224</span>&#160;<span class="comment">UML_LIMIT_NUM_FIELDS   = 10</span></div>
-<div class="line"><a name="l02225"></a><span class="lineno"> 2225</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l02226"></a><span class="lineno"> 2226</span>&#160;<span class="comment"># If the TEMPLATE_RELATIONS tag is set to YES then the inheritance and</span></div>
-<div class="line"><a name="l02227"></a><span class="lineno"> 2227</span>&#160;<span class="comment"># collaboration graphs will show the relations between templates and their</span></div>
-<div class="line"><a name="l02228"></a><span class="lineno"> 2228</span>&#160;<span class="comment"># instances.</span></div>
-<div class="line"><a name="l02229"></a><span class="lineno"> 2229</span>&#160;<span class="comment"># The default value is: NO.</span></div>
-<div class="line"><a name="l02230"></a><span class="lineno"> 2230</span>&#160;<span class="comment"># This tag requires that the tag HAVE_DOT is set to YES.</span></div>
-<div class="line"><a name="l02231"></a><span class="lineno"> 2231</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l02232"></a><span class="lineno"> 2232</span>&#160;<span class="comment">TEMPLATE_RELATIONS     = NO</span></div>
-<div class="line"><a name="l02233"></a><span class="lineno"> 2233</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l02234"></a><span class="lineno"> 2234</span>&#160;<span class="comment"># If the INCLUDE_GRAPH, ENABLE_PREPROCESSING and SEARCH_INCLUDES tags are set to</span></div>
-<div class="line"><a name="l02235"></a><span class="lineno"> 2235</span>&#160;<span class="comment"># YES then doxygen will generate a graph for each documented file showing the</span></div>
-<div class="line"><a name="l02236"></a><span class="lineno"> 2236</span>&#160;<span class="comment"># direct and indirect include dependencies of the file with other documented</span></div>
-<div class="line"><a name="l02237"></a><span class="lineno"> 2237</span>&#160;<span class="comment"># files.</span></div>
-<div class="line"><a name="l02238"></a><span class="lineno"> 2238</span>&#160;<span class="comment"># The default value is: YES.</span></div>
-<div class="line"><a name="l02239"></a><span class="lineno"> 2239</span>&#160;<span class="comment"># This tag requires that the tag HAVE_DOT is set to YES.</span></div>
-<div class="line"><a name="l02240"></a><span class="lineno"> 2240</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l02241"></a><span class="lineno"> 2241</span>&#160;<span class="comment">INCLUDE_GRAPH          = YES</span></div>
-<div class="line"><a name="l02242"></a><span class="lineno"> 2242</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l02243"></a><span class="lineno"> 2243</span>&#160;<span class="comment"># If the INCLUDED_BY_GRAPH, ENABLE_PREPROCESSING and SEARCH_INCLUDES tags are</span></div>
-<div class="line"><a name="l02244"></a><span class="lineno"> 2244</span>&#160;<span class="comment"># set to YES then doxygen will generate a graph for each documented file showing</span></div>
-<div class="line"><a name="l02245"></a><span class="lineno"> 2245</span>&#160;<span class="comment"># the direct and indirect include dependencies of the file with other documented</span></div>
-<div class="line"><a name="l02246"></a><span class="lineno"> 2246</span>&#160;<span class="comment"># files.</span></div>
-<div class="line"><a name="l02247"></a><span class="lineno"> 2247</span>&#160;<span class="comment"># The default value is: YES.</span></div>
-<div class="line"><a name="l02248"></a><span class="lineno"> 2248</span>&#160;<span class="comment"># This tag requires that the tag HAVE_DOT is set to YES.</span></div>
-<div class="line"><a name="l02249"></a><span class="lineno"> 2249</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l02250"></a><span class="lineno"> 2250</span>&#160;<span class="comment">INCLUDED_BY_GRAPH      = YES</span></div>
-<div class="line"><a name="l02251"></a><span class="lineno"> 2251</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l02252"></a><span class="lineno"> 2252</span>&#160;<span class="comment"># If the CALL_GRAPH tag is set to YES then doxygen will generate a call</span></div>
-<div class="line"><a name="l02253"></a><span class="lineno"> 2253</span>&#160;<span class="comment"># dependency graph for every global function or class method.</span></div>
-<div class="line"><a name="l02254"></a><span class="lineno"> 2254</span>&#160;<span class="comment">#</span></div>
-<div class="line"><a name="l02255"></a><span class="lineno"> 2255</span>&#160;<span class="comment"># Note that enabling this option will significantly increase the time of a run.</span></div>
-<div class="line"><a name="l02256"></a><span class="lineno"> 2256</span>&#160;<span class="comment"># So in most cases it will be better to enable call graphs for selected</span></div>
-<div class="line"><a name="l02257"></a><span class="lineno"> 2257</span>&#160;<span class="comment"># functions only using the \callgraph command. Disabling a call graph can be</span></div>
-<div class="line"><a name="l02258"></a><span class="lineno"> 2258</span>&#160;<span class="comment"># accomplished by means of the command \hidecallgraph.</span></div>
-<div class="line"><a name="l02259"></a><span class="lineno"> 2259</span>&#160;<span class="comment"># The default value is: NO.</span></div>
-<div class="line"><a name="l02260"></a><span class="lineno"> 2260</span>&#160;<span class="comment"># This tag requires that the tag HAVE_DOT is set to YES.</span></div>
-<div class="line"><a name="l02261"></a><span class="lineno"> 2261</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l02262"></a><span class="lineno"> 2262</span>&#160;<span class="comment">CALL_GRAPH             = YES</span></div>
-<div class="line"><a name="l02263"></a><span class="lineno"> 2263</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l02264"></a><span class="lineno"> 2264</span>&#160;<span class="comment"># If the CALLER_GRAPH tag is set to YES then doxygen will generate a caller</span></div>
-<div class="line"><a name="l02265"></a><span class="lineno"> 2265</span>&#160;<span class="comment"># dependency graph for every global function or class method.</span></div>
-<div class="line"><a name="l02266"></a><span class="lineno"> 2266</span>&#160;<span class="comment">#</span></div>
-<div class="line"><a name="l02267"></a><span class="lineno"> 2267</span>&#160;<span class="comment"># Note that enabling this option will significantly increase the time of a run.</span></div>
-<div class="line"><a name="l02268"></a><span class="lineno"> 2268</span>&#160;<span class="comment"># So in most cases it will be better to enable caller graphs for selected</span></div>
-<div class="line"><a name="l02269"></a><span class="lineno"> 2269</span>&#160;<span class="comment"># functions only using the \callergraph command. Disabling a caller graph can be</span></div>
-<div class="line"><a name="l02270"></a><span class="lineno"> 2270</span>&#160;<span class="comment"># accomplished by means of the command \hidecallergraph.</span></div>
-<div class="line"><a name="l02271"></a><span class="lineno"> 2271</span>&#160;<span class="comment"># The default value is: NO.</span></div>
-<div class="line"><a name="l02272"></a><span class="lineno"> 2272</span>&#160;<span class="comment"># This tag requires that the tag HAVE_DOT is set to YES.</span></div>
-<div class="line"><a name="l02273"></a><span class="lineno"> 2273</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l02274"></a><span class="lineno"> 2274</span>&#160;<span class="comment">CALLER_GRAPH           = YES</span></div>
-<div class="line"><a name="l02275"></a><span class="lineno"> 2275</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l02276"></a><span class="lineno"> 2276</span>&#160;<span class="comment"># If the GRAPHICAL_HIERARCHY tag is set to YES then doxygen will graphical</span></div>
-<div class="line"><a name="l02277"></a><span class="lineno"> 2277</span>&#160;<span class="comment"># hierarchy of all classes instead of a textual one.</span></div>
-<div class="line"><a name="l02278"></a><span class="lineno"> 2278</span>&#160;<span class="comment"># The default value is: YES.</span></div>
-<div class="line"><a name="l02279"></a><span class="lineno"> 2279</span>&#160;<span class="comment"># This tag requires that the tag HAVE_DOT is set to YES.</span></div>
-<div class="line"><a name="l02280"></a><span class="lineno"> 2280</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l02281"></a><span class="lineno"> 2281</span>&#160;<span class="comment">GRAPHICAL_HIERARCHY    = YES</span></div>
-<div class="line"><a name="l02282"></a><span class="lineno"> 2282</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l02283"></a><span class="lineno"> 2283</span>&#160;<span class="comment"># If the DIRECTORY_GRAPH tag is set to YES then doxygen will show the</span></div>
-<div class="line"><a name="l02284"></a><span class="lineno"> 2284</span>&#160;<span class="comment"># dependencies a directory has on other directories in a graphical way. The</span></div>
-<div class="line"><a name="l02285"></a><span class="lineno"> 2285</span>&#160;<span class="comment"># dependency relations are determined by the #include relations between the</span></div>
-<div class="line"><a name="l02286"></a><span class="lineno"> 2286</span>&#160;<span class="comment"># files in the directories.</span></div>
-<div class="line"><a name="l02287"></a><span class="lineno"> 2287</span>&#160;<span class="comment"># The default value is: YES.</span></div>
-<div class="line"><a name="l02288"></a><span class="lineno"> 2288</span>&#160;<span class="comment"># This tag requires that the tag HAVE_DOT is set to YES.</span></div>
-<div class="line"><a name="l02289"></a><span class="lineno"> 2289</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l02290"></a><span class="lineno"> 2290</span>&#160;<span class="comment">DIRECTORY_GRAPH        = YES</span></div>
-<div class="line"><a name="l02291"></a><span class="lineno"> 2291</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l02292"></a><span class="lineno"> 2292</span>&#160;<span class="comment"># The DOT_IMAGE_FORMAT tag can be used to set the image format of the images</span></div>
-<div class="line"><a name="l02293"></a><span class="lineno"> 2293</span>&#160;<span class="comment"># generated by dot. For an explanation of the image formats see the section</span></div>
-<div class="line"><a name="l02294"></a><span class="lineno"> 2294</span>&#160;<span class="comment"># output formats in the documentation of the dot tool (Graphviz (see:</span></div>
-<div class="line"><a name="l02295"></a><span class="lineno"> 2295</span>&#160;<span class="comment"># http://www.graphviz.org/)).</span></div>
-<div class="line"><a name="l02296"></a><span class="lineno"> 2296</span>&#160;<span class="comment"># Note: If you choose svg you need to set HTML_FILE_EXTENSION to xhtml in order</span></div>
-<div class="line"><a name="l02297"></a><span class="lineno"> 2297</span>&#160;<span class="comment"># to make the SVG files visible in IE 9+ (other browsers do not have this</span></div>
-<div class="line"><a name="l02298"></a><span class="lineno"> 2298</span>&#160;<span class="comment"># requirement).</span></div>
-<div class="line"><a name="l02299"></a><span class="lineno"> 2299</span>&#160;<span class="comment"># Possible values are: png, jpg, gif, svg, png:gd, png:gd:gd, png:cairo,</span></div>
-<div class="line"><a name="l02300"></a><span class="lineno"> 2300</span>&#160;<span class="comment"># png:cairo:gd, png:cairo:cairo, png:cairo:gdiplus, png:gdiplus and</span></div>
-<div class="line"><a name="l02301"></a><span class="lineno"> 2301</span>&#160;<span class="comment"># png:gdiplus:gdiplus.</span></div>
-<div class="line"><a name="l02302"></a><span class="lineno"> 2302</span>&#160;<span class="comment"># The default value is: png.</span></div>
-<div class="line"><a name="l02303"></a><span class="lineno"> 2303</span>&#160;<span class="comment"># This tag requires that the tag HAVE_DOT is set to YES.</span></div>
-<div class="line"><a name="l02304"></a><span class="lineno"> 2304</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l02305"></a><span class="lineno"> 2305</span>&#160;<span class="comment">DOT_IMAGE_FORMAT       = png</span></div>
-<div class="line"><a name="l02306"></a><span class="lineno"> 2306</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l02307"></a><span class="lineno"> 2307</span>&#160;<span class="comment"># If DOT_IMAGE_FORMAT is set to svg, then this option can be set to YES to</span></div>
-<div class="line"><a name="l02308"></a><span class="lineno"> 2308</span>&#160;<span class="comment"># enable generation of interactive SVG images that allow zooming and panning.</span></div>
-<div class="line"><a name="l02309"></a><span class="lineno"> 2309</span>&#160;<span class="comment">#</span></div>
-<div class="line"><a name="l02310"></a><span class="lineno"> 2310</span>&#160;<span class="comment"># Note that this requires a modern browser other than Internet Explorer. Tested</span></div>
-<div class="line"><a name="l02311"></a><span class="lineno"> 2311</span>&#160;<span class="comment"># and working are Firefox, Chrome, Safari, and Opera.</span></div>
-<div class="line"><a name="l02312"></a><span class="lineno"> 2312</span>&#160;<span class="comment"># Note: For IE 9+ you need to set HTML_FILE_EXTENSION to xhtml in order to make</span></div>
-<div class="line"><a name="l02313"></a><span class="lineno"> 2313</span>&#160;<span class="comment"># the SVG files visible. Older versions of IE do not have SVG support.</span></div>
-<div class="line"><a name="l02314"></a><span class="lineno"> 2314</span>&#160;<span class="comment"># The default value is: NO.</span></div>
-<div class="line"><a name="l02315"></a><span class="lineno"> 2315</span>&#160;<span class="comment"># This tag requires that the tag HAVE_DOT is set to YES.</span></div>
-<div class="line"><a name="l02316"></a><span class="lineno"> 2316</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l02317"></a><span class="lineno"> 2317</span>&#160;<span class="comment">INTERACTIVE_SVG        = NO</span></div>
-<div class="line"><a name="l02318"></a><span class="lineno"> 2318</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l02319"></a><span class="lineno"> 2319</span>&#160;<span class="comment"># The DOT_PATH tag can be used to specify the path where the dot tool can be</span></div>
-<div class="line"><a name="l02320"></a><span class="lineno"> 2320</span>&#160;<span class="comment"># found. If left blank, it is assumed the dot tool can be found in the path.</span></div>
-<div class="line"><a name="l02321"></a><span class="lineno"> 2321</span>&#160;<span class="comment"># This tag requires that the tag HAVE_DOT is set to YES.</span></div>
-<div class="line"><a name="l02322"></a><span class="lineno"> 2322</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l02323"></a><span class="lineno"> 2323</span>&#160;<span class="comment">DOT_PATH               = </span></div>
-<div class="line"><a name="l02324"></a><span class="lineno"> 2324</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l02325"></a><span class="lineno"> 2325</span>&#160;<span class="comment"># The DOTFILE_DIRS tag can be used to specify one or more directories that</span></div>
-<div class="line"><a name="l02326"></a><span class="lineno"> 2326</span>&#160;<span class="comment"># contain dot files that are included in the documentation (see the \dotfile</span></div>
-<div class="line"><a name="l02327"></a><span class="lineno"> 2327</span>&#160;<span class="comment"># command).</span></div>
-<div class="line"><a name="l02328"></a><span class="lineno"> 2328</span>&#160;<span class="comment"># This tag requires that the tag HAVE_DOT is set to YES.</span></div>
-<div class="line"><a name="l02329"></a><span class="lineno"> 2329</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l02330"></a><span class="lineno"> 2330</span>&#160;<span class="comment">DOTFILE_DIRS           = </span></div>
-<div class="line"><a name="l02331"></a><span class="lineno"> 2331</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l02332"></a><span class="lineno"> 2332</span>&#160;<span class="comment"># The MSCFILE_DIRS tag can be used to specify one or more directories that</span></div>
-<div class="line"><a name="l02333"></a><span class="lineno"> 2333</span>&#160;<span class="comment"># contain msc files that are included in the documentation (see the \mscfile</span></div>
-<div class="line"><a name="l02334"></a><span class="lineno"> 2334</span>&#160;<span class="comment"># command).</span></div>
-<div class="line"><a name="l02335"></a><span class="lineno"> 2335</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l02336"></a><span class="lineno"> 2336</span>&#160;<span class="comment">MSCFILE_DIRS           = </span></div>
-<div class="line"><a name="l02337"></a><span class="lineno"> 2337</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l02338"></a><span class="lineno"> 2338</span>&#160;<span class="comment"># The DIAFILE_DIRS tag can be used to specify one or more directories that</span></div>
-<div class="line"><a name="l02339"></a><span class="lineno"> 2339</span>&#160;<span class="comment"># contain dia files that are included in the documentation (see the \diafile</span></div>
-<div class="line"><a name="l02340"></a><span class="lineno"> 2340</span>&#160;<span class="comment"># command).</span></div>
-<div class="line"><a name="l02341"></a><span class="lineno"> 2341</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l02342"></a><span class="lineno"> 2342</span>&#160;<span class="comment">DIAFILE_DIRS           = </span></div>
-<div class="line"><a name="l02343"></a><span class="lineno"> 2343</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l02344"></a><span class="lineno"> 2344</span>&#160;<span class="comment"># When using plantuml, the PLANTUML_JAR_PATH tag should be used to specify the</span></div>
-<div class="line"><a name="l02345"></a><span class="lineno"> 2345</span>&#160;<span class="comment"># path where java can find the plantuml.jar file. If left blank, it is assumed</span></div>
-<div class="line"><a name="l02346"></a><span class="lineno"> 2346</span>&#160;<span class="comment"># PlantUML is not used or called during a preprocessing step. Doxygen will</span></div>
-<div class="line"><a name="l02347"></a><span class="lineno"> 2347</span>&#160;<span class="comment"># generate a warning when it encounters a \startuml command in this case and</span></div>
-<div class="line"><a name="l02348"></a><span class="lineno"> 2348</span>&#160;<span class="comment"># will not generate output for the diagram.</span></div>
-<div class="line"><a name="l02349"></a><span class="lineno"> 2349</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l02350"></a><span class="lineno"> 2350</span>&#160;<span class="comment">PLANTUML_JAR_PATH      = </span></div>
-<div class="line"><a name="l02351"></a><span class="lineno"> 2351</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l02352"></a><span class="lineno"> 2352</span>&#160;<span class="comment"># When using plantuml, the specified paths are searched for files specified by</span></div>
-<div class="line"><a name="l02353"></a><span class="lineno"> 2353</span>&#160;<span class="comment"># the !include statement in a plantuml block.</span></div>
-<div class="line"><a name="l02354"></a><span class="lineno"> 2354</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l02355"></a><span class="lineno"> 2355</span>&#160;<span class="comment">PLANTUML_INCLUDE_PATH  = </span></div>
-<div class="line"><a name="l02356"></a><span class="lineno"> 2356</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l02357"></a><span class="lineno"> 2357</span>&#160;<span class="comment"># The DOT_GRAPH_MAX_NODES tag can be used to set the maximum number of nodes</span></div>
-<div class="line"><a name="l02358"></a><span class="lineno"> 2358</span>&#160;<span class="comment"># that will be shown in the graph. If the number of nodes in a graph becomes</span></div>
-<div class="line"><a name="l02359"></a><span class="lineno"> 2359</span>&#160;<span class="comment"># larger than this value, doxygen will truncate the graph, which is visualized</span></div>
-<div class="line"><a name="l02360"></a><span class="lineno"> 2360</span>&#160;<span class="comment"># by representing a node as a red box. Note that doxygen if the number of direct</span></div>
-<div class="line"><a name="l02361"></a><span class="lineno"> 2361</span>&#160;<span class="comment"># children of the root node in a graph is already larger than</span></div>
-<div class="line"><a name="l02362"></a><span class="lineno"> 2362</span>&#160;<span class="comment"># DOT_GRAPH_MAX_NODES then the graph will not be shown at all. Also note that</span></div>
-<div class="line"><a name="l02363"></a><span class="lineno"> 2363</span>&#160;<span class="comment"># the size of a graph can be further restricted by MAX_DOT_GRAPH_DEPTH.</span></div>
-<div class="line"><a name="l02364"></a><span class="lineno"> 2364</span>&#160;<span class="comment"># Minimum value: 0, maximum value: 10000, default value: 50.</span></div>
-<div class="line"><a name="l02365"></a><span class="lineno"> 2365</span>&#160;<span class="comment"># This tag requires that the tag HAVE_DOT is set to YES.</span></div>
-<div class="line"><a name="l02366"></a><span class="lineno"> 2366</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l02367"></a><span class="lineno"> 2367</span>&#160;<span class="comment">DOT_GRAPH_MAX_NODES    = 50</span></div>
-<div class="line"><a name="l02368"></a><span class="lineno"> 2368</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l02369"></a><span class="lineno"> 2369</span>&#160;<span class="comment"># The MAX_DOT_GRAPH_DEPTH tag can be used to set the maximum depth of the graphs</span></div>
-<div class="line"><a name="l02370"></a><span class="lineno"> 2370</span>&#160;<span class="comment"># generated by dot. A depth value of 3 means that only nodes reachable from the</span></div>
-<div class="line"><a name="l02371"></a><span class="lineno"> 2371</span>&#160;<span class="comment"># root by following a path via at most 3 edges will be shown. Nodes that lay</span></div>
-<div class="line"><a name="l02372"></a><span class="lineno"> 2372</span>&#160;<span class="comment"># further from the root node will be omitted. Note that setting this option to 1</span></div>
-<div class="line"><a name="l02373"></a><span class="lineno"> 2373</span>&#160;<span class="comment"># or 2 may greatly reduce the computation time needed for large code bases. Also</span></div>
-<div class="line"><a name="l02374"></a><span class="lineno"> 2374</span>&#160;<span class="comment"># note that the size of a graph can be further restricted by</span></div>
-<div class="line"><a name="l02375"></a><span class="lineno"> 2375</span>&#160;<span class="comment"># DOT_GRAPH_MAX_NODES. Using a depth of 0 means no depth restriction.</span></div>
-<div class="line"><a name="l02376"></a><span class="lineno"> 2376</span>&#160;<span class="comment"># Minimum value: 0, maximum value: 1000, default value: 0.</span></div>
-<div class="line"><a name="l02377"></a><span class="lineno"> 2377</span>&#160;<span class="comment"># This tag requires that the tag HAVE_DOT is set to YES.</span></div>
-<div class="line"><a name="l02378"></a><span class="lineno"> 2378</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l02379"></a><span class="lineno"> 2379</span>&#160;<span class="comment">MAX_DOT_GRAPH_DEPTH    = 1000</span></div>
-<div class="line"><a name="l02380"></a><span class="lineno"> 2380</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l02381"></a><span class="lineno"> 2381</span>&#160;<span class="comment"># Set the DOT_TRANSPARENT tag to YES to generate images with a transparent</span></div>
-<div class="line"><a name="l02382"></a><span class="lineno"> 2382</span>&#160;<span class="comment"># background. This is disabled by default, because dot on Windows does not seem</span></div>
-<div class="line"><a name="l02383"></a><span class="lineno"> 2383</span>&#160;<span class="comment"># to support this out of the box.</span></div>
-<div class="line"><a name="l02384"></a><span class="lineno"> 2384</span>&#160;<span class="comment">#</span></div>
-<div class="line"><a name="l02385"></a><span class="lineno"> 2385</span>&#160;<span class="comment"># Warning: Depending on the platform used, enabling this option may lead to</span></div>
-<div class="line"><a name="l02386"></a><span class="lineno"> 2386</span>&#160;<span class="comment"># badly anti-aliased labels on the edges of a graph (i.e. they become hard to</span></div>
-<div class="line"><a name="l02387"></a><span class="lineno"> 2387</span>&#160;<span class="comment"># read).</span></div>
-<div class="line"><a name="l02388"></a><span class="lineno"> 2388</span>&#160;<span class="comment"># The default value is: NO.</span></div>
-<div class="line"><a name="l02389"></a><span class="lineno"> 2389</span>&#160;<span class="comment"># This tag requires that the tag HAVE_DOT is set to YES.</span></div>
-<div class="line"><a name="l02390"></a><span class="lineno"> 2390</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l02391"></a><span class="lineno"> 2391</span>&#160;<span class="comment">DOT_TRANSPARENT        = NO</span></div>
-<div class="line"><a name="l02392"></a><span class="lineno"> 2392</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l02393"></a><span class="lineno"> 2393</span>&#160;<span class="comment"># Set the DOT_MULTI_TARGETS tag to YES to allow dot to generate multiple output</span></div>
-<div class="line"><a name="l02394"></a><span class="lineno"> 2394</span>&#160;<span class="comment"># files in one run (i.e. multiple -o and -T options on the command line). This</span></div>
-<div class="line"><a name="l02395"></a><span class="lineno"> 2395</span>&#160;<span class="comment"># makes dot run faster, but since only newer versions of dot (&gt;1.8.10) support</span></div>
-<div class="line"><a name="l02396"></a><span class="lineno"> 2396</span>&#160;<span class="comment"># this, this feature is disabled by default.</span></div>
-<div class="line"><a name="l02397"></a><span class="lineno"> 2397</span>&#160;<span class="comment"># The default value is: NO.</span></div>
-<div class="line"><a name="l02398"></a><span class="lineno"> 2398</span>&#160;<span class="comment"># This tag requires that the tag HAVE_DOT is set to YES.</span></div>
-<div class="line"><a name="l02399"></a><span class="lineno"> 2399</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l02400"></a><span class="lineno"> 2400</span>&#160;<span class="comment">DOT_MULTI_TARGETS      = NO</span></div>
-<div class="line"><a name="l02401"></a><span class="lineno"> 2401</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l02402"></a><span class="lineno"> 2402</span>&#160;<span class="comment"># If the GENERATE_LEGEND tag is set to YES doxygen will generate a legend page</span></div>
-<div class="line"><a name="l02403"></a><span class="lineno"> 2403</span>&#160;<span class="comment"># explaining the meaning of the various boxes and arrows in the dot generated</span></div>
-<div class="line"><a name="l02404"></a><span class="lineno"> 2404</span>&#160;<span class="comment"># graphs.</span></div>
-<div class="line"><a name="l02405"></a><span class="lineno"> 2405</span>&#160;<span class="comment"># The default value is: YES.</span></div>
-<div class="line"><a name="l02406"></a><span class="lineno"> 2406</span>&#160;<span class="comment"># This tag requires that the tag HAVE_DOT is set to YES.</span></div>
-<div class="line"><a name="l02407"></a><span class="lineno"> 2407</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l02408"></a><span class="lineno"> 2408</span>&#160;<span class="comment">GENERATE_LEGEND        = YES</span></div>
-<div class="line"><a name="l02409"></a><span class="lineno"> 2409</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l02410"></a><span class="lineno"> 2410</span>&#160;<span class="comment"># If the DOT_CLEANUP tag is set to YES, doxygen will remove the intermediate dot</span></div>
-<div class="line"><a name="l02411"></a><span class="lineno"> 2411</span>&#160;<span class="comment"># files that are used to generate the various graphs.</span></div>
-<div class="line"><a name="l02412"></a><span class="lineno"> 2412</span>&#160;<span class="comment"># The default value is: YES.</span></div>
-<div class="line"><a name="l02413"></a><span class="lineno"> 2413</span>&#160;<span class="comment"># This tag requires that the tag HAVE_DOT is set to YES.</span></div>
-<div class="line"><a name="l02414"></a><span class="lineno"> 2414</span>&#160;<span class="comment"></span></div>
-<div class="line"><a name="l02415"></a><span class="lineno"> 2415</span>&#160;<span class="comment">DOT_CLEANUP            = YES</span></div>
-<div class="ttc" id="a00236_html"><div class="ttname"><a href="a00236.html">glm</a></div><div class="ttdef"><b>Definition:</b> <a href="a00015_source.html#l00020">common.hpp:20</a></div></div>
+<a href="a00047.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span>&#160; </div>
+<div class="line"><a name="l00004"></a><span class="lineno">    4</span>&#160;<span class="preprocessor">#pragma once</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno">    5</span>&#160; </div>
+<div class="line"><a name="l00006"></a><span class="lineno">    6</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="a00074.html">type_vec2.hpp</a>&quot;</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno">    7</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="a00080.html">type_vec4.hpp</a>&quot;</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno">    8</span>&#160;<span class="preprocessor">#include &lt;limits&gt;</span></div>
+<div class="line"><a name="l00009"></a><span class="lineno">    9</span>&#160;<span class="preprocessor">#include &lt;cstddef&gt;</span></div>
+<div class="line"><a name="l00010"></a><span class="lineno">   10</span>&#160; </div>
+<div class="line"><a name="l00011"></a><span class="lineno">   11</span>&#160;<span class="keyword">namespace </span>glm</div>
+<div class="line"><a name="l00012"></a><span class="lineno">   12</span>&#160;{</div>
+<div class="line"><a name="l00013"></a><span class="lineno">   13</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T, qualifier Q&gt;</div>
+<div class="line"><a name="l00014"></a><span class="lineno">   14</span>&#160;        <span class="keyword">struct </span>mat&lt;2, 4, T, Q&gt;</div>
+<div class="line"><a name="l00015"></a><span class="lineno">   15</span>&#160;        {</div>
+<div class="line"><a name="l00016"></a><span class="lineno">   16</span>&#160;                <span class="keyword">typedef</span> vec&lt;4, T, Q&gt; col_type;</div>
+<div class="line"><a name="l00017"></a><span class="lineno">   17</span>&#160;                <span class="keyword">typedef</span> vec&lt;2, T, Q&gt; row_type;</div>
+<div class="line"><a name="l00018"></a><span class="lineno">   18</span>&#160;                <span class="keyword">typedef</span> mat&lt;2, 4, T, Q&gt; type;</div>
+<div class="line"><a name="l00019"></a><span class="lineno">   19</span>&#160;                <span class="keyword">typedef</span> mat&lt;4, 2, T, Q&gt; transpose_type;</div>
+<div class="line"><a name="l00020"></a><span class="lineno">   20</span>&#160;                <span class="keyword">typedef</span> T value_type;</div>
+<div class="line"><a name="l00021"></a><span class="lineno">   21</span>&#160; </div>
+<div class="line"><a name="l00022"></a><span class="lineno">   22</span>&#160;        <span class="keyword">private</span>:</div>
+<div class="line"><a name="l00023"></a><span class="lineno">   23</span>&#160;                col_type value[2];</div>
+<div class="line"><a name="l00024"></a><span class="lineno">   24</span>&#160; </div>
+<div class="line"><a name="l00025"></a><span class="lineno">   25</span>&#160;        <span class="keyword">public</span>:</div>
+<div class="line"><a name="l00026"></a><span class="lineno">   26</span>&#160;                <span class="comment">// -- Accesses --</span></div>
+<div class="line"><a name="l00027"></a><span class="lineno">   27</span>&#160; </div>
+<div class="line"><a name="l00028"></a><span class="lineno">   28</span>&#160;                <span class="keyword">typedef</span> length_t length_type;</div>
+<div class="line"><a name="l00029"></a><span class="lineno">   29</span>&#160;                GLM_FUNC_DECL <span class="keyword">static</span> GLM_CONSTEXPR length_type <a class="code" href="a00853.html#gab703732449be6c7199369b3f9a91ed38">length</a>() { <span class="keywordflow">return</span> 2; }</div>
+<div class="line"><a name="l00030"></a><span class="lineno">   30</span>&#160; </div>
+<div class="line"><a name="l00031"></a><span class="lineno">   31</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR col_type &amp; operator[](length_type i) GLM_NOEXCEPT;</div>
+<div class="line"><a name="l00032"></a><span class="lineno">   32</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR col_type <span class="keyword">const</span>&amp; operator[](length_type i) <span class="keyword">const</span> GLM_NOEXCEPT;</div>
+<div class="line"><a name="l00033"></a><span class="lineno">   33</span>&#160; </div>
+<div class="line"><a name="l00034"></a><span class="lineno">   34</span>&#160;                <span class="comment">// -- Constructors --</span></div>
+<div class="line"><a name="l00035"></a><span class="lineno">   35</span>&#160; </div>
+<div class="line"><a name="l00036"></a><span class="lineno">   36</span>&#160;                GLM_DEFAULTED_DEFAULT_CTOR_DECL GLM_CONSTEXPR mat() GLM_DEFAULT_CTOR;</div>
+<div class="line"><a name="l00037"></a><span class="lineno">   37</span>&#160;                template&lt;qualifier P&gt;</div>
+<div class="line"><a name="l00038"></a><span class="lineno">   38</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR mat(mat&lt;2, 4, T, P&gt; const&amp; m);</div>
+<div class="line"><a name="l00039"></a><span class="lineno">   39</span>&#160; </div>
+<div class="line"><a name="l00040"></a><span class="lineno">   40</span>&#160;                GLM_FUNC_DECL explicit GLM_CONSTEXPR mat(T scalar);</div>
+<div class="line"><a name="l00041"></a><span class="lineno">   41</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR mat(</div>
+<div class="line"><a name="l00042"></a><span class="lineno">   42</span>&#160;                        T x0, T y0, T z0, T w0,</div>
+<div class="line"><a name="l00043"></a><span class="lineno">   43</span>&#160;                        T x1, T y1, T z1, T w1);</div>
+<div class="line"><a name="l00044"></a><span class="lineno">   44</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR mat(</div>
+<div class="line"><a name="l00045"></a><span class="lineno">   45</span>&#160;                        col_type const&amp; v0,</div>
+<div class="line"><a name="l00046"></a><span class="lineno">   46</span>&#160;                        col_type const&amp; v1);</div>
+<div class="line"><a name="l00047"></a><span class="lineno">   47</span>&#160; </div>
+<div class="line"><a name="l00048"></a><span class="lineno">   48</span>&#160;                <span class="comment">// -- Conversions --</span></div>
+<div class="line"><a name="l00049"></a><span class="lineno">   49</span>&#160; </div>
+<div class="line"><a name="l00050"></a><span class="lineno">   50</span>&#160;                template&lt;</div>
+<div class="line"><a name="l00051"></a><span class="lineno">   51</span>&#160;                        typename X1, typename Y1, typename Z1, typename W1,</div>
+<div class="line"><a name="l00052"></a><span class="lineno">   52</span>&#160;                        typename X2, typename Y2, typename Z2, typename W2&gt;</div>
+<div class="line"><a name="l00053"></a><span class="lineno">   53</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR mat(</div>
+<div class="line"><a name="l00054"></a><span class="lineno">   54</span>&#160;                        X1 x1, Y1 y1, Z1 z1, W1 w1,</div>
+<div class="line"><a name="l00055"></a><span class="lineno">   55</span>&#160;                        X2 x2, Y2 y2, Z2 z2, W2 w2);</div>
+<div class="line"><a name="l00056"></a><span class="lineno">   56</span>&#160; </div>
+<div class="line"><a name="l00057"></a><span class="lineno">   57</span>&#160;                template&lt;typename U, typename V&gt;</div>
+<div class="line"><a name="l00058"></a><span class="lineno">   58</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR mat(</div>
+<div class="line"><a name="l00059"></a><span class="lineno">   59</span>&#160;                        vec&lt;4, U, Q&gt; const&amp; v1,</div>
+<div class="line"><a name="l00060"></a><span class="lineno">   60</span>&#160;                        vec&lt;4, V, Q&gt; const&amp; v2);</div>
+<div class="line"><a name="l00061"></a><span class="lineno">   61</span>&#160; </div>
+<div class="line"><a name="l00062"></a><span class="lineno">   62</span>&#160;                <span class="comment">// -- Matrix conversions --</span></div>
+<div class="line"><a name="l00063"></a><span class="lineno">   63</span>&#160; </div>
+<div class="line"><a name="l00064"></a><span class="lineno">   64</span>&#160;                template&lt;typename U, qualifier P&gt;</div>
+<div class="line"><a name="l00065"></a><span class="lineno">   65</span>&#160;                GLM_FUNC_DECL GLM_EXPLICIT GLM_CONSTEXPR mat(mat&lt;2, 4, U, P&gt; const&amp; m);</div>
+<div class="line"><a name="l00066"></a><span class="lineno">   66</span>&#160; </div>
+<div class="line"><a name="l00067"></a><span class="lineno">   67</span>&#160;                GLM_FUNC_DECL GLM_EXPLICIT GLM_CONSTEXPR mat(mat&lt;2, 2, T, Q&gt; const&amp; x);</div>
+<div class="line"><a name="l00068"></a><span class="lineno">   68</span>&#160;                GLM_FUNC_DECL GLM_EXPLICIT GLM_CONSTEXPR mat(mat&lt;3, 3, T, Q&gt; const&amp; x);</div>
+<div class="line"><a name="l00069"></a><span class="lineno">   69</span>&#160;                GLM_FUNC_DECL GLM_EXPLICIT GLM_CONSTEXPR mat(mat&lt;4, 4, T, Q&gt; const&amp; x);</div>
+<div class="line"><a name="l00070"></a><span class="lineno">   70</span>&#160;                GLM_FUNC_DECL GLM_EXPLICIT GLM_CONSTEXPR mat(mat&lt;2, 3, T, Q&gt; const&amp; x);</div>
+<div class="line"><a name="l00071"></a><span class="lineno">   71</span>&#160;                GLM_FUNC_DECL GLM_EXPLICIT GLM_CONSTEXPR mat(mat&lt;3, 2, T, Q&gt; const&amp; x);</div>
+<div class="line"><a name="l00072"></a><span class="lineno">   72</span>&#160;                GLM_FUNC_DECL GLM_EXPLICIT GLM_CONSTEXPR mat(mat&lt;3, 4, T, Q&gt; const&amp; x);</div>
+<div class="line"><a name="l00073"></a><span class="lineno">   73</span>&#160;                GLM_FUNC_DECL GLM_EXPLICIT GLM_CONSTEXPR mat(mat&lt;4, 2, T, Q&gt; const&amp; x);</div>
+<div class="line"><a name="l00074"></a><span class="lineno">   74</span>&#160;                GLM_FUNC_DECL GLM_EXPLICIT GLM_CONSTEXPR mat(mat&lt;4, 3, T, Q&gt; const&amp; x);</div>
+<div class="line"><a name="l00075"></a><span class="lineno">   75</span>&#160; </div>
+<div class="line"><a name="l00076"></a><span class="lineno">   76</span>&#160;                <span class="comment">// -- Unary arithmetic operators --</span></div>
+<div class="line"><a name="l00077"></a><span class="lineno">   77</span>&#160; </div>
+<div class="line"><a name="l00078"></a><span class="lineno">   78</span>&#160;                template&lt;typename U&gt;</div>
+<div class="line"><a name="l00079"></a><span class="lineno">   79</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR mat&lt;2, 4, T, Q&gt; &amp; operator=(mat&lt;2, 4, U, Q&gt; const&amp; m);</div>
+<div class="line"><a name="l00080"></a><span class="lineno">   80</span>&#160;                template&lt;typename U&gt;</div>
+<div class="line"><a name="l00081"></a><span class="lineno">   81</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR mat&lt;2, 4, T, Q&gt; &amp; operator+=(U s);</div>
+<div class="line"><a name="l00082"></a><span class="lineno">   82</span>&#160;                template&lt;typename U&gt;</div>
+<div class="line"><a name="l00083"></a><span class="lineno">   83</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR mat&lt;2, 4, T, Q&gt; &amp; operator+=(mat&lt;2, 4, U, Q&gt; const&amp; m);</div>
+<div class="line"><a name="l00084"></a><span class="lineno">   84</span>&#160;                template&lt;typename U&gt;</div>
+<div class="line"><a name="l00085"></a><span class="lineno">   85</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR mat&lt;2, 4, T, Q&gt; &amp; operator-=(U s);</div>
+<div class="line"><a name="l00086"></a><span class="lineno">   86</span>&#160;                template&lt;typename U&gt;</div>
+<div class="line"><a name="l00087"></a><span class="lineno">   87</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR mat&lt;2, 4, T, Q&gt; &amp; operator-=(mat&lt;2, 4, U, Q&gt; const&amp; m);</div>
+<div class="line"><a name="l00088"></a><span class="lineno">   88</span>&#160;                template&lt;typename U&gt;</div>
+<div class="line"><a name="l00089"></a><span class="lineno">   89</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR mat&lt;2, 4, T, Q&gt; &amp; operator*=(U s);</div>
+<div class="line"><a name="l00090"></a><span class="lineno">   90</span>&#160;                template&lt;typename U&gt;</div>
+<div class="line"><a name="l00091"></a><span class="lineno">   91</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR mat&lt;2, 4, T, Q&gt; &amp; operator/=(U s);</div>
+<div class="line"><a name="l00092"></a><span class="lineno">   92</span>&#160; </div>
+<div class="line"><a name="l00093"></a><span class="lineno">   93</span>&#160;                <span class="comment">// -- Increment and decrement operators --</span></div>
+<div class="line"><a name="l00094"></a><span class="lineno">   94</span>&#160; </div>
+<div class="line"><a name="l00095"></a><span class="lineno">   95</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR mat&lt;2, 4, T, Q&gt; &amp; operator++ ();</div>
+<div class="line"><a name="l00096"></a><span class="lineno">   96</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR mat&lt;2, 4, T, Q&gt; &amp; operator-- ();</div>
+<div class="line"><a name="l00097"></a><span class="lineno">   97</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR mat&lt;2, 4, T, Q&gt; operator++(<span class="keywordtype">int</span>);</div>
+<div class="line"><a name="l00098"></a><span class="lineno">   98</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR mat&lt;2, 4, T, Q&gt; operator--(<span class="keywordtype">int</span>);</div>
+<div class="line"><a name="l00099"></a><span class="lineno">   99</span>&#160;        };</div>
+<div class="line"><a name="l00100"></a><span class="lineno">  100</span>&#160; </div>
+<div class="line"><a name="l00101"></a><span class="lineno">  101</span>&#160;        <span class="comment">// -- Unary operators --</span></div>
+<div class="line"><a name="l00102"></a><span class="lineno">  102</span>&#160; </div>
+<div class="line"><a name="l00103"></a><span class="lineno">  103</span>&#160;        template&lt;typename T, qualifier Q&gt;</div>
+<div class="line"><a name="l00104"></a><span class="lineno">  104</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR mat&lt;2, 4, T, Q&gt; operator+(mat&lt;2, 4, T, Q&gt; const&amp; m);</div>
+<div class="line"><a name="l00105"></a><span class="lineno">  105</span>&#160; </div>
+<div class="line"><a name="l00106"></a><span class="lineno">  106</span>&#160;        template&lt;typename T, qualifier Q&gt;</div>
+<div class="line"><a name="l00107"></a><span class="lineno">  107</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR mat&lt;2, 4, T, Q&gt; operator-(mat&lt;2, 4, T, Q&gt; const&amp; m);</div>
+<div class="line"><a name="l00108"></a><span class="lineno">  108</span>&#160; </div>
+<div class="line"><a name="l00109"></a><span class="lineno">  109</span>&#160;        <span class="comment">// -- Binary operators --</span></div>
+<div class="line"><a name="l00110"></a><span class="lineno">  110</span>&#160; </div>
+<div class="line"><a name="l00111"></a><span class="lineno">  111</span>&#160;        template&lt;typename T, qualifier Q&gt;</div>
+<div class="line"><a name="l00112"></a><span class="lineno">  112</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR mat&lt;2, 4, T, Q&gt; operator+(mat&lt;2, 4, T, Q&gt; const&amp; m, T scalar);</div>
+<div class="line"><a name="l00113"></a><span class="lineno">  113</span>&#160; </div>
+<div class="line"><a name="l00114"></a><span class="lineno">  114</span>&#160;        template&lt;typename T, qualifier Q&gt;</div>
+<div class="line"><a name="l00115"></a><span class="lineno">  115</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR mat&lt;2, 4, T, Q&gt; operator+(mat&lt;2, 4, T, Q&gt; const&amp; m1, mat&lt;2, 4, T, Q&gt; const&amp; m2);</div>
+<div class="line"><a name="l00116"></a><span class="lineno">  116</span>&#160; </div>
+<div class="line"><a name="l00117"></a><span class="lineno">  117</span>&#160;        template&lt;typename T, qualifier Q&gt;</div>
+<div class="line"><a name="l00118"></a><span class="lineno">  118</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR mat&lt;2, 4, T, Q&gt; operator-(mat&lt;2, 4, T, Q&gt; const&amp; m, T scalar);</div>
+<div class="line"><a name="l00119"></a><span class="lineno">  119</span>&#160; </div>
+<div class="line"><a name="l00120"></a><span class="lineno">  120</span>&#160;        template&lt;typename T, qualifier Q&gt;</div>
+<div class="line"><a name="l00121"></a><span class="lineno">  121</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR mat&lt;2, 4, T, Q&gt; operator-(mat&lt;2, 4, T, Q&gt; const&amp; m1, mat&lt;2, 4, T, Q&gt; const&amp; m2);</div>
+<div class="line"><a name="l00122"></a><span class="lineno">  122</span>&#160; </div>
+<div class="line"><a name="l00123"></a><span class="lineno">  123</span>&#160;        template&lt;typename T, qualifier Q&gt;</div>
+<div class="line"><a name="l00124"></a><span class="lineno">  124</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR mat&lt;2, 4, T, Q&gt; operator*(mat&lt;2, 4, T, Q&gt; const&amp; m, T scalar);</div>
+<div class="line"><a name="l00125"></a><span class="lineno">  125</span>&#160; </div>
+<div class="line"><a name="l00126"></a><span class="lineno">  126</span>&#160;        template&lt;typename T, qualifier Q&gt;</div>
+<div class="line"><a name="l00127"></a><span class="lineno">  127</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR mat&lt;2, 4, T, Q&gt; operator*(T scalar, mat&lt;2, 4, T, Q&gt; const&amp; m);</div>
+<div class="line"><a name="l00128"></a><span class="lineno">  128</span>&#160; </div>
+<div class="line"><a name="l00129"></a><span class="lineno">  129</span>&#160;        template&lt;typename T, qualifier Q&gt;</div>
+<div class="line"><a name="l00130"></a><span class="lineno">  130</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR typename mat&lt;2, 4, T, Q&gt;::col_type operator*(mat&lt;2, 4, T, Q&gt; const&amp; m, typename mat&lt;2, 4, T, Q&gt;::row_type const&amp; v);</div>
+<div class="line"><a name="l00131"></a><span class="lineno">  131</span>&#160; </div>
+<div class="line"><a name="l00132"></a><span class="lineno">  132</span>&#160;        template&lt;typename T, qualifier Q&gt;</div>
+<div class="line"><a name="l00133"></a><span class="lineno">  133</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR typename mat&lt;2, 4, T, Q&gt;::row_type operator*(typename mat&lt;2, 4, T, Q&gt;::col_type const&amp; v, mat&lt;2, 4, T, Q&gt; const&amp; m);</div>
+<div class="line"><a name="l00134"></a><span class="lineno">  134</span>&#160; </div>
+<div class="line"><a name="l00135"></a><span class="lineno">  135</span>&#160;        template&lt;typename T, qualifier Q&gt;</div>
+<div class="line"><a name="l00136"></a><span class="lineno">  136</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR mat&lt;4, 4, T, Q&gt; operator*(mat&lt;2, 4, T, Q&gt; const&amp; m1, mat&lt;4, 2, T, Q&gt; const&amp; m2);</div>
+<div class="line"><a name="l00137"></a><span class="lineno">  137</span>&#160; </div>
+<div class="line"><a name="l00138"></a><span class="lineno">  138</span>&#160;        template&lt;typename T, qualifier Q&gt;</div>
+<div class="line"><a name="l00139"></a><span class="lineno">  139</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR mat&lt;2, 4, T, Q&gt; operator*(mat&lt;2, 4, T, Q&gt; const&amp; m1, mat&lt;2, 2, T, Q&gt; const&amp; m2);</div>
+<div class="line"><a name="l00140"></a><span class="lineno">  140</span>&#160; </div>
+<div class="line"><a name="l00141"></a><span class="lineno">  141</span>&#160;        template&lt;typename T, qualifier Q&gt;</div>
+<div class="line"><a name="l00142"></a><span class="lineno">  142</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR mat&lt;3, 4, T, Q&gt; operator*(mat&lt;2, 4, T, Q&gt; const&amp; m1, mat&lt;3, 2, T, Q&gt; const&amp; m2);</div>
+<div class="line"><a name="l00143"></a><span class="lineno">  143</span>&#160; </div>
+<div class="line"><a name="l00144"></a><span class="lineno">  144</span>&#160;        template&lt;typename T, qualifier Q&gt;</div>
+<div class="line"><a name="l00145"></a><span class="lineno">  145</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR mat&lt;2, 4, T, Q&gt; operator/(mat&lt;2, 4, T, Q&gt; const&amp; m, T scalar);</div>
+<div class="line"><a name="l00146"></a><span class="lineno">  146</span>&#160; </div>
+<div class="line"><a name="l00147"></a><span class="lineno">  147</span>&#160;        template&lt;typename T, qualifier Q&gt;</div>
+<div class="line"><a name="l00148"></a><span class="lineno">  148</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR mat&lt;2, 4, T, Q&gt; operator/(T scalar, mat&lt;2, 4, T, Q&gt; const&amp; m);</div>
+<div class="line"><a name="l00149"></a><span class="lineno">  149</span>&#160; </div>
+<div class="line"><a name="l00150"></a><span class="lineno">  150</span>&#160;        <span class="comment">// -- Boolean operators --</span></div>
+<div class="line"><a name="l00151"></a><span class="lineno">  151</span>&#160; </div>
+<div class="line"><a name="l00152"></a><span class="lineno">  152</span>&#160;        template&lt;typename T, qualifier Q&gt;</div>
+<div class="line"><a name="l00153"></a><span class="lineno">  153</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR <span class="keywordtype">bool</span> operator==(mat&lt;2, 4, T, Q&gt; const&amp; m1, mat&lt;2, 4, T, Q&gt; const&amp; m2);</div>
+<div class="line"><a name="l00154"></a><span class="lineno">  154</span>&#160; </div>
+<div class="line"><a name="l00155"></a><span class="lineno">  155</span>&#160;        template&lt;typename T, qualifier Q&gt;</div>
+<div class="line"><a name="l00156"></a><span class="lineno">  156</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR <span class="keywordtype">bool</span> operator!=(mat&lt;2, 4, T, Q&gt; const&amp; m1, mat&lt;2, 4, T, Q&gt; const&amp; m2);</div>
+<div class="line"><a name="l00157"></a><span class="lineno">  157</span>&#160;}<span class="comment">//namespace glm</span></div>
+<div class="line"><a name="l00158"></a><span class="lineno">  158</span>&#160; </div>
+<div class="line"><a name="l00159"></a><span class="lineno">  159</span>&#160;<span class="preprocessor">#ifndef GLM_EXTERNAL_TEMPLATE</span></div>
+<div class="line"><a name="l00160"></a><span class="lineno">  160</span>&#160;<span class="preprocessor">#include &quot;type_mat2x4.inl&quot;</span></div>
+<div class="line"><a name="l00161"></a><span class="lineno">  161</span>&#160;<span class="preprocessor">#endif</span></div>
 </div><!-- fragment --></div><!-- contents -->
+<div class="ttc" id="aa00074_html"><div class="ttname"><a href="a00074.html">type_vec2.hpp</a></div><div class="ttdoc">Core features</div></div>
+<div class="ttc" id="aa00080_html"><div class="ttname"><a href="a00080.html">type_vec4.hpp</a></div><div class="ttdoc">Core features</div></div>
+<div class="ttc" id="aa00853_html_gab703732449be6c7199369b3f9a91ed38"><div class="ttname"><a href="a00853.html#gab703732449be6c7199369b3f9a91ed38">glm::length</a></div><div class="ttdeci">GLM_FUNC_DECL T length(qua&lt; T, Q &gt; const &amp;q)</div><div class="ttdoc">Returns the norm of a quaternions.</div></div>
 <!-- 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.10
+</a> 1.8.18
 </small></address>
 </body>
 </html>

+ 0 - 108
doc/api/a00048.html

@@ -1,108 +0,0 @@
-<!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.10"/>
-<title>0.9.9 API documentation: mat2x2.hpp File Reference</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="search/search.css" rel="stylesheet" type="text/css"/>
-<script type="text/javascript" src="search/searchdata.js"></script>
-<script type="text/javascript" src="search/search.js"></script>
-<script type="text/javascript">
-  $(document).ready(function() { init_search(); });
-</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 id="projectlogo"><img alt="Logo" src="logo-mini.png"/></td>
-  <td id="projectalign" style="padding-left: 0.5em;">
-   <div id="projectname">0.9.9 API documentation
-   </div>
-  </td>
- </tr>
- </tbody>
-</table>
-</div>
-<!-- end header part -->
-<!-- Generated by Doxygen 1.8.10 -->
-<script type="text/javascript">
-var searchBox = new SearchBox("searchBox", "search",false,'Search');
-</script>
-  <div id="navrow1" class="tabs">
-    <ul class="tablist">
-      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
-      <li><a href="modules.html"><span>Modules</span></a></li>
-      <li class="current"><a href="files.html"><span>Files</span></a></li>
-      <li>
-        <div id="MSearchBox" class="MSearchBoxInactive">
-        <span class="left">
-          <img id="MSearchSelect" src="search/mag_sel.png"
-               onmouseover="return searchBox.OnSearchSelectShow()"
-               onmouseout="return searchBox.OnSearchSelectHide()"
-               alt=""/>
-          <input type="text" id="MSearchField" value="Search" accesskey="S"
-               onfocus="searchBox.OnSearchFieldFocus(true)" 
-               onblur="searchBox.OnSearchFieldFocus(false)" 
-               onkeyup="searchBox.OnSearchFieldChange(event)"/>
-          </span><span class="right">
-            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
-          </span>
-        </div>
-      </li>
-    </ul>
-  </div>
-  <div id="navrow2" class="tabs2">
-    <ul class="tablist">
-      <li><a href="files.html"><span>File&#160;List</span></a></li>
-    </ul>
-  </div>
-<!-- window showing the filter options -->
-<div id="MSearchSelectWindow"
-     onmouseover="return searchBox.OnSearchSelectShow()"
-     onmouseout="return searchBox.OnSearchSelectHide()"
-     onkeydown="return searchBox.OnSearchSelectKey(event)">
-</div>
-
-<!-- iframe showing the search results (closed by default) -->
-<div id="MSearchResultsWindow">
-<iframe src="javascript:void(0)" frameborder="0" 
-        name="MSearchResults" id="MSearchResults">
-</iframe>
-</div>
-
-<div id="nav-path" class="navpath">
-  <ul>
-<li class="navelem"><a class="el" href="dir_3a581ba30d25676e4b797b1f96d53b45.html">F:</a></li><li class="navelem"><a class="el" href="dir_9e5fe034a00e89334fd5186c3e7db156.html">G-Truc</a></li><li class="navelem"><a class="el" href="dir_d9496f0844b48bc7e53b5af8c99b9ab2.html">Source</a></li><li class="navelem"><a class="el" href="dir_a8bee7be44182a33f3820393ae0b105d.html">G-Truc</a></li><li class="navelem"><a class="el" href="dir_44e5e654415abd9ca6fdeaddaff8565e.html">glm</a></li><li class="navelem"><a class="el" href="dir_cef2d71d502cb69a9252bca2297d9549.html">glm</a></li>  </ul>
-</div>
-</div><!-- top -->
-<div class="header">
-  <div class="headertitle">
-<div class="title">mat2x2.hpp File Reference</div>  </div>
-</div><!--header-->
-<div class="contents">
-
-<p><a class="el" href="a00280.html">Core features</a>  
-<a href="#details">More...</a></p>
-
-<p><a href="a00048_source.html">Go to the source code of this file.</a></p>
-<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
-<div class="textblock"><p><a class="el" href="a00280.html">Core features</a> </p>
-
-<p>Definition in file <a class="el" href="a00048_source.html">mat2x2.hpp</a>.</p>
-</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.10
-</small></address>
-</body>
-</html>

+ 0 - 110
doc/api/a00048_source.html

@@ -1,110 +0,0 @@
-<!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.10"/>
-<title>0.9.9 API documentation: mat2x2.hpp Source File</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="search/search.css" rel="stylesheet" type="text/css"/>
-<script type="text/javascript" src="search/searchdata.js"></script>
-<script type="text/javascript" src="search/search.js"></script>
-<script type="text/javascript">
-  $(document).ready(function() { init_search(); });
-</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 id="projectlogo"><img alt="Logo" src="logo-mini.png"/></td>
-  <td id="projectalign" style="padding-left: 0.5em;">
-   <div id="projectname">0.9.9 API documentation
-   </div>
-  </td>
- </tr>
- </tbody>
-</table>
-</div>
-<!-- end header part -->
-<!-- Generated by Doxygen 1.8.10 -->
-<script type="text/javascript">
-var searchBox = new SearchBox("searchBox", "search",false,'Search');
-</script>
-  <div id="navrow1" class="tabs">
-    <ul class="tablist">
-      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
-      <li><a href="modules.html"><span>Modules</span></a></li>
-      <li class="current"><a href="files.html"><span>Files</span></a></li>
-      <li>
-        <div id="MSearchBox" class="MSearchBoxInactive">
-        <span class="left">
-          <img id="MSearchSelect" src="search/mag_sel.png"
-               onmouseover="return searchBox.OnSearchSelectShow()"
-               onmouseout="return searchBox.OnSearchSelectHide()"
-               alt=""/>
-          <input type="text" id="MSearchField" value="Search" accesskey="S"
-               onfocus="searchBox.OnSearchFieldFocus(true)" 
-               onblur="searchBox.OnSearchFieldFocus(false)" 
-               onkeyup="searchBox.OnSearchFieldChange(event)"/>
-          </span><span class="right">
-            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
-          </span>
-        </div>
-      </li>
-    </ul>
-  </div>
-  <div id="navrow2" class="tabs2">
-    <ul class="tablist">
-      <li><a href="files.html"><span>File&#160;List</span></a></li>
-    </ul>
-  </div>
-<!-- window showing the filter options -->
-<div id="MSearchSelectWindow"
-     onmouseover="return searchBox.OnSearchSelectShow()"
-     onmouseout="return searchBox.OnSearchSelectHide()"
-     onkeydown="return searchBox.OnSearchSelectKey(event)">
-</div>
-
-<!-- iframe showing the search results (closed by default) -->
-<div id="MSearchResultsWindow">
-<iframe src="javascript:void(0)" frameborder="0" 
-        name="MSearchResults" id="MSearchResults">
-</iframe>
-</div>
-
-<div id="nav-path" class="navpath">
-  <ul>
-<li class="navelem"><a class="el" href="dir_3a581ba30d25676e4b797b1f96d53b45.html">F:</a></li><li class="navelem"><a class="el" href="dir_9e5fe034a00e89334fd5186c3e7db156.html">G-Truc</a></li><li class="navelem"><a class="el" href="dir_d9496f0844b48bc7e53b5af8c99b9ab2.html">Source</a></li><li class="navelem"><a class="el" href="dir_a8bee7be44182a33f3820393ae0b105d.html">G-Truc</a></li><li class="navelem"><a class="el" href="dir_44e5e654415abd9ca6fdeaddaff8565e.html">glm</a></li><li class="navelem"><a class="el" href="dir_cef2d71d502cb69a9252bca2297d9549.html">glm</a></li>  </ul>
-</div>
-</div><!-- top -->
-<div class="header">
-  <div class="headertitle">
-<div class="title">mat2x2.hpp</div>  </div>
-</div><!--header-->
-<div class="contents">
-<a href="a00048.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span>&#160;</div>
-<div class="line"><a name="l00004"></a><span class="lineno">    4</span>&#160;<span class="preprocessor">#pragma once</span></div>
-<div class="line"><a name="l00005"></a><span class="lineno">    5</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="a00063.html">./ext/matrix_double2x2.hpp</a>&quot;</span></div>
-<div class="line"><a name="l00006"></a><span class="lineno">    6</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="a00064.html">./ext/matrix_double2x2_precision.hpp</a>&quot;</span></div>
-<div class="line"><a name="l00007"></a><span class="lineno">    7</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="a00082.html">./ext/matrix_float2x2.hpp</a>&quot;</span></div>
-<div class="line"><a name="l00008"></a><span class="lineno">    8</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="a00083.html">./ext/matrix_float2x2_precision.hpp</a>&quot;</span></div>
-<div class="line"><a name="l00009"></a><span class="lineno">    9</span>&#160;</div>
-<div class="ttc" id="a00064_html"><div class="ttname"><a href="a00064.html">matrix_double2x2_precision.hpp</a></div><div class="ttdoc">Core features </div></div>
-<div class="ttc" id="a00082_html"><div class="ttname"><a href="a00082.html">matrix_float2x2.hpp</a></div><div class="ttdoc">Core features </div></div>
-<div class="ttc" id="a00063_html"><div class="ttname"><a href="a00063.html">matrix_double2x2.hpp</a></div><div class="ttdoc">Core features </div></div>
-<div class="ttc" id="a00083_html"><div class="ttname"><a href="a00083.html">matrix_float2x2_precision.hpp</a></div><div class="ttdoc">Core features </div></div>
-</div><!-- fragment --></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.10
-</small></address>
-</body>
-</html>

+ 0 - 108
doc/api/a00049.html

@@ -1,108 +0,0 @@
-<!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.10"/>
-<title>0.9.9 API documentation: mat2x3.hpp File Reference</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="search/search.css" rel="stylesheet" type="text/css"/>
-<script type="text/javascript" src="search/searchdata.js"></script>
-<script type="text/javascript" src="search/search.js"></script>
-<script type="text/javascript">
-  $(document).ready(function() { init_search(); });
-</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 id="projectlogo"><img alt="Logo" src="logo-mini.png"/></td>
-  <td id="projectalign" style="padding-left: 0.5em;">
-   <div id="projectname">0.9.9 API documentation
-   </div>
-  </td>
- </tr>
- </tbody>
-</table>
-</div>
-<!-- end header part -->
-<!-- Generated by Doxygen 1.8.10 -->
-<script type="text/javascript">
-var searchBox = new SearchBox("searchBox", "search",false,'Search');
-</script>
-  <div id="navrow1" class="tabs">
-    <ul class="tablist">
-      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
-      <li><a href="modules.html"><span>Modules</span></a></li>
-      <li class="current"><a href="files.html"><span>Files</span></a></li>
-      <li>
-        <div id="MSearchBox" class="MSearchBoxInactive">
-        <span class="left">
-          <img id="MSearchSelect" src="search/mag_sel.png"
-               onmouseover="return searchBox.OnSearchSelectShow()"
-               onmouseout="return searchBox.OnSearchSelectHide()"
-               alt=""/>
-          <input type="text" id="MSearchField" value="Search" accesskey="S"
-               onfocus="searchBox.OnSearchFieldFocus(true)" 
-               onblur="searchBox.OnSearchFieldFocus(false)" 
-               onkeyup="searchBox.OnSearchFieldChange(event)"/>
-          </span><span class="right">
-            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
-          </span>
-        </div>
-      </li>
-    </ul>
-  </div>
-  <div id="navrow2" class="tabs2">
-    <ul class="tablist">
-      <li><a href="files.html"><span>File&#160;List</span></a></li>
-    </ul>
-  </div>
-<!-- window showing the filter options -->
-<div id="MSearchSelectWindow"
-     onmouseover="return searchBox.OnSearchSelectShow()"
-     onmouseout="return searchBox.OnSearchSelectHide()"
-     onkeydown="return searchBox.OnSearchSelectKey(event)">
-</div>
-
-<!-- iframe showing the search results (closed by default) -->
-<div id="MSearchResultsWindow">
-<iframe src="javascript:void(0)" frameborder="0" 
-        name="MSearchResults" id="MSearchResults">
-</iframe>
-</div>
-
-<div id="nav-path" class="navpath">
-  <ul>
-<li class="navelem"><a class="el" href="dir_3a581ba30d25676e4b797b1f96d53b45.html">F:</a></li><li class="navelem"><a class="el" href="dir_9e5fe034a00e89334fd5186c3e7db156.html">G-Truc</a></li><li class="navelem"><a class="el" href="dir_d9496f0844b48bc7e53b5af8c99b9ab2.html">Source</a></li><li class="navelem"><a class="el" href="dir_a8bee7be44182a33f3820393ae0b105d.html">G-Truc</a></li><li class="navelem"><a class="el" href="dir_44e5e654415abd9ca6fdeaddaff8565e.html">glm</a></li><li class="navelem"><a class="el" href="dir_cef2d71d502cb69a9252bca2297d9549.html">glm</a></li>  </ul>
-</div>
-</div><!-- top -->
-<div class="header">
-  <div class="headertitle">
-<div class="title">mat2x3.hpp File Reference</div>  </div>
-</div><!--header-->
-<div class="contents">
-
-<p><a class="el" href="a00280.html">Core features</a>  
-<a href="#details">More...</a></p>
-
-<p><a href="a00049_source.html">Go to the source code of this file.</a></p>
-<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
-<div class="textblock"><p><a class="el" href="a00280.html">Core features</a> </p>
-
-<p>Definition in file <a class="el" href="a00049_source.html">mat2x3.hpp</a>.</p>
-</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.10
-</small></address>
-</body>
-</html>

+ 0 - 110
doc/api/a00049_source.html

@@ -1,110 +0,0 @@
-<!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.10"/>
-<title>0.9.9 API documentation: mat2x3.hpp Source File</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="search/search.css" rel="stylesheet" type="text/css"/>
-<script type="text/javascript" src="search/searchdata.js"></script>
-<script type="text/javascript" src="search/search.js"></script>
-<script type="text/javascript">
-  $(document).ready(function() { init_search(); });
-</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 id="projectlogo"><img alt="Logo" src="logo-mini.png"/></td>
-  <td id="projectalign" style="padding-left: 0.5em;">
-   <div id="projectname">0.9.9 API documentation
-   </div>
-  </td>
- </tr>
- </tbody>
-</table>
-</div>
-<!-- end header part -->
-<!-- Generated by Doxygen 1.8.10 -->
-<script type="text/javascript">
-var searchBox = new SearchBox("searchBox", "search",false,'Search');
-</script>
-  <div id="navrow1" class="tabs">
-    <ul class="tablist">
-      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
-      <li><a href="modules.html"><span>Modules</span></a></li>
-      <li class="current"><a href="files.html"><span>Files</span></a></li>
-      <li>
-        <div id="MSearchBox" class="MSearchBoxInactive">
-        <span class="left">
-          <img id="MSearchSelect" src="search/mag_sel.png"
-               onmouseover="return searchBox.OnSearchSelectShow()"
-               onmouseout="return searchBox.OnSearchSelectHide()"
-               alt=""/>
-          <input type="text" id="MSearchField" value="Search" accesskey="S"
-               onfocus="searchBox.OnSearchFieldFocus(true)" 
-               onblur="searchBox.OnSearchFieldFocus(false)" 
-               onkeyup="searchBox.OnSearchFieldChange(event)"/>
-          </span><span class="right">
-            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
-          </span>
-        </div>
-      </li>
-    </ul>
-  </div>
-  <div id="navrow2" class="tabs2">
-    <ul class="tablist">
-      <li><a href="files.html"><span>File&#160;List</span></a></li>
-    </ul>
-  </div>
-<!-- window showing the filter options -->
-<div id="MSearchSelectWindow"
-     onmouseover="return searchBox.OnSearchSelectShow()"
-     onmouseout="return searchBox.OnSearchSelectHide()"
-     onkeydown="return searchBox.OnSearchSelectKey(event)">
-</div>
-
-<!-- iframe showing the search results (closed by default) -->
-<div id="MSearchResultsWindow">
-<iframe src="javascript:void(0)" frameborder="0" 
-        name="MSearchResults" id="MSearchResults">
-</iframe>
-</div>
-
-<div id="nav-path" class="navpath">
-  <ul>
-<li class="navelem"><a class="el" href="dir_3a581ba30d25676e4b797b1f96d53b45.html">F:</a></li><li class="navelem"><a class="el" href="dir_9e5fe034a00e89334fd5186c3e7db156.html">G-Truc</a></li><li class="navelem"><a class="el" href="dir_d9496f0844b48bc7e53b5af8c99b9ab2.html">Source</a></li><li class="navelem"><a class="el" href="dir_a8bee7be44182a33f3820393ae0b105d.html">G-Truc</a></li><li class="navelem"><a class="el" href="dir_44e5e654415abd9ca6fdeaddaff8565e.html">glm</a></li><li class="navelem"><a class="el" href="dir_cef2d71d502cb69a9252bca2297d9549.html">glm</a></li>  </ul>
-</div>
-</div><!-- top -->
-<div class="header">
-  <div class="headertitle">
-<div class="title">mat2x3.hpp</div>  </div>
-</div><!--header-->
-<div class="contents">
-<a href="a00049.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span>&#160;</div>
-<div class="line"><a name="l00004"></a><span class="lineno">    4</span>&#160;<span class="preprocessor">#pragma once</span></div>
-<div class="line"><a name="l00005"></a><span class="lineno">    5</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="a00065.html">./ext/matrix_double2x3.hpp</a>&quot;</span></div>
-<div class="line"><a name="l00006"></a><span class="lineno">    6</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="a00066.html">./ext/matrix_double2x3_precision.hpp</a>&quot;</span></div>
-<div class="line"><a name="l00007"></a><span class="lineno">    7</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="a00084.html">./ext/matrix_float2x3.hpp</a>&quot;</span></div>
-<div class="line"><a name="l00008"></a><span class="lineno">    8</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="a00085.html">./ext/matrix_float2x3_precision.hpp</a>&quot;</span></div>
-<div class="line"><a name="l00009"></a><span class="lineno">    9</span>&#160;</div>
-<div class="ttc" id="a00084_html"><div class="ttname"><a href="a00084.html">matrix_float2x3.hpp</a></div><div class="ttdoc">Core features </div></div>
-<div class="ttc" id="a00066_html"><div class="ttname"><a href="a00066.html">matrix_double2x3_precision.hpp</a></div><div class="ttdoc">Core features </div></div>
-<div class="ttc" id="a00065_html"><div class="ttname"><a href="a00065.html">matrix_double2x3.hpp</a></div><div class="ttdoc">Core features </div></div>
-<div class="ttc" id="a00085_html"><div class="ttname"><a href="a00085.html">matrix_float2x3_precision.hpp</a></div><div class="ttdoc">Core features </div></div>
-</div><!-- fragment --></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.10
-</small></address>
-</body>
-</html>

+ 24 - 42
doc/api/a00050.html

@@ -1,19 +1,17 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://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.10"/>
-<title>0.9.9 API documentation: mat2x4.hpp File Reference</title>
+<meta name="generator" content="Doxygen 1.8.18"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>1.0.0 API documentation: type_mat3x2.hpp File Reference</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="search/search.css" rel="stylesheet" type="text/css"/>
 <script type="text/javascript" src="search/searchdata.js"></script>
 <script type="text/javascript" src="search/search.js"></script>
-<script type="text/javascript">
-  $(document).ready(function() { init_search(); });
-</script>
 <link href="doxygen.css" rel="stylesheet" type="text/css" />
 </head>
 <body>
@@ -24,7 +22,7 @@
  <tr style="height: 56px;">
   <td id="projectlogo"><img alt="Logo" src="logo-mini.png"/></td>
   <td id="projectalign" style="padding-left: 0.5em;">
-   <div id="projectname">0.9.9 API documentation
+   <div id="projectname">1.0.0 API documentation
    </div>
   </td>
  </tr>
@@ -32,38 +30,22 @@
 </table>
 </div>
 <!-- end header part -->
-<!-- Generated by Doxygen 1.8.10 -->
+<!-- Generated by Doxygen 1.8.18 -->
 <script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
 var searchBox = new SearchBox("searchBox", "search",false,'Search');
+/* @license-end */
 </script>
-  <div id="navrow1" class="tabs">
-    <ul class="tablist">
-      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
-      <li><a href="modules.html"><span>Modules</span></a></li>
-      <li class="current"><a href="files.html"><span>Files</span></a></li>
-      <li>
-        <div id="MSearchBox" class="MSearchBoxInactive">
-        <span class="left">
-          <img id="MSearchSelect" src="search/mag_sel.png"
-               onmouseover="return searchBox.OnSearchSelectShow()"
-               onmouseout="return searchBox.OnSearchSelectHide()"
-               alt=""/>
-          <input type="text" id="MSearchField" value="Search" accesskey="S"
-               onfocus="searchBox.OnSearchFieldFocus(true)" 
-               onblur="searchBox.OnSearchFieldFocus(false)" 
-               onkeyup="searchBox.OnSearchFieldChange(event)"/>
-          </span><span class="right">
-            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
-          </span>
-        </div>
-      </li>
-    </ul>
-  </div>
-  <div id="navrow2" class="tabs2">
-    <ul class="tablist">
-      <li><a href="files.html"><span>File&#160;List</span></a></li>
-    </ul>
-  </div>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
 <!-- window showing the filter options -->
 <div id="MSearchSelectWindow"
      onmouseover="return searchBox.OnSearchSelectShow()"
@@ -80,29 +62,29 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 
 <div id="nav-path" class="navpath">
   <ul>
-<li class="navelem"><a class="el" href="dir_3a581ba30d25676e4b797b1f96d53b45.html">F:</a></li><li class="navelem"><a class="el" href="dir_9e5fe034a00e89334fd5186c3e7db156.html">G-Truc</a></li><li class="navelem"><a class="el" href="dir_d9496f0844b48bc7e53b5af8c99b9ab2.html">Source</a></li><li class="navelem"><a class="el" href="dir_a8bee7be44182a33f3820393ae0b105d.html">G-Truc</a></li><li class="navelem"><a class="el" href="dir_44e5e654415abd9ca6fdeaddaff8565e.html">glm</a></li><li class="navelem"><a class="el" href="dir_cef2d71d502cb69a9252bca2297d9549.html">glm</a></li>  </ul>
+<li class="navelem"><a class="el" href="dir_885cc87fac2d91e269af0a5a959fa5f6.html">E:</a></li><li class="navelem"><a class="el" href="dir_63ed049134a778d525e06b63afc2c979.html">Github</a></li><li class="navelem"><a class="el" href="dir_c98a9ac98258ab9f831b188d66361a70.html">g-truc</a></li><li class="navelem"><a class="el" href="dir_50f12b6ceb23d7f6adfb377a1ae8b006.html">glm</a></li><li class="navelem"><a class="el" href="dir_fca33f1b5115d46f42c670590789c0d2.html">glm</a></li><li class="navelem"><a class="el" href="dir_382f4fd018b81be8753cb53c0a41a09a.html">detail</a></li>  </ul>
 </div>
 </div><!-- top -->
 <div class="header">
   <div class="headertitle">
-<div class="title">mat2x4.hpp File Reference</div>  </div>
+<div class="title">type_mat3x2.hpp File Reference</div>  </div>
 </div><!--header-->
 <div class="contents">
 
-<p><a class="el" href="a00280.html">Core features</a>  
+<p><a class="el" href="a00889.html">Core features</a>  
 <a href="#details">More...</a></p>
 
 <p><a href="a00050_source.html">Go to the source code of this file.</a></p>
 <a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
-<div class="textblock"><p><a class="el" href="a00280.html">Core features</a> </p>
+<div class="textblock"><p><a class="el" href="a00889.html">Core features</a> </p>
 
-<p>Definition in file <a class="el" href="a00050_source.html">mat2x4.hpp</a>.</p>
+<p class="definition">Definition in file <a class="el" href="a00050_source.html">type_mat3x2.hpp</a>.</p>
 </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.10
+</a> 1.8.18
 </small></address>
 </body>
 </html>

+ 188 - 49
doc/api/a00050_source.html

@@ -1,19 +1,17 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://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.10"/>
-<title>0.9.9 API documentation: mat2x4.hpp Source File</title>
+<meta name="generator" content="Doxygen 1.8.18"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>1.0.0 API documentation: type_mat3x2.hpp Source File</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="search/search.css" rel="stylesheet" type="text/css"/>
 <script type="text/javascript" src="search/searchdata.js"></script>
 <script type="text/javascript" src="search/search.js"></script>
-<script type="text/javascript">
-  $(document).ready(function() { init_search(); });
-</script>
 <link href="doxygen.css" rel="stylesheet" type="text/css" />
 </head>
 <body>
@@ -24,7 +22,7 @@
  <tr style="height: 56px;">
   <td id="projectlogo"><img alt="Logo" src="logo-mini.png"/></td>
   <td id="projectalign" style="padding-left: 0.5em;">
-   <div id="projectname">0.9.9 API documentation
+   <div id="projectname">1.0.0 API documentation
    </div>
   </td>
  </tr>
@@ -32,38 +30,22 @@
 </table>
 </div>
 <!-- end header part -->
-<!-- Generated by Doxygen 1.8.10 -->
+<!-- Generated by Doxygen 1.8.18 -->
 <script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
 var searchBox = new SearchBox("searchBox", "search",false,'Search');
+/* @license-end */
 </script>
-  <div id="navrow1" class="tabs">
-    <ul class="tablist">
-      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
-      <li><a href="modules.html"><span>Modules</span></a></li>
-      <li class="current"><a href="files.html"><span>Files</span></a></li>
-      <li>
-        <div id="MSearchBox" class="MSearchBoxInactive">
-        <span class="left">
-          <img id="MSearchSelect" src="search/mag_sel.png"
-               onmouseover="return searchBox.OnSearchSelectShow()"
-               onmouseout="return searchBox.OnSearchSelectHide()"
-               alt=""/>
-          <input type="text" id="MSearchField" value="Search" accesskey="S"
-               onfocus="searchBox.OnSearchFieldFocus(true)" 
-               onblur="searchBox.OnSearchFieldFocus(false)" 
-               onkeyup="searchBox.OnSearchFieldChange(event)"/>
-          </span><span class="right">
-            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
-          </span>
-        </div>
-      </li>
-    </ul>
-  </div>
-  <div id="navrow2" class="tabs2">
-    <ul class="tablist">
-      <li><a href="files.html"><span>File&#160;List</span></a></li>
-    </ul>
-  </div>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
 <!-- window showing the filter options -->
 <div id="MSearchSelectWindow"
      onmouseover="return searchBox.OnSearchSelectShow()"
@@ -80,31 +62,188 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 
 <div id="nav-path" class="navpath">
   <ul>
-<li class="navelem"><a class="el" href="dir_3a581ba30d25676e4b797b1f96d53b45.html">F:</a></li><li class="navelem"><a class="el" href="dir_9e5fe034a00e89334fd5186c3e7db156.html">G-Truc</a></li><li class="navelem"><a class="el" href="dir_d9496f0844b48bc7e53b5af8c99b9ab2.html">Source</a></li><li class="navelem"><a class="el" href="dir_a8bee7be44182a33f3820393ae0b105d.html">G-Truc</a></li><li class="navelem"><a class="el" href="dir_44e5e654415abd9ca6fdeaddaff8565e.html">glm</a></li><li class="navelem"><a class="el" href="dir_cef2d71d502cb69a9252bca2297d9549.html">glm</a></li>  </ul>
+<li class="navelem"><a class="el" href="dir_885cc87fac2d91e269af0a5a959fa5f6.html">E:</a></li><li class="navelem"><a class="el" href="dir_63ed049134a778d525e06b63afc2c979.html">Github</a></li><li class="navelem"><a class="el" href="dir_c98a9ac98258ab9f831b188d66361a70.html">g-truc</a></li><li class="navelem"><a class="el" href="dir_50f12b6ceb23d7f6adfb377a1ae8b006.html">glm</a></li><li class="navelem"><a class="el" href="dir_fca33f1b5115d46f42c670590789c0d2.html">glm</a></li><li class="navelem"><a class="el" href="dir_382f4fd018b81be8753cb53c0a41a09a.html">detail</a></li>  </ul>
 </div>
 </div><!-- top -->
 <div class="header">
   <div class="headertitle">
-<div class="title">mat2x4.hpp</div>  </div>
+<div class="title">type_mat3x2.hpp</div>  </div>
 </div><!--header-->
 <div class="contents">
-<a href="a00050.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span>&#160;</div>
+<a href="a00050.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span>&#160; </div>
 <div class="line"><a name="l00004"></a><span class="lineno">    4</span>&#160;<span class="preprocessor">#pragma once</span></div>
-<div class="line"><a name="l00005"></a><span class="lineno">    5</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="a00067.html">./ext/matrix_double2x4.hpp</a>&quot;</span></div>
-<div class="line"><a name="l00006"></a><span class="lineno">    6</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="a00068.html">./ext/matrix_double2x4_precision.hpp</a>&quot;</span></div>
-<div class="line"><a name="l00007"></a><span class="lineno">    7</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="a00086.html">./ext/matrix_float2x4.hpp</a>&quot;</span></div>
-<div class="line"><a name="l00008"></a><span class="lineno">    8</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="a00087.html">./ext/matrix_float2x4_precision.hpp</a>&quot;</span></div>
-<div class="line"><a name="l00009"></a><span class="lineno">    9</span>&#160;</div>
-<div class="ttc" id="a00068_html"><div class="ttname"><a href="a00068.html">matrix_double2x4_precision.hpp</a></div><div class="ttdoc">Core features </div></div>
-<div class="ttc" id="a00067_html"><div class="ttname"><a href="a00067.html">matrix_double2x4.hpp</a></div><div class="ttdoc">Core features </div></div>
-<div class="ttc" id="a00087_html"><div class="ttname"><a href="a00087.html">matrix_float2x4_precision.hpp</a></div><div class="ttdoc">Core features </div></div>
-<div class="ttc" id="a00086_html"><div class="ttname"><a href="a00086.html">matrix_float2x4.hpp</a></div><div class="ttdoc">Core features </div></div>
+<div class="line"><a name="l00005"></a><span class="lineno">    5</span>&#160; </div>
+<div class="line"><a name="l00006"></a><span class="lineno">    6</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="a00074.html">type_vec2.hpp</a>&quot;</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno">    7</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="a00077.html">type_vec3.hpp</a>&quot;</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno">    8</span>&#160;<span class="preprocessor">#include &lt;limits&gt;</span></div>
+<div class="line"><a name="l00009"></a><span class="lineno">    9</span>&#160;<span class="preprocessor">#include &lt;cstddef&gt;</span></div>
+<div class="line"><a name="l00010"></a><span class="lineno">   10</span>&#160; </div>
+<div class="line"><a name="l00011"></a><span class="lineno">   11</span>&#160;<span class="keyword">namespace </span>glm</div>
+<div class="line"><a name="l00012"></a><span class="lineno">   12</span>&#160;{</div>
+<div class="line"><a name="l00013"></a><span class="lineno">   13</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T, qualifier Q&gt;</div>
+<div class="line"><a name="l00014"></a><span class="lineno">   14</span>&#160;        <span class="keyword">struct </span>mat&lt;3, 2, T, Q&gt;</div>
+<div class="line"><a name="l00015"></a><span class="lineno">   15</span>&#160;        {</div>
+<div class="line"><a name="l00016"></a><span class="lineno">   16</span>&#160;                <span class="keyword">typedef</span> vec&lt;2, T, Q&gt; col_type;</div>
+<div class="line"><a name="l00017"></a><span class="lineno">   17</span>&#160;                <span class="keyword">typedef</span> vec&lt;3, T, Q&gt; row_type;</div>
+<div class="line"><a name="l00018"></a><span class="lineno">   18</span>&#160;                <span class="keyword">typedef</span> mat&lt;3, 2, T, Q&gt; type;</div>
+<div class="line"><a name="l00019"></a><span class="lineno">   19</span>&#160;                <span class="keyword">typedef</span> mat&lt;2, 3, T, Q&gt; transpose_type;</div>
+<div class="line"><a name="l00020"></a><span class="lineno">   20</span>&#160;                <span class="keyword">typedef</span> T value_type;</div>
+<div class="line"><a name="l00021"></a><span class="lineno">   21</span>&#160; </div>
+<div class="line"><a name="l00022"></a><span class="lineno">   22</span>&#160;        <span class="keyword">private</span>:</div>
+<div class="line"><a name="l00023"></a><span class="lineno">   23</span>&#160;                col_type value[3];</div>
+<div class="line"><a name="l00024"></a><span class="lineno">   24</span>&#160; </div>
+<div class="line"><a name="l00025"></a><span class="lineno">   25</span>&#160;        <span class="keyword">public</span>:</div>
+<div class="line"><a name="l00026"></a><span class="lineno">   26</span>&#160;                <span class="comment">// -- Accesses --</span></div>
+<div class="line"><a name="l00027"></a><span class="lineno">   27</span>&#160; </div>
+<div class="line"><a name="l00028"></a><span class="lineno">   28</span>&#160;                <span class="keyword">typedef</span> length_t length_type;</div>
+<div class="line"><a name="l00029"></a><span class="lineno">   29</span>&#160;                GLM_FUNC_DECL <span class="keyword">static</span> GLM_CONSTEXPR length_type <a class="code" href="a00853.html#gab703732449be6c7199369b3f9a91ed38">length</a>() { <span class="keywordflow">return</span> 3; }</div>
+<div class="line"><a name="l00030"></a><span class="lineno">   30</span>&#160; </div>
+<div class="line"><a name="l00031"></a><span class="lineno">   31</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR col_type &amp; operator[](length_type i) GLM_NOEXCEPT;</div>
+<div class="line"><a name="l00032"></a><span class="lineno">   32</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR col_type <span class="keyword">const</span>&amp; operator[](length_type i) <span class="keyword">const</span> GLM_NOEXCEPT;</div>
+<div class="line"><a name="l00033"></a><span class="lineno">   33</span>&#160; </div>
+<div class="line"><a name="l00034"></a><span class="lineno">   34</span>&#160;                <span class="comment">// -- Constructors --</span></div>
+<div class="line"><a name="l00035"></a><span class="lineno">   35</span>&#160; </div>
+<div class="line"><a name="l00036"></a><span class="lineno">   36</span>&#160;                GLM_DEFAULTED_DEFAULT_CTOR_DECL GLM_CONSTEXPR mat() GLM_DEFAULT_CTOR;</div>
+<div class="line"><a name="l00037"></a><span class="lineno">   37</span>&#160;                template&lt;qualifier P&gt;</div>
+<div class="line"><a name="l00038"></a><span class="lineno">   38</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR mat(mat&lt;3, 2, T, P&gt; const&amp; m);</div>
+<div class="line"><a name="l00039"></a><span class="lineno">   39</span>&#160; </div>
+<div class="line"><a name="l00040"></a><span class="lineno">   40</span>&#160;                GLM_FUNC_DECL explicit GLM_CONSTEXPR mat(T scalar);</div>
+<div class="line"><a name="l00041"></a><span class="lineno">   41</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR mat(</div>
+<div class="line"><a name="l00042"></a><span class="lineno">   42</span>&#160;                        T x0, T y0,</div>
+<div class="line"><a name="l00043"></a><span class="lineno">   43</span>&#160;                        T x1, T y1,</div>
+<div class="line"><a name="l00044"></a><span class="lineno">   44</span>&#160;                        T x2, T y2);</div>
+<div class="line"><a name="l00045"></a><span class="lineno">   45</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR mat(</div>
+<div class="line"><a name="l00046"></a><span class="lineno">   46</span>&#160;                        col_type const&amp; v0,</div>
+<div class="line"><a name="l00047"></a><span class="lineno">   47</span>&#160;                        col_type const&amp; v1,</div>
+<div class="line"><a name="l00048"></a><span class="lineno">   48</span>&#160;                        col_type const&amp; v2);</div>
+<div class="line"><a name="l00049"></a><span class="lineno">   49</span>&#160; </div>
+<div class="line"><a name="l00050"></a><span class="lineno">   50</span>&#160;                <span class="comment">// -- Conversions --</span></div>
+<div class="line"><a name="l00051"></a><span class="lineno">   51</span>&#160; </div>
+<div class="line"><a name="l00052"></a><span class="lineno">   52</span>&#160;                template&lt;</div>
+<div class="line"><a name="l00053"></a><span class="lineno">   53</span>&#160;                        typename X1, typename Y1,</div>
+<div class="line"><a name="l00054"></a><span class="lineno">   54</span>&#160;                        typename X2, typename Y2,</div>
+<div class="line"><a name="l00055"></a><span class="lineno">   55</span>&#160;                        typename X3, typename Y3&gt;</div>
+<div class="line"><a name="l00056"></a><span class="lineno">   56</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR mat(</div>
+<div class="line"><a name="l00057"></a><span class="lineno">   57</span>&#160;                        X1 x1, Y1 y1,</div>
+<div class="line"><a name="l00058"></a><span class="lineno">   58</span>&#160;                        X2 x2, Y2 y2,</div>
+<div class="line"><a name="l00059"></a><span class="lineno">   59</span>&#160;                        X3 x3, Y3 y3);</div>
+<div class="line"><a name="l00060"></a><span class="lineno">   60</span>&#160; </div>
+<div class="line"><a name="l00061"></a><span class="lineno">   61</span>&#160;                template&lt;typename V1, typename V2, typename V3&gt;</div>
+<div class="line"><a name="l00062"></a><span class="lineno">   62</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR mat(</div>
+<div class="line"><a name="l00063"></a><span class="lineno">   63</span>&#160;                        vec&lt;2, V1, Q&gt; const&amp; v1,</div>
+<div class="line"><a name="l00064"></a><span class="lineno">   64</span>&#160;                        vec&lt;2, V2, Q&gt; const&amp; v2,</div>
+<div class="line"><a name="l00065"></a><span class="lineno">   65</span>&#160;                        vec&lt;2, V3, Q&gt; const&amp; v3);</div>
+<div class="line"><a name="l00066"></a><span class="lineno">   66</span>&#160; </div>
+<div class="line"><a name="l00067"></a><span class="lineno">   67</span>&#160;                <span class="comment">// -- Matrix conversions --</span></div>
+<div class="line"><a name="l00068"></a><span class="lineno">   68</span>&#160; </div>
+<div class="line"><a name="l00069"></a><span class="lineno">   69</span>&#160;                template&lt;typename U, qualifier P&gt;</div>
+<div class="line"><a name="l00070"></a><span class="lineno">   70</span>&#160;                GLM_FUNC_DECL GLM_EXPLICIT GLM_CONSTEXPR mat(mat&lt;3, 2, U, P&gt; const&amp; m);</div>
+<div class="line"><a name="l00071"></a><span class="lineno">   71</span>&#160; </div>
+<div class="line"><a name="l00072"></a><span class="lineno">   72</span>&#160;                GLM_FUNC_DECL GLM_EXPLICIT GLM_CONSTEXPR mat(mat&lt;2, 2, T, Q&gt; const&amp; x);</div>
+<div class="line"><a name="l00073"></a><span class="lineno">   73</span>&#160;                GLM_FUNC_DECL GLM_EXPLICIT GLM_CONSTEXPR mat(mat&lt;3, 3, T, Q&gt; const&amp; x);</div>
+<div class="line"><a name="l00074"></a><span class="lineno">   74</span>&#160;                GLM_FUNC_DECL GLM_EXPLICIT GLM_CONSTEXPR mat(mat&lt;4, 4, T, Q&gt; const&amp; x);</div>
+<div class="line"><a name="l00075"></a><span class="lineno">   75</span>&#160;                GLM_FUNC_DECL GLM_EXPLICIT GLM_CONSTEXPR mat(mat&lt;2, 3, T, Q&gt; const&amp; x);</div>
+<div class="line"><a name="l00076"></a><span class="lineno">   76</span>&#160;                GLM_FUNC_DECL GLM_EXPLICIT GLM_CONSTEXPR mat(mat&lt;2, 4, T, Q&gt; const&amp; x);</div>
+<div class="line"><a name="l00077"></a><span class="lineno">   77</span>&#160;                GLM_FUNC_DECL GLM_EXPLICIT GLM_CONSTEXPR mat(mat&lt;3, 4, T, Q&gt; const&amp; x);</div>
+<div class="line"><a name="l00078"></a><span class="lineno">   78</span>&#160;                GLM_FUNC_DECL GLM_EXPLICIT GLM_CONSTEXPR mat(mat&lt;4, 2, T, Q&gt; const&amp; x);</div>
+<div class="line"><a name="l00079"></a><span class="lineno">   79</span>&#160;                GLM_FUNC_DECL GLM_EXPLICIT GLM_CONSTEXPR mat(mat&lt;4, 3, T, Q&gt; const&amp; x);</div>
+<div class="line"><a name="l00080"></a><span class="lineno">   80</span>&#160; </div>
+<div class="line"><a name="l00081"></a><span class="lineno">   81</span>&#160;                <span class="comment">// -- Unary arithmetic operators --</span></div>
+<div class="line"><a name="l00082"></a><span class="lineno">   82</span>&#160; </div>
+<div class="line"><a name="l00083"></a><span class="lineno">   83</span>&#160;                template&lt;typename U&gt;</div>
+<div class="line"><a name="l00084"></a><span class="lineno">   84</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR mat&lt;3, 2, T, Q&gt; &amp; operator=(mat&lt;3, 2, U, Q&gt; const&amp; m);</div>
+<div class="line"><a name="l00085"></a><span class="lineno">   85</span>&#160;                template&lt;typename U&gt;</div>
+<div class="line"><a name="l00086"></a><span class="lineno">   86</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR mat&lt;3, 2, T, Q&gt; &amp; operator+=(U s);</div>
+<div class="line"><a name="l00087"></a><span class="lineno">   87</span>&#160;                template&lt;typename U&gt;</div>
+<div class="line"><a name="l00088"></a><span class="lineno">   88</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR mat&lt;3, 2, T, Q&gt; &amp; operator+=(mat&lt;3, 2, U, Q&gt; const&amp; m);</div>
+<div class="line"><a name="l00089"></a><span class="lineno">   89</span>&#160;                template&lt;typename U&gt;</div>
+<div class="line"><a name="l00090"></a><span class="lineno">   90</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR mat&lt;3, 2, T, Q&gt; &amp; operator-=(U s);</div>
+<div class="line"><a name="l00091"></a><span class="lineno">   91</span>&#160;                template&lt;typename U&gt;</div>
+<div class="line"><a name="l00092"></a><span class="lineno">   92</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR mat&lt;3, 2, T, Q&gt; &amp; operator-=(mat&lt;3, 2, U, Q&gt; const&amp; m);</div>
+<div class="line"><a name="l00093"></a><span class="lineno">   93</span>&#160;                template&lt;typename U&gt;</div>
+<div class="line"><a name="l00094"></a><span class="lineno">   94</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR mat&lt;3, 2, T, Q&gt; &amp; operator*=(U s);</div>
+<div class="line"><a name="l00095"></a><span class="lineno">   95</span>&#160;                template&lt;typename U&gt;</div>
+<div class="line"><a name="l00096"></a><span class="lineno">   96</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR mat&lt;3, 2, T, Q&gt; &amp; operator/=(U s);</div>
+<div class="line"><a name="l00097"></a><span class="lineno">   97</span>&#160; </div>
+<div class="line"><a name="l00098"></a><span class="lineno">   98</span>&#160;                <span class="comment">// -- Increment and decrement operators --</span></div>
+<div class="line"><a name="l00099"></a><span class="lineno">   99</span>&#160; </div>
+<div class="line"><a name="l00100"></a><span class="lineno">  100</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR mat&lt;3, 2, T, Q&gt; &amp; operator++ ();</div>
+<div class="line"><a name="l00101"></a><span class="lineno">  101</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR mat&lt;3, 2, T, Q&gt; &amp; operator-- ();</div>
+<div class="line"><a name="l00102"></a><span class="lineno">  102</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR mat&lt;3, 2, T, Q&gt; operator++(<span class="keywordtype">int</span>);</div>
+<div class="line"><a name="l00103"></a><span class="lineno">  103</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR mat&lt;3, 2, T, Q&gt; operator--(<span class="keywordtype">int</span>);</div>
+<div class="line"><a name="l00104"></a><span class="lineno">  104</span>&#160;        };</div>
+<div class="line"><a name="l00105"></a><span class="lineno">  105</span>&#160; </div>
+<div class="line"><a name="l00106"></a><span class="lineno">  106</span>&#160;        <span class="comment">// -- Unary operators --</span></div>
+<div class="line"><a name="l00107"></a><span class="lineno">  107</span>&#160; </div>
+<div class="line"><a name="l00108"></a><span class="lineno">  108</span>&#160;        template&lt;typename T, qualifier Q&gt;</div>
+<div class="line"><a name="l00109"></a><span class="lineno">  109</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR mat&lt;3, 2, T, Q&gt; operator+(mat&lt;3, 2, T, Q&gt; const&amp; m);</div>
+<div class="line"><a name="l00110"></a><span class="lineno">  110</span>&#160; </div>
+<div class="line"><a name="l00111"></a><span class="lineno">  111</span>&#160;        template&lt;typename T, qualifier Q&gt;</div>
+<div class="line"><a name="l00112"></a><span class="lineno">  112</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR mat&lt;3, 2, T, Q&gt; operator-(mat&lt;3, 2, T, Q&gt; const&amp; m);</div>
+<div class="line"><a name="l00113"></a><span class="lineno">  113</span>&#160; </div>
+<div class="line"><a name="l00114"></a><span class="lineno">  114</span>&#160;        <span class="comment">// -- Binary operators --</span></div>
+<div class="line"><a name="l00115"></a><span class="lineno">  115</span>&#160; </div>
+<div class="line"><a name="l00116"></a><span class="lineno">  116</span>&#160;        template&lt;typename T, qualifier Q&gt;</div>
+<div class="line"><a name="l00117"></a><span class="lineno">  117</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR mat&lt;3, 2, T, Q&gt; operator+(mat&lt;3, 2, T, Q&gt; const&amp; m, T scalar);</div>
+<div class="line"><a name="l00118"></a><span class="lineno">  118</span>&#160; </div>
+<div class="line"><a name="l00119"></a><span class="lineno">  119</span>&#160;        template&lt;typename T, qualifier Q&gt;</div>
+<div class="line"><a name="l00120"></a><span class="lineno">  120</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR mat&lt;3, 2, T, Q&gt; operator+(mat&lt;3, 2, T, Q&gt; const&amp; m1, mat&lt;3, 2, T, Q&gt; const&amp; m2);</div>
+<div class="line"><a name="l00121"></a><span class="lineno">  121</span>&#160; </div>
+<div class="line"><a name="l00122"></a><span class="lineno">  122</span>&#160;        template&lt;typename T, qualifier Q&gt;</div>
+<div class="line"><a name="l00123"></a><span class="lineno">  123</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR mat&lt;3, 2, T, Q&gt; operator-(mat&lt;3, 2, T, Q&gt; const&amp; m, T scalar);</div>
+<div class="line"><a name="l00124"></a><span class="lineno">  124</span>&#160; </div>
+<div class="line"><a name="l00125"></a><span class="lineno">  125</span>&#160;        template&lt;typename T, qualifier Q&gt;</div>
+<div class="line"><a name="l00126"></a><span class="lineno">  126</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR mat&lt;3, 2, T, Q&gt; operator-(mat&lt;3, 2, T, Q&gt; const&amp; m1, mat&lt;3, 2, T, Q&gt; const&amp; m2);</div>
+<div class="line"><a name="l00127"></a><span class="lineno">  127</span>&#160; </div>
+<div class="line"><a name="l00128"></a><span class="lineno">  128</span>&#160;        template&lt;typename T, qualifier Q&gt;</div>
+<div class="line"><a name="l00129"></a><span class="lineno">  129</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR mat&lt;3, 2, T, Q&gt; operator*(mat&lt;3, 2, T, Q&gt; const&amp; m, T scalar);</div>
+<div class="line"><a name="l00130"></a><span class="lineno">  130</span>&#160; </div>
+<div class="line"><a name="l00131"></a><span class="lineno">  131</span>&#160;        template&lt;typename T, qualifier Q&gt;</div>
+<div class="line"><a name="l00132"></a><span class="lineno">  132</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR mat&lt;3, 2, T, Q&gt; operator*(T scalar, mat&lt;3, 2, T, Q&gt; const&amp; m);</div>
+<div class="line"><a name="l00133"></a><span class="lineno">  133</span>&#160; </div>
+<div class="line"><a name="l00134"></a><span class="lineno">  134</span>&#160;        template&lt;typename T, qualifier Q&gt;</div>
+<div class="line"><a name="l00135"></a><span class="lineno">  135</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR typename mat&lt;3, 2, T, Q&gt;::col_type operator*(mat&lt;3, 2, T, Q&gt; const&amp; m, typename mat&lt;3, 2, T, Q&gt;::row_type const&amp; v);</div>
+<div class="line"><a name="l00136"></a><span class="lineno">  136</span>&#160; </div>
+<div class="line"><a name="l00137"></a><span class="lineno">  137</span>&#160;        template&lt;typename T, qualifier Q&gt;</div>
+<div class="line"><a name="l00138"></a><span class="lineno">  138</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR typename mat&lt;3, 2, T, Q&gt;::row_type operator*(typename mat&lt;3, 2, T, Q&gt;::col_type const&amp; v, mat&lt;3, 2, T, Q&gt; const&amp; m);</div>
+<div class="line"><a name="l00139"></a><span class="lineno">  139</span>&#160; </div>
+<div class="line"><a name="l00140"></a><span class="lineno">  140</span>&#160;        template&lt;typename T, qualifier Q&gt;</div>
+<div class="line"><a name="l00141"></a><span class="lineno">  141</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR mat&lt;2, 2, T, Q&gt; operator*(mat&lt;3, 2, T, Q&gt; const&amp; m1, mat&lt;2, 3, T, Q&gt; const&amp; m2);</div>
+<div class="line"><a name="l00142"></a><span class="lineno">  142</span>&#160; </div>
+<div class="line"><a name="l00143"></a><span class="lineno">  143</span>&#160;        template&lt;typename T, qualifier Q&gt;</div>
+<div class="line"><a name="l00144"></a><span class="lineno">  144</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR mat&lt;3, 2, T, Q&gt; operator*(mat&lt;3, 2, T, Q&gt; const&amp; m1, mat&lt;3, 3, T, Q&gt; const&amp; m2);</div>
+<div class="line"><a name="l00145"></a><span class="lineno">  145</span>&#160; </div>
+<div class="line"><a name="l00146"></a><span class="lineno">  146</span>&#160;        template&lt;typename T, qualifier Q&gt;</div>
+<div class="line"><a name="l00147"></a><span class="lineno">  147</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR mat&lt;4, 2, T, Q&gt; operator*(mat&lt;3, 2, T, Q&gt; const&amp; m1, mat&lt;4, 3, T, Q&gt; const&amp; m2);</div>
+<div class="line"><a name="l00148"></a><span class="lineno">  148</span>&#160; </div>
+<div class="line"><a name="l00149"></a><span class="lineno">  149</span>&#160;        template&lt;typename T, qualifier Q&gt;</div>
+<div class="line"><a name="l00150"></a><span class="lineno">  150</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR mat&lt;3, 2, T, Q&gt; operator/(mat&lt;3, 2, T, Q&gt; const&amp; m, T scalar);</div>
+<div class="line"><a name="l00151"></a><span class="lineno">  151</span>&#160; </div>
+<div class="line"><a name="l00152"></a><span class="lineno">  152</span>&#160;        template&lt;typename T, qualifier Q&gt;</div>
+<div class="line"><a name="l00153"></a><span class="lineno">  153</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR mat&lt;3, 2, T, Q&gt; operator/(T scalar, mat&lt;3, 2, T, Q&gt; const&amp; m);</div>
+<div class="line"><a name="l00154"></a><span class="lineno">  154</span>&#160; </div>
+<div class="line"><a name="l00155"></a><span class="lineno">  155</span>&#160;        <span class="comment">// -- Boolean operators --</span></div>
+<div class="line"><a name="l00156"></a><span class="lineno">  156</span>&#160; </div>
+<div class="line"><a name="l00157"></a><span class="lineno">  157</span>&#160;        template&lt;typename T, qualifier Q&gt;</div>
+<div class="line"><a name="l00158"></a><span class="lineno">  158</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR <span class="keywordtype">bool</span> operator==(mat&lt;3, 2, T, Q&gt; const&amp; m1, mat&lt;3, 2, T, Q&gt; const&amp; m2);</div>
+<div class="line"><a name="l00159"></a><span class="lineno">  159</span>&#160; </div>
+<div class="line"><a name="l00160"></a><span class="lineno">  160</span>&#160;        template&lt;typename T, qualifier Q&gt;</div>
+<div class="line"><a name="l00161"></a><span class="lineno">  161</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR <span class="keywordtype">bool</span> operator!=(mat&lt;3, 2, T, Q&gt; const&amp; m1, mat&lt;3, 2, T, Q&gt; const&amp; m2);</div>
+<div class="line"><a name="l00162"></a><span class="lineno">  162</span>&#160; </div>
+<div class="line"><a name="l00163"></a><span class="lineno">  163</span>&#160;}<span class="comment">//namespace glm</span></div>
+<div class="line"><a name="l00164"></a><span class="lineno">  164</span>&#160; </div>
+<div class="line"><a name="l00165"></a><span class="lineno">  165</span>&#160;<span class="preprocessor">#ifndef GLM_EXTERNAL_TEMPLATE</span></div>
+<div class="line"><a name="l00166"></a><span class="lineno">  166</span>&#160;<span class="preprocessor">#include &quot;type_mat3x2.inl&quot;</span></div>
+<div class="line"><a name="l00167"></a><span class="lineno">  167</span>&#160;<span class="preprocessor">#endif</span></div>
 </div><!-- fragment --></div><!-- contents -->
+<div class="ttc" id="aa00074_html"><div class="ttname"><a href="a00074.html">type_vec2.hpp</a></div><div class="ttdoc">Core features</div></div>
+<div class="ttc" id="aa00853_html_gab703732449be6c7199369b3f9a91ed38"><div class="ttname"><a href="a00853.html#gab703732449be6c7199369b3f9a91ed38">glm::length</a></div><div class="ttdeci">GLM_FUNC_DECL T length(qua&lt; T, Q &gt; const &amp;q)</div><div class="ttdoc">Returns the norm of a quaternions.</div></div>
+<div class="ttc" id="aa00077_html"><div class="ttname"><a href="a00077.html">type_vec3.hpp</a></div><div class="ttdoc">Core features</div></div>
 <!-- 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.10
+</a> 1.8.18
 </small></address>
 </body>
 </html>

+ 0 - 108
doc/api/a00051.html

@@ -1,108 +0,0 @@
-<!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.10"/>
-<title>0.9.9 API documentation: mat3x2.hpp File Reference</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="search/search.css" rel="stylesheet" type="text/css"/>
-<script type="text/javascript" src="search/searchdata.js"></script>
-<script type="text/javascript" src="search/search.js"></script>
-<script type="text/javascript">
-  $(document).ready(function() { init_search(); });
-</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 id="projectlogo"><img alt="Logo" src="logo-mini.png"/></td>
-  <td id="projectalign" style="padding-left: 0.5em;">
-   <div id="projectname">0.9.9 API documentation
-   </div>
-  </td>
- </tr>
- </tbody>
-</table>
-</div>
-<!-- end header part -->
-<!-- Generated by Doxygen 1.8.10 -->
-<script type="text/javascript">
-var searchBox = new SearchBox("searchBox", "search",false,'Search');
-</script>
-  <div id="navrow1" class="tabs">
-    <ul class="tablist">
-      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
-      <li><a href="modules.html"><span>Modules</span></a></li>
-      <li class="current"><a href="files.html"><span>Files</span></a></li>
-      <li>
-        <div id="MSearchBox" class="MSearchBoxInactive">
-        <span class="left">
-          <img id="MSearchSelect" src="search/mag_sel.png"
-               onmouseover="return searchBox.OnSearchSelectShow()"
-               onmouseout="return searchBox.OnSearchSelectHide()"
-               alt=""/>
-          <input type="text" id="MSearchField" value="Search" accesskey="S"
-               onfocus="searchBox.OnSearchFieldFocus(true)" 
-               onblur="searchBox.OnSearchFieldFocus(false)" 
-               onkeyup="searchBox.OnSearchFieldChange(event)"/>
-          </span><span class="right">
-            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
-          </span>
-        </div>
-      </li>
-    </ul>
-  </div>
-  <div id="navrow2" class="tabs2">
-    <ul class="tablist">
-      <li><a href="files.html"><span>File&#160;List</span></a></li>
-    </ul>
-  </div>
-<!-- window showing the filter options -->
-<div id="MSearchSelectWindow"
-     onmouseover="return searchBox.OnSearchSelectShow()"
-     onmouseout="return searchBox.OnSearchSelectHide()"
-     onkeydown="return searchBox.OnSearchSelectKey(event)">
-</div>
-
-<!-- iframe showing the search results (closed by default) -->
-<div id="MSearchResultsWindow">
-<iframe src="javascript:void(0)" frameborder="0" 
-        name="MSearchResults" id="MSearchResults">
-</iframe>
-</div>
-
-<div id="nav-path" class="navpath">
-  <ul>
-<li class="navelem"><a class="el" href="dir_3a581ba30d25676e4b797b1f96d53b45.html">F:</a></li><li class="navelem"><a class="el" href="dir_9e5fe034a00e89334fd5186c3e7db156.html">G-Truc</a></li><li class="navelem"><a class="el" href="dir_d9496f0844b48bc7e53b5af8c99b9ab2.html">Source</a></li><li class="navelem"><a class="el" href="dir_a8bee7be44182a33f3820393ae0b105d.html">G-Truc</a></li><li class="navelem"><a class="el" href="dir_44e5e654415abd9ca6fdeaddaff8565e.html">glm</a></li><li class="navelem"><a class="el" href="dir_cef2d71d502cb69a9252bca2297d9549.html">glm</a></li>  </ul>
-</div>
-</div><!-- top -->
-<div class="header">
-  <div class="headertitle">
-<div class="title">mat3x2.hpp File Reference</div>  </div>
-</div><!--header-->
-<div class="contents">
-
-<p><a class="el" href="a00280.html">Core features</a>  
-<a href="#details">More...</a></p>
-
-<p><a href="a00051_source.html">Go to the source code of this file.</a></p>
-<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
-<div class="textblock"><p><a class="el" href="a00280.html">Core features</a> </p>
-
-<p>Definition in file <a class="el" href="a00051_source.html">mat3x2.hpp</a>.</p>
-</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.10
-</small></address>
-</body>
-</html>

+ 0 - 110
doc/api/a00051_source.html

@@ -1,110 +0,0 @@
-<!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.10"/>
-<title>0.9.9 API documentation: mat3x2.hpp Source File</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="search/search.css" rel="stylesheet" type="text/css"/>
-<script type="text/javascript" src="search/searchdata.js"></script>
-<script type="text/javascript" src="search/search.js"></script>
-<script type="text/javascript">
-  $(document).ready(function() { init_search(); });
-</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 id="projectlogo"><img alt="Logo" src="logo-mini.png"/></td>
-  <td id="projectalign" style="padding-left: 0.5em;">
-   <div id="projectname">0.9.9 API documentation
-   </div>
-  </td>
- </tr>
- </tbody>
-</table>
-</div>
-<!-- end header part -->
-<!-- Generated by Doxygen 1.8.10 -->
-<script type="text/javascript">
-var searchBox = new SearchBox("searchBox", "search",false,'Search');
-</script>
-  <div id="navrow1" class="tabs">
-    <ul class="tablist">
-      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
-      <li><a href="modules.html"><span>Modules</span></a></li>
-      <li class="current"><a href="files.html"><span>Files</span></a></li>
-      <li>
-        <div id="MSearchBox" class="MSearchBoxInactive">
-        <span class="left">
-          <img id="MSearchSelect" src="search/mag_sel.png"
-               onmouseover="return searchBox.OnSearchSelectShow()"
-               onmouseout="return searchBox.OnSearchSelectHide()"
-               alt=""/>
-          <input type="text" id="MSearchField" value="Search" accesskey="S"
-               onfocus="searchBox.OnSearchFieldFocus(true)" 
-               onblur="searchBox.OnSearchFieldFocus(false)" 
-               onkeyup="searchBox.OnSearchFieldChange(event)"/>
-          </span><span class="right">
-            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
-          </span>
-        </div>
-      </li>
-    </ul>
-  </div>
-  <div id="navrow2" class="tabs2">
-    <ul class="tablist">
-      <li><a href="files.html"><span>File&#160;List</span></a></li>
-    </ul>
-  </div>
-<!-- window showing the filter options -->
-<div id="MSearchSelectWindow"
-     onmouseover="return searchBox.OnSearchSelectShow()"
-     onmouseout="return searchBox.OnSearchSelectHide()"
-     onkeydown="return searchBox.OnSearchSelectKey(event)">
-</div>
-
-<!-- iframe showing the search results (closed by default) -->
-<div id="MSearchResultsWindow">
-<iframe src="javascript:void(0)" frameborder="0" 
-        name="MSearchResults" id="MSearchResults">
-</iframe>
-</div>
-
-<div id="nav-path" class="navpath">
-  <ul>
-<li class="navelem"><a class="el" href="dir_3a581ba30d25676e4b797b1f96d53b45.html">F:</a></li><li class="navelem"><a class="el" href="dir_9e5fe034a00e89334fd5186c3e7db156.html">G-Truc</a></li><li class="navelem"><a class="el" href="dir_d9496f0844b48bc7e53b5af8c99b9ab2.html">Source</a></li><li class="navelem"><a class="el" href="dir_a8bee7be44182a33f3820393ae0b105d.html">G-Truc</a></li><li class="navelem"><a class="el" href="dir_44e5e654415abd9ca6fdeaddaff8565e.html">glm</a></li><li class="navelem"><a class="el" href="dir_cef2d71d502cb69a9252bca2297d9549.html">glm</a></li>  </ul>
-</div>
-</div><!-- top -->
-<div class="header">
-  <div class="headertitle">
-<div class="title">mat3x2.hpp</div>  </div>
-</div><!--header-->
-<div class="contents">
-<a href="a00051.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span>&#160;</div>
-<div class="line"><a name="l00004"></a><span class="lineno">    4</span>&#160;<span class="preprocessor">#pragma once</span></div>
-<div class="line"><a name="l00005"></a><span class="lineno">    5</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="a00069.html">./ext/matrix_double3x2.hpp</a>&quot;</span></div>
-<div class="line"><a name="l00006"></a><span class="lineno">    6</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="a00070.html">./ext/matrix_double3x2_precision.hpp</a>&quot;</span></div>
-<div class="line"><a name="l00007"></a><span class="lineno">    7</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="a00088.html">./ext/matrix_float3x2.hpp</a>&quot;</span></div>
-<div class="line"><a name="l00008"></a><span class="lineno">    8</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="a00089.html">./ext/matrix_float3x2_precision.hpp</a>&quot;</span></div>
-<div class="line"><a name="l00009"></a><span class="lineno">    9</span>&#160;</div>
-<div class="ttc" id="a00088_html"><div class="ttname"><a href="a00088.html">matrix_float3x2.hpp</a></div><div class="ttdoc">Core features </div></div>
-<div class="ttc" id="a00070_html"><div class="ttname"><a href="a00070.html">matrix_double3x2_precision.hpp</a></div><div class="ttdoc">Core features </div></div>
-<div class="ttc" id="a00069_html"><div class="ttname"><a href="a00069.html">matrix_double3x2.hpp</a></div><div class="ttdoc">Core features </div></div>
-<div class="ttc" id="a00089_html"><div class="ttname"><a href="a00089.html">matrix_float3x2_precision.hpp</a></div><div class="ttdoc">Core features </div></div>
-</div><!-- fragment --></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.10
-</small></address>
-</body>
-</html>

+ 0 - 108
doc/api/a00052.html

@@ -1,108 +0,0 @@
-<!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.10"/>
-<title>0.9.9 API documentation: mat3x3.hpp File Reference</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="search/search.css" rel="stylesheet" type="text/css"/>
-<script type="text/javascript" src="search/searchdata.js"></script>
-<script type="text/javascript" src="search/search.js"></script>
-<script type="text/javascript">
-  $(document).ready(function() { init_search(); });
-</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 id="projectlogo"><img alt="Logo" src="logo-mini.png"/></td>
-  <td id="projectalign" style="padding-left: 0.5em;">
-   <div id="projectname">0.9.9 API documentation
-   </div>
-  </td>
- </tr>
- </tbody>
-</table>
-</div>
-<!-- end header part -->
-<!-- Generated by Doxygen 1.8.10 -->
-<script type="text/javascript">
-var searchBox = new SearchBox("searchBox", "search",false,'Search');
-</script>
-  <div id="navrow1" class="tabs">
-    <ul class="tablist">
-      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
-      <li><a href="modules.html"><span>Modules</span></a></li>
-      <li class="current"><a href="files.html"><span>Files</span></a></li>
-      <li>
-        <div id="MSearchBox" class="MSearchBoxInactive">
-        <span class="left">
-          <img id="MSearchSelect" src="search/mag_sel.png"
-               onmouseover="return searchBox.OnSearchSelectShow()"
-               onmouseout="return searchBox.OnSearchSelectHide()"
-               alt=""/>
-          <input type="text" id="MSearchField" value="Search" accesskey="S"
-               onfocus="searchBox.OnSearchFieldFocus(true)" 
-               onblur="searchBox.OnSearchFieldFocus(false)" 
-               onkeyup="searchBox.OnSearchFieldChange(event)"/>
-          </span><span class="right">
-            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
-          </span>
-        </div>
-      </li>
-    </ul>
-  </div>
-  <div id="navrow2" class="tabs2">
-    <ul class="tablist">
-      <li><a href="files.html"><span>File&#160;List</span></a></li>
-    </ul>
-  </div>
-<!-- window showing the filter options -->
-<div id="MSearchSelectWindow"
-     onmouseover="return searchBox.OnSearchSelectShow()"
-     onmouseout="return searchBox.OnSearchSelectHide()"
-     onkeydown="return searchBox.OnSearchSelectKey(event)">
-</div>
-
-<!-- iframe showing the search results (closed by default) -->
-<div id="MSearchResultsWindow">
-<iframe src="javascript:void(0)" frameborder="0" 
-        name="MSearchResults" id="MSearchResults">
-</iframe>
-</div>
-
-<div id="nav-path" class="navpath">
-  <ul>
-<li class="navelem"><a class="el" href="dir_3a581ba30d25676e4b797b1f96d53b45.html">F:</a></li><li class="navelem"><a class="el" href="dir_9e5fe034a00e89334fd5186c3e7db156.html">G-Truc</a></li><li class="navelem"><a class="el" href="dir_d9496f0844b48bc7e53b5af8c99b9ab2.html">Source</a></li><li class="navelem"><a class="el" href="dir_a8bee7be44182a33f3820393ae0b105d.html">G-Truc</a></li><li class="navelem"><a class="el" href="dir_44e5e654415abd9ca6fdeaddaff8565e.html">glm</a></li><li class="navelem"><a class="el" href="dir_cef2d71d502cb69a9252bca2297d9549.html">glm</a></li>  </ul>
-</div>
-</div><!-- top -->
-<div class="header">
-  <div class="headertitle">
-<div class="title">mat3x3.hpp File Reference</div>  </div>
-</div><!--header-->
-<div class="contents">
-
-<p><a class="el" href="a00280.html">Core features</a>  
-<a href="#details">More...</a></p>
-
-<p><a href="a00052_source.html">Go to the source code of this file.</a></p>
-<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
-<div class="textblock"><p><a class="el" href="a00280.html">Core features</a> </p>
-
-<p>Definition in file <a class="el" href="a00052_source.html">mat3x3.hpp</a>.</p>
-</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.10
-</small></address>
-</body>
-</html>

+ 0 - 109
doc/api/a00052_source.html

@@ -1,109 +0,0 @@
-<!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.10"/>
-<title>0.9.9 API documentation: mat3x3.hpp Source File</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="search/search.css" rel="stylesheet" type="text/css"/>
-<script type="text/javascript" src="search/searchdata.js"></script>
-<script type="text/javascript" src="search/search.js"></script>
-<script type="text/javascript">
-  $(document).ready(function() { init_search(); });
-</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 id="projectlogo"><img alt="Logo" src="logo-mini.png"/></td>
-  <td id="projectalign" style="padding-left: 0.5em;">
-   <div id="projectname">0.9.9 API documentation
-   </div>
-  </td>
- </tr>
- </tbody>
-</table>
-</div>
-<!-- end header part -->
-<!-- Generated by Doxygen 1.8.10 -->
-<script type="text/javascript">
-var searchBox = new SearchBox("searchBox", "search",false,'Search');
-</script>
-  <div id="navrow1" class="tabs">
-    <ul class="tablist">
-      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
-      <li><a href="modules.html"><span>Modules</span></a></li>
-      <li class="current"><a href="files.html"><span>Files</span></a></li>
-      <li>
-        <div id="MSearchBox" class="MSearchBoxInactive">
-        <span class="left">
-          <img id="MSearchSelect" src="search/mag_sel.png"
-               onmouseover="return searchBox.OnSearchSelectShow()"
-               onmouseout="return searchBox.OnSearchSelectHide()"
-               alt=""/>
-          <input type="text" id="MSearchField" value="Search" accesskey="S"
-               onfocus="searchBox.OnSearchFieldFocus(true)" 
-               onblur="searchBox.OnSearchFieldFocus(false)" 
-               onkeyup="searchBox.OnSearchFieldChange(event)"/>
-          </span><span class="right">
-            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
-          </span>
-        </div>
-      </li>
-    </ul>
-  </div>
-  <div id="navrow2" class="tabs2">
-    <ul class="tablist">
-      <li><a href="files.html"><span>File&#160;List</span></a></li>
-    </ul>
-  </div>
-<!-- window showing the filter options -->
-<div id="MSearchSelectWindow"
-     onmouseover="return searchBox.OnSearchSelectShow()"
-     onmouseout="return searchBox.OnSearchSelectHide()"
-     onkeydown="return searchBox.OnSearchSelectKey(event)">
-</div>
-
-<!-- iframe showing the search results (closed by default) -->
-<div id="MSearchResultsWindow">
-<iframe src="javascript:void(0)" frameborder="0" 
-        name="MSearchResults" id="MSearchResults">
-</iframe>
-</div>
-
-<div id="nav-path" class="navpath">
-  <ul>
-<li class="navelem"><a class="el" href="dir_3a581ba30d25676e4b797b1f96d53b45.html">F:</a></li><li class="navelem"><a class="el" href="dir_9e5fe034a00e89334fd5186c3e7db156.html">G-Truc</a></li><li class="navelem"><a class="el" href="dir_d9496f0844b48bc7e53b5af8c99b9ab2.html">Source</a></li><li class="navelem"><a class="el" href="dir_a8bee7be44182a33f3820393ae0b105d.html">G-Truc</a></li><li class="navelem"><a class="el" href="dir_44e5e654415abd9ca6fdeaddaff8565e.html">glm</a></li><li class="navelem"><a class="el" href="dir_cef2d71d502cb69a9252bca2297d9549.html">glm</a></li>  </ul>
-</div>
-</div><!-- top -->
-<div class="header">
-  <div class="headertitle">
-<div class="title">mat3x3.hpp</div>  </div>
-</div><!--header-->
-<div class="contents">
-<a href="a00052.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span>&#160;</div>
-<div class="line"><a name="l00004"></a><span class="lineno">    4</span>&#160;<span class="preprocessor">#pragma once</span></div>
-<div class="line"><a name="l00005"></a><span class="lineno">    5</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="a00071.html">./ext/matrix_double3x3.hpp</a>&quot;</span></div>
-<div class="line"><a name="l00006"></a><span class="lineno">    6</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="a00072.html">./ext/matrix_double3x3_precision.hpp</a>&quot;</span></div>
-<div class="line"><a name="l00007"></a><span class="lineno">    7</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="a00090.html">./ext/matrix_float3x3.hpp</a>&quot;</span></div>
-<div class="line"><a name="l00008"></a><span class="lineno">    8</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="a00091.html">./ext/matrix_float3x3_precision.hpp</a>&quot;</span></div>
-<div class="ttc" id="a00091_html"><div class="ttname"><a href="a00091.html">matrix_float3x3_precision.hpp</a></div><div class="ttdoc">Core features </div></div>
-<div class="ttc" id="a00090_html"><div class="ttname"><a href="a00090.html">matrix_float3x3.hpp</a></div><div class="ttdoc">Core features </div></div>
-<div class="ttc" id="a00072_html"><div class="ttname"><a href="a00072.html">matrix_double3x3_precision.hpp</a></div><div class="ttdoc">Core features </div></div>
-<div class="ttc" id="a00071_html"><div class="ttname"><a href="a00071.html">matrix_double3x3.hpp</a></div><div class="ttdoc">Core features </div></div>
-</div><!-- fragment --></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.10
-</small></address>
-</body>
-</html>

+ 24 - 42
doc/api/a00053.html

@@ -1,19 +1,17 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://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.10"/>
-<title>0.9.9 API documentation: mat3x4.hpp File Reference</title>
+<meta name="generator" content="Doxygen 1.8.18"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>1.0.0 API documentation: type_mat3x3.hpp File Reference</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="search/search.css" rel="stylesheet" type="text/css"/>
 <script type="text/javascript" src="search/searchdata.js"></script>
 <script type="text/javascript" src="search/search.js"></script>
-<script type="text/javascript">
-  $(document).ready(function() { init_search(); });
-</script>
 <link href="doxygen.css" rel="stylesheet" type="text/css" />
 </head>
 <body>
@@ -24,7 +22,7 @@
  <tr style="height: 56px;">
   <td id="projectlogo"><img alt="Logo" src="logo-mini.png"/></td>
   <td id="projectalign" style="padding-left: 0.5em;">
-   <div id="projectname">0.9.9 API documentation
+   <div id="projectname">1.0.0 API documentation
    </div>
   </td>
  </tr>
@@ -32,38 +30,22 @@
 </table>
 </div>
 <!-- end header part -->
-<!-- Generated by Doxygen 1.8.10 -->
+<!-- Generated by Doxygen 1.8.18 -->
 <script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
 var searchBox = new SearchBox("searchBox", "search",false,'Search');
+/* @license-end */
 </script>
-  <div id="navrow1" class="tabs">
-    <ul class="tablist">
-      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
-      <li><a href="modules.html"><span>Modules</span></a></li>
-      <li class="current"><a href="files.html"><span>Files</span></a></li>
-      <li>
-        <div id="MSearchBox" class="MSearchBoxInactive">
-        <span class="left">
-          <img id="MSearchSelect" src="search/mag_sel.png"
-               onmouseover="return searchBox.OnSearchSelectShow()"
-               onmouseout="return searchBox.OnSearchSelectHide()"
-               alt=""/>
-          <input type="text" id="MSearchField" value="Search" accesskey="S"
-               onfocus="searchBox.OnSearchFieldFocus(true)" 
-               onblur="searchBox.OnSearchFieldFocus(false)" 
-               onkeyup="searchBox.OnSearchFieldChange(event)"/>
-          </span><span class="right">
-            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
-          </span>
-        </div>
-      </li>
-    </ul>
-  </div>
-  <div id="navrow2" class="tabs2">
-    <ul class="tablist">
-      <li><a href="files.html"><span>File&#160;List</span></a></li>
-    </ul>
-  </div>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
 <!-- window showing the filter options -->
 <div id="MSearchSelectWindow"
      onmouseover="return searchBox.OnSearchSelectShow()"
@@ -80,29 +62,29 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 
 <div id="nav-path" class="navpath">
   <ul>
-<li class="navelem"><a class="el" href="dir_3a581ba30d25676e4b797b1f96d53b45.html">F:</a></li><li class="navelem"><a class="el" href="dir_9e5fe034a00e89334fd5186c3e7db156.html">G-Truc</a></li><li class="navelem"><a class="el" href="dir_d9496f0844b48bc7e53b5af8c99b9ab2.html">Source</a></li><li class="navelem"><a class="el" href="dir_a8bee7be44182a33f3820393ae0b105d.html">G-Truc</a></li><li class="navelem"><a class="el" href="dir_44e5e654415abd9ca6fdeaddaff8565e.html">glm</a></li><li class="navelem"><a class="el" href="dir_cef2d71d502cb69a9252bca2297d9549.html">glm</a></li>  </ul>
+<li class="navelem"><a class="el" href="dir_885cc87fac2d91e269af0a5a959fa5f6.html">E:</a></li><li class="navelem"><a class="el" href="dir_63ed049134a778d525e06b63afc2c979.html">Github</a></li><li class="navelem"><a class="el" href="dir_c98a9ac98258ab9f831b188d66361a70.html">g-truc</a></li><li class="navelem"><a class="el" href="dir_50f12b6ceb23d7f6adfb377a1ae8b006.html">glm</a></li><li class="navelem"><a class="el" href="dir_fca33f1b5115d46f42c670590789c0d2.html">glm</a></li><li class="navelem"><a class="el" href="dir_382f4fd018b81be8753cb53c0a41a09a.html">detail</a></li>  </ul>
 </div>
 </div><!-- top -->
 <div class="header">
   <div class="headertitle">
-<div class="title">mat3x4.hpp File Reference</div>  </div>
+<div class="title">type_mat3x3.hpp File Reference</div>  </div>
 </div><!--header-->
 <div class="contents">
 
-<p><a class="el" href="a00280.html">Core features</a>  
+<p><a class="el" href="a00889.html">Core features</a>  
 <a href="#details">More...</a></p>
 
 <p><a href="a00053_source.html">Go to the source code of this file.</a></p>
 <a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
-<div class="textblock"><p><a class="el" href="a00280.html">Core features</a> </p>
+<div class="textblock"><p><a class="el" href="a00889.html">Core features</a> </p>
 
-<p>Definition in file <a class="el" href="a00053_source.html">mat3x4.hpp</a>.</p>
+<p class="definition">Definition in file <a class="el" href="a00053_source.html">type_mat3x3.hpp</a>.</p>
 </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.10
+</a> 1.8.18
 </small></address>
 </body>
 </html>

+ 204 - 48
doc/api/a00053_source.html

@@ -1,19 +1,17 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://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.10"/>
-<title>0.9.9 API documentation: mat3x4.hpp Source File</title>
+<meta name="generator" content="Doxygen 1.8.18"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>1.0.0 API documentation: type_mat3x3.hpp Source File</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="search/search.css" rel="stylesheet" type="text/css"/>
 <script type="text/javascript" src="search/searchdata.js"></script>
 <script type="text/javascript" src="search/search.js"></script>
-<script type="text/javascript">
-  $(document).ready(function() { init_search(); });
-</script>
 <link href="doxygen.css" rel="stylesheet" type="text/css" />
 </head>
 <body>
@@ -24,7 +22,7 @@
  <tr style="height: 56px;">
   <td id="projectlogo"><img alt="Logo" src="logo-mini.png"/></td>
   <td id="projectalign" style="padding-left: 0.5em;">
-   <div id="projectname">0.9.9 API documentation
+   <div id="projectname">1.0.0 API documentation
    </div>
   </td>
  </tr>
@@ -32,38 +30,22 @@
 </table>
 </div>
 <!-- end header part -->
-<!-- Generated by Doxygen 1.8.10 -->
+<!-- Generated by Doxygen 1.8.18 -->
 <script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
 var searchBox = new SearchBox("searchBox", "search",false,'Search');
+/* @license-end */
 </script>
-  <div id="navrow1" class="tabs">
-    <ul class="tablist">
-      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
-      <li><a href="modules.html"><span>Modules</span></a></li>
-      <li class="current"><a href="files.html"><span>Files</span></a></li>
-      <li>
-        <div id="MSearchBox" class="MSearchBoxInactive">
-        <span class="left">
-          <img id="MSearchSelect" src="search/mag_sel.png"
-               onmouseover="return searchBox.OnSearchSelectShow()"
-               onmouseout="return searchBox.OnSearchSelectHide()"
-               alt=""/>
-          <input type="text" id="MSearchField" value="Search" accesskey="S"
-               onfocus="searchBox.OnSearchFieldFocus(true)" 
-               onblur="searchBox.OnSearchFieldFocus(false)" 
-               onkeyup="searchBox.OnSearchFieldChange(event)"/>
-          </span><span class="right">
-            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
-          </span>
-        </div>
-      </li>
-    </ul>
-  </div>
-  <div id="navrow2" class="tabs2">
-    <ul class="tablist">
-      <li><a href="files.html"><span>File&#160;List</span></a></li>
-    </ul>
-  </div>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
 <!-- window showing the filter options -->
 <div id="MSearchSelectWindow"
      onmouseover="return searchBox.OnSearchSelectShow()"
@@ -80,30 +62,204 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 
 <div id="nav-path" class="navpath">
   <ul>
-<li class="navelem"><a class="el" href="dir_3a581ba30d25676e4b797b1f96d53b45.html">F:</a></li><li class="navelem"><a class="el" href="dir_9e5fe034a00e89334fd5186c3e7db156.html">G-Truc</a></li><li class="navelem"><a class="el" href="dir_d9496f0844b48bc7e53b5af8c99b9ab2.html">Source</a></li><li class="navelem"><a class="el" href="dir_a8bee7be44182a33f3820393ae0b105d.html">G-Truc</a></li><li class="navelem"><a class="el" href="dir_44e5e654415abd9ca6fdeaddaff8565e.html">glm</a></li><li class="navelem"><a class="el" href="dir_cef2d71d502cb69a9252bca2297d9549.html">glm</a></li>  </ul>
+<li class="navelem"><a class="el" href="dir_885cc87fac2d91e269af0a5a959fa5f6.html">E:</a></li><li class="navelem"><a class="el" href="dir_63ed049134a778d525e06b63afc2c979.html">Github</a></li><li class="navelem"><a class="el" href="dir_c98a9ac98258ab9f831b188d66361a70.html">g-truc</a></li><li class="navelem"><a class="el" href="dir_50f12b6ceb23d7f6adfb377a1ae8b006.html">glm</a></li><li class="navelem"><a class="el" href="dir_fca33f1b5115d46f42c670590789c0d2.html">glm</a></li><li class="navelem"><a class="el" href="dir_382f4fd018b81be8753cb53c0a41a09a.html">detail</a></li>  </ul>
 </div>
 </div><!-- top -->
 <div class="header">
   <div class="headertitle">
-<div class="title">mat3x4.hpp</div>  </div>
+<div class="title">type_mat3x3.hpp</div>  </div>
 </div><!--header-->
 <div class="contents">
-<a href="a00053.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span>&#160;</div>
+<a href="a00053.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span>&#160; </div>
 <div class="line"><a name="l00004"></a><span class="lineno">    4</span>&#160;<span class="preprocessor">#pragma once</span></div>
-<div class="line"><a name="l00005"></a><span class="lineno">    5</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="a00073.html">./ext/matrix_double3x4.hpp</a>&quot;</span></div>
-<div class="line"><a name="l00006"></a><span class="lineno">    6</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="a00074.html">./ext/matrix_double3x4_precision.hpp</a>&quot;</span></div>
-<div class="line"><a name="l00007"></a><span class="lineno">    7</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="a00092.html">./ext/matrix_float3x4.hpp</a>&quot;</span></div>
-<div class="line"><a name="l00008"></a><span class="lineno">    8</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="a00093.html">./ext/matrix_float3x4_precision.hpp</a>&quot;</span></div>
-<div class="ttc" id="a00093_html"><div class="ttname"><a href="a00093.html">matrix_float3x4_precision.hpp</a></div><div class="ttdoc">Core features </div></div>
-<div class="ttc" id="a00074_html"><div class="ttname"><a href="a00074.html">matrix_double3x4_precision.hpp</a></div><div class="ttdoc">Core features </div></div>
-<div class="ttc" id="a00092_html"><div class="ttname"><a href="a00092.html">matrix_float3x4.hpp</a></div><div class="ttdoc">Core features </div></div>
-<div class="ttc" id="a00073_html"><div class="ttname"><a href="a00073.html">matrix_double3x4.hpp</a></div><div class="ttdoc">Core features </div></div>
+<div class="line"><a name="l00005"></a><span class="lineno">    5</span>&#160; </div>
+<div class="line"><a name="l00006"></a><span class="lineno">    6</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="a00077.html">type_vec3.hpp</a>&quot;</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno">    7</span>&#160;<span class="preprocessor">#include &lt;limits&gt;</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno">    8</span>&#160;<span class="preprocessor">#include &lt;cstddef&gt;</span></div>
+<div class="line"><a name="l00009"></a><span class="lineno">    9</span>&#160; </div>
+<div class="line"><a name="l00010"></a><span class="lineno">   10</span>&#160;<span class="keyword">namespace </span>glm</div>
+<div class="line"><a name="l00011"></a><span class="lineno">   11</span>&#160;{</div>
+<div class="line"><a name="l00012"></a><span class="lineno">   12</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T, qualifier Q&gt;</div>
+<div class="line"><a name="l00013"></a><span class="lineno">   13</span>&#160;        <span class="keyword">struct </span>mat&lt;3, 3, T, Q&gt;</div>
+<div class="line"><a name="l00014"></a><span class="lineno">   14</span>&#160;        {</div>
+<div class="line"><a name="l00015"></a><span class="lineno">   15</span>&#160;                <span class="keyword">typedef</span> vec&lt;3, T, Q&gt; col_type;</div>
+<div class="line"><a name="l00016"></a><span class="lineno">   16</span>&#160;                <span class="keyword">typedef</span> vec&lt;3, T, Q&gt; row_type;</div>
+<div class="line"><a name="l00017"></a><span class="lineno">   17</span>&#160;                <span class="keyword">typedef</span> mat&lt;3, 3, T, Q&gt; type;</div>
+<div class="line"><a name="l00018"></a><span class="lineno">   18</span>&#160;                <span class="keyword">typedef</span> mat&lt;3, 3, T, Q&gt; transpose_type;</div>
+<div class="line"><a name="l00019"></a><span class="lineno">   19</span>&#160;                <span class="keyword">typedef</span> T value_type;</div>
+<div class="line"><a name="l00020"></a><span class="lineno">   20</span>&#160; </div>
+<div class="line"><a name="l00021"></a><span class="lineno">   21</span>&#160;        <span class="keyword">private</span>:</div>
+<div class="line"><a name="l00022"></a><span class="lineno">   22</span>&#160;                col_type value[3];</div>
+<div class="line"><a name="l00023"></a><span class="lineno">   23</span>&#160; </div>
+<div class="line"><a name="l00024"></a><span class="lineno">   24</span>&#160;        <span class="keyword">public</span>:</div>
+<div class="line"><a name="l00025"></a><span class="lineno">   25</span>&#160;                <span class="comment">// -- Accesses --</span></div>
+<div class="line"><a name="l00026"></a><span class="lineno">   26</span>&#160; </div>
+<div class="line"><a name="l00027"></a><span class="lineno">   27</span>&#160;                <span class="keyword">typedef</span> length_t length_type;</div>
+<div class="line"><a name="l00028"></a><span class="lineno">   28</span>&#160;                GLM_FUNC_DECL <span class="keyword">static</span> GLM_CONSTEXPR length_type <a class="code" href="a00853.html#gab703732449be6c7199369b3f9a91ed38">length</a>() { <span class="keywordflow">return</span> 3; }</div>
+<div class="line"><a name="l00029"></a><span class="lineno">   29</span>&#160; </div>
+<div class="line"><a name="l00030"></a><span class="lineno">   30</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR col_type &amp; operator[](length_type i) GLM_NOEXCEPT;</div>
+<div class="line"><a name="l00031"></a><span class="lineno">   31</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR col_type <span class="keyword">const</span>&amp; operator[](length_type i) <span class="keyword">const</span> GLM_NOEXCEPT;</div>
+<div class="line"><a name="l00032"></a><span class="lineno">   32</span>&#160; </div>
+<div class="line"><a name="l00033"></a><span class="lineno">   33</span>&#160;                <span class="comment">// -- Constructors --</span></div>
+<div class="line"><a name="l00034"></a><span class="lineno">   34</span>&#160; </div>
+<div class="line"><a name="l00035"></a><span class="lineno">   35</span>&#160;                GLM_DEFAULTED_DEFAULT_CTOR_DECL GLM_CONSTEXPR mat() GLM_DEFAULT_CTOR;</div>
+<div class="line"><a name="l00036"></a><span class="lineno">   36</span>&#160;                template&lt;qualifier P&gt;</div>
+<div class="line"><a name="l00037"></a><span class="lineno">   37</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR mat(mat&lt;3, 3, T, P&gt; const&amp; m);</div>
+<div class="line"><a name="l00038"></a><span class="lineno">   38</span>&#160; </div>
+<div class="line"><a name="l00039"></a><span class="lineno">   39</span>&#160;                GLM_FUNC_DECL explicit GLM_CONSTEXPR mat(T scalar);</div>
+<div class="line"><a name="l00040"></a><span class="lineno">   40</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR mat(</div>
+<div class="line"><a name="l00041"></a><span class="lineno">   41</span>&#160;                        T x0, T y0, T z0,</div>
+<div class="line"><a name="l00042"></a><span class="lineno">   42</span>&#160;                        T x1, T y1, T z1,</div>
+<div class="line"><a name="l00043"></a><span class="lineno">   43</span>&#160;                        T x2, T y2, T z2);</div>
+<div class="line"><a name="l00044"></a><span class="lineno">   44</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR mat(</div>
+<div class="line"><a name="l00045"></a><span class="lineno">   45</span>&#160;                        col_type const&amp; v0,</div>
+<div class="line"><a name="l00046"></a><span class="lineno">   46</span>&#160;                        col_type const&amp; v1,</div>
+<div class="line"><a name="l00047"></a><span class="lineno">   47</span>&#160;                        col_type const&amp; v2);</div>
+<div class="line"><a name="l00048"></a><span class="lineno">   48</span>&#160; </div>
+<div class="line"><a name="l00049"></a><span class="lineno">   49</span>&#160;                <span class="comment">// -- Conversions --</span></div>
+<div class="line"><a name="l00050"></a><span class="lineno">   50</span>&#160; </div>
+<div class="line"><a name="l00051"></a><span class="lineno">   51</span>&#160;                template&lt;</div>
+<div class="line"><a name="l00052"></a><span class="lineno">   52</span>&#160;                        typename X1, typename Y1, typename Z1,</div>
+<div class="line"><a name="l00053"></a><span class="lineno">   53</span>&#160;                        typename X2, typename Y2, typename Z2,</div>
+<div class="line"><a name="l00054"></a><span class="lineno">   54</span>&#160;                        typename X3, typename Y3, typename Z3&gt;</div>
+<div class="line"><a name="l00055"></a><span class="lineno">   55</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR mat(</div>
+<div class="line"><a name="l00056"></a><span class="lineno">   56</span>&#160;                        X1 x1, Y1 y1, Z1 z1,</div>
+<div class="line"><a name="l00057"></a><span class="lineno">   57</span>&#160;                        X2 x2, Y2 y2, Z2 z2,</div>
+<div class="line"><a name="l00058"></a><span class="lineno">   58</span>&#160;                        X3 x3, Y3 y3, Z3 z3);</div>
+<div class="line"><a name="l00059"></a><span class="lineno">   59</span>&#160; </div>
+<div class="line"><a name="l00060"></a><span class="lineno">   60</span>&#160;                template&lt;typename V1, typename V2, typename V3&gt;</div>
+<div class="line"><a name="l00061"></a><span class="lineno">   61</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR mat(</div>
+<div class="line"><a name="l00062"></a><span class="lineno">   62</span>&#160;                        vec&lt;3, V1, Q&gt; const&amp; v1,</div>
+<div class="line"><a name="l00063"></a><span class="lineno">   63</span>&#160;                        vec&lt;3, V2, Q&gt; const&amp; v2,</div>
+<div class="line"><a name="l00064"></a><span class="lineno">   64</span>&#160;                        vec&lt;3, V3, Q&gt; const&amp; v3);</div>
+<div class="line"><a name="l00065"></a><span class="lineno">   65</span>&#160; </div>
+<div class="line"><a name="l00066"></a><span class="lineno">   66</span>&#160;                <span class="comment">// -- Matrix conversions --</span></div>
+<div class="line"><a name="l00067"></a><span class="lineno">   67</span>&#160; </div>
+<div class="line"><a name="l00068"></a><span class="lineno">   68</span>&#160;                template&lt;typename U, qualifier P&gt;</div>
+<div class="line"><a name="l00069"></a><span class="lineno">   69</span>&#160;                GLM_FUNC_DECL GLM_EXPLICIT GLM_CONSTEXPR mat(mat&lt;3, 3, U, P&gt; const&amp; m);</div>
+<div class="line"><a name="l00070"></a><span class="lineno">   70</span>&#160; </div>
+<div class="line"><a name="l00071"></a><span class="lineno">   71</span>&#160;                GLM_FUNC_DECL GLM_EXPLICIT GLM_CONSTEXPR mat(mat&lt;2, 2, T, Q&gt; const&amp; x);</div>
+<div class="line"><a name="l00072"></a><span class="lineno">   72</span>&#160;                GLM_FUNC_DECL GLM_EXPLICIT GLM_CONSTEXPR mat(mat&lt;4, 4, T, Q&gt; const&amp; x);</div>
+<div class="line"><a name="l00073"></a><span class="lineno">   73</span>&#160;                GLM_FUNC_DECL GLM_EXPLICIT GLM_CONSTEXPR mat(mat&lt;2, 3, T, Q&gt; const&amp; x);</div>
+<div class="line"><a name="l00074"></a><span class="lineno">   74</span>&#160;                GLM_FUNC_DECL GLM_EXPLICIT GLM_CONSTEXPR mat(mat&lt;3, 2, T, Q&gt; const&amp; x);</div>
+<div class="line"><a name="l00075"></a><span class="lineno">   75</span>&#160;                GLM_FUNC_DECL GLM_EXPLICIT GLM_CONSTEXPR mat(mat&lt;2, 4, T, Q&gt; const&amp; x);</div>
+<div class="line"><a name="l00076"></a><span class="lineno">   76</span>&#160;                GLM_FUNC_DECL GLM_EXPLICIT GLM_CONSTEXPR mat(mat&lt;4, 2, T, Q&gt; const&amp; x);</div>
+<div class="line"><a name="l00077"></a><span class="lineno">   77</span>&#160;                GLM_FUNC_DECL GLM_EXPLICIT GLM_CONSTEXPR mat(mat&lt;3, 4, T, Q&gt; const&amp; x);</div>
+<div class="line"><a name="l00078"></a><span class="lineno">   78</span>&#160;                GLM_FUNC_DECL GLM_EXPLICIT GLM_CONSTEXPR mat(mat&lt;4, 3, T, Q&gt; const&amp; x);</div>
+<div class="line"><a name="l00079"></a><span class="lineno">   79</span>&#160; </div>
+<div class="line"><a name="l00080"></a><span class="lineno">   80</span>&#160;                <span class="comment">// -- Unary arithmetic operators --</span></div>
+<div class="line"><a name="l00081"></a><span class="lineno">   81</span>&#160; </div>
+<div class="line"><a name="l00082"></a><span class="lineno">   82</span>&#160;                template&lt;typename U&gt;</div>
+<div class="line"><a name="l00083"></a><span class="lineno">   83</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR mat&lt;3, 3, T, Q&gt; &amp; operator=(mat&lt;3, 3, U, Q&gt; const&amp; m);</div>
+<div class="line"><a name="l00084"></a><span class="lineno">   84</span>&#160;                template&lt;typename U&gt;</div>
+<div class="line"><a name="l00085"></a><span class="lineno">   85</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR mat&lt;3, 3, T, Q&gt; &amp; operator+=(U s);</div>
+<div class="line"><a name="l00086"></a><span class="lineno">   86</span>&#160;                template&lt;typename U&gt;</div>
+<div class="line"><a name="l00087"></a><span class="lineno">   87</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR mat&lt;3, 3, T, Q&gt; &amp; operator+=(mat&lt;3, 3, U, Q&gt; const&amp; m);</div>
+<div class="line"><a name="l00088"></a><span class="lineno">   88</span>&#160;                template&lt;typename U&gt;</div>
+<div class="line"><a name="l00089"></a><span class="lineno">   89</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR mat&lt;3, 3, T, Q&gt; &amp; operator-=(U s);</div>
+<div class="line"><a name="l00090"></a><span class="lineno">   90</span>&#160;                template&lt;typename U&gt;</div>
+<div class="line"><a name="l00091"></a><span class="lineno">   91</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR mat&lt;3, 3, T, Q&gt; &amp; operator-=(mat&lt;3, 3, U, Q&gt; const&amp; m);</div>
+<div class="line"><a name="l00092"></a><span class="lineno">   92</span>&#160;                template&lt;typename U&gt;</div>
+<div class="line"><a name="l00093"></a><span class="lineno">   93</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR mat&lt;3, 3, T, Q&gt; &amp; operator*=(U s);</div>
+<div class="line"><a name="l00094"></a><span class="lineno">   94</span>&#160;                template&lt;typename U&gt;</div>
+<div class="line"><a name="l00095"></a><span class="lineno">   95</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR mat&lt;3, 3, T, Q&gt; &amp; operator*=(mat&lt;3, 3, U, Q&gt; const&amp; m);</div>
+<div class="line"><a name="l00096"></a><span class="lineno">   96</span>&#160;                template&lt;typename U&gt;</div>
+<div class="line"><a name="l00097"></a><span class="lineno">   97</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR mat&lt;3, 3, T, Q&gt; &amp; operator/=(U s);</div>
+<div class="line"><a name="l00098"></a><span class="lineno">   98</span>&#160;                template&lt;typename U&gt;</div>
+<div class="line"><a name="l00099"></a><span class="lineno">   99</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR mat&lt;3, 3, T, Q&gt; &amp; operator/=(mat&lt;3, 3, U, Q&gt; const&amp; m);</div>
+<div class="line"><a name="l00100"></a><span class="lineno">  100</span>&#160; </div>
+<div class="line"><a name="l00101"></a><span class="lineno">  101</span>&#160;                <span class="comment">// -- Increment and decrement operators --</span></div>
+<div class="line"><a name="l00102"></a><span class="lineno">  102</span>&#160; </div>
+<div class="line"><a name="l00103"></a><span class="lineno">  103</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR mat&lt;3, 3, T, Q&gt; &amp; operator++();</div>
+<div class="line"><a name="l00104"></a><span class="lineno">  104</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR mat&lt;3, 3, T, Q&gt; &amp; operator--();</div>
+<div class="line"><a name="l00105"></a><span class="lineno">  105</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR mat&lt;3, 3, T, Q&gt; operator++(<span class="keywordtype">int</span>);</div>
+<div class="line"><a name="l00106"></a><span class="lineno">  106</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR mat&lt;3, 3, T, Q&gt; operator--(<span class="keywordtype">int</span>);</div>
+<div class="line"><a name="l00107"></a><span class="lineno">  107</span>&#160;        };</div>
+<div class="line"><a name="l00108"></a><span class="lineno">  108</span>&#160; </div>
+<div class="line"><a name="l00109"></a><span class="lineno">  109</span>&#160;        <span class="comment">// -- Unary operators --</span></div>
+<div class="line"><a name="l00110"></a><span class="lineno">  110</span>&#160; </div>
+<div class="line"><a name="l00111"></a><span class="lineno">  111</span>&#160;        template&lt;typename T, qualifier Q&gt;</div>
+<div class="line"><a name="l00112"></a><span class="lineno">  112</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR mat&lt;3, 3, T, Q&gt; operator+(mat&lt;3, 3, T, Q&gt; const&amp; m);</div>
+<div class="line"><a name="l00113"></a><span class="lineno">  113</span>&#160; </div>
+<div class="line"><a name="l00114"></a><span class="lineno">  114</span>&#160;        template&lt;typename T, qualifier Q&gt;</div>
+<div class="line"><a name="l00115"></a><span class="lineno">  115</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR mat&lt;3, 3, T, Q&gt; operator-(mat&lt;3, 3, T, Q&gt; const&amp; m);</div>
+<div class="line"><a name="l00116"></a><span class="lineno">  116</span>&#160; </div>
+<div class="line"><a name="l00117"></a><span class="lineno">  117</span>&#160;        <span class="comment">// -- Binary operators --</span></div>
+<div class="line"><a name="l00118"></a><span class="lineno">  118</span>&#160; </div>
+<div class="line"><a name="l00119"></a><span class="lineno">  119</span>&#160;        template&lt;typename T, qualifier Q&gt;</div>
+<div class="line"><a name="l00120"></a><span class="lineno">  120</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR mat&lt;3, 3, T, Q&gt; operator+(mat&lt;3, 3, T, Q&gt; const&amp; m, T scalar);</div>
+<div class="line"><a name="l00121"></a><span class="lineno">  121</span>&#160; </div>
+<div class="line"><a name="l00122"></a><span class="lineno">  122</span>&#160;        template&lt;typename T, qualifier Q&gt;</div>
+<div class="line"><a name="l00123"></a><span class="lineno">  123</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR mat&lt;3, 3, T, Q&gt; operator+(T scalar, mat&lt;3, 3, T, Q&gt; const&amp; m);</div>
+<div class="line"><a name="l00124"></a><span class="lineno">  124</span>&#160; </div>
+<div class="line"><a name="l00125"></a><span class="lineno">  125</span>&#160;        template&lt;typename T, qualifier Q&gt;</div>
+<div class="line"><a name="l00126"></a><span class="lineno">  126</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR mat&lt;3, 3, T, Q&gt; operator+(mat&lt;3, 3, T, Q&gt; const&amp; m1, mat&lt;3, 3, T, Q&gt; const&amp; m2);</div>
+<div class="line"><a name="l00127"></a><span class="lineno">  127</span>&#160; </div>
+<div class="line"><a name="l00128"></a><span class="lineno">  128</span>&#160;        template&lt;typename T, qualifier Q&gt;</div>
+<div class="line"><a name="l00129"></a><span class="lineno">  129</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR mat&lt;3, 3, T, Q&gt; operator-(mat&lt;3, 3, T, Q&gt; const&amp; m, T scalar);</div>
+<div class="line"><a name="l00130"></a><span class="lineno">  130</span>&#160; </div>
+<div class="line"><a name="l00131"></a><span class="lineno">  131</span>&#160;        template&lt;typename T, qualifier Q&gt;</div>
+<div class="line"><a name="l00132"></a><span class="lineno">  132</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR mat&lt;3, 3, T, Q&gt; operator-(T scalar, mat&lt;3, 3, T, Q&gt; const&amp; m);</div>
+<div class="line"><a name="l00133"></a><span class="lineno">  133</span>&#160; </div>
+<div class="line"><a name="l00134"></a><span class="lineno">  134</span>&#160;        template&lt;typename T, qualifier Q&gt;</div>
+<div class="line"><a name="l00135"></a><span class="lineno">  135</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR mat&lt;3, 3, T, Q&gt; operator-(mat&lt;3, 3, T, Q&gt; const&amp; m1, mat&lt;3, 3, T, Q&gt; const&amp; m2);</div>
+<div class="line"><a name="l00136"></a><span class="lineno">  136</span>&#160; </div>
+<div class="line"><a name="l00137"></a><span class="lineno">  137</span>&#160;        template&lt;typename T, qualifier Q&gt;</div>
+<div class="line"><a name="l00138"></a><span class="lineno">  138</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR mat&lt;3, 3, T, Q&gt; operator*(mat&lt;3, 3, T, Q&gt; const&amp; m, T scalar);</div>
+<div class="line"><a name="l00139"></a><span class="lineno">  139</span>&#160; </div>
+<div class="line"><a name="l00140"></a><span class="lineno">  140</span>&#160;        template&lt;typename T, qualifier Q&gt;</div>
+<div class="line"><a name="l00141"></a><span class="lineno">  141</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR mat&lt;3, 3, T, Q&gt; operator*(T scalar, mat&lt;3, 3, T, Q&gt; const&amp; m);</div>
+<div class="line"><a name="l00142"></a><span class="lineno">  142</span>&#160; </div>
+<div class="line"><a name="l00143"></a><span class="lineno">  143</span>&#160;        template&lt;typename T, qualifier Q&gt;</div>
+<div class="line"><a name="l00144"></a><span class="lineno">  144</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR typename mat&lt;3, 3, T, Q&gt;::col_type operator*(mat&lt;3, 3, T, Q&gt; const&amp; m, typename mat&lt;3, 3, T, Q&gt;::row_type const&amp; v);</div>
+<div class="line"><a name="l00145"></a><span class="lineno">  145</span>&#160; </div>
+<div class="line"><a name="l00146"></a><span class="lineno">  146</span>&#160;        template&lt;typename T, qualifier Q&gt;</div>
+<div class="line"><a name="l00147"></a><span class="lineno">  147</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR typename mat&lt;3, 3, T, Q&gt;::row_type operator*(typename mat&lt;3, 3, T, Q&gt;::col_type const&amp; v, mat&lt;3, 3, T, Q&gt; const&amp; m);</div>
+<div class="line"><a name="l00148"></a><span class="lineno">  148</span>&#160; </div>
+<div class="line"><a name="l00149"></a><span class="lineno">  149</span>&#160;        template&lt;typename T, qualifier Q&gt;</div>
+<div class="line"><a name="l00150"></a><span class="lineno">  150</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR mat&lt;3, 3, T, Q&gt; operator*(mat&lt;3, 3, T, Q&gt; const&amp; m1, mat&lt;3, 3, T, Q&gt; const&amp; m2);</div>
+<div class="line"><a name="l00151"></a><span class="lineno">  151</span>&#160; </div>
+<div class="line"><a name="l00152"></a><span class="lineno">  152</span>&#160;        template&lt;typename T, qualifier Q&gt;</div>
+<div class="line"><a name="l00153"></a><span class="lineno">  153</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR mat&lt;2, 3, T, Q&gt; operator*(mat&lt;3, 3, T, Q&gt; const&amp; m1, mat&lt;2, 3, T, Q&gt; const&amp; m2);</div>
+<div class="line"><a name="l00154"></a><span class="lineno">  154</span>&#160; </div>
+<div class="line"><a name="l00155"></a><span class="lineno">  155</span>&#160;        template&lt;typename T, qualifier Q&gt;</div>
+<div class="line"><a name="l00156"></a><span class="lineno">  156</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR mat&lt;4, 3, T, Q&gt; operator*(mat&lt;3, 3, T, Q&gt; const&amp; m1, mat&lt;4, 3, T, Q&gt; const&amp; m2);</div>
+<div class="line"><a name="l00157"></a><span class="lineno">  157</span>&#160; </div>
+<div class="line"><a name="l00158"></a><span class="lineno">  158</span>&#160;        template&lt;typename T, qualifier Q&gt;</div>
+<div class="line"><a name="l00159"></a><span class="lineno">  159</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR mat&lt;3, 3, T, Q&gt; operator/(mat&lt;3, 3, T, Q&gt; const&amp; m, T scalar);</div>
+<div class="line"><a name="l00160"></a><span class="lineno">  160</span>&#160; </div>
+<div class="line"><a name="l00161"></a><span class="lineno">  161</span>&#160;        template&lt;typename T, qualifier Q&gt;</div>
+<div class="line"><a name="l00162"></a><span class="lineno">  162</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR mat&lt;3, 3, T, Q&gt; operator/(T scalar, mat&lt;3, 3, T, Q&gt; const&amp; m);</div>
+<div class="line"><a name="l00163"></a><span class="lineno">  163</span>&#160; </div>
+<div class="line"><a name="l00164"></a><span class="lineno">  164</span>&#160;        template&lt;typename T, qualifier Q&gt;</div>
+<div class="line"><a name="l00165"></a><span class="lineno">  165</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR typename mat&lt;3, 3, T, Q&gt;::col_type operator/(mat&lt;3, 3, T, Q&gt; const&amp; m, typename mat&lt;3, 3, T, Q&gt;::row_type const&amp; v);</div>
+<div class="line"><a name="l00166"></a><span class="lineno">  166</span>&#160; </div>
+<div class="line"><a name="l00167"></a><span class="lineno">  167</span>&#160;        template&lt;typename T, qualifier Q&gt;</div>
+<div class="line"><a name="l00168"></a><span class="lineno">  168</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR typename mat&lt;3, 3, T, Q&gt;::row_type operator/(typename mat&lt;3, 3, T, Q&gt;::col_type const&amp; v, mat&lt;3, 3, T, Q&gt; const&amp; m);</div>
+<div class="line"><a name="l00169"></a><span class="lineno">  169</span>&#160; </div>
+<div class="line"><a name="l00170"></a><span class="lineno">  170</span>&#160;        template&lt;typename T, qualifier Q&gt;</div>
+<div class="line"><a name="l00171"></a><span class="lineno">  171</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR mat&lt;3, 3, T, Q&gt; operator/(mat&lt;3, 3, T, Q&gt; const&amp; m1, mat&lt;3, 3, T, Q&gt; const&amp; m2);</div>
+<div class="line"><a name="l00172"></a><span class="lineno">  172</span>&#160; </div>
+<div class="line"><a name="l00173"></a><span class="lineno">  173</span>&#160;        <span class="comment">// -- Boolean operators --</span></div>
+<div class="line"><a name="l00174"></a><span class="lineno">  174</span>&#160; </div>
+<div class="line"><a name="l00175"></a><span class="lineno">  175</span>&#160;        template&lt;typename T, qualifier Q&gt;</div>
+<div class="line"><a name="l00176"></a><span class="lineno">  176</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR <span class="keywordtype">bool</span> operator==(mat&lt;3, 3, T, Q&gt; const&amp; m1, mat&lt;3, 3, T, Q&gt; const&amp; m2);</div>
+<div class="line"><a name="l00177"></a><span class="lineno">  177</span>&#160; </div>
+<div class="line"><a name="l00178"></a><span class="lineno">  178</span>&#160;        template&lt;typename T, qualifier Q&gt;</div>
+<div class="line"><a name="l00179"></a><span class="lineno">  179</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR <span class="keywordtype">bool</span> operator!=(mat&lt;3, 3, T, Q&gt; const&amp; m1, mat&lt;3, 3, T, Q&gt; const&amp; m2);</div>
+<div class="line"><a name="l00180"></a><span class="lineno">  180</span>&#160;}<span class="comment">//namespace glm</span></div>
+<div class="line"><a name="l00181"></a><span class="lineno">  181</span>&#160; </div>
+<div class="line"><a name="l00182"></a><span class="lineno">  182</span>&#160;<span class="preprocessor">#ifndef GLM_EXTERNAL_TEMPLATE</span></div>
+<div class="line"><a name="l00183"></a><span class="lineno">  183</span>&#160;<span class="preprocessor">#include &quot;type_mat3x3.inl&quot;</span></div>
+<div class="line"><a name="l00184"></a><span class="lineno">  184</span>&#160;<span class="preprocessor">#endif</span></div>
 </div><!-- fragment --></div><!-- contents -->
+<div class="ttc" id="aa00853_html_gab703732449be6c7199369b3f9a91ed38"><div class="ttname"><a href="a00853.html#gab703732449be6c7199369b3f9a91ed38">glm::length</a></div><div class="ttdeci">GLM_FUNC_DECL T length(qua&lt; T, Q &gt; const &amp;q)</div><div class="ttdoc">Returns the norm of a quaternions.</div></div>
+<div class="ttc" id="aa00077_html"><div class="ttname"><a href="a00077.html">type_vec3.hpp</a></div><div class="ttdoc">Core features</div></div>
 <!-- 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.10
+</a> 1.8.18
 </small></address>
 </body>
 </html>

+ 0 - 108
doc/api/a00054.html

@@ -1,108 +0,0 @@
-<!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.10"/>
-<title>0.9.9 API documentation: mat4x2.hpp File Reference</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="search/search.css" rel="stylesheet" type="text/css"/>
-<script type="text/javascript" src="search/searchdata.js"></script>
-<script type="text/javascript" src="search/search.js"></script>
-<script type="text/javascript">
-  $(document).ready(function() { init_search(); });
-</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 id="projectlogo"><img alt="Logo" src="logo-mini.png"/></td>
-  <td id="projectalign" style="padding-left: 0.5em;">
-   <div id="projectname">0.9.9 API documentation
-   </div>
-  </td>
- </tr>
- </tbody>
-</table>
-</div>
-<!-- end header part -->
-<!-- Generated by Doxygen 1.8.10 -->
-<script type="text/javascript">
-var searchBox = new SearchBox("searchBox", "search",false,'Search');
-</script>
-  <div id="navrow1" class="tabs">
-    <ul class="tablist">
-      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
-      <li><a href="modules.html"><span>Modules</span></a></li>
-      <li class="current"><a href="files.html"><span>Files</span></a></li>
-      <li>
-        <div id="MSearchBox" class="MSearchBoxInactive">
-        <span class="left">
-          <img id="MSearchSelect" src="search/mag_sel.png"
-               onmouseover="return searchBox.OnSearchSelectShow()"
-               onmouseout="return searchBox.OnSearchSelectHide()"
-               alt=""/>
-          <input type="text" id="MSearchField" value="Search" accesskey="S"
-               onfocus="searchBox.OnSearchFieldFocus(true)" 
-               onblur="searchBox.OnSearchFieldFocus(false)" 
-               onkeyup="searchBox.OnSearchFieldChange(event)"/>
-          </span><span class="right">
-            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
-          </span>
-        </div>
-      </li>
-    </ul>
-  </div>
-  <div id="navrow2" class="tabs2">
-    <ul class="tablist">
-      <li><a href="files.html"><span>File&#160;List</span></a></li>
-    </ul>
-  </div>
-<!-- window showing the filter options -->
-<div id="MSearchSelectWindow"
-     onmouseover="return searchBox.OnSearchSelectShow()"
-     onmouseout="return searchBox.OnSearchSelectHide()"
-     onkeydown="return searchBox.OnSearchSelectKey(event)">
-</div>
-
-<!-- iframe showing the search results (closed by default) -->
-<div id="MSearchResultsWindow">
-<iframe src="javascript:void(0)" frameborder="0" 
-        name="MSearchResults" id="MSearchResults">
-</iframe>
-</div>
-
-<div id="nav-path" class="navpath">
-  <ul>
-<li class="navelem"><a class="el" href="dir_3a581ba30d25676e4b797b1f96d53b45.html">F:</a></li><li class="navelem"><a class="el" href="dir_9e5fe034a00e89334fd5186c3e7db156.html">G-Truc</a></li><li class="navelem"><a class="el" href="dir_d9496f0844b48bc7e53b5af8c99b9ab2.html">Source</a></li><li class="navelem"><a class="el" href="dir_a8bee7be44182a33f3820393ae0b105d.html">G-Truc</a></li><li class="navelem"><a class="el" href="dir_44e5e654415abd9ca6fdeaddaff8565e.html">glm</a></li><li class="navelem"><a class="el" href="dir_cef2d71d502cb69a9252bca2297d9549.html">glm</a></li>  </ul>
-</div>
-</div><!-- top -->
-<div class="header">
-  <div class="headertitle">
-<div class="title">mat4x2.hpp File Reference</div>  </div>
-</div><!--header-->
-<div class="contents">
-
-<p><a class="el" href="a00280.html">Core features</a>  
-<a href="#details">More...</a></p>
-
-<p><a href="a00054_source.html">Go to the source code of this file.</a></p>
-<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
-<div class="textblock"><p><a class="el" href="a00280.html">Core features</a> </p>
-
-<p>Definition in file <a class="el" href="a00054_source.html">mat4x2.hpp</a>.</p>
-</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.10
-</small></address>
-</body>
-</html>

+ 0 - 108
doc/api/a00055.html

@@ -1,108 +0,0 @@
-<!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.10"/>
-<title>0.9.9 API documentation: mat4x3.hpp File Reference</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="search/search.css" rel="stylesheet" type="text/css"/>
-<script type="text/javascript" src="search/searchdata.js"></script>
-<script type="text/javascript" src="search/search.js"></script>
-<script type="text/javascript">
-  $(document).ready(function() { init_search(); });
-</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 id="projectlogo"><img alt="Logo" src="logo-mini.png"/></td>
-  <td id="projectalign" style="padding-left: 0.5em;">
-   <div id="projectname">0.9.9 API documentation
-   </div>
-  </td>
- </tr>
- </tbody>
-</table>
-</div>
-<!-- end header part -->
-<!-- Generated by Doxygen 1.8.10 -->
-<script type="text/javascript">
-var searchBox = new SearchBox("searchBox", "search",false,'Search');
-</script>
-  <div id="navrow1" class="tabs">
-    <ul class="tablist">
-      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
-      <li><a href="modules.html"><span>Modules</span></a></li>
-      <li class="current"><a href="files.html"><span>Files</span></a></li>
-      <li>
-        <div id="MSearchBox" class="MSearchBoxInactive">
-        <span class="left">
-          <img id="MSearchSelect" src="search/mag_sel.png"
-               onmouseover="return searchBox.OnSearchSelectShow()"
-               onmouseout="return searchBox.OnSearchSelectHide()"
-               alt=""/>
-          <input type="text" id="MSearchField" value="Search" accesskey="S"
-               onfocus="searchBox.OnSearchFieldFocus(true)" 
-               onblur="searchBox.OnSearchFieldFocus(false)" 
-               onkeyup="searchBox.OnSearchFieldChange(event)"/>
-          </span><span class="right">
-            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
-          </span>
-        </div>
-      </li>
-    </ul>
-  </div>
-  <div id="navrow2" class="tabs2">
-    <ul class="tablist">
-      <li><a href="files.html"><span>File&#160;List</span></a></li>
-    </ul>
-  </div>
-<!-- window showing the filter options -->
-<div id="MSearchSelectWindow"
-     onmouseover="return searchBox.OnSearchSelectShow()"
-     onmouseout="return searchBox.OnSearchSelectHide()"
-     onkeydown="return searchBox.OnSearchSelectKey(event)">
-</div>
-
-<!-- iframe showing the search results (closed by default) -->
-<div id="MSearchResultsWindow">
-<iframe src="javascript:void(0)" frameborder="0" 
-        name="MSearchResults" id="MSearchResults">
-</iframe>
-</div>
-
-<div id="nav-path" class="navpath">
-  <ul>
-<li class="navelem"><a class="el" href="dir_3a581ba30d25676e4b797b1f96d53b45.html">F:</a></li><li class="navelem"><a class="el" href="dir_9e5fe034a00e89334fd5186c3e7db156.html">G-Truc</a></li><li class="navelem"><a class="el" href="dir_d9496f0844b48bc7e53b5af8c99b9ab2.html">Source</a></li><li class="navelem"><a class="el" href="dir_a8bee7be44182a33f3820393ae0b105d.html">G-Truc</a></li><li class="navelem"><a class="el" href="dir_44e5e654415abd9ca6fdeaddaff8565e.html">glm</a></li><li class="navelem"><a class="el" href="dir_cef2d71d502cb69a9252bca2297d9549.html">glm</a></li>  </ul>
-</div>
-</div><!-- top -->
-<div class="header">
-  <div class="headertitle">
-<div class="title">mat4x3.hpp File Reference</div>  </div>
-</div><!--header-->
-<div class="contents">
-
-<p><a class="el" href="a00280.html">Core features</a>  
-<a href="#details">More...</a></p>
-
-<p><a href="a00055_source.html">Go to the source code of this file.</a></p>
-<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
-<div class="textblock"><p><a class="el" href="a00280.html">Core features</a> </p>
-
-<p>Definition in file <a class="el" href="a00055_source.html">mat4x3.hpp</a>.</p>
-</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.10
-</small></address>
-</body>
-</html>

+ 0 - 109
doc/api/a00055_source.html

@@ -1,109 +0,0 @@
-<!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.10"/>
-<title>0.9.9 API documentation: mat4x3.hpp Source File</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="search/search.css" rel="stylesheet" type="text/css"/>
-<script type="text/javascript" src="search/searchdata.js"></script>
-<script type="text/javascript" src="search/search.js"></script>
-<script type="text/javascript">
-  $(document).ready(function() { init_search(); });
-</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 id="projectlogo"><img alt="Logo" src="logo-mini.png"/></td>
-  <td id="projectalign" style="padding-left: 0.5em;">
-   <div id="projectname">0.9.9 API documentation
-   </div>
-  </td>
- </tr>
- </tbody>
-</table>
-</div>
-<!-- end header part -->
-<!-- Generated by Doxygen 1.8.10 -->
-<script type="text/javascript">
-var searchBox = new SearchBox("searchBox", "search",false,'Search');
-</script>
-  <div id="navrow1" class="tabs">
-    <ul class="tablist">
-      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
-      <li><a href="modules.html"><span>Modules</span></a></li>
-      <li class="current"><a href="files.html"><span>Files</span></a></li>
-      <li>
-        <div id="MSearchBox" class="MSearchBoxInactive">
-        <span class="left">
-          <img id="MSearchSelect" src="search/mag_sel.png"
-               onmouseover="return searchBox.OnSearchSelectShow()"
-               onmouseout="return searchBox.OnSearchSelectHide()"
-               alt=""/>
-          <input type="text" id="MSearchField" value="Search" accesskey="S"
-               onfocus="searchBox.OnSearchFieldFocus(true)" 
-               onblur="searchBox.OnSearchFieldFocus(false)" 
-               onkeyup="searchBox.OnSearchFieldChange(event)"/>
-          </span><span class="right">
-            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
-          </span>
-        </div>
-      </li>
-    </ul>
-  </div>
-  <div id="navrow2" class="tabs2">
-    <ul class="tablist">
-      <li><a href="files.html"><span>File&#160;List</span></a></li>
-    </ul>
-  </div>
-<!-- window showing the filter options -->
-<div id="MSearchSelectWindow"
-     onmouseover="return searchBox.OnSearchSelectShow()"
-     onmouseout="return searchBox.OnSearchSelectHide()"
-     onkeydown="return searchBox.OnSearchSelectKey(event)">
-</div>
-
-<!-- iframe showing the search results (closed by default) -->
-<div id="MSearchResultsWindow">
-<iframe src="javascript:void(0)" frameborder="0" 
-        name="MSearchResults" id="MSearchResults">
-</iframe>
-</div>
-
-<div id="nav-path" class="navpath">
-  <ul>
-<li class="navelem"><a class="el" href="dir_3a581ba30d25676e4b797b1f96d53b45.html">F:</a></li><li class="navelem"><a class="el" href="dir_9e5fe034a00e89334fd5186c3e7db156.html">G-Truc</a></li><li class="navelem"><a class="el" href="dir_d9496f0844b48bc7e53b5af8c99b9ab2.html">Source</a></li><li class="navelem"><a class="el" href="dir_a8bee7be44182a33f3820393ae0b105d.html">G-Truc</a></li><li class="navelem"><a class="el" href="dir_44e5e654415abd9ca6fdeaddaff8565e.html">glm</a></li><li class="navelem"><a class="el" href="dir_cef2d71d502cb69a9252bca2297d9549.html">glm</a></li>  </ul>
-</div>
-</div><!-- top -->
-<div class="header">
-  <div class="headertitle">
-<div class="title">mat4x3.hpp</div>  </div>
-</div><!--header-->
-<div class="contents">
-<a href="a00055.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span>&#160;</div>
-<div class="line"><a name="l00004"></a><span class="lineno">    4</span>&#160;<span class="preprocessor">#pragma once</span></div>
-<div class="line"><a name="l00005"></a><span class="lineno">    5</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="a00077.html">./ext/matrix_double4x3.hpp</a>&quot;</span></div>
-<div class="line"><a name="l00006"></a><span class="lineno">    6</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="a00078.html">./ext/matrix_double4x3_precision.hpp</a>&quot;</span></div>
-<div class="line"><a name="l00007"></a><span class="lineno">    7</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="a00096.html">./ext/matrix_float4x3.hpp</a>&quot;</span></div>
-<div class="line"><a name="l00008"></a><span class="lineno">    8</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="a00097.html">./ext/matrix_float4x3_precision.hpp</a>&quot;</span></div>
-<div class="ttc" id="a00096_html"><div class="ttname"><a href="a00096.html">matrix_float4x3.hpp</a></div><div class="ttdoc">Core features </div></div>
-<div class="ttc" id="a00078_html"><div class="ttname"><a href="a00078.html">matrix_double4x3_precision.hpp</a></div><div class="ttdoc">Core features </div></div>
-<div class="ttc" id="a00077_html"><div class="ttname"><a href="a00077.html">matrix_double4x3.hpp</a></div><div class="ttdoc">Core features </div></div>
-<div class="ttc" id="a00097_html"><div class="ttname"><a href="a00097.html">matrix_float4x3_precision.hpp</a></div><div class="ttdoc">Core features </div></div>
-</div><!-- fragment --></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.10
-</small></address>
-</body>
-</html>

+ 24 - 42
doc/api/a00056.html

@@ -1,19 +1,17 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://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.10"/>
-<title>0.9.9 API documentation: mat4x4.hpp File Reference</title>
+<meta name="generator" content="Doxygen 1.8.18"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>1.0.0 API documentation: type_mat3x4.hpp File Reference</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="search/search.css" rel="stylesheet" type="text/css"/>
 <script type="text/javascript" src="search/searchdata.js"></script>
 <script type="text/javascript" src="search/search.js"></script>
-<script type="text/javascript">
-  $(document).ready(function() { init_search(); });
-</script>
 <link href="doxygen.css" rel="stylesheet" type="text/css" />
 </head>
 <body>
@@ -24,7 +22,7 @@
  <tr style="height: 56px;">
   <td id="projectlogo"><img alt="Logo" src="logo-mini.png"/></td>
   <td id="projectalign" style="padding-left: 0.5em;">
-   <div id="projectname">0.9.9 API documentation
+   <div id="projectname">1.0.0 API documentation
    </div>
   </td>
  </tr>
@@ -32,38 +30,22 @@
 </table>
 </div>
 <!-- end header part -->
-<!-- Generated by Doxygen 1.8.10 -->
+<!-- Generated by Doxygen 1.8.18 -->
 <script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
 var searchBox = new SearchBox("searchBox", "search",false,'Search');
+/* @license-end */
 </script>
-  <div id="navrow1" class="tabs">
-    <ul class="tablist">
-      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
-      <li><a href="modules.html"><span>Modules</span></a></li>
-      <li class="current"><a href="files.html"><span>Files</span></a></li>
-      <li>
-        <div id="MSearchBox" class="MSearchBoxInactive">
-        <span class="left">
-          <img id="MSearchSelect" src="search/mag_sel.png"
-               onmouseover="return searchBox.OnSearchSelectShow()"
-               onmouseout="return searchBox.OnSearchSelectHide()"
-               alt=""/>
-          <input type="text" id="MSearchField" value="Search" accesskey="S"
-               onfocus="searchBox.OnSearchFieldFocus(true)" 
-               onblur="searchBox.OnSearchFieldFocus(false)" 
-               onkeyup="searchBox.OnSearchFieldChange(event)"/>
-          </span><span class="right">
-            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
-          </span>
-        </div>
-      </li>
-    </ul>
-  </div>
-  <div id="navrow2" class="tabs2">
-    <ul class="tablist">
-      <li><a href="files.html"><span>File&#160;List</span></a></li>
-    </ul>
-  </div>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
 <!-- window showing the filter options -->
 <div id="MSearchSelectWindow"
      onmouseover="return searchBox.OnSearchSelectShow()"
@@ -80,29 +62,29 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 
 <div id="nav-path" class="navpath">
   <ul>
-<li class="navelem"><a class="el" href="dir_3a581ba30d25676e4b797b1f96d53b45.html">F:</a></li><li class="navelem"><a class="el" href="dir_9e5fe034a00e89334fd5186c3e7db156.html">G-Truc</a></li><li class="navelem"><a class="el" href="dir_d9496f0844b48bc7e53b5af8c99b9ab2.html">Source</a></li><li class="navelem"><a class="el" href="dir_a8bee7be44182a33f3820393ae0b105d.html">G-Truc</a></li><li class="navelem"><a class="el" href="dir_44e5e654415abd9ca6fdeaddaff8565e.html">glm</a></li><li class="navelem"><a class="el" href="dir_cef2d71d502cb69a9252bca2297d9549.html">glm</a></li>  </ul>
+<li class="navelem"><a class="el" href="dir_885cc87fac2d91e269af0a5a959fa5f6.html">E:</a></li><li class="navelem"><a class="el" href="dir_63ed049134a778d525e06b63afc2c979.html">Github</a></li><li class="navelem"><a class="el" href="dir_c98a9ac98258ab9f831b188d66361a70.html">g-truc</a></li><li class="navelem"><a class="el" href="dir_50f12b6ceb23d7f6adfb377a1ae8b006.html">glm</a></li><li class="navelem"><a class="el" href="dir_fca33f1b5115d46f42c670590789c0d2.html">glm</a></li><li class="navelem"><a class="el" href="dir_382f4fd018b81be8753cb53c0a41a09a.html">detail</a></li>  </ul>
 </div>
 </div><!-- top -->
 <div class="header">
   <div class="headertitle">
-<div class="title">mat4x4.hpp File Reference</div>  </div>
+<div class="title">type_mat3x4.hpp File Reference</div>  </div>
 </div><!--header-->
 <div class="contents">
 
-<p><a class="el" href="a00280.html">Core features</a>  
+<p><a class="el" href="a00889.html">Core features</a>  
 <a href="#details">More...</a></p>
 
 <p><a href="a00056_source.html">Go to the source code of this file.</a></p>
 <a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
-<div class="textblock"><p><a class="el" href="a00280.html">Core features</a> </p>
+<div class="textblock"><p><a class="el" href="a00889.html">Core features</a> </p>
 
-<p>Definition in file <a class="el" href="a00056_source.html">mat4x4.hpp</a>.</p>
+<p class="definition">Definition in file <a class="el" href="a00056_source.html">type_mat3x4.hpp</a>.</p>
 </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.10
+</a> 1.8.18
 </small></address>
 </body>
 </html>

+ 187 - 49
doc/api/a00056_source.html

@@ -1,19 +1,17 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://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.10"/>
-<title>0.9.9 API documentation: mat4x4.hpp Source File</title>
+<meta name="generator" content="Doxygen 1.8.18"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>1.0.0 API documentation: type_mat3x4.hpp Source File</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="search/search.css" rel="stylesheet" type="text/css"/>
 <script type="text/javascript" src="search/searchdata.js"></script>
 <script type="text/javascript" src="search/search.js"></script>
-<script type="text/javascript">
-  $(document).ready(function() { init_search(); });
-</script>
 <link href="doxygen.css" rel="stylesheet" type="text/css" />
 </head>
 <body>
@@ -24,7 +22,7 @@
  <tr style="height: 56px;">
   <td id="projectlogo"><img alt="Logo" src="logo-mini.png"/></td>
   <td id="projectalign" style="padding-left: 0.5em;">
-   <div id="projectname">0.9.9 API documentation
+   <div id="projectname">1.0.0 API documentation
    </div>
   </td>
  </tr>
@@ -32,38 +30,22 @@
 </table>
 </div>
 <!-- end header part -->
-<!-- Generated by Doxygen 1.8.10 -->
+<!-- Generated by Doxygen 1.8.18 -->
 <script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
 var searchBox = new SearchBox("searchBox", "search",false,'Search');
+/* @license-end */
 </script>
-  <div id="navrow1" class="tabs">
-    <ul class="tablist">
-      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
-      <li><a href="modules.html"><span>Modules</span></a></li>
-      <li class="current"><a href="files.html"><span>Files</span></a></li>
-      <li>
-        <div id="MSearchBox" class="MSearchBoxInactive">
-        <span class="left">
-          <img id="MSearchSelect" src="search/mag_sel.png"
-               onmouseover="return searchBox.OnSearchSelectShow()"
-               onmouseout="return searchBox.OnSearchSelectHide()"
-               alt=""/>
-          <input type="text" id="MSearchField" value="Search" accesskey="S"
-               onfocus="searchBox.OnSearchFieldFocus(true)" 
-               onblur="searchBox.OnSearchFieldFocus(false)" 
-               onkeyup="searchBox.OnSearchFieldChange(event)"/>
-          </span><span class="right">
-            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
-          </span>
-        </div>
-      </li>
-    </ul>
-  </div>
-  <div id="navrow2" class="tabs2">
-    <ul class="tablist">
-      <li><a href="files.html"><span>File&#160;List</span></a></li>
-    </ul>
-  </div>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
 <!-- window showing the filter options -->
 <div id="MSearchSelectWindow"
      onmouseover="return searchBox.OnSearchSelectShow()"
@@ -80,31 +62,187 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 
 <div id="nav-path" class="navpath">
   <ul>
-<li class="navelem"><a class="el" href="dir_3a581ba30d25676e4b797b1f96d53b45.html">F:</a></li><li class="navelem"><a class="el" href="dir_9e5fe034a00e89334fd5186c3e7db156.html">G-Truc</a></li><li class="navelem"><a class="el" href="dir_d9496f0844b48bc7e53b5af8c99b9ab2.html">Source</a></li><li class="navelem"><a class="el" href="dir_a8bee7be44182a33f3820393ae0b105d.html">G-Truc</a></li><li class="navelem"><a class="el" href="dir_44e5e654415abd9ca6fdeaddaff8565e.html">glm</a></li><li class="navelem"><a class="el" href="dir_cef2d71d502cb69a9252bca2297d9549.html">glm</a></li>  </ul>
+<li class="navelem"><a class="el" href="dir_885cc87fac2d91e269af0a5a959fa5f6.html">E:</a></li><li class="navelem"><a class="el" href="dir_63ed049134a778d525e06b63afc2c979.html">Github</a></li><li class="navelem"><a class="el" href="dir_c98a9ac98258ab9f831b188d66361a70.html">g-truc</a></li><li class="navelem"><a class="el" href="dir_50f12b6ceb23d7f6adfb377a1ae8b006.html">glm</a></li><li class="navelem"><a class="el" href="dir_fca33f1b5115d46f42c670590789c0d2.html">glm</a></li><li class="navelem"><a class="el" href="dir_382f4fd018b81be8753cb53c0a41a09a.html">detail</a></li>  </ul>
 </div>
 </div><!-- top -->
 <div class="header">
   <div class="headertitle">
-<div class="title">mat4x4.hpp</div>  </div>
+<div class="title">type_mat3x4.hpp</div>  </div>
 </div><!--header-->
 <div class="contents">
-<a href="a00056.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span>&#160;</div>
+<a href="a00056.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span>&#160; </div>
 <div class="line"><a name="l00004"></a><span class="lineno">    4</span>&#160;<span class="preprocessor">#pragma once</span></div>
-<div class="line"><a name="l00005"></a><span class="lineno">    5</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="a00079.html">./ext/matrix_double4x4.hpp</a>&quot;</span></div>
-<div class="line"><a name="l00006"></a><span class="lineno">    6</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="a00080.html">./ext/matrix_double4x4_precision.hpp</a>&quot;</span></div>
-<div class="line"><a name="l00007"></a><span class="lineno">    7</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="a00098.html">./ext/matrix_float4x4.hpp</a>&quot;</span></div>
-<div class="line"><a name="l00008"></a><span class="lineno">    8</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="a00099.html">./ext/matrix_float4x4_precision.hpp</a>&quot;</span></div>
-<div class="line"><a name="l00009"></a><span class="lineno">    9</span>&#160;</div>
-<div class="ttc" id="a00079_html"><div class="ttname"><a href="a00079.html">matrix_double4x4.hpp</a></div><div class="ttdoc">Core features </div></div>
-<div class="ttc" id="a00099_html"><div class="ttname"><a href="a00099.html">matrix_float4x4_precision.hpp</a></div><div class="ttdoc">Core features </div></div>
-<div class="ttc" id="a00098_html"><div class="ttname"><a href="a00098.html">matrix_float4x4.hpp</a></div><div class="ttdoc">Core features </div></div>
-<div class="ttc" id="a00080_html"><div class="ttname"><a href="a00080.html">matrix_double4x4_precision.hpp</a></div><div class="ttdoc">Core features </div></div>
+<div class="line"><a name="l00005"></a><span class="lineno">    5</span>&#160; </div>
+<div class="line"><a name="l00006"></a><span class="lineno">    6</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="a00077.html">type_vec3.hpp</a>&quot;</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno">    7</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="a00080.html">type_vec4.hpp</a>&quot;</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno">    8</span>&#160;<span class="preprocessor">#include &lt;limits&gt;</span></div>
+<div class="line"><a name="l00009"></a><span class="lineno">    9</span>&#160;<span class="preprocessor">#include &lt;cstddef&gt;</span></div>
+<div class="line"><a name="l00010"></a><span class="lineno">   10</span>&#160; </div>
+<div class="line"><a name="l00011"></a><span class="lineno">   11</span>&#160;<span class="keyword">namespace </span>glm</div>
+<div class="line"><a name="l00012"></a><span class="lineno">   12</span>&#160;{</div>
+<div class="line"><a name="l00013"></a><span class="lineno">   13</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T, qualifier Q&gt;</div>
+<div class="line"><a name="l00014"></a><span class="lineno">   14</span>&#160;        <span class="keyword">struct </span>mat&lt;3, 4, T, Q&gt;</div>
+<div class="line"><a name="l00015"></a><span class="lineno">   15</span>&#160;        {</div>
+<div class="line"><a name="l00016"></a><span class="lineno">   16</span>&#160;                <span class="keyword">typedef</span> vec&lt;4, T, Q&gt; col_type;</div>
+<div class="line"><a name="l00017"></a><span class="lineno">   17</span>&#160;                <span class="keyword">typedef</span> vec&lt;3, T, Q&gt; row_type;</div>
+<div class="line"><a name="l00018"></a><span class="lineno">   18</span>&#160;                <span class="keyword">typedef</span> mat&lt;3, 4, T, Q&gt; type;</div>
+<div class="line"><a name="l00019"></a><span class="lineno">   19</span>&#160;                <span class="keyword">typedef</span> mat&lt;4, 3, T, Q&gt; transpose_type;</div>
+<div class="line"><a name="l00020"></a><span class="lineno">   20</span>&#160;                <span class="keyword">typedef</span> T value_type;</div>
+<div class="line"><a name="l00021"></a><span class="lineno">   21</span>&#160; </div>
+<div class="line"><a name="l00022"></a><span class="lineno">   22</span>&#160;        <span class="keyword">private</span>:</div>
+<div class="line"><a name="l00023"></a><span class="lineno">   23</span>&#160;                col_type value[3];</div>
+<div class="line"><a name="l00024"></a><span class="lineno">   24</span>&#160; </div>
+<div class="line"><a name="l00025"></a><span class="lineno">   25</span>&#160;        <span class="keyword">public</span>:</div>
+<div class="line"><a name="l00026"></a><span class="lineno">   26</span>&#160;                <span class="comment">// -- Accesses --</span></div>
+<div class="line"><a name="l00027"></a><span class="lineno">   27</span>&#160; </div>
+<div class="line"><a name="l00028"></a><span class="lineno">   28</span>&#160;                <span class="keyword">typedef</span> length_t length_type;</div>
+<div class="line"><a name="l00029"></a><span class="lineno">   29</span>&#160;                GLM_FUNC_DECL <span class="keyword">static</span> GLM_CONSTEXPR length_type <a class="code" href="a00853.html#gab703732449be6c7199369b3f9a91ed38">length</a>() { <span class="keywordflow">return</span> 3; }</div>
+<div class="line"><a name="l00030"></a><span class="lineno">   30</span>&#160; </div>
+<div class="line"><a name="l00031"></a><span class="lineno">   31</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR col_type &amp; operator[](length_type i) GLM_NOEXCEPT;</div>
+<div class="line"><a name="l00032"></a><span class="lineno">   32</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR col_type <span class="keyword">const</span>&amp; operator[](length_type i) <span class="keyword">const</span> GLM_NOEXCEPT;</div>
+<div class="line"><a name="l00033"></a><span class="lineno">   33</span>&#160; </div>
+<div class="line"><a name="l00034"></a><span class="lineno">   34</span>&#160;                <span class="comment">// -- Constructors --</span></div>
+<div class="line"><a name="l00035"></a><span class="lineno">   35</span>&#160; </div>
+<div class="line"><a name="l00036"></a><span class="lineno">   36</span>&#160;                GLM_DEFAULTED_DEFAULT_CTOR_DECL GLM_CONSTEXPR mat() GLM_DEFAULT_CTOR;</div>
+<div class="line"><a name="l00037"></a><span class="lineno">   37</span>&#160;                template&lt;qualifier P&gt;</div>
+<div class="line"><a name="l00038"></a><span class="lineno">   38</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR mat(mat&lt;3, 4, T, P&gt; const&amp; m);</div>
+<div class="line"><a name="l00039"></a><span class="lineno">   39</span>&#160; </div>
+<div class="line"><a name="l00040"></a><span class="lineno">   40</span>&#160;                GLM_FUNC_DECL explicit GLM_CONSTEXPR mat(T scalar);</div>
+<div class="line"><a name="l00041"></a><span class="lineno">   41</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR mat(</div>
+<div class="line"><a name="l00042"></a><span class="lineno">   42</span>&#160;                        T x0, T y0, T z0, T w0,</div>
+<div class="line"><a name="l00043"></a><span class="lineno">   43</span>&#160;                        T x1, T y1, T z1, T w1,</div>
+<div class="line"><a name="l00044"></a><span class="lineno">   44</span>&#160;                        T x2, T y2, T z2, T w2);</div>
+<div class="line"><a name="l00045"></a><span class="lineno">   45</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR mat(</div>
+<div class="line"><a name="l00046"></a><span class="lineno">   46</span>&#160;                        col_type const&amp; v0,</div>
+<div class="line"><a name="l00047"></a><span class="lineno">   47</span>&#160;                        col_type const&amp; v1,</div>
+<div class="line"><a name="l00048"></a><span class="lineno">   48</span>&#160;                        col_type const&amp; v2);</div>
+<div class="line"><a name="l00049"></a><span class="lineno">   49</span>&#160; </div>
+<div class="line"><a name="l00050"></a><span class="lineno">   50</span>&#160;                <span class="comment">// -- Conversions --</span></div>
+<div class="line"><a name="l00051"></a><span class="lineno">   51</span>&#160; </div>
+<div class="line"><a name="l00052"></a><span class="lineno">   52</span>&#160;                template&lt;</div>
+<div class="line"><a name="l00053"></a><span class="lineno">   53</span>&#160;                        typename X1, typename Y1, typename Z1, typename W1,</div>
+<div class="line"><a name="l00054"></a><span class="lineno">   54</span>&#160;                        typename X2, typename Y2, typename Z2, typename W2,</div>
+<div class="line"><a name="l00055"></a><span class="lineno">   55</span>&#160;                        typename X3, typename Y3, typename Z3, typename W3&gt;</div>
+<div class="line"><a name="l00056"></a><span class="lineno">   56</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR mat(</div>
+<div class="line"><a name="l00057"></a><span class="lineno">   57</span>&#160;                        X1 x1, Y1 y1, Z1 z1, W1 w1,</div>
+<div class="line"><a name="l00058"></a><span class="lineno">   58</span>&#160;                        X2 x2, Y2 y2, Z2 z2, W2 w2,</div>
+<div class="line"><a name="l00059"></a><span class="lineno">   59</span>&#160;                        X3 x3, Y3 y3, Z3 z3, W3 w3);</div>
+<div class="line"><a name="l00060"></a><span class="lineno">   60</span>&#160; </div>
+<div class="line"><a name="l00061"></a><span class="lineno">   61</span>&#160;                template&lt;typename V1, typename V2, typename V3&gt;</div>
+<div class="line"><a name="l00062"></a><span class="lineno">   62</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR mat(</div>
+<div class="line"><a name="l00063"></a><span class="lineno">   63</span>&#160;                        vec&lt;4, V1, Q&gt; const&amp; v1,</div>
+<div class="line"><a name="l00064"></a><span class="lineno">   64</span>&#160;                        vec&lt;4, V2, Q&gt; const&amp; v2,</div>
+<div class="line"><a name="l00065"></a><span class="lineno">   65</span>&#160;                        vec&lt;4, V3, Q&gt; const&amp; v3);</div>
+<div class="line"><a name="l00066"></a><span class="lineno">   66</span>&#160; </div>
+<div class="line"><a name="l00067"></a><span class="lineno">   67</span>&#160;                <span class="comment">// -- Matrix conversions --</span></div>
+<div class="line"><a name="l00068"></a><span class="lineno">   68</span>&#160; </div>
+<div class="line"><a name="l00069"></a><span class="lineno">   69</span>&#160;                template&lt;typename U, qualifier P&gt;</div>
+<div class="line"><a name="l00070"></a><span class="lineno">   70</span>&#160;                GLM_FUNC_DECL GLM_EXPLICIT GLM_CONSTEXPR mat(mat&lt;3, 4, U, P&gt; const&amp; m);</div>
+<div class="line"><a name="l00071"></a><span class="lineno">   71</span>&#160; </div>
+<div class="line"><a name="l00072"></a><span class="lineno">   72</span>&#160;                GLM_FUNC_DECL GLM_EXPLICIT GLM_CONSTEXPR mat(mat&lt;2, 2, T, Q&gt; const&amp; x);</div>
+<div class="line"><a name="l00073"></a><span class="lineno">   73</span>&#160;                GLM_FUNC_DECL GLM_EXPLICIT GLM_CONSTEXPR mat(mat&lt;3, 3, T, Q&gt; const&amp; x);</div>
+<div class="line"><a name="l00074"></a><span class="lineno">   74</span>&#160;                GLM_FUNC_DECL GLM_EXPLICIT GLM_CONSTEXPR mat(mat&lt;4, 4, T, Q&gt; const&amp; x);</div>
+<div class="line"><a name="l00075"></a><span class="lineno">   75</span>&#160;                GLM_FUNC_DECL GLM_EXPLICIT GLM_CONSTEXPR mat(mat&lt;2, 3, T, Q&gt; const&amp; x);</div>
+<div class="line"><a name="l00076"></a><span class="lineno">   76</span>&#160;                GLM_FUNC_DECL GLM_EXPLICIT GLM_CONSTEXPR mat(mat&lt;3, 2, T, Q&gt; const&amp; x);</div>
+<div class="line"><a name="l00077"></a><span class="lineno">   77</span>&#160;                GLM_FUNC_DECL GLM_EXPLICIT GLM_CONSTEXPR mat(mat&lt;2, 4, T, Q&gt; const&amp; x);</div>
+<div class="line"><a name="l00078"></a><span class="lineno">   78</span>&#160;                GLM_FUNC_DECL GLM_EXPLICIT GLM_CONSTEXPR mat(mat&lt;4, 2, T, Q&gt; const&amp; x);</div>
+<div class="line"><a name="l00079"></a><span class="lineno">   79</span>&#160;                GLM_FUNC_DECL GLM_EXPLICIT GLM_CONSTEXPR mat(mat&lt;4, 3, T, Q&gt; const&amp; x);</div>
+<div class="line"><a name="l00080"></a><span class="lineno">   80</span>&#160; </div>
+<div class="line"><a name="l00081"></a><span class="lineno">   81</span>&#160;                <span class="comment">// -- Unary arithmetic operators --</span></div>
+<div class="line"><a name="l00082"></a><span class="lineno">   82</span>&#160; </div>
+<div class="line"><a name="l00083"></a><span class="lineno">   83</span>&#160;                template&lt;typename U&gt;</div>
+<div class="line"><a name="l00084"></a><span class="lineno">   84</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR mat&lt;3, 4, T, Q&gt; &amp; operator=(mat&lt;3, 4, U, Q&gt; const&amp; m);</div>
+<div class="line"><a name="l00085"></a><span class="lineno">   85</span>&#160;                template&lt;typename U&gt;</div>
+<div class="line"><a name="l00086"></a><span class="lineno">   86</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR mat&lt;3, 4, T, Q&gt; &amp; operator+=(U s);</div>
+<div class="line"><a name="l00087"></a><span class="lineno">   87</span>&#160;                template&lt;typename U&gt;</div>
+<div class="line"><a name="l00088"></a><span class="lineno">   88</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR mat&lt;3, 4, T, Q&gt; &amp; operator+=(mat&lt;3, 4, U, Q&gt; const&amp; m);</div>
+<div class="line"><a name="l00089"></a><span class="lineno">   89</span>&#160;                template&lt;typename U&gt;</div>
+<div class="line"><a name="l00090"></a><span class="lineno">   90</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR mat&lt;3, 4, T, Q&gt; &amp; operator-=(U s);</div>
+<div class="line"><a name="l00091"></a><span class="lineno">   91</span>&#160;                template&lt;typename U&gt;</div>
+<div class="line"><a name="l00092"></a><span class="lineno">   92</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR mat&lt;3, 4, T, Q&gt; &amp; operator-=(mat&lt;3, 4, U, Q&gt; const&amp; m);</div>
+<div class="line"><a name="l00093"></a><span class="lineno">   93</span>&#160;                template&lt;typename U&gt;</div>
+<div class="line"><a name="l00094"></a><span class="lineno">   94</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR mat&lt;3, 4, T, Q&gt; &amp; operator*=(U s);</div>
+<div class="line"><a name="l00095"></a><span class="lineno">   95</span>&#160;                template&lt;typename U&gt;</div>
+<div class="line"><a name="l00096"></a><span class="lineno">   96</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR mat&lt;3, 4, T, Q&gt; &amp; operator/=(U s);</div>
+<div class="line"><a name="l00097"></a><span class="lineno">   97</span>&#160; </div>
+<div class="line"><a name="l00098"></a><span class="lineno">   98</span>&#160;                <span class="comment">// -- Increment and decrement operators --</span></div>
+<div class="line"><a name="l00099"></a><span class="lineno">   99</span>&#160; </div>
+<div class="line"><a name="l00100"></a><span class="lineno">  100</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR mat&lt;3, 4, T, Q&gt; &amp; operator++();</div>
+<div class="line"><a name="l00101"></a><span class="lineno">  101</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR mat&lt;3, 4, T, Q&gt; &amp; operator--();</div>
+<div class="line"><a name="l00102"></a><span class="lineno">  102</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR mat&lt;3, 4, T, Q&gt; operator++(<span class="keywordtype">int</span>);</div>
+<div class="line"><a name="l00103"></a><span class="lineno">  103</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR mat&lt;3, 4, T, Q&gt; operator--(<span class="keywordtype">int</span>);</div>
+<div class="line"><a name="l00104"></a><span class="lineno">  104</span>&#160;        };</div>
+<div class="line"><a name="l00105"></a><span class="lineno">  105</span>&#160; </div>
+<div class="line"><a name="l00106"></a><span class="lineno">  106</span>&#160;        <span class="comment">// -- Unary operators --</span></div>
+<div class="line"><a name="l00107"></a><span class="lineno">  107</span>&#160; </div>
+<div class="line"><a name="l00108"></a><span class="lineno">  108</span>&#160;        template&lt;typename T, qualifier Q&gt;</div>
+<div class="line"><a name="l00109"></a><span class="lineno">  109</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR mat&lt;3, 4, T, Q&gt; operator+(mat&lt;3, 4, T, Q&gt; const&amp; m);</div>
+<div class="line"><a name="l00110"></a><span class="lineno">  110</span>&#160; </div>
+<div class="line"><a name="l00111"></a><span class="lineno">  111</span>&#160;        template&lt;typename T, qualifier Q&gt;</div>
+<div class="line"><a name="l00112"></a><span class="lineno">  112</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR mat&lt;3, 4, T, Q&gt; operator-(mat&lt;3, 4, T, Q&gt; const&amp; m);</div>
+<div class="line"><a name="l00113"></a><span class="lineno">  113</span>&#160; </div>
+<div class="line"><a name="l00114"></a><span class="lineno">  114</span>&#160;        <span class="comment">// -- Binary operators --</span></div>
+<div class="line"><a name="l00115"></a><span class="lineno">  115</span>&#160; </div>
+<div class="line"><a name="l00116"></a><span class="lineno">  116</span>&#160;        template&lt;typename T, qualifier Q&gt;</div>
+<div class="line"><a name="l00117"></a><span class="lineno">  117</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR mat&lt;3, 4, T, Q&gt; operator+(mat&lt;3, 4, T, Q&gt; const&amp; m, T scalar);</div>
+<div class="line"><a name="l00118"></a><span class="lineno">  118</span>&#160; </div>
+<div class="line"><a name="l00119"></a><span class="lineno">  119</span>&#160;        template&lt;typename T, qualifier Q&gt;</div>
+<div class="line"><a name="l00120"></a><span class="lineno">  120</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR mat&lt;3, 4, T, Q&gt; operator+(mat&lt;3, 4, T, Q&gt; const&amp; m1, mat&lt;3, 4, T, Q&gt; const&amp; m2);</div>
+<div class="line"><a name="l00121"></a><span class="lineno">  121</span>&#160; </div>
+<div class="line"><a name="l00122"></a><span class="lineno">  122</span>&#160;        template&lt;typename T, qualifier Q&gt;</div>
+<div class="line"><a name="l00123"></a><span class="lineno">  123</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR mat&lt;3, 4, T, Q&gt; operator-(mat&lt;3, 4, T, Q&gt; const&amp; m, T scalar);</div>
+<div class="line"><a name="l00124"></a><span class="lineno">  124</span>&#160; </div>
+<div class="line"><a name="l00125"></a><span class="lineno">  125</span>&#160;        template&lt;typename T, qualifier Q&gt;</div>
+<div class="line"><a name="l00126"></a><span class="lineno">  126</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR mat&lt;3, 4, T, Q&gt; operator-(mat&lt;3, 4, T, Q&gt; const&amp; m1, mat&lt;3, 4, T, Q&gt; const&amp; m2);</div>
+<div class="line"><a name="l00127"></a><span class="lineno">  127</span>&#160; </div>
+<div class="line"><a name="l00128"></a><span class="lineno">  128</span>&#160;        template&lt;typename T, qualifier Q&gt;</div>
+<div class="line"><a name="l00129"></a><span class="lineno">  129</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR mat&lt;3, 4, T, Q&gt; operator*(mat&lt;3, 4, T, Q&gt; const&amp; m, T scalar);</div>
+<div class="line"><a name="l00130"></a><span class="lineno">  130</span>&#160; </div>
+<div class="line"><a name="l00131"></a><span class="lineno">  131</span>&#160;        template&lt;typename T, qualifier Q&gt;</div>
+<div class="line"><a name="l00132"></a><span class="lineno">  132</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR mat&lt;3, 4, T, Q&gt; operator*(T scalar, mat&lt;3, 4, T, Q&gt; const&amp; m);</div>
+<div class="line"><a name="l00133"></a><span class="lineno">  133</span>&#160; </div>
+<div class="line"><a name="l00134"></a><span class="lineno">  134</span>&#160;        template&lt;typename T, qualifier Q&gt;</div>
+<div class="line"><a name="l00135"></a><span class="lineno">  135</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR typename mat&lt;3, 4, T, Q&gt;::col_type operator*(mat&lt;3, 4, T, Q&gt; const&amp; m, typename mat&lt;3, 4, T, Q&gt;::row_type const&amp; v);</div>
+<div class="line"><a name="l00136"></a><span class="lineno">  136</span>&#160; </div>
+<div class="line"><a name="l00137"></a><span class="lineno">  137</span>&#160;        template&lt;typename T, qualifier Q&gt;</div>
+<div class="line"><a name="l00138"></a><span class="lineno">  138</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR typename mat&lt;3, 4, T, Q&gt;::row_type operator*(typename mat&lt;3, 4, T, Q&gt;::col_type const&amp; v, mat&lt;3, 4, T, Q&gt; const&amp; m);</div>
+<div class="line"><a name="l00139"></a><span class="lineno">  139</span>&#160; </div>
+<div class="line"><a name="l00140"></a><span class="lineno">  140</span>&#160;        template&lt;typename T, qualifier Q&gt;</div>
+<div class="line"><a name="l00141"></a><span class="lineno">  141</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR mat&lt;4, 4, T, Q&gt; operator*(mat&lt;3, 4, T, Q&gt; const&amp; m1,        mat&lt;4, 3, T, Q&gt; const&amp; m2);</div>
+<div class="line"><a name="l00142"></a><span class="lineno">  142</span>&#160; </div>
+<div class="line"><a name="l00143"></a><span class="lineno">  143</span>&#160;        template&lt;typename T, qualifier Q&gt;</div>
+<div class="line"><a name="l00144"></a><span class="lineno">  144</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR mat&lt;2, 4, T, Q&gt; operator*(mat&lt;3, 4, T, Q&gt; const&amp; m1, mat&lt;2, 3, T, Q&gt; const&amp; m2);</div>
+<div class="line"><a name="l00145"></a><span class="lineno">  145</span>&#160; </div>
+<div class="line"><a name="l00146"></a><span class="lineno">  146</span>&#160;        template&lt;typename T, qualifier Q&gt;</div>
+<div class="line"><a name="l00147"></a><span class="lineno">  147</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR mat&lt;3, 4, T, Q&gt; operator*(mat&lt;3, 4, T, Q&gt; const&amp; m1,        mat&lt;3, 3, T, Q&gt; const&amp; m2);</div>
+<div class="line"><a name="l00148"></a><span class="lineno">  148</span>&#160; </div>
+<div class="line"><a name="l00149"></a><span class="lineno">  149</span>&#160;        template&lt;typename T, qualifier Q&gt;</div>
+<div class="line"><a name="l00150"></a><span class="lineno">  150</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR mat&lt;3, 4, T, Q&gt; operator/(mat&lt;3, 4, T, Q&gt; const&amp; m, T scalar);</div>
+<div class="line"><a name="l00151"></a><span class="lineno">  151</span>&#160; </div>
+<div class="line"><a name="l00152"></a><span class="lineno">  152</span>&#160;        template&lt;typename T, qualifier Q&gt;</div>
+<div class="line"><a name="l00153"></a><span class="lineno">  153</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR mat&lt;3, 4, T, Q&gt; operator/(T scalar, mat&lt;3, 4, T, Q&gt; const&amp; m);</div>
+<div class="line"><a name="l00154"></a><span class="lineno">  154</span>&#160; </div>
+<div class="line"><a name="l00155"></a><span class="lineno">  155</span>&#160;        <span class="comment">// -- Boolean operators --</span></div>
+<div class="line"><a name="l00156"></a><span class="lineno">  156</span>&#160; </div>
+<div class="line"><a name="l00157"></a><span class="lineno">  157</span>&#160;        template&lt;typename T, qualifier Q&gt;</div>
+<div class="line"><a name="l00158"></a><span class="lineno">  158</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR <span class="keywordtype">bool</span> operator==(mat&lt;3, 4, T, Q&gt; const&amp; m1, mat&lt;3, 4, T, Q&gt; const&amp; m2);</div>
+<div class="line"><a name="l00159"></a><span class="lineno">  159</span>&#160; </div>
+<div class="line"><a name="l00160"></a><span class="lineno">  160</span>&#160;        template&lt;typename T, qualifier Q&gt;</div>
+<div class="line"><a name="l00161"></a><span class="lineno">  161</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR <span class="keywordtype">bool</span> operator!=(mat&lt;3, 4, T, Q&gt; const&amp; m1, mat&lt;3, 4, T, Q&gt; const&amp; m2);</div>
+<div class="line"><a name="l00162"></a><span class="lineno">  162</span>&#160;}<span class="comment">//namespace glm</span></div>
+<div class="line"><a name="l00163"></a><span class="lineno">  163</span>&#160; </div>
+<div class="line"><a name="l00164"></a><span class="lineno">  164</span>&#160;<span class="preprocessor">#ifndef GLM_EXTERNAL_TEMPLATE</span></div>
+<div class="line"><a name="l00165"></a><span class="lineno">  165</span>&#160;<span class="preprocessor">#include &quot;type_mat3x4.inl&quot;</span></div>
+<div class="line"><a name="l00166"></a><span class="lineno">  166</span>&#160;<span class="preprocessor">#endif</span></div>
 </div><!-- fragment --></div><!-- contents -->
+<div class="ttc" id="aa00080_html"><div class="ttname"><a href="a00080.html">type_vec4.hpp</a></div><div class="ttdoc">Core features</div></div>
+<div class="ttc" id="aa00853_html_gab703732449be6c7199369b3f9a91ed38"><div class="ttname"><a href="a00853.html#gab703732449be6c7199369b3f9a91ed38">glm::length</a></div><div class="ttdeci">GLM_FUNC_DECL T length(qua&lt; T, Q &gt; const &amp;q)</div><div class="ttdoc">Returns the norm of a quaternions.</div></div>
+<div class="ttc" id="aa00077_html"><div class="ttname"><a href="a00077.html">type_vec3.hpp</a></div><div class="ttdoc">Core features</div></div>
 <!-- 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.10
+</a> 1.8.18
 </small></address>
 </body>
 </html>

+ 24 - 216
doc/api/a00059.html

@@ -1,19 +1,17 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://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.10"/>
-<title>0.9.9 API documentation: matrix_clip_space.hpp File Reference</title>
+<meta name="generator" content="Doxygen 1.8.18"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>1.0.0 API documentation: type_mat4x2.hpp File Reference</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="search/search.css" rel="stylesheet" type="text/css"/>
 <script type="text/javascript" src="search/searchdata.js"></script>
 <script type="text/javascript" src="search/search.js"></script>
-<script type="text/javascript">
-  $(document).ready(function() { init_search(); });
-</script>
 <link href="doxygen.css" rel="stylesheet" type="text/css" />
 </head>
 <body>
@@ -24,7 +22,7 @@
  <tr style="height: 56px;">
   <td id="projectlogo"><img alt="Logo" src="logo-mini.png"/></td>
   <td id="projectalign" style="padding-left: 0.5em;">
-   <div id="projectname">0.9.9 API documentation
+   <div id="projectname">1.0.0 API documentation
    </div>
   </td>
  </tr>
@@ -32,38 +30,22 @@
 </table>
 </div>
 <!-- end header part -->
-<!-- Generated by Doxygen 1.8.10 -->
+<!-- Generated by Doxygen 1.8.18 -->
 <script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
 var searchBox = new SearchBox("searchBox", "search",false,'Search');
+/* @license-end */
 </script>
-  <div id="navrow1" class="tabs">
-    <ul class="tablist">
-      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
-      <li><a href="modules.html"><span>Modules</span></a></li>
-      <li class="current"><a href="files.html"><span>Files</span></a></li>
-      <li>
-        <div id="MSearchBox" class="MSearchBoxInactive">
-        <span class="left">
-          <img id="MSearchSelect" src="search/mag_sel.png"
-               onmouseover="return searchBox.OnSearchSelectShow()"
-               onmouseout="return searchBox.OnSearchSelectHide()"
-               alt=""/>
-          <input type="text" id="MSearchField" value="Search" accesskey="S"
-               onfocus="searchBox.OnSearchFieldFocus(true)" 
-               onblur="searchBox.OnSearchFieldFocus(false)" 
-               onkeyup="searchBox.OnSearchFieldChange(event)"/>
-          </span><span class="right">
-            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
-          </span>
-        </div>
-      </li>
-    </ul>
-  </div>
-  <div id="navrow2" class="tabs2">
-    <ul class="tablist">
-      <li><a href="files.html"><span>File&#160;List</span></a></li>
-    </ul>
-  </div>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
 <!-- window showing the filter options -->
 <div id="MSearchSelectWindow"
      onmouseover="return searchBox.OnSearchSelectShow()"
@@ -80,203 +62,29 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 
 <div id="nav-path" class="navpath">
   <ul>
-<li class="navelem"><a class="el" href="dir_3a581ba30d25676e4b797b1f96d53b45.html">F:</a></li><li class="navelem"><a class="el" href="dir_9e5fe034a00e89334fd5186c3e7db156.html">G-Truc</a></li><li class="navelem"><a class="el" href="dir_d9496f0844b48bc7e53b5af8c99b9ab2.html">Source</a></li><li class="navelem"><a class="el" href="dir_a8bee7be44182a33f3820393ae0b105d.html">G-Truc</a></li><li class="navelem"><a class="el" href="dir_44e5e654415abd9ca6fdeaddaff8565e.html">glm</a></li><li class="navelem"><a class="el" href="dir_cef2d71d502cb69a9252bca2297d9549.html">glm</a></li><li class="navelem"><a class="el" href="dir_6b66465792d005310484819a0eb0b0d3.html">ext</a></li>  </ul>
+<li class="navelem"><a class="el" href="dir_885cc87fac2d91e269af0a5a959fa5f6.html">E:</a></li><li class="navelem"><a class="el" href="dir_63ed049134a778d525e06b63afc2c979.html">Github</a></li><li class="navelem"><a class="el" href="dir_c98a9ac98258ab9f831b188d66361a70.html">g-truc</a></li><li class="navelem"><a class="el" href="dir_50f12b6ceb23d7f6adfb377a1ae8b006.html">glm</a></li><li class="navelem"><a class="el" href="dir_fca33f1b5115d46f42c670590789c0d2.html">glm</a></li><li class="navelem"><a class="el" href="dir_382f4fd018b81be8753cb53c0a41a09a.html">detail</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">matrix_clip_space.hpp File Reference</div>  </div>
+<div class="title">type_mat4x2.hpp File Reference</div>  </div>
 </div><!--header-->
 <div class="contents">
 
-<p><a class="el" href="a00243.html">GLM_EXT_matrix_clip_space</a>  
+<p><a class="el" href="a00889.html">Core features</a>  
 <a href="#details">More...</a></p>
 
 <p><a href="a00059_source.html">Go to the source code of this file.</a></p>
-<table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
-Functions</h2></td></tr>
-<tr class="memitem:ga0bcd4542e0affc63a0b8c08fcb839ea9"><td class="memTemplParams" colspan="2">template&lt;typename T &gt; </td></tr>
-<tr class="memitem:ga0bcd4542e0affc63a0b8c08fcb839ea9"><td class="memTemplItemLeft" align="right" valign="top">GLM_FUNC_DECL mat&lt; 4, 4, T, defaultp &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00243.html#ga0bcd4542e0affc63a0b8c08fcb839ea9">frustum</a> (T left, T right, T bottom, T top, T near, T far)</td></tr>
-<tr class="memdesc:ga0bcd4542e0affc63a0b8c08fcb839ea9"><td class="mdescLeft">&#160;</td><td class="mdescRight">Creates a frustum matrix with default handedness, using the default handedness and default near and far clip planes definition.  <a href="a00243.html#ga0bcd4542e0affc63a0b8c08fcb839ea9">More...</a><br /></td></tr>
-<tr class="separator:ga0bcd4542e0affc63a0b8c08fcb839ea9"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:gae4277c37f61d81da01bc9db14ea90296"><td class="memTemplParams" colspan="2">template&lt;typename T &gt; </td></tr>
-<tr class="memitem:gae4277c37f61d81da01bc9db14ea90296"><td class="memTemplItemLeft" align="right" valign="top">GLM_FUNC_DECL mat&lt; 4, 4, T, defaultp &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00243.html#gae4277c37f61d81da01bc9db14ea90296">frustumLH</a> (T left, T right, T bottom, T top, T near, T far)</td></tr>
-<tr class="memdesc:gae4277c37f61d81da01bc9db14ea90296"><td class="mdescLeft">&#160;</td><td class="mdescRight">Creates a left handed frustum matrix.  <a href="a00243.html#gae4277c37f61d81da01bc9db14ea90296">More...</a><br /></td></tr>
-<tr class="separator:gae4277c37f61d81da01bc9db14ea90296"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:ga259520cad03b3f8bca9417920035ed01"><td class="memTemplParams" colspan="2">template&lt;typename T &gt; </td></tr>
-<tr class="memitem:ga259520cad03b3f8bca9417920035ed01"><td class="memTemplItemLeft" align="right" valign="top">GLM_FUNC_DECL mat&lt; 4, 4, T, defaultp &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00243.html#ga259520cad03b3f8bca9417920035ed01">frustumLH_NO</a> (T left, T right, T bottom, T top, T near, T far)</td></tr>
-<tr class="memdesc:ga259520cad03b3f8bca9417920035ed01"><td class="mdescLeft">&#160;</td><td class="mdescRight">Creates a left handed frustum matrix.  <a href="a00243.html#ga259520cad03b3f8bca9417920035ed01">More...</a><br /></td></tr>
-<tr class="separator:ga259520cad03b3f8bca9417920035ed01"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:ga94218b094862d17798370242680b9030"><td class="memTemplParams" colspan="2">template&lt;typename T &gt; </td></tr>
-<tr class="memitem:ga94218b094862d17798370242680b9030"><td class="memTemplItemLeft" align="right" valign="top">GLM_FUNC_DECL mat&lt; 4, 4, T, defaultp &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00243.html#ga94218b094862d17798370242680b9030">frustumLH_ZO</a> (T left, T right, T bottom, T top, T near, T far)</td></tr>
-<tr class="memdesc:ga94218b094862d17798370242680b9030"><td class="mdescLeft">&#160;</td><td class="mdescRight">Creates a left handed frustum matrix.  <a href="a00243.html#ga94218b094862d17798370242680b9030">More...</a><br /></td></tr>
-<tr class="separator:ga94218b094862d17798370242680b9030"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:gae34ec664ad44860bf4b5ba631f0e0e90"><td class="memTemplParams" colspan="2">template&lt;typename T &gt; </td></tr>
-<tr class="memitem:gae34ec664ad44860bf4b5ba631f0e0e90"><td class="memTemplItemLeft" align="right" valign="top">GLM_FUNC_DECL mat&lt; 4, 4, T, defaultp &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00243.html#gae34ec664ad44860bf4b5ba631f0e0e90">frustumNO</a> (T left, T right, T bottom, T top, T near, T far)</td></tr>
-<tr class="memdesc:gae34ec664ad44860bf4b5ba631f0e0e90"><td class="mdescLeft">&#160;</td><td class="mdescRight">Creates a frustum matrix using left-handed coordinates if GLM_FORCE_LEFT_HANDED if defined or right-handed coordinates otherwise.  <a href="a00243.html#gae34ec664ad44860bf4b5ba631f0e0e90">More...</a><br /></td></tr>
-<tr class="separator:gae34ec664ad44860bf4b5ba631f0e0e90"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:ga4366ab45880c6c5f8b3e8c371ca4b136"><td class="memTemplParams" colspan="2">template&lt;typename T &gt; </td></tr>
-<tr class="memitem:ga4366ab45880c6c5f8b3e8c371ca4b136"><td class="memTemplItemLeft" align="right" valign="top">GLM_FUNC_DECL mat&lt; 4, 4, T, defaultp &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00243.html#ga4366ab45880c6c5f8b3e8c371ca4b136">frustumRH</a> (T left, T right, T bottom, T top, T near, T far)</td></tr>
-<tr class="memdesc:ga4366ab45880c6c5f8b3e8c371ca4b136"><td class="mdescLeft">&#160;</td><td class="mdescRight">Creates a right handed frustum matrix.  <a href="a00243.html#ga4366ab45880c6c5f8b3e8c371ca4b136">More...</a><br /></td></tr>
-<tr class="separator:ga4366ab45880c6c5f8b3e8c371ca4b136"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:ga9236c8439f21be186b79c97b588836b9"><td class="memTemplParams" colspan="2">template&lt;typename T &gt; </td></tr>
-<tr class="memitem:ga9236c8439f21be186b79c97b588836b9"><td class="memTemplItemLeft" align="right" valign="top">GLM_FUNC_DECL mat&lt; 4, 4, T, defaultp &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00243.html#ga9236c8439f21be186b79c97b588836b9">frustumRH_NO</a> (T left, T right, T bottom, T top, T near, T far)</td></tr>
-<tr class="memdesc:ga9236c8439f21be186b79c97b588836b9"><td class="mdescLeft">&#160;</td><td class="mdescRight">Creates a right handed frustum matrix.  <a href="a00243.html#ga9236c8439f21be186b79c97b588836b9">More...</a><br /></td></tr>
-<tr class="separator:ga9236c8439f21be186b79c97b588836b9"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:ga7654a9227f14d5382786b9fc0eb5692d"><td class="memTemplParams" colspan="2">template&lt;typename T &gt; </td></tr>
-<tr class="memitem:ga7654a9227f14d5382786b9fc0eb5692d"><td class="memTemplItemLeft" align="right" valign="top">GLM_FUNC_DECL mat&lt; 4, 4, T, defaultp &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00243.html#ga7654a9227f14d5382786b9fc0eb5692d">frustumRH_ZO</a> (T left, T right, T bottom, T top, T near, T far)</td></tr>
-<tr class="memdesc:ga7654a9227f14d5382786b9fc0eb5692d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Creates a right handed frustum matrix.  <a href="a00243.html#ga7654a9227f14d5382786b9fc0eb5692d">More...</a><br /></td></tr>
-<tr class="separator:ga7654a9227f14d5382786b9fc0eb5692d"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:gaa73322e152edf50cf30a6edac342a757"><td class="memTemplParams" colspan="2">template&lt;typename T &gt; </td></tr>
-<tr class="memitem:gaa73322e152edf50cf30a6edac342a757"><td class="memTemplItemLeft" align="right" valign="top">GLM_FUNC_DECL mat&lt; 4, 4, T, defaultp &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00243.html#gaa73322e152edf50cf30a6edac342a757">frustumZO</a> (T left, T right, T bottom, T top, T near, T far)</td></tr>
-<tr class="memdesc:gaa73322e152edf50cf30a6edac342a757"><td class="mdescLeft">&#160;</td><td class="mdescRight">Creates a frustum matrix using left-handed coordinates if GLM_FORCE_LEFT_HANDED if defined or right-handed coordinates otherwise.  <a href="a00243.html#gaa73322e152edf50cf30a6edac342a757">More...</a><br /></td></tr>
-<tr class="separator:gaa73322e152edf50cf30a6edac342a757"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:ga44fa38a18349450325cae2661bb115ca"><td class="memTemplParams" colspan="2">template&lt;typename T &gt; </td></tr>
-<tr class="memitem:ga44fa38a18349450325cae2661bb115ca"><td class="memTemplItemLeft" align="right" valign="top">GLM_FUNC_DECL mat&lt; 4, 4, T, defaultp &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00243.html#ga44fa38a18349450325cae2661bb115ca">infinitePerspective</a> (T fovy, T aspect, T near)</td></tr>
-<tr class="memdesc:ga44fa38a18349450325cae2661bb115ca"><td class="mdescLeft">&#160;</td><td class="mdescRight">Creates a matrix for a symmetric perspective-view frustum with far plane at infinite with default handedness.  <a href="a00243.html#ga44fa38a18349450325cae2661bb115ca">More...</a><br /></td></tr>
-<tr class="separator:ga44fa38a18349450325cae2661bb115ca"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:ga3201b30f5b3ea0f933246d87bfb992a9"><td class="memTemplParams" colspan="2">template&lt;typename T &gt; </td></tr>
-<tr class="memitem:ga3201b30f5b3ea0f933246d87bfb992a9"><td class="memTemplItemLeft" align="right" valign="top">GLM_FUNC_DECL mat&lt; 4, 4, T, defaultp &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00243.html#ga3201b30f5b3ea0f933246d87bfb992a9">infinitePerspectiveLH</a> (T fovy, T aspect, T near)</td></tr>
-<tr class="memdesc:ga3201b30f5b3ea0f933246d87bfb992a9"><td class="mdescLeft">&#160;</td><td class="mdescRight">Creates a matrix for a left handed, symmetric perspective-view frustum with far plane at infinite.  <a href="a00243.html#ga3201b30f5b3ea0f933246d87bfb992a9">More...</a><br /></td></tr>
-<tr class="separator:ga3201b30f5b3ea0f933246d87bfb992a9"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:ga99672ffe5714ef478dab2437255fe7e1"><td class="memTemplParams" colspan="2">template&lt;typename T &gt; </td></tr>
-<tr class="memitem:ga99672ffe5714ef478dab2437255fe7e1"><td class="memTemplItemLeft" align="right" valign="top">GLM_FUNC_DECL mat&lt; 4, 4, T, defaultp &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00243.html#ga99672ffe5714ef478dab2437255fe7e1">infinitePerspectiveRH</a> (T fovy, T aspect, T near)</td></tr>
-<tr class="memdesc:ga99672ffe5714ef478dab2437255fe7e1"><td class="mdescLeft">&#160;</td><td class="mdescRight">Creates a matrix for a right handed, symmetric perspective-view frustum with far plane at infinite.  <a href="a00243.html#ga99672ffe5714ef478dab2437255fe7e1">More...</a><br /></td></tr>
-<tr class="separator:ga99672ffe5714ef478dab2437255fe7e1"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:gae5b6b40ed882cd56cd7cb97701909c06"><td class="memTemplParams" colspan="2">template&lt;typename T &gt; </td></tr>
-<tr class="memitem:gae5b6b40ed882cd56cd7cb97701909c06"><td class="memTemplItemLeft" align="right" valign="top">GLM_FUNC_DECL mat&lt; 4, 4, T, defaultp &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00243.html#gae5b6b40ed882cd56cd7cb97701909c06">ortho</a> (T left, T right, T bottom, T top)</td></tr>
-<tr class="memdesc:gae5b6b40ed882cd56cd7cb97701909c06"><td class="mdescLeft">&#160;</td><td class="mdescRight">Creates a matrix for projecting two-dimensional coordinates onto the screen.  <a href="a00243.html#gae5b6b40ed882cd56cd7cb97701909c06">More...</a><br /></td></tr>
-<tr class="separator:gae5b6b40ed882cd56cd7cb97701909c06"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:ga6615d8a9d39432e279c4575313ecb456"><td class="memTemplParams" colspan="2">template&lt;typename T &gt; </td></tr>
-<tr class="memitem:ga6615d8a9d39432e279c4575313ecb456"><td class="memTemplItemLeft" align="right" valign="top">GLM_FUNC_DECL mat&lt; 4, 4, T, defaultp &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00243.html#ga6615d8a9d39432e279c4575313ecb456">ortho</a> (T left, T right, T bottom, T top, T zNear, T zFar)</td></tr>
-<tr class="memdesc:ga6615d8a9d39432e279c4575313ecb456"><td class="mdescLeft">&#160;</td><td class="mdescRight">Creates a matrix for an orthographic parallel viewing volume, using the default handedness and default near and far clip planes definition.  <a href="a00243.html#ga6615d8a9d39432e279c4575313ecb456">More...</a><br /></td></tr>
-<tr class="separator:ga6615d8a9d39432e279c4575313ecb456"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:gad122a79aadaa5529cec4ac197203db7f"><td class="memTemplParams" colspan="2">template&lt;typename T &gt; </td></tr>
-<tr class="memitem:gad122a79aadaa5529cec4ac197203db7f"><td class="memTemplItemLeft" align="right" valign="top">GLM_FUNC_DECL mat&lt; 4, 4, T, defaultp &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00243.html#gad122a79aadaa5529cec4ac197203db7f">orthoLH</a> (T left, T right, T bottom, T top, T zNear, T zFar)</td></tr>
-<tr class="memdesc:gad122a79aadaa5529cec4ac197203db7f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Creates a matrix for an orthographic parallel viewing volume, using left-handed coordinates.  <a href="a00243.html#gad122a79aadaa5529cec4ac197203db7f">More...</a><br /></td></tr>
-<tr class="separator:gad122a79aadaa5529cec4ac197203db7f"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:ga526416735ea7c5c5cd255bf99d051bd8"><td class="memTemplParams" colspan="2">template&lt;typename T &gt; </td></tr>
-<tr class="memitem:ga526416735ea7c5c5cd255bf99d051bd8"><td class="memTemplItemLeft" align="right" valign="top">GLM_FUNC_DECL mat&lt; 4, 4, T, defaultp &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00243.html#ga526416735ea7c5c5cd255bf99d051bd8">orthoLH_NO</a> (T left, T right, T bottom, T top, T zNear, T zFar)</td></tr>
-<tr class="memdesc:ga526416735ea7c5c5cd255bf99d051bd8"><td class="mdescLeft">&#160;</td><td class="mdescRight">Creates a matrix for an orthographic parallel viewing volume using right-handed coordinates.  <a href="a00243.html#ga526416735ea7c5c5cd255bf99d051bd8">More...</a><br /></td></tr>
-<tr class="separator:ga526416735ea7c5c5cd255bf99d051bd8"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:gab37ac3eec8d61f22fceda7775e836afa"><td class="memTemplParams" colspan="2">template&lt;typename T &gt; </td></tr>
-<tr class="memitem:gab37ac3eec8d61f22fceda7775e836afa"><td class="memTemplItemLeft" align="right" valign="top">GLM_FUNC_DECL mat&lt; 4, 4, T, defaultp &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00243.html#gab37ac3eec8d61f22fceda7775e836afa">orthoLH_ZO</a> (T left, T right, T bottom, T top, T zNear, T zFar)</td></tr>
-<tr class="memdesc:gab37ac3eec8d61f22fceda7775e836afa"><td class="mdescLeft">&#160;</td><td class="mdescRight">Creates a matrix for an orthographic parallel viewing volume, using left-handed coordinates.  <a href="a00243.html#gab37ac3eec8d61f22fceda7775e836afa">More...</a><br /></td></tr>
-<tr class="separator:gab37ac3eec8d61f22fceda7775e836afa"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:gab219d28a8f178d4517448fcd6395a073"><td class="memTemplParams" colspan="2">template&lt;typename T &gt; </td></tr>
-<tr class="memitem:gab219d28a8f178d4517448fcd6395a073"><td class="memTemplItemLeft" align="right" valign="top">GLM_FUNC_DECL mat&lt; 4, 4, T, defaultp &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00243.html#gab219d28a8f178d4517448fcd6395a073">orthoNO</a> (T left, T right, T bottom, T top, T zNear, T zFar)</td></tr>
-<tr class="memdesc:gab219d28a8f178d4517448fcd6395a073"><td class="mdescLeft">&#160;</td><td class="mdescRight">Creates a matrix for an orthographic parallel viewing volume, using left-handed coordinates if GLM_FORCE_LEFT_HANDED if defined or right-handed coordinates otherwise.  <a href="a00243.html#gab219d28a8f178d4517448fcd6395a073">More...</a><br /></td></tr>
-<tr class="separator:gab219d28a8f178d4517448fcd6395a073"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:ga16264c9b838edeb9dd1de7a1010a13a4"><td class="memTemplParams" colspan="2">template&lt;typename T &gt; </td></tr>
-<tr class="memitem:ga16264c9b838edeb9dd1de7a1010a13a4"><td class="memTemplItemLeft" align="right" valign="top">GLM_FUNC_DECL mat&lt; 4, 4, T, defaultp &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00243.html#ga16264c9b838edeb9dd1de7a1010a13a4">orthoRH</a> (T left, T right, T bottom, T top, T zNear, T zFar)</td></tr>
-<tr class="memdesc:ga16264c9b838edeb9dd1de7a1010a13a4"><td class="mdescLeft">&#160;</td><td class="mdescRight">Creates a matrix for an orthographic parallel viewing volume, using right-handed coordinates.  <a href="a00243.html#ga16264c9b838edeb9dd1de7a1010a13a4">More...</a><br /></td></tr>
-<tr class="separator:ga16264c9b838edeb9dd1de7a1010a13a4"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:gaa2f7a1373170bf0a4a2ddef9b0706780"><td class="memTemplParams" colspan="2">template&lt;typename T &gt; </td></tr>
-<tr class="memitem:gaa2f7a1373170bf0a4a2ddef9b0706780"><td class="memTemplItemLeft" align="right" valign="top">GLM_FUNC_DECL mat&lt; 4, 4, T, defaultp &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00243.html#gaa2f7a1373170bf0a4a2ddef9b0706780">orthoRH_NO</a> (T left, T right, T bottom, T top, T zNear, T zFar)</td></tr>
-<tr class="memdesc:gaa2f7a1373170bf0a4a2ddef9b0706780"><td class="mdescLeft">&#160;</td><td class="mdescRight">Creates a matrix for an orthographic parallel viewing volume, using right-handed coordinates.  <a href="a00243.html#gaa2f7a1373170bf0a4a2ddef9b0706780">More...</a><br /></td></tr>
-<tr class="separator:gaa2f7a1373170bf0a4a2ddef9b0706780"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:ga9aea2e515b08fd7dce47b7b6ec34d588"><td class="memTemplParams" colspan="2">template&lt;typename T &gt; </td></tr>
-<tr class="memitem:ga9aea2e515b08fd7dce47b7b6ec34d588"><td class="memTemplItemLeft" align="right" valign="top">GLM_FUNC_DECL mat&lt; 4, 4, T, defaultp &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00243.html#ga9aea2e515b08fd7dce47b7b6ec34d588">orthoRH_ZO</a> (T left, T right, T bottom, T top, T zNear, T zFar)</td></tr>
-<tr class="memdesc:ga9aea2e515b08fd7dce47b7b6ec34d588"><td class="mdescLeft">&#160;</td><td class="mdescRight">Creates a matrix for an orthographic parallel viewing volume, using left-handed coordinates.  <a href="a00243.html#ga9aea2e515b08fd7dce47b7b6ec34d588">More...</a><br /></td></tr>
-<tr class="separator:ga9aea2e515b08fd7dce47b7b6ec34d588"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:gaea11a70817af2c0801c869dea0b7a5bc"><td class="memTemplParams" colspan="2">template&lt;typename T &gt; </td></tr>
-<tr class="memitem:gaea11a70817af2c0801c869dea0b7a5bc"><td class="memTemplItemLeft" align="right" valign="top">GLM_FUNC_DECL mat&lt; 4, 4, T, defaultp &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00243.html#gaea11a70817af2c0801c869dea0b7a5bc">orthoZO</a> (T left, T right, T bottom, T top, T zNear, T zFar)</td></tr>
-<tr class="memdesc:gaea11a70817af2c0801c869dea0b7a5bc"><td class="mdescLeft">&#160;</td><td class="mdescRight">Creates a matrix for an orthographic parallel viewing volume, using left-handed coordinates.  <a href="a00243.html#gaea11a70817af2c0801c869dea0b7a5bc">More...</a><br /></td></tr>
-<tr class="separator:gaea11a70817af2c0801c869dea0b7a5bc"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:ga747c8cf99458663dd7ad1bb3a2f07787"><td class="memTemplParams" colspan="2">template&lt;typename T &gt; </td></tr>
-<tr class="memitem:ga747c8cf99458663dd7ad1bb3a2f07787"><td class="memTemplItemLeft" align="right" valign="top">GLM_FUNC_DECL mat&lt; 4, 4, T, defaultp &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00243.html#ga747c8cf99458663dd7ad1bb3a2f07787">perspective</a> (T fovy, T aspect, T near, T far)</td></tr>
-<tr class="memdesc:ga747c8cf99458663dd7ad1bb3a2f07787"><td class="mdescLeft">&#160;</td><td class="mdescRight">Creates a matrix for a symetric perspective-view frustum based on the default handedness and default near and far clip planes definition.  <a href="a00243.html#ga747c8cf99458663dd7ad1bb3a2f07787">More...</a><br /></td></tr>
-<tr class="separator:ga747c8cf99458663dd7ad1bb3a2f07787"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:gaebd02240fd36e85ad754f02ddd9a560d"><td class="memTemplParams" colspan="2">template&lt;typename T &gt; </td></tr>
-<tr class="memitem:gaebd02240fd36e85ad754f02ddd9a560d"><td class="memTemplItemLeft" align="right" valign="top">GLM_FUNC_DECL mat&lt; 4, 4, T, defaultp &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00243.html#gaebd02240fd36e85ad754f02ddd9a560d">perspectiveFov</a> (T fov, T width, T height, T near, T far)</td></tr>
-<tr class="memdesc:gaebd02240fd36e85ad754f02ddd9a560d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Builds a perspective projection matrix based on a field of view and the default handedness and default near and far clip planes definition.  <a href="a00243.html#gaebd02240fd36e85ad754f02ddd9a560d">More...</a><br /></td></tr>
-<tr class="separator:gaebd02240fd36e85ad754f02ddd9a560d"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:ga6aebe16c164bd8e52554cbe0304ef4aa"><td class="memTemplParams" colspan="2">template&lt;typename T &gt; </td></tr>
-<tr class="memitem:ga6aebe16c164bd8e52554cbe0304ef4aa"><td class="memTemplItemLeft" align="right" valign="top">GLM_FUNC_DECL mat&lt; 4, 4, T, defaultp &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00243.html#ga6aebe16c164bd8e52554cbe0304ef4aa">perspectiveFovLH</a> (T fov, T width, T height, T near, T far)</td></tr>
-<tr class="memdesc:ga6aebe16c164bd8e52554cbe0304ef4aa"><td class="mdescLeft">&#160;</td><td class="mdescRight">Builds a left handed perspective projection matrix based on a field of view.  <a href="a00243.html#ga6aebe16c164bd8e52554cbe0304ef4aa">More...</a><br /></td></tr>
-<tr class="separator:ga6aebe16c164bd8e52554cbe0304ef4aa"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:gad18a4495b77530317327e8d466488c1a"><td class="memTemplParams" colspan="2">template&lt;typename T &gt; </td></tr>
-<tr class="memitem:gad18a4495b77530317327e8d466488c1a"><td class="memTemplItemLeft" align="right" valign="top">GLM_FUNC_DECL mat&lt; 4, 4, T, defaultp &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00243.html#gad18a4495b77530317327e8d466488c1a">perspectiveFovLH_NO</a> (T fov, T width, T height, T near, T far)</td></tr>
-<tr class="memdesc:gad18a4495b77530317327e8d466488c1a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Builds a perspective projection matrix based on a field of view using left-handed coordinates.  <a href="a00243.html#gad18a4495b77530317327e8d466488c1a">More...</a><br /></td></tr>
-<tr class="separator:gad18a4495b77530317327e8d466488c1a"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:gabdd37014f529e25b2fa1b3ba06c10d5c"><td class="memTemplParams" colspan="2">template&lt;typename T &gt; </td></tr>
-<tr class="memitem:gabdd37014f529e25b2fa1b3ba06c10d5c"><td class="memTemplItemLeft" align="right" valign="top">GLM_FUNC_DECL mat&lt; 4, 4, T, defaultp &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00243.html#gabdd37014f529e25b2fa1b3ba06c10d5c">perspectiveFovLH_ZO</a> (T fov, T width, T height, T near, T far)</td></tr>
-<tr class="memdesc:gabdd37014f529e25b2fa1b3ba06c10d5c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Builds a perspective projection matrix based on a field of view using left-handed coordinates.  <a href="a00243.html#gabdd37014f529e25b2fa1b3ba06c10d5c">More...</a><br /></td></tr>
-<tr class="separator:gabdd37014f529e25b2fa1b3ba06c10d5c"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:gaf30e7bd3b1387a6776433dd5383e6633"><td class="memTemplParams" colspan="2">template&lt;typename T &gt; </td></tr>
-<tr class="memitem:gaf30e7bd3b1387a6776433dd5383e6633"><td class="memTemplItemLeft" align="right" valign="top">GLM_FUNC_DECL mat&lt; 4, 4, T, defaultp &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00243.html#gaf30e7bd3b1387a6776433dd5383e6633">perspectiveFovNO</a> (T fov, T width, T height, T near, T far)</td></tr>
-<tr class="memdesc:gaf30e7bd3b1387a6776433dd5383e6633"><td class="mdescLeft">&#160;</td><td class="mdescRight">Builds a perspective projection matrix based on a field of view using left-handed coordinates if GLM_FORCE_LEFT_HANDED if defined or right-handed coordinates otherwise.  <a href="a00243.html#gaf30e7bd3b1387a6776433dd5383e6633">More...</a><br /></td></tr>
-<tr class="separator:gaf30e7bd3b1387a6776433dd5383e6633"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:gaf32bf563f28379c68554a44ee60c6a85"><td class="memTemplParams" colspan="2">template&lt;typename T &gt; </td></tr>
-<tr class="memitem:gaf32bf563f28379c68554a44ee60c6a85"><td class="memTemplItemLeft" align="right" valign="top">GLM_FUNC_DECL mat&lt; 4, 4, T, defaultp &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00243.html#gaf32bf563f28379c68554a44ee60c6a85">perspectiveFovRH</a> (T fov, T width, T height, T near, T far)</td></tr>
-<tr class="memdesc:gaf32bf563f28379c68554a44ee60c6a85"><td class="mdescLeft">&#160;</td><td class="mdescRight">Builds a right handed perspective projection matrix based on a field of view.  <a href="a00243.html#gaf32bf563f28379c68554a44ee60c6a85">More...</a><br /></td></tr>
-<tr class="separator:gaf32bf563f28379c68554a44ee60c6a85"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:ga257b733ff883c9a065801023cf243eb2"><td class="memTemplParams" colspan="2">template&lt;typename T &gt; </td></tr>
-<tr class="memitem:ga257b733ff883c9a065801023cf243eb2"><td class="memTemplItemLeft" align="right" valign="top">GLM_FUNC_DECL mat&lt; 4, 4, T, defaultp &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00243.html#ga257b733ff883c9a065801023cf243eb2">perspectiveFovRH_NO</a> (T fov, T width, T height, T near, T far)</td></tr>
-<tr class="memdesc:ga257b733ff883c9a065801023cf243eb2"><td class="mdescLeft">&#160;</td><td class="mdescRight">Builds a perspective projection matrix based on a field of view using right-handed coordinates.  <a href="a00243.html#ga257b733ff883c9a065801023cf243eb2">More...</a><br /></td></tr>
-<tr class="separator:ga257b733ff883c9a065801023cf243eb2"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:ga7dcbb25331676f5b0795aced1a905c44"><td class="memTemplParams" colspan="2">template&lt;typename T &gt; </td></tr>
-<tr class="memitem:ga7dcbb25331676f5b0795aced1a905c44"><td class="memTemplItemLeft" align="right" valign="top">GLM_FUNC_DECL mat&lt; 4, 4, T, defaultp &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00243.html#ga7dcbb25331676f5b0795aced1a905c44">perspectiveFovRH_ZO</a> (T fov, T width, T height, T near, T far)</td></tr>
-<tr class="memdesc:ga7dcbb25331676f5b0795aced1a905c44"><td class="mdescLeft">&#160;</td><td class="mdescRight">Builds a perspective projection matrix based on a field of view using right-handed coordinates.  <a href="a00243.html#ga7dcbb25331676f5b0795aced1a905c44">More...</a><br /></td></tr>
-<tr class="separator:ga7dcbb25331676f5b0795aced1a905c44"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:ga4bc69fa1d1f95128430aa3d2a712390b"><td class="memTemplParams" colspan="2">template&lt;typename T &gt; </td></tr>
-<tr class="memitem:ga4bc69fa1d1f95128430aa3d2a712390b"><td class="memTemplItemLeft" align="right" valign="top">GLM_FUNC_DECL mat&lt; 4, 4, T, defaultp &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00243.html#ga4bc69fa1d1f95128430aa3d2a712390b">perspectiveFovZO</a> (T fov, T width, T height, T near, T far)</td></tr>
-<tr class="memdesc:ga4bc69fa1d1f95128430aa3d2a712390b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Builds a perspective projection matrix based on a field of view using left-handed coordinates if GLM_FORCE_LEFT_HANDED if defined or right-handed coordinates otherwise.  <a href="a00243.html#ga4bc69fa1d1f95128430aa3d2a712390b">More...</a><br /></td></tr>
-<tr class="separator:ga4bc69fa1d1f95128430aa3d2a712390b"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:ga9bd34951dc7022ac256fcb51d7f6fc2f"><td class="memTemplParams" colspan="2">template&lt;typename T &gt; </td></tr>
-<tr class="memitem:ga9bd34951dc7022ac256fcb51d7f6fc2f"><td class="memTemplItemLeft" align="right" valign="top">GLM_FUNC_DECL mat&lt; 4, 4, T, defaultp &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00243.html#ga9bd34951dc7022ac256fcb51d7f6fc2f">perspectiveLH</a> (T fovy, T aspect, T near, T far)</td></tr>
-<tr class="memdesc:ga9bd34951dc7022ac256fcb51d7f6fc2f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Creates a matrix for a left handed, symetric perspective-view frustum.  <a href="a00243.html#ga9bd34951dc7022ac256fcb51d7f6fc2f">More...</a><br /></td></tr>
-<tr class="separator:ga9bd34951dc7022ac256fcb51d7f6fc2f"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:gaead4d049d1feab463b700b5641aa590e"><td class="memTemplParams" colspan="2">template&lt;typename T &gt; </td></tr>
-<tr class="memitem:gaead4d049d1feab463b700b5641aa590e"><td class="memTemplItemLeft" align="right" valign="top">GLM_FUNC_DECL mat&lt; 4, 4, T, defaultp &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00243.html#gaead4d049d1feab463b700b5641aa590e">perspectiveLH_NO</a> (T fovy, T aspect, T near, T far)</td></tr>
-<tr class="memdesc:gaead4d049d1feab463b700b5641aa590e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Creates a matrix for a left handed, symetric perspective-view frustum.  <a href="a00243.html#gaead4d049d1feab463b700b5641aa590e">More...</a><br /></td></tr>
-<tr class="separator:gaead4d049d1feab463b700b5641aa590e"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:gaca32af88c2719005c02817ad1142986c"><td class="memTemplParams" colspan="2">template&lt;typename T &gt; </td></tr>
-<tr class="memitem:gaca32af88c2719005c02817ad1142986c"><td class="memTemplItemLeft" align="right" valign="top">GLM_FUNC_DECL mat&lt; 4, 4, T, defaultp &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00243.html#gaca32af88c2719005c02817ad1142986c">perspectiveLH_ZO</a> (T fovy, T aspect, T near, T far)</td></tr>
-<tr class="memdesc:gaca32af88c2719005c02817ad1142986c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Creates a matrix for a left handed, symetric perspective-view frustum.  <a href="a00243.html#gaca32af88c2719005c02817ad1142986c">More...</a><br /></td></tr>
-<tr class="separator:gaca32af88c2719005c02817ad1142986c"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:gaf497e6bca61e7c87088370b126a93758"><td class="memTemplParams" colspan="2">template&lt;typename T &gt; </td></tr>
-<tr class="memitem:gaf497e6bca61e7c87088370b126a93758"><td class="memTemplItemLeft" align="right" valign="top">GLM_FUNC_DECL mat&lt; 4, 4, T, defaultp &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00243.html#gaf497e6bca61e7c87088370b126a93758">perspectiveNO</a> (T fovy, T aspect, T near, T far)</td></tr>
-<tr class="memdesc:gaf497e6bca61e7c87088370b126a93758"><td class="mdescLeft">&#160;</td><td class="mdescRight">Creates a matrix for a symetric perspective-view frustum using left-handed coordinates if GLM_FORCE_LEFT_HANDED if defined or right-handed coordinates otherwise.  <a href="a00243.html#gaf497e6bca61e7c87088370b126a93758">More...</a><br /></td></tr>
-<tr class="separator:gaf497e6bca61e7c87088370b126a93758"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:ga26b88757fbd90601b80768a7e1ad3aa1"><td class="memTemplParams" colspan="2">template&lt;typename T &gt; </td></tr>
-<tr class="memitem:ga26b88757fbd90601b80768a7e1ad3aa1"><td class="memTemplItemLeft" align="right" valign="top">GLM_FUNC_DECL mat&lt; 4, 4, T, defaultp &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00243.html#ga26b88757fbd90601b80768a7e1ad3aa1">perspectiveRH</a> (T fovy, T aspect, T near, T far)</td></tr>
-<tr class="memdesc:ga26b88757fbd90601b80768a7e1ad3aa1"><td class="mdescLeft">&#160;</td><td class="mdescRight">Creates a matrix for a right handed, symetric perspective-view frustum.  <a href="a00243.html#ga26b88757fbd90601b80768a7e1ad3aa1">More...</a><br /></td></tr>
-<tr class="separator:ga26b88757fbd90601b80768a7e1ad3aa1"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:gad1526cb2cbe796095284e8f34b01c582"><td class="memTemplParams" colspan="2">template&lt;typename T &gt; </td></tr>
-<tr class="memitem:gad1526cb2cbe796095284e8f34b01c582"><td class="memTemplItemLeft" align="right" valign="top">GLM_FUNC_DECL mat&lt; 4, 4, T, defaultp &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00243.html#gad1526cb2cbe796095284e8f34b01c582">perspectiveRH_NO</a> (T fovy, T aspect, T near, T far)</td></tr>
-<tr class="memdesc:gad1526cb2cbe796095284e8f34b01c582"><td class="mdescLeft">&#160;</td><td class="mdescRight">Creates a matrix for a right handed, symetric perspective-view frustum.  <a href="a00243.html#gad1526cb2cbe796095284e8f34b01c582">More...</a><br /></td></tr>
-<tr class="separator:gad1526cb2cbe796095284e8f34b01c582"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:ga4da358d6e1b8e5b9ae35d1f3f2dc3b9a"><td class="memTemplParams" colspan="2">template&lt;typename T &gt; </td></tr>
-<tr class="memitem:ga4da358d6e1b8e5b9ae35d1f3f2dc3b9a"><td class="memTemplItemLeft" align="right" valign="top">GLM_FUNC_DECL mat&lt; 4, 4, T, defaultp &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00243.html#ga4da358d6e1b8e5b9ae35d1f3f2dc3b9a">perspectiveRH_ZO</a> (T fovy, T aspect, T near, T far)</td></tr>
-<tr class="memdesc:ga4da358d6e1b8e5b9ae35d1f3f2dc3b9a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Creates a matrix for a right handed, symetric perspective-view frustum.  <a href="a00243.html#ga4da358d6e1b8e5b9ae35d1f3f2dc3b9a">More...</a><br /></td></tr>
-<tr class="separator:ga4da358d6e1b8e5b9ae35d1f3f2dc3b9a"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:gaa9dfba5c2322da54f72b1eb7c7c11b47"><td class="memTemplParams" colspan="2">template&lt;typename T &gt; </td></tr>
-<tr class="memitem:gaa9dfba5c2322da54f72b1eb7c7c11b47"><td class="memTemplItemLeft" align="right" valign="top">GLM_FUNC_DECL mat&lt; 4, 4, T, defaultp &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00243.html#gaa9dfba5c2322da54f72b1eb7c7c11b47">perspectiveZO</a> (T fovy, T aspect, T near, T far)</td></tr>
-<tr class="memdesc:gaa9dfba5c2322da54f72b1eb7c7c11b47"><td class="mdescLeft">&#160;</td><td class="mdescRight">Creates a matrix for a symetric perspective-view frustum using left-handed coordinates if GLM_FORCE_LEFT_HANDED if defined or right-handed coordinates otherwise.  <a href="a00243.html#gaa9dfba5c2322da54f72b1eb7c7c11b47">More...</a><br /></td></tr>
-<tr class="separator:gaa9dfba5c2322da54f72b1eb7c7c11b47"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:gaaeacc04a2a6f4b18c5899d37e7bb3ef9"><td class="memTemplParams" colspan="2">template&lt;typename T &gt; </td></tr>
-<tr class="memitem:gaaeacc04a2a6f4b18c5899d37e7bb3ef9"><td class="memTemplItemLeft" align="right" valign="top">GLM_FUNC_DECL mat&lt; 4, 4, T, defaultp &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00243.html#gaaeacc04a2a6f4b18c5899d37e7bb3ef9">tweakedInfinitePerspective</a> (T fovy, T aspect, T near)</td></tr>
-<tr class="memdesc:gaaeacc04a2a6f4b18c5899d37e7bb3ef9"><td class="mdescLeft">&#160;</td><td class="mdescRight">Creates a matrix for a symmetric perspective-view frustum with far plane at infinite for graphics hardware that doesn't support depth clamping.  <a href="a00243.html#gaaeacc04a2a6f4b18c5899d37e7bb3ef9">More...</a><br /></td></tr>
-<tr class="separator:gaaeacc04a2a6f4b18c5899d37e7bb3ef9"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:gaf5b3c85ff6737030a1d2214474ffa7a8"><td class="memTemplParams" colspan="2">template&lt;typename T &gt; </td></tr>
-<tr class="memitem:gaf5b3c85ff6737030a1d2214474ffa7a8"><td class="memTemplItemLeft" align="right" valign="top">GLM_FUNC_DECL mat&lt; 4, 4, T, defaultp &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00243.html#gaf5b3c85ff6737030a1d2214474ffa7a8">tweakedInfinitePerspective</a> (T fovy, T aspect, T near, T ep)</td></tr>
-<tr class="memdesc:gaf5b3c85ff6737030a1d2214474ffa7a8"><td class="mdescLeft">&#160;</td><td class="mdescRight">Creates a matrix for a symmetric perspective-view frustum with far plane at infinite for graphics hardware that doesn't support depth clamping.  <a href="a00243.html#gaf5b3c85ff6737030a1d2214474ffa7a8">More...</a><br /></td></tr>
-<tr class="separator:gaf5b3c85ff6737030a1d2214474ffa7a8"><td class="memSeparator" colspan="2">&#160;</td></tr>
-</table>
 <a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
-<div class="textblock"><p><a class="el" href="a00243.html">GLM_EXT_matrix_clip_space</a> </p>
+<div class="textblock"><p><a class="el" href="a00889.html">Core features</a> </p>
 
-<p>Definition in file <a class="el" href="a00059_source.html">matrix_clip_space.hpp</a>.</p>
+<p class="definition">Definition in file <a class="el" href="a00059_source.html">type_mat4x2.hpp</a>.</p>
 </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.10
+</a> 1.8.18
 </small></address>
 </body>
 </html>

+ 193 - 267
doc/api/a00059_source.html

@@ -1,19 +1,17 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://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.10"/>
-<title>0.9.9 API documentation: matrix_clip_space.hpp Source File</title>
+<meta name="generator" content="Doxygen 1.8.18"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>1.0.0 API documentation: type_mat4x2.hpp Source File</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="search/search.css" rel="stylesheet" type="text/css"/>
 <script type="text/javascript" src="search/searchdata.js"></script>
 <script type="text/javascript" src="search/search.js"></script>
-<script type="text/javascript">
-  $(document).ready(function() { init_search(); });
-</script>
 <link href="doxygen.css" rel="stylesheet" type="text/css" />
 </head>
 <body>
@@ -24,7 +22,7 @@
  <tr style="height: 56px;">
   <td id="projectlogo"><img alt="Logo" src="logo-mini.png"/></td>
   <td id="projectalign" style="padding-left: 0.5em;">
-   <div id="projectname">0.9.9 API documentation
+   <div id="projectname">1.0.0 API documentation
    </div>
   </td>
  </tr>
@@ -32,38 +30,22 @@
 </table>
 </div>
 <!-- end header part -->
-<!-- Generated by Doxygen 1.8.10 -->
+<!-- Generated by Doxygen 1.8.18 -->
 <script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
 var searchBox = new SearchBox("searchBox", "search",false,'Search');
+/* @license-end */
 </script>
-  <div id="navrow1" class="tabs">
-    <ul class="tablist">
-      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
-      <li><a href="modules.html"><span>Modules</span></a></li>
-      <li class="current"><a href="files.html"><span>Files</span></a></li>
-      <li>
-        <div id="MSearchBox" class="MSearchBoxInactive">
-        <span class="left">
-          <img id="MSearchSelect" src="search/mag_sel.png"
-               onmouseover="return searchBox.OnSearchSelectShow()"
-               onmouseout="return searchBox.OnSearchSelectHide()"
-               alt=""/>
-          <input type="text" id="MSearchField" value="Search" accesskey="S"
-               onfocus="searchBox.OnSearchFieldFocus(true)" 
-               onblur="searchBox.OnSearchFieldFocus(false)" 
-               onkeyup="searchBox.OnSearchFieldChange(event)"/>
-          </span><span class="right">
-            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
-          </span>
-        </div>
-      </li>
-    </ul>
-  </div>
-  <div id="navrow2" class="tabs2">
-    <ul class="tablist">
-      <li><a href="files.html"><span>File&#160;List</span></a></li>
-    </ul>
-  </div>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
 <!-- window showing the filter options -->
 <div id="MSearchSelectWindow"
      onmouseover="return searchBox.OnSearchSelectShow()"
@@ -80,248 +62,192 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 
 <div id="nav-path" class="navpath">
   <ul>
-<li class="navelem"><a class="el" href="dir_3a581ba30d25676e4b797b1f96d53b45.html">F:</a></li><li class="navelem"><a class="el" href="dir_9e5fe034a00e89334fd5186c3e7db156.html">G-Truc</a></li><li class="navelem"><a class="el" href="dir_d9496f0844b48bc7e53b5af8c99b9ab2.html">Source</a></li><li class="navelem"><a class="el" href="dir_a8bee7be44182a33f3820393ae0b105d.html">G-Truc</a></li><li class="navelem"><a class="el" href="dir_44e5e654415abd9ca6fdeaddaff8565e.html">glm</a></li><li class="navelem"><a class="el" href="dir_cef2d71d502cb69a9252bca2297d9549.html">glm</a></li><li class="navelem"><a class="el" href="dir_6b66465792d005310484819a0eb0b0d3.html">ext</a></li>  </ul>
+<li class="navelem"><a class="el" href="dir_885cc87fac2d91e269af0a5a959fa5f6.html">E:</a></li><li class="navelem"><a class="el" href="dir_63ed049134a778d525e06b63afc2c979.html">Github</a></li><li class="navelem"><a class="el" href="dir_c98a9ac98258ab9f831b188d66361a70.html">g-truc</a></li><li class="navelem"><a class="el" href="dir_50f12b6ceb23d7f6adfb377a1ae8b006.html">glm</a></li><li class="navelem"><a class="el" href="dir_fca33f1b5115d46f42c670590789c0d2.html">glm</a></li><li class="navelem"><a class="el" href="dir_382f4fd018b81be8753cb53c0a41a09a.html">detail</a></li>  </ul>
 </div>
 </div><!-- top -->
 <div class="header">
   <div class="headertitle">
-<div class="title">matrix_clip_space.hpp</div>  </div>
+<div class="title">type_mat4x2.hpp</div>  </div>
 </div><!--header-->
 <div class="contents">
-<a href="a00059.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span>&#160;</div>
-<div class="line"><a name="l00020"></a><span class="lineno">   20</span>&#160;<span class="preprocessor">#pragma once</span></div>
-<div class="line"><a name="l00021"></a><span class="lineno">   21</span>&#160;</div>
-<div class="line"><a name="l00022"></a><span class="lineno">   22</span>&#160;<span class="comment">// Dependencies</span></div>
-<div class="line"><a name="l00023"></a><span class="lineno">   23</span>&#160;<span class="preprocessor">#include &quot;../ext/scalar_constants.hpp&quot;</span></div>
-<div class="line"><a name="l00024"></a><span class="lineno">   24</span>&#160;<span class="preprocessor">#include &quot;../geometric.hpp&quot;</span></div>
-<div class="line"><a name="l00025"></a><span class="lineno">   25</span>&#160;<span class="preprocessor">#include &quot;../trigonometric.hpp&quot;</span></div>
-<div class="line"><a name="l00026"></a><span class="lineno">   26</span>&#160;</div>
-<div class="line"><a name="l00027"></a><span class="lineno">   27</span>&#160;<span class="preprocessor">#if GLM_MESSAGES == GLM_ENABLE &amp;&amp; !defined(GLM_EXT_INCLUDED)</span></div>
-<div class="line"><a name="l00028"></a><span class="lineno">   28</span>&#160;<span class="preprocessor">#       pragma message(&quot;GLM: GLM_EXT_matrix_clip_space extension included&quot;)</span></div>
-<div class="line"><a name="l00029"></a><span class="lineno">   29</span>&#160;<span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00030"></a><span class="lineno">   30</span>&#160;</div>
-<div class="line"><a name="l00031"></a><span class="lineno">   31</span>&#160;<span class="keyword">namespace </span><a class="code" href="a00236.html">glm</a></div>
-<div class="line"><a name="l00032"></a><span class="lineno">   32</span>&#160;{</div>
-<div class="line"><a name="l00035"></a><span class="lineno">   35</span>&#160;</div>
-<div class="line"><a name="l00042"></a><span class="lineno">   42</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T&gt;</div>
-<div class="line"><a name="l00043"></a><span class="lineno">   43</span>&#160;        GLM_FUNC_DECL mat&lt;4, 4, T, defaultp&gt; <a class="code" href="a00243.html#ga6615d8a9d39432e279c4575313ecb456">ortho</a>(</div>
-<div class="line"><a name="l00044"></a><span class="lineno">   44</span>&#160;                T left, T right, T bottom, T top);</div>
-<div class="line"><a name="l00045"></a><span class="lineno">   45</span>&#160;</div>
-<div class="line"><a name="l00052"></a><span class="lineno">   52</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T&gt;</div>
-<div class="line"><a name="l00053"></a><span class="lineno">   53</span>&#160;        GLM_FUNC_DECL mat&lt;4, 4, T, defaultp&gt; <a class="code" href="a00243.html#gab37ac3eec8d61f22fceda7775e836afa">orthoLH_ZO</a>(</div>
-<div class="line"><a name="l00054"></a><span class="lineno">   54</span>&#160;                T left, T right, T bottom, T top, T zNear, T zFar);</div>
-<div class="line"><a name="l00055"></a><span class="lineno">   55</span>&#160;</div>
-<div class="line"><a name="l00062"></a><span class="lineno">   62</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T&gt;</div>
-<div class="line"><a name="l00063"></a><span class="lineno">   63</span>&#160;        GLM_FUNC_DECL mat&lt;4, 4, T, defaultp&gt; <a class="code" href="a00243.html#ga526416735ea7c5c5cd255bf99d051bd8">orthoLH_NO</a>(</div>
-<div class="line"><a name="l00064"></a><span class="lineno">   64</span>&#160;                T left, T right, T bottom, T top, T zNear, T zFar);</div>
-<div class="line"><a name="l00065"></a><span class="lineno">   65</span>&#160;</div>
-<div class="line"><a name="l00072"></a><span class="lineno">   72</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T&gt;</div>
-<div class="line"><a name="l00073"></a><span class="lineno">   73</span>&#160;        GLM_FUNC_DECL mat&lt;4, 4, T, defaultp&gt; <a class="code" href="a00243.html#ga9aea2e515b08fd7dce47b7b6ec34d588">orthoRH_ZO</a>(</div>
-<div class="line"><a name="l00074"></a><span class="lineno">   74</span>&#160;                T left, T right, T bottom, T top, T zNear, T zFar);</div>
-<div class="line"><a name="l00075"></a><span class="lineno">   75</span>&#160;</div>
-<div class="line"><a name="l00082"></a><span class="lineno">   82</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T&gt;</div>
-<div class="line"><a name="l00083"></a><span class="lineno">   83</span>&#160;        GLM_FUNC_DECL mat&lt;4, 4, T, defaultp&gt; <a class="code" href="a00243.html#gaa2f7a1373170bf0a4a2ddef9b0706780">orthoRH_NO</a>(</div>
-<div class="line"><a name="l00084"></a><span class="lineno">   84</span>&#160;                T left, T right, T bottom, T top, T zNear, T zFar);</div>
-<div class="line"><a name="l00085"></a><span class="lineno">   85</span>&#160;</div>
-<div class="line"><a name="l00092"></a><span class="lineno">   92</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T&gt;</div>
-<div class="line"><a name="l00093"></a><span class="lineno">   93</span>&#160;        GLM_FUNC_DECL mat&lt;4, 4, T, defaultp&gt; <a class="code" href="a00243.html#gaea11a70817af2c0801c869dea0b7a5bc">orthoZO</a>(</div>
-<div class="line"><a name="l00094"></a><span class="lineno">   94</span>&#160;                T left, T right, T bottom, T top, T zNear, T zFar);</div>
-<div class="line"><a name="l00095"></a><span class="lineno">   95</span>&#160;</div>
-<div class="line"><a name="l00102"></a><span class="lineno">  102</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T&gt;</div>
-<div class="line"><a name="l00103"></a><span class="lineno">  103</span>&#160;        GLM_FUNC_DECL mat&lt;4, 4, T, defaultp&gt; <a class="code" href="a00243.html#gab219d28a8f178d4517448fcd6395a073">orthoNO</a>(</div>
-<div class="line"><a name="l00104"></a><span class="lineno">  104</span>&#160;                T left, T right, T bottom, T top, T zNear, T zFar);</div>
-<div class="line"><a name="l00105"></a><span class="lineno">  105</span>&#160;</div>
-<div class="line"><a name="l00113"></a><span class="lineno">  113</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T&gt;</div>
-<div class="line"><a name="l00114"></a><span class="lineno">  114</span>&#160;        GLM_FUNC_DECL mat&lt;4, 4, T, defaultp&gt; <a class="code" href="a00243.html#gad122a79aadaa5529cec4ac197203db7f">orthoLH</a>(</div>
-<div class="line"><a name="l00115"></a><span class="lineno">  115</span>&#160;                T left, T right, T bottom, T top, T zNear, T zFar);</div>
-<div class="line"><a name="l00116"></a><span class="lineno">  116</span>&#160;</div>
-<div class="line"><a name="l00124"></a><span class="lineno">  124</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T&gt;</div>
-<div class="line"><a name="l00125"></a><span class="lineno">  125</span>&#160;        GLM_FUNC_DECL mat&lt;4, 4, T, defaultp&gt; <a class="code" href="a00243.html#ga16264c9b838edeb9dd1de7a1010a13a4">orthoRH</a>(</div>
-<div class="line"><a name="l00126"></a><span class="lineno">  126</span>&#160;                T left, T right, T bottom, T top, T zNear, T zFar);</div>
-<div class="line"><a name="l00127"></a><span class="lineno">  127</span>&#160;</div>
-<div class="line"><a name="l00135"></a><span class="lineno">  135</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T&gt;</div>
-<div class="line"><a name="l00136"></a><span class="lineno">  136</span>&#160;        GLM_FUNC_DECL mat&lt;4, 4, T, defaultp&gt; <a class="code" href="a00243.html#ga6615d8a9d39432e279c4575313ecb456">ortho</a>(</div>
-<div class="line"><a name="l00137"></a><span class="lineno">  137</span>&#160;                T left, T right, T bottom, T top, T zNear, T zFar);</div>
-<div class="line"><a name="l00138"></a><span class="lineno">  138</span>&#160;</div>
-<div class="line"><a name="l00143"></a><span class="lineno">  143</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T&gt;</div>
-<div class="line"><a name="l00144"></a><span class="lineno">  144</span>&#160;        GLM_FUNC_DECL mat&lt;4, 4, T, defaultp&gt; <a class="code" href="a00243.html#ga94218b094862d17798370242680b9030">frustumLH_ZO</a>(</div>
-<div class="line"><a name="l00145"></a><span class="lineno">  145</span>&#160;                T left, T right, T bottom, T top, T near, T far);</div>
-<div class="line"><a name="l00146"></a><span class="lineno">  146</span>&#160;</div>
-<div class="line"><a name="l00151"></a><span class="lineno">  151</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T&gt;</div>
-<div class="line"><a name="l00152"></a><span class="lineno">  152</span>&#160;        GLM_FUNC_DECL mat&lt;4, 4, T, defaultp&gt; <a class="code" href="a00243.html#ga259520cad03b3f8bca9417920035ed01">frustumLH_NO</a>(</div>
-<div class="line"><a name="l00153"></a><span class="lineno">  153</span>&#160;                T left, T right, T bottom, T top, T near, T far);</div>
-<div class="line"><a name="l00154"></a><span class="lineno">  154</span>&#160;</div>
-<div class="line"><a name="l00159"></a><span class="lineno">  159</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T&gt;</div>
-<div class="line"><a name="l00160"></a><span class="lineno">  160</span>&#160;        GLM_FUNC_DECL mat&lt;4, 4, T, defaultp&gt; <a class="code" href="a00243.html#ga7654a9227f14d5382786b9fc0eb5692d">frustumRH_ZO</a>(</div>
-<div class="line"><a name="l00161"></a><span class="lineno">  161</span>&#160;                T left, T right, T bottom, T top, T near, T far);</div>
-<div class="line"><a name="l00162"></a><span class="lineno">  162</span>&#160;</div>
-<div class="line"><a name="l00167"></a><span class="lineno">  167</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T&gt;</div>
-<div class="line"><a name="l00168"></a><span class="lineno">  168</span>&#160;        GLM_FUNC_DECL mat&lt;4, 4, T, defaultp&gt; <a class="code" href="a00243.html#ga9236c8439f21be186b79c97b588836b9">frustumRH_NO</a>(</div>
-<div class="line"><a name="l00169"></a><span class="lineno">  169</span>&#160;                T left, T right, T bottom, T top, T near, T far);</div>
-<div class="line"><a name="l00170"></a><span class="lineno">  170</span>&#160;</div>
-<div class="line"><a name="l00175"></a><span class="lineno">  175</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T&gt;</div>
-<div class="line"><a name="l00176"></a><span class="lineno">  176</span>&#160;        GLM_FUNC_DECL mat&lt;4, 4, T, defaultp&gt; <a class="code" href="a00243.html#gaa73322e152edf50cf30a6edac342a757">frustumZO</a>(</div>
-<div class="line"><a name="l00177"></a><span class="lineno">  177</span>&#160;                T left, T right, T bottom, T top, T near, T far);</div>
-<div class="line"><a name="l00178"></a><span class="lineno">  178</span>&#160;</div>
-<div class="line"><a name="l00183"></a><span class="lineno">  183</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T&gt;</div>
-<div class="line"><a name="l00184"></a><span class="lineno">  184</span>&#160;        GLM_FUNC_DECL mat&lt;4, 4, T, defaultp&gt; <a class="code" href="a00243.html#gae34ec664ad44860bf4b5ba631f0e0e90">frustumNO</a>(</div>
-<div class="line"><a name="l00185"></a><span class="lineno">  185</span>&#160;                T left, T right, T bottom, T top, T near, T far);</div>
-<div class="line"><a name="l00186"></a><span class="lineno">  186</span>&#160;</div>
-<div class="line"><a name="l00192"></a><span class="lineno">  192</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T&gt;</div>
-<div class="line"><a name="l00193"></a><span class="lineno">  193</span>&#160;        GLM_FUNC_DECL mat&lt;4, 4, T, defaultp&gt; <a class="code" href="a00243.html#gae4277c37f61d81da01bc9db14ea90296">frustumLH</a>(</div>
-<div class="line"><a name="l00194"></a><span class="lineno">  194</span>&#160;                T left, T right, T bottom, T top, T near, T far);</div>
-<div class="line"><a name="l00195"></a><span class="lineno">  195</span>&#160;</div>
-<div class="line"><a name="l00201"></a><span class="lineno">  201</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T&gt;</div>
-<div class="line"><a name="l00202"></a><span class="lineno">  202</span>&#160;        GLM_FUNC_DECL mat&lt;4, 4, T, defaultp&gt; <a class="code" href="a00243.html#ga4366ab45880c6c5f8b3e8c371ca4b136">frustumRH</a>(</div>
-<div class="line"><a name="l00203"></a><span class="lineno">  203</span>&#160;                T left, T right, T bottom, T top, T near, T far);</div>
-<div class="line"><a name="l00204"></a><span class="lineno">  204</span>&#160;</div>
-<div class="line"><a name="l00210"></a><span class="lineno">  210</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T&gt;</div>
-<div class="line"><a name="l00211"></a><span class="lineno">  211</span>&#160;        GLM_FUNC_DECL mat&lt;4, 4, T, defaultp&gt; <a class="code" href="a00243.html#ga0bcd4542e0affc63a0b8c08fcb839ea9">frustum</a>(</div>
-<div class="line"><a name="l00212"></a><span class="lineno">  212</span>&#160;                T left, T right, T bottom, T top, T near, T far);</div>
-<div class="line"><a name="l00213"></a><span class="lineno">  213</span>&#160;</div>
-<div class="line"><a name="l00214"></a><span class="lineno">  214</span>&#160;</div>
-<div class="line"><a name="l00224"></a><span class="lineno">  224</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T&gt;</div>
-<div class="line"><a name="l00225"></a><span class="lineno">  225</span>&#160;        GLM_FUNC_DECL mat&lt;4, 4, T, defaultp&gt; <a class="code" href="a00243.html#ga4da358d6e1b8e5b9ae35d1f3f2dc3b9a">perspectiveRH_ZO</a>(</div>
-<div class="line"><a name="l00226"></a><span class="lineno">  226</span>&#160;                T fovy, T aspect, T near, T far);</div>
-<div class="line"><a name="l00227"></a><span class="lineno">  227</span>&#160;</div>
-<div class="line"><a name="l00237"></a><span class="lineno">  237</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T&gt;</div>
-<div class="line"><a name="l00238"></a><span class="lineno">  238</span>&#160;        GLM_FUNC_DECL mat&lt;4, 4, T, defaultp&gt; <a class="code" href="a00243.html#gad1526cb2cbe796095284e8f34b01c582">perspectiveRH_NO</a>(</div>
-<div class="line"><a name="l00239"></a><span class="lineno">  239</span>&#160;                T fovy, T aspect, T near, T far);</div>
-<div class="line"><a name="l00240"></a><span class="lineno">  240</span>&#160;</div>
-<div class="line"><a name="l00250"></a><span class="lineno">  250</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T&gt;</div>
-<div class="line"><a name="l00251"></a><span class="lineno">  251</span>&#160;        GLM_FUNC_DECL mat&lt;4, 4, T, defaultp&gt; <a class="code" href="a00243.html#gaca32af88c2719005c02817ad1142986c">perspectiveLH_ZO</a>(</div>
-<div class="line"><a name="l00252"></a><span class="lineno">  252</span>&#160;                T fovy, T aspect, T near, T far);</div>
-<div class="line"><a name="l00253"></a><span class="lineno">  253</span>&#160;</div>
-<div class="line"><a name="l00263"></a><span class="lineno">  263</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T&gt;</div>
-<div class="line"><a name="l00264"></a><span class="lineno">  264</span>&#160;        GLM_FUNC_DECL mat&lt;4, 4, T, defaultp&gt; <a class="code" href="a00243.html#gaead4d049d1feab463b700b5641aa590e">perspectiveLH_NO</a>(</div>
-<div class="line"><a name="l00265"></a><span class="lineno">  265</span>&#160;                T fovy, T aspect, T near, T far);</div>
-<div class="line"><a name="l00266"></a><span class="lineno">  266</span>&#160;</div>
-<div class="line"><a name="l00276"></a><span class="lineno">  276</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T&gt;</div>
-<div class="line"><a name="l00277"></a><span class="lineno">  277</span>&#160;        GLM_FUNC_DECL mat&lt;4, 4, T, defaultp&gt; <a class="code" href="a00243.html#gaa9dfba5c2322da54f72b1eb7c7c11b47">perspectiveZO</a>(</div>
-<div class="line"><a name="l00278"></a><span class="lineno">  278</span>&#160;                T fovy, T aspect, T near, T far);</div>
-<div class="line"><a name="l00279"></a><span class="lineno">  279</span>&#160;</div>
-<div class="line"><a name="l00289"></a><span class="lineno">  289</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T&gt;</div>
-<div class="line"><a name="l00290"></a><span class="lineno">  290</span>&#160;        GLM_FUNC_DECL mat&lt;4, 4, T, defaultp&gt; <a class="code" href="a00243.html#gaf497e6bca61e7c87088370b126a93758">perspectiveNO</a>(</div>
-<div class="line"><a name="l00291"></a><span class="lineno">  291</span>&#160;                T fovy, T aspect, T near, T far);</div>
-<div class="line"><a name="l00292"></a><span class="lineno">  292</span>&#160;</div>
-<div class="line"><a name="l00303"></a><span class="lineno">  303</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T&gt;</div>
-<div class="line"><a name="l00304"></a><span class="lineno">  304</span>&#160;        GLM_FUNC_DECL mat&lt;4, 4, T, defaultp&gt; <a class="code" href="a00243.html#ga26b88757fbd90601b80768a7e1ad3aa1">perspectiveRH</a>(</div>
-<div class="line"><a name="l00305"></a><span class="lineno">  305</span>&#160;                T fovy, T aspect, T near, T far);</div>
-<div class="line"><a name="l00306"></a><span class="lineno">  306</span>&#160;</div>
-<div class="line"><a name="l00317"></a><span class="lineno">  317</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T&gt;</div>
-<div class="line"><a name="l00318"></a><span class="lineno">  318</span>&#160;        GLM_FUNC_DECL mat&lt;4, 4, T, defaultp&gt; <a class="code" href="a00243.html#ga9bd34951dc7022ac256fcb51d7f6fc2f">perspectiveLH</a>(</div>
-<div class="line"><a name="l00319"></a><span class="lineno">  319</span>&#160;                T fovy, T aspect, T near, T far);</div>
-<div class="line"><a name="l00320"></a><span class="lineno">  320</span>&#160;</div>
-<div class="line"><a name="l00331"></a><span class="lineno">  331</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T&gt;</div>
-<div class="line"><a name="l00332"></a><span class="lineno">  332</span>&#160;        GLM_FUNC_DECL mat&lt;4, 4, T, defaultp&gt; <a class="code" href="a00243.html#ga747c8cf99458663dd7ad1bb3a2f07787">perspective</a>(</div>
-<div class="line"><a name="l00333"></a><span class="lineno">  333</span>&#160;                T fovy, T aspect, T near, T far);</div>
-<div class="line"><a name="l00334"></a><span class="lineno">  334</span>&#160;</div>
-<div class="line"><a name="l00345"></a><span class="lineno">  345</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T&gt;</div>
-<div class="line"><a name="l00346"></a><span class="lineno">  346</span>&#160;        GLM_FUNC_DECL mat&lt;4, 4, T, defaultp&gt; <a class="code" href="a00243.html#ga7dcbb25331676f5b0795aced1a905c44">perspectiveFovRH_ZO</a>(</div>
-<div class="line"><a name="l00347"></a><span class="lineno">  347</span>&#160;                T fov, T width, T height, T near, T far);</div>
-<div class="line"><a name="l00348"></a><span class="lineno">  348</span>&#160;</div>
-<div class="line"><a name="l00359"></a><span class="lineno">  359</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T&gt;</div>
-<div class="line"><a name="l00360"></a><span class="lineno">  360</span>&#160;        GLM_FUNC_DECL mat&lt;4, 4, T, defaultp&gt; <a class="code" href="a00243.html#ga257b733ff883c9a065801023cf243eb2">perspectiveFovRH_NO</a>(</div>
-<div class="line"><a name="l00361"></a><span class="lineno">  361</span>&#160;                T fov, T width, T height, T near, T far);</div>
-<div class="line"><a name="l00362"></a><span class="lineno">  362</span>&#160;</div>
-<div class="line"><a name="l00373"></a><span class="lineno">  373</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T&gt;</div>
-<div class="line"><a name="l00374"></a><span class="lineno">  374</span>&#160;        GLM_FUNC_DECL mat&lt;4, 4, T, defaultp&gt; <a class="code" href="a00243.html#gabdd37014f529e25b2fa1b3ba06c10d5c">perspectiveFovLH_ZO</a>(</div>
-<div class="line"><a name="l00375"></a><span class="lineno">  375</span>&#160;                T fov, T width, T height, T near, T far);</div>
-<div class="line"><a name="l00376"></a><span class="lineno">  376</span>&#160;</div>
-<div class="line"><a name="l00387"></a><span class="lineno">  387</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T&gt;</div>
-<div class="line"><a name="l00388"></a><span class="lineno">  388</span>&#160;        GLM_FUNC_DECL mat&lt;4, 4, T, defaultp&gt; <a class="code" href="a00243.html#gad18a4495b77530317327e8d466488c1a">perspectiveFovLH_NO</a>(</div>
-<div class="line"><a name="l00389"></a><span class="lineno">  389</span>&#160;                T fov, T width, T height, T near, T far);</div>
-<div class="line"><a name="l00390"></a><span class="lineno">  390</span>&#160;</div>
-<div class="line"><a name="l00401"></a><span class="lineno">  401</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T&gt;</div>
-<div class="line"><a name="l00402"></a><span class="lineno">  402</span>&#160;        GLM_FUNC_DECL mat&lt;4, 4, T, defaultp&gt; <a class="code" href="a00243.html#ga4bc69fa1d1f95128430aa3d2a712390b">perspectiveFovZO</a>(</div>
-<div class="line"><a name="l00403"></a><span class="lineno">  403</span>&#160;                T fov, T width, T height, T near, T far);</div>
-<div class="line"><a name="l00404"></a><span class="lineno">  404</span>&#160;</div>
-<div class="line"><a name="l00415"></a><span class="lineno">  415</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T&gt;</div>
-<div class="line"><a name="l00416"></a><span class="lineno">  416</span>&#160;        GLM_FUNC_DECL mat&lt;4, 4, T, defaultp&gt; <a class="code" href="a00243.html#gaf30e7bd3b1387a6776433dd5383e6633">perspectiveFovNO</a>(</div>
-<div class="line"><a name="l00417"></a><span class="lineno">  417</span>&#160;                T fov, T width, T height, T near, T far);</div>
-<div class="line"><a name="l00418"></a><span class="lineno">  418</span>&#160;</div>
-<div class="line"><a name="l00430"></a><span class="lineno">  430</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T&gt;</div>
-<div class="line"><a name="l00431"></a><span class="lineno">  431</span>&#160;        GLM_FUNC_DECL mat&lt;4, 4, T, defaultp&gt; <a class="code" href="a00243.html#gaf32bf563f28379c68554a44ee60c6a85">perspectiveFovRH</a>(</div>
-<div class="line"><a name="l00432"></a><span class="lineno">  432</span>&#160;                T fov, T width, T height, T near, T far);</div>
-<div class="line"><a name="l00433"></a><span class="lineno">  433</span>&#160;</div>
-<div class="line"><a name="l00445"></a><span class="lineno">  445</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T&gt;</div>
-<div class="line"><a name="l00446"></a><span class="lineno">  446</span>&#160;        GLM_FUNC_DECL mat&lt;4, 4, T, defaultp&gt; <a class="code" href="a00243.html#ga6aebe16c164bd8e52554cbe0304ef4aa">perspectiveFovLH</a>(</div>
-<div class="line"><a name="l00447"></a><span class="lineno">  447</span>&#160;                T fov, T width, T height, T near, T far);</div>
-<div class="line"><a name="l00448"></a><span class="lineno">  448</span>&#160;</div>
-<div class="line"><a name="l00459"></a><span class="lineno">  459</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T&gt;</div>
-<div class="line"><a name="l00460"></a><span class="lineno">  460</span>&#160;        GLM_FUNC_DECL mat&lt;4, 4, T, defaultp&gt; <a class="code" href="a00243.html#gaebd02240fd36e85ad754f02ddd9a560d">perspectiveFov</a>(</div>
-<div class="line"><a name="l00461"></a><span class="lineno">  461</span>&#160;                T fov, T width, T height, T near, T far);</div>
-<div class="line"><a name="l00462"></a><span class="lineno">  462</span>&#160;</div>
-<div class="line"><a name="l00470"></a><span class="lineno">  470</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T&gt;</div>
-<div class="line"><a name="l00471"></a><span class="lineno">  471</span>&#160;        GLM_FUNC_DECL mat&lt;4, 4, T, defaultp&gt; <a class="code" href="a00243.html#ga3201b30f5b3ea0f933246d87bfb992a9">infinitePerspectiveLH</a>(</div>
-<div class="line"><a name="l00472"></a><span class="lineno">  472</span>&#160;                T fovy, T aspect, T near);</div>
-<div class="line"><a name="l00473"></a><span class="lineno">  473</span>&#160;</div>
-<div class="line"><a name="l00481"></a><span class="lineno">  481</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T&gt;</div>
-<div class="line"><a name="l00482"></a><span class="lineno">  482</span>&#160;        GLM_FUNC_DECL mat&lt;4, 4, T, defaultp&gt; <a class="code" href="a00243.html#ga99672ffe5714ef478dab2437255fe7e1">infinitePerspectiveRH</a>(</div>
-<div class="line"><a name="l00483"></a><span class="lineno">  483</span>&#160;                T fovy, T aspect, T near);</div>
-<div class="line"><a name="l00484"></a><span class="lineno">  484</span>&#160;</div>
-<div class="line"><a name="l00492"></a><span class="lineno">  492</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T&gt;</div>
-<div class="line"><a name="l00493"></a><span class="lineno">  493</span>&#160;        GLM_FUNC_DECL mat&lt;4, 4, T, defaultp&gt; <a class="code" href="a00243.html#ga44fa38a18349450325cae2661bb115ca">infinitePerspective</a>(</div>
-<div class="line"><a name="l00494"></a><span class="lineno">  494</span>&#160;                T fovy, T aspect, T near);</div>
-<div class="line"><a name="l00495"></a><span class="lineno">  495</span>&#160;</div>
-<div class="line"><a name="l00503"></a><span class="lineno">  503</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T&gt;</div>
-<div class="line"><a name="l00504"></a><span class="lineno">  504</span>&#160;        GLM_FUNC_DECL mat&lt;4, 4, T, defaultp&gt; <a class="code" href="a00243.html#gaf5b3c85ff6737030a1d2214474ffa7a8">tweakedInfinitePerspective</a>(</div>
-<div class="line"><a name="l00505"></a><span class="lineno">  505</span>&#160;                T fovy, T aspect, T near);</div>
-<div class="line"><a name="l00506"></a><span class="lineno">  506</span>&#160;</div>
-<div class="line"><a name="l00515"></a><span class="lineno">  515</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T&gt;</div>
-<div class="line"><a name="l00516"></a><span class="lineno">  516</span>&#160;        GLM_FUNC_DECL mat&lt;4, 4, T, defaultp&gt; <a class="code" href="a00243.html#gaf5b3c85ff6737030a1d2214474ffa7a8">tweakedInfinitePerspective</a>(</div>
-<div class="line"><a name="l00517"></a><span class="lineno">  517</span>&#160;                T fovy, T aspect, T near, T ep);</div>
-<div class="line"><a name="l00518"></a><span class="lineno">  518</span>&#160;</div>
-<div class="line"><a name="l00520"></a><span class="lineno">  520</span>&#160;}<span class="comment">//namespace glm</span></div>
-<div class="line"><a name="l00521"></a><span class="lineno">  521</span>&#160;</div>
-<div class="line"><a name="l00522"></a><span class="lineno">  522</span>&#160;<span class="preprocessor">#include &quot;matrix_clip_space.inl&quot;</span></div>
-<div class="ttc" id="a00243_html_ga9236c8439f21be186b79c97b588836b9"><div class="ttname"><a href="a00243.html#ga9236c8439f21be186b79c97b588836b9">glm::frustumRH_NO</a></div><div class="ttdeci">GLM_FUNC_DECL mat&lt; 4, 4, T, defaultp &gt; frustumRH_NO(T left, T right, T bottom, T top, T near, T far)</div><div class="ttdoc">Creates a right handed frustum matrix. </div></div>
-<div class="ttc" id="a00243_html_ga44fa38a18349450325cae2661bb115ca"><div class="ttname"><a href="a00243.html#ga44fa38a18349450325cae2661bb115ca">glm::infinitePerspective</a></div><div class="ttdeci">GLM_FUNC_DECL mat&lt; 4, 4, T, defaultp &gt; infinitePerspective(T fovy, T aspect, T near)</div><div class="ttdoc">Creates a matrix for a symmetric perspective-view frustum with far plane at infinite with default han...</div></div>
-<div class="ttc" id="a00243_html_gaea11a70817af2c0801c869dea0b7a5bc"><div class="ttname"><a href="a00243.html#gaea11a70817af2c0801c869dea0b7a5bc">glm::orthoZO</a></div><div class="ttdeci">GLM_FUNC_DECL mat&lt; 4, 4, T, defaultp &gt; orthoZO(T left, T right, T bottom, T top, T zNear, T zFar)</div><div class="ttdoc">Creates a matrix for an orthographic parallel viewing volume, using left-handed coordinates. </div></div>
-<div class="ttc" id="a00243_html_gaf5b3c85ff6737030a1d2214474ffa7a8"><div class="ttname"><a href="a00243.html#gaf5b3c85ff6737030a1d2214474ffa7a8">glm::tweakedInfinitePerspective</a></div><div class="ttdeci">GLM_FUNC_DECL mat&lt; 4, 4, T, defaultp &gt; tweakedInfinitePerspective(T fovy, T aspect, T near, T ep)</div><div class="ttdoc">Creates a matrix for a symmetric perspective-view frustum with far plane at infinite for graphics har...</div></div>
-<div class="ttc" id="a00243_html_ga16264c9b838edeb9dd1de7a1010a13a4"><div class="ttname"><a href="a00243.html#ga16264c9b838edeb9dd1de7a1010a13a4">glm::orthoRH</a></div><div class="ttdeci">GLM_FUNC_DECL mat&lt; 4, 4, T, defaultp &gt; orthoRH(T left, T right, T bottom, T top, T zNear, T zFar)</div><div class="ttdoc">Creates a matrix for an orthographic parallel viewing volume, using right-handed coordinates. </div></div>
-<div class="ttc" id="a00243_html_ga6aebe16c164bd8e52554cbe0304ef4aa"><div class="ttname"><a href="a00243.html#ga6aebe16c164bd8e52554cbe0304ef4aa">glm::perspectiveFovLH</a></div><div class="ttdeci">GLM_FUNC_DECL mat&lt; 4, 4, T, defaultp &gt; perspectiveFovLH(T fov, T width, T height, T near, T far)</div><div class="ttdoc">Builds a left handed perspective projection matrix based on a field of view. </div></div>
-<div class="ttc" id="a00243_html_ga94218b094862d17798370242680b9030"><div class="ttname"><a href="a00243.html#ga94218b094862d17798370242680b9030">glm::frustumLH_ZO</a></div><div class="ttdeci">GLM_FUNC_DECL mat&lt; 4, 4, T, defaultp &gt; frustumLH_ZO(T left, T right, T bottom, T top, T near, T far)</div><div class="ttdoc">Creates a left handed frustum matrix. </div></div>
-<div class="ttc" id="a00243_html_ga259520cad03b3f8bca9417920035ed01"><div class="ttname"><a href="a00243.html#ga259520cad03b3f8bca9417920035ed01">glm::frustumLH_NO</a></div><div class="ttdeci">GLM_FUNC_DECL mat&lt; 4, 4, T, defaultp &gt; frustumLH_NO(T left, T right, T bottom, T top, T near, T far)</div><div class="ttdoc">Creates a left handed frustum matrix. </div></div>
-<div class="ttc" id="a00243_html_gae34ec664ad44860bf4b5ba631f0e0e90"><div class="ttname"><a href="a00243.html#gae34ec664ad44860bf4b5ba631f0e0e90">glm::frustumNO</a></div><div class="ttdeci">GLM_FUNC_DECL mat&lt; 4, 4, T, defaultp &gt; frustumNO(T left, T right, T bottom, T top, T near, T far)</div><div class="ttdoc">Creates a frustum matrix using left-handed coordinates if GLM_FORCE_LEFT_HANDED if defined or right-h...</div></div>
-<div class="ttc" id="a00243_html_ga4366ab45880c6c5f8b3e8c371ca4b136"><div class="ttname"><a href="a00243.html#ga4366ab45880c6c5f8b3e8c371ca4b136">glm::frustumRH</a></div><div class="ttdeci">GLM_FUNC_DECL mat&lt; 4, 4, T, defaultp &gt; frustumRH(T left, T right, T bottom, T top, T near, T far)</div><div class="ttdoc">Creates a right handed frustum matrix. </div></div>
-<div class="ttc" id="a00243_html_gae4277c37f61d81da01bc9db14ea90296"><div class="ttname"><a href="a00243.html#gae4277c37f61d81da01bc9db14ea90296">glm::frustumLH</a></div><div class="ttdeci">GLM_FUNC_DECL mat&lt; 4, 4, T, defaultp &gt; frustumLH(T left, T right, T bottom, T top, T near, T far)</div><div class="ttdoc">Creates a left handed frustum matrix. </div></div>
-<div class="ttc" id="a00243_html_ga257b733ff883c9a065801023cf243eb2"><div class="ttname"><a href="a00243.html#ga257b733ff883c9a065801023cf243eb2">glm::perspectiveFovRH_NO</a></div><div class="ttdeci">GLM_FUNC_DECL mat&lt; 4, 4, T, defaultp &gt; perspectiveFovRH_NO(T fov, T width, T height, T near, T far)</div><div class="ttdoc">Builds a perspective projection matrix based on a field of view using right-handed coordinates...</div></div>
-<div class="ttc" id="a00243_html_gaebd02240fd36e85ad754f02ddd9a560d"><div class="ttname"><a href="a00243.html#gaebd02240fd36e85ad754f02ddd9a560d">glm::perspectiveFov</a></div><div class="ttdeci">GLM_FUNC_DECL mat&lt; 4, 4, T, defaultp &gt; perspectiveFov(T fov, T width, T height, T near, T far)</div><div class="ttdoc">Builds a perspective projection matrix based on a field of view and the default handedness and defaul...</div></div>
-<div class="ttc" id="a00243_html_gaf32bf563f28379c68554a44ee60c6a85"><div class="ttname"><a href="a00243.html#gaf32bf563f28379c68554a44ee60c6a85">glm::perspectiveFovRH</a></div><div class="ttdeci">GLM_FUNC_DECL mat&lt; 4, 4, T, defaultp &gt; perspectiveFovRH(T fov, T width, T height, T near, T far)</div><div class="ttdoc">Builds a right handed perspective projection matrix based on a field of view. </div></div>
-<div class="ttc" id="a00243_html_ga7654a9227f14d5382786b9fc0eb5692d"><div class="ttname"><a href="a00243.html#ga7654a9227f14d5382786b9fc0eb5692d">glm::frustumRH_ZO</a></div><div class="ttdeci">GLM_FUNC_DECL mat&lt; 4, 4, T, defaultp &gt; frustumRH_ZO(T left, T right, T bottom, T top, T near, T far)</div><div class="ttdoc">Creates a right handed frustum matrix. </div></div>
-<div class="ttc" id="a00243_html_gab37ac3eec8d61f22fceda7775e836afa"><div class="ttname"><a href="a00243.html#gab37ac3eec8d61f22fceda7775e836afa">glm::orthoLH_ZO</a></div><div class="ttdeci">GLM_FUNC_DECL mat&lt; 4, 4, T, defaultp &gt; orthoLH_ZO(T left, T right, T bottom, T top, T zNear, T zFar)</div><div class="ttdoc">Creates a matrix for an orthographic parallel viewing volume, using left-handed coordinates. </div></div>
-<div class="ttc" id="a00243_html_gaca32af88c2719005c02817ad1142986c"><div class="ttname"><a href="a00243.html#gaca32af88c2719005c02817ad1142986c">glm::perspectiveLH_ZO</a></div><div class="ttdeci">GLM_FUNC_DECL mat&lt; 4, 4, T, defaultp &gt; perspectiveLH_ZO(T fovy, T aspect, T near, T far)</div><div class="ttdoc">Creates a matrix for a left handed, symetric perspective-view frustum. </div></div>
-<div class="ttc" id="a00243_html_gad1526cb2cbe796095284e8f34b01c582"><div class="ttname"><a href="a00243.html#gad1526cb2cbe796095284e8f34b01c582">glm::perspectiveRH_NO</a></div><div class="ttdeci">GLM_FUNC_DECL mat&lt; 4, 4, T, defaultp &gt; perspectiveRH_NO(T fovy, T aspect, T near, T far)</div><div class="ttdoc">Creates a matrix for a right handed, symetric perspective-view frustum. </div></div>
-<div class="ttc" id="a00243_html_gaa2f7a1373170bf0a4a2ddef9b0706780"><div class="ttname"><a href="a00243.html#gaa2f7a1373170bf0a4a2ddef9b0706780">glm::orthoRH_NO</a></div><div class="ttdeci">GLM_FUNC_DECL mat&lt; 4, 4, T, defaultp &gt; orthoRH_NO(T left, T right, T bottom, T top, T zNear, T zFar)</div><div class="ttdoc">Creates a matrix for an orthographic parallel viewing volume, using right-handed coordinates. </div></div>
-<div class="ttc" id="a00243_html_gaead4d049d1feab463b700b5641aa590e"><div class="ttname"><a href="a00243.html#gaead4d049d1feab463b700b5641aa590e">glm::perspectiveLH_NO</a></div><div class="ttdeci">GLM_FUNC_DECL mat&lt; 4, 4, T, defaultp &gt; perspectiveLH_NO(T fovy, T aspect, T near, T far)</div><div class="ttdoc">Creates a matrix for a left handed, symetric perspective-view frustum. </div></div>
-<div class="ttc" id="a00243_html_ga6615d8a9d39432e279c4575313ecb456"><div class="ttname"><a href="a00243.html#ga6615d8a9d39432e279c4575313ecb456">glm::ortho</a></div><div class="ttdeci">GLM_FUNC_DECL mat&lt; 4, 4, T, defaultp &gt; ortho(T left, T right, T bottom, T top, T zNear, T zFar)</div><div class="ttdoc">Creates a matrix for an orthographic parallel viewing volume, using the default handedness and defaul...</div></div>
-<div class="ttc" id="a00243_html_gabdd37014f529e25b2fa1b3ba06c10d5c"><div class="ttname"><a href="a00243.html#gabdd37014f529e25b2fa1b3ba06c10d5c">glm::perspectiveFovLH_ZO</a></div><div class="ttdeci">GLM_FUNC_DECL mat&lt; 4, 4, T, defaultp &gt; perspectiveFovLH_ZO(T fov, T width, T height, T near, T far)</div><div class="ttdoc">Builds a perspective projection matrix based on a field of view using left-handed coordinates...</div></div>
-<div class="ttc" id="a00243_html_gaa73322e152edf50cf30a6edac342a757"><div class="ttname"><a href="a00243.html#gaa73322e152edf50cf30a6edac342a757">glm::frustumZO</a></div><div class="ttdeci">GLM_FUNC_DECL mat&lt; 4, 4, T, defaultp &gt; frustumZO(T left, T right, T bottom, T top, T near, T far)</div><div class="ttdoc">Creates a frustum matrix using left-handed coordinates if GLM_FORCE_LEFT_HANDED if defined or right-h...</div></div>
-<div class="ttc" id="a00243_html_gad122a79aadaa5529cec4ac197203db7f"><div class="ttname"><a href="a00243.html#gad122a79aadaa5529cec4ac197203db7f">glm::orthoLH</a></div><div class="ttdeci">GLM_FUNC_DECL mat&lt; 4, 4, T, defaultp &gt; orthoLH(T left, T right, T bottom, T top, T zNear, T zFar)</div><div class="ttdoc">Creates a matrix for an orthographic parallel viewing volume, using left-handed coordinates. </div></div>
-<div class="ttc" id="a00243_html_gab219d28a8f178d4517448fcd6395a073"><div class="ttname"><a href="a00243.html#gab219d28a8f178d4517448fcd6395a073">glm::orthoNO</a></div><div class="ttdeci">GLM_FUNC_DECL mat&lt; 4, 4, T, defaultp &gt; orthoNO(T left, T right, T bottom, T top, T zNear, T zFar)</div><div class="ttdoc">Creates a matrix for an orthographic parallel viewing volume, using left-handed coordinates if GLM_FO...</div></div>
-<div class="ttc" id="a00243_html_ga526416735ea7c5c5cd255bf99d051bd8"><div class="ttname"><a href="a00243.html#ga526416735ea7c5c5cd255bf99d051bd8">glm::orthoLH_NO</a></div><div class="ttdeci">GLM_FUNC_DECL mat&lt; 4, 4, T, defaultp &gt; orthoLH_NO(T left, T right, T bottom, T top, T zNear, T zFar)</div><div class="ttdoc">Creates a matrix for an orthographic parallel viewing volume using right-handed coordinates. </div></div>
-<div class="ttc" id="a00243_html_gaf30e7bd3b1387a6776433dd5383e6633"><div class="ttname"><a href="a00243.html#gaf30e7bd3b1387a6776433dd5383e6633">glm::perspectiveFovNO</a></div><div class="ttdeci">GLM_FUNC_DECL mat&lt; 4, 4, T, defaultp &gt; perspectiveFovNO(T fov, T width, T height, T near, T far)</div><div class="ttdoc">Builds a perspective projection matrix based on a field of view using left-handed coordinates if GLM_...</div></div>
-<div class="ttc" id="a00243_html_ga747c8cf99458663dd7ad1bb3a2f07787"><div class="ttname"><a href="a00243.html#ga747c8cf99458663dd7ad1bb3a2f07787">glm::perspective</a></div><div class="ttdeci">GLM_FUNC_DECL mat&lt; 4, 4, T, defaultp &gt; perspective(T fovy, T aspect, T near, T far)</div><div class="ttdoc">Creates a matrix for a symetric perspective-view frustum based on the default handedness and default ...</div></div>
-<div class="ttc" id="a00243_html_ga9aea2e515b08fd7dce47b7b6ec34d588"><div class="ttname"><a href="a00243.html#ga9aea2e515b08fd7dce47b7b6ec34d588">glm::orthoRH_ZO</a></div><div class="ttdeci">GLM_FUNC_DECL mat&lt; 4, 4, T, defaultp &gt; orthoRH_ZO(T left, T right, T bottom, T top, T zNear, T zFar)</div><div class="ttdoc">Creates a matrix for an orthographic parallel viewing volume, using left-handed coordinates. </div></div>
-<div class="ttc" id="a00243_html_ga4bc69fa1d1f95128430aa3d2a712390b"><div class="ttname"><a href="a00243.html#ga4bc69fa1d1f95128430aa3d2a712390b">glm::perspectiveFovZO</a></div><div class="ttdeci">GLM_FUNC_DECL mat&lt; 4, 4, T, defaultp &gt; perspectiveFovZO(T fov, T width, T height, T near, T far)</div><div class="ttdoc">Builds a perspective projection matrix based on a field of view using left-handed coordinates if GLM_...</div></div>
-<div class="ttc" id="a00243_html_ga99672ffe5714ef478dab2437255fe7e1"><div class="ttname"><a href="a00243.html#ga99672ffe5714ef478dab2437255fe7e1">glm::infinitePerspectiveRH</a></div><div class="ttdeci">GLM_FUNC_DECL mat&lt; 4, 4, T, defaultp &gt; infinitePerspectiveRH(T fovy, T aspect, T near)</div><div class="ttdoc">Creates a matrix for a right handed, symmetric perspective-view frustum with far plane at infinite...</div></div>
-<div class="ttc" id="a00243_html_gaf497e6bca61e7c87088370b126a93758"><div class="ttname"><a href="a00243.html#gaf497e6bca61e7c87088370b126a93758">glm::perspectiveNO</a></div><div class="ttdeci">GLM_FUNC_DECL mat&lt; 4, 4, T, defaultp &gt; perspectiveNO(T fovy, T aspect, T near, T far)</div><div class="ttdoc">Creates a matrix for a symetric perspective-view frustum using left-handed coordinates if GLM_FORCE_L...</div></div>
-<div class="ttc" id="a00243_html_gad18a4495b77530317327e8d466488c1a"><div class="ttname"><a href="a00243.html#gad18a4495b77530317327e8d466488c1a">glm::perspectiveFovLH_NO</a></div><div class="ttdeci">GLM_FUNC_DECL mat&lt; 4, 4, T, defaultp &gt; perspectiveFovLH_NO(T fov, T width, T height, T near, T far)</div><div class="ttdoc">Builds a perspective projection matrix based on a field of view using left-handed coordinates...</div></div>
-<div class="ttc" id="a00243_html_ga4da358d6e1b8e5b9ae35d1f3f2dc3b9a"><div class="ttname"><a href="a00243.html#ga4da358d6e1b8e5b9ae35d1f3f2dc3b9a">glm::perspectiveRH_ZO</a></div><div class="ttdeci">GLM_FUNC_DECL mat&lt; 4, 4, T, defaultp &gt; perspectiveRH_ZO(T fovy, T aspect, T near, T far)</div><div class="ttdoc">Creates a matrix for a right handed, symetric perspective-view frustum. </div></div>
-<div class="ttc" id="a00243_html_gaa9dfba5c2322da54f72b1eb7c7c11b47"><div class="ttname"><a href="a00243.html#gaa9dfba5c2322da54f72b1eb7c7c11b47">glm::perspectiveZO</a></div><div class="ttdeci">GLM_FUNC_DECL mat&lt; 4, 4, T, defaultp &gt; perspectiveZO(T fovy, T aspect, T near, T far)</div><div class="ttdoc">Creates a matrix for a symetric perspective-view frustum using left-handed coordinates if GLM_FORCE_L...</div></div>
-<div class="ttc" id="a00243_html_ga3201b30f5b3ea0f933246d87bfb992a9"><div class="ttname"><a href="a00243.html#ga3201b30f5b3ea0f933246d87bfb992a9">glm::infinitePerspectiveLH</a></div><div class="ttdeci">GLM_FUNC_DECL mat&lt; 4, 4, T, defaultp &gt; infinitePerspectiveLH(T fovy, T aspect, T near)</div><div class="ttdoc">Creates a matrix for a left handed, symmetric perspective-view frustum with far plane at infinite...</div></div>
-<div class="ttc" id="a00243_html_ga9bd34951dc7022ac256fcb51d7f6fc2f"><div class="ttname"><a href="a00243.html#ga9bd34951dc7022ac256fcb51d7f6fc2f">glm::perspectiveLH</a></div><div class="ttdeci">GLM_FUNC_DECL mat&lt; 4, 4, T, defaultp &gt; perspectiveLH(T fovy, T aspect, T near, T far)</div><div class="ttdoc">Creates a matrix for a left handed, symetric perspective-view frustum. </div></div>
-<div class="ttc" id="a00243_html_ga7dcbb25331676f5b0795aced1a905c44"><div class="ttname"><a href="a00243.html#ga7dcbb25331676f5b0795aced1a905c44">glm::perspectiveFovRH_ZO</a></div><div class="ttdeci">GLM_FUNC_DECL mat&lt; 4, 4, T, defaultp &gt; perspectiveFovRH_ZO(T fov, T width, T height, T near, T far)</div><div class="ttdoc">Builds a perspective projection matrix based on a field of view using right-handed coordinates...</div></div>
-<div class="ttc" id="a00243_html_ga0bcd4542e0affc63a0b8c08fcb839ea9"><div class="ttname"><a href="a00243.html#ga0bcd4542e0affc63a0b8c08fcb839ea9">glm::frustum</a></div><div class="ttdeci">GLM_FUNC_DECL mat&lt; 4, 4, T, defaultp &gt; frustum(T left, T right, T bottom, T top, T near, T far)</div><div class="ttdoc">Creates a frustum matrix with default handedness, using the default handedness and default near and f...</div></div>
-<div class="ttc" id="a00243_html_ga26b88757fbd90601b80768a7e1ad3aa1"><div class="ttname"><a href="a00243.html#ga26b88757fbd90601b80768a7e1ad3aa1">glm::perspectiveRH</a></div><div class="ttdeci">GLM_FUNC_DECL mat&lt; 4, 4, T, defaultp &gt; perspectiveRH(T fovy, T aspect, T near, T far)</div><div class="ttdoc">Creates a matrix for a right handed, symetric perspective-view frustum. </div></div>
-<div class="ttc" id="a00236_html"><div class="ttname"><a href="a00236.html">glm</a></div><div class="ttdef"><b>Definition:</b> <a href="a00015_source.html#l00020">common.hpp:20</a></div></div>
+<a href="a00059.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span>&#160; </div>
+<div class="line"><a name="l00004"></a><span class="lineno">    4</span>&#160;<span class="preprocessor">#pragma once</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno">    5</span>&#160; </div>
+<div class="line"><a name="l00006"></a><span class="lineno">    6</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="a00074.html">type_vec2.hpp</a>&quot;</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno">    7</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="a00080.html">type_vec4.hpp</a>&quot;</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno">    8</span>&#160;<span class="preprocessor">#include &lt;limits&gt;</span></div>
+<div class="line"><a name="l00009"></a><span class="lineno">    9</span>&#160;<span class="preprocessor">#include &lt;cstddef&gt;</span></div>
+<div class="line"><a name="l00010"></a><span class="lineno">   10</span>&#160; </div>
+<div class="line"><a name="l00011"></a><span class="lineno">   11</span>&#160;<span class="keyword">namespace </span>glm</div>
+<div class="line"><a name="l00012"></a><span class="lineno">   12</span>&#160;{</div>
+<div class="line"><a name="l00013"></a><span class="lineno">   13</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T, qualifier Q&gt;</div>
+<div class="line"><a name="l00014"></a><span class="lineno">   14</span>&#160;        <span class="keyword">struct </span>mat&lt;4, 2, T, Q&gt;</div>
+<div class="line"><a name="l00015"></a><span class="lineno">   15</span>&#160;        {</div>
+<div class="line"><a name="l00016"></a><span class="lineno">   16</span>&#160;                <span class="keyword">typedef</span> vec&lt;2, T, Q&gt; col_type;</div>
+<div class="line"><a name="l00017"></a><span class="lineno">   17</span>&#160;                <span class="keyword">typedef</span> vec&lt;4, T, Q&gt; row_type;</div>
+<div class="line"><a name="l00018"></a><span class="lineno">   18</span>&#160;                <span class="keyword">typedef</span> mat&lt;4, 2, T, Q&gt; type;</div>
+<div class="line"><a name="l00019"></a><span class="lineno">   19</span>&#160;                <span class="keyword">typedef</span> mat&lt;2, 4, T, Q&gt; transpose_type;</div>
+<div class="line"><a name="l00020"></a><span class="lineno">   20</span>&#160;                <span class="keyword">typedef</span> T value_type;</div>
+<div class="line"><a name="l00021"></a><span class="lineno">   21</span>&#160; </div>
+<div class="line"><a name="l00022"></a><span class="lineno">   22</span>&#160;        <span class="keyword">private</span>:</div>
+<div class="line"><a name="l00023"></a><span class="lineno">   23</span>&#160;                col_type value[4];</div>
+<div class="line"><a name="l00024"></a><span class="lineno">   24</span>&#160; </div>
+<div class="line"><a name="l00025"></a><span class="lineno">   25</span>&#160;        <span class="keyword">public</span>:</div>
+<div class="line"><a name="l00026"></a><span class="lineno">   26</span>&#160;                <span class="comment">// -- Accesses --</span></div>
+<div class="line"><a name="l00027"></a><span class="lineno">   27</span>&#160; </div>
+<div class="line"><a name="l00028"></a><span class="lineno">   28</span>&#160;                <span class="keyword">typedef</span> length_t length_type;</div>
+<div class="line"><a name="l00029"></a><span class="lineno">   29</span>&#160;                GLM_FUNC_DECL <span class="keyword">static</span> GLM_CONSTEXPR length_type <a class="code" href="a00853.html#gab703732449be6c7199369b3f9a91ed38">length</a>() { <span class="keywordflow">return</span> 4; }</div>
+<div class="line"><a name="l00030"></a><span class="lineno">   30</span>&#160; </div>
+<div class="line"><a name="l00031"></a><span class="lineno">   31</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR col_type &amp; operator[](length_type i) GLM_NOEXCEPT;</div>
+<div class="line"><a name="l00032"></a><span class="lineno">   32</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR col_type <span class="keyword">const</span>&amp; operator[](length_type i) <span class="keyword">const</span> GLM_NOEXCEPT;</div>
+<div class="line"><a name="l00033"></a><span class="lineno">   33</span>&#160; </div>
+<div class="line"><a name="l00034"></a><span class="lineno">   34</span>&#160;                <span class="comment">// -- Constructors --</span></div>
+<div class="line"><a name="l00035"></a><span class="lineno">   35</span>&#160; </div>
+<div class="line"><a name="l00036"></a><span class="lineno">   36</span>&#160;                GLM_DEFAULTED_DEFAULT_CTOR_DECL GLM_CONSTEXPR mat() GLM_DEFAULT_CTOR;</div>
+<div class="line"><a name="l00037"></a><span class="lineno">   37</span>&#160;                template&lt;qualifier P&gt;</div>
+<div class="line"><a name="l00038"></a><span class="lineno">   38</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR mat(mat&lt;4, 2, T, P&gt; const&amp; m);</div>
+<div class="line"><a name="l00039"></a><span class="lineno">   39</span>&#160; </div>
+<div class="line"><a name="l00040"></a><span class="lineno">   40</span>&#160;                GLM_FUNC_DECL explicit GLM_CONSTEXPR mat(T scalar);</div>
+<div class="line"><a name="l00041"></a><span class="lineno">   41</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR mat(</div>
+<div class="line"><a name="l00042"></a><span class="lineno">   42</span>&#160;                        T x0, T y0,</div>
+<div class="line"><a name="l00043"></a><span class="lineno">   43</span>&#160;                        T x1, T y1,</div>
+<div class="line"><a name="l00044"></a><span class="lineno">   44</span>&#160;                        T x2, T y2,</div>
+<div class="line"><a name="l00045"></a><span class="lineno">   45</span>&#160;                        T x3, T y3);</div>
+<div class="line"><a name="l00046"></a><span class="lineno">   46</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR mat(</div>
+<div class="line"><a name="l00047"></a><span class="lineno">   47</span>&#160;                        col_type const&amp; v0,</div>
+<div class="line"><a name="l00048"></a><span class="lineno">   48</span>&#160;                        col_type const&amp; v1,</div>
+<div class="line"><a name="l00049"></a><span class="lineno">   49</span>&#160;                        col_type const&amp; v2,</div>
+<div class="line"><a name="l00050"></a><span class="lineno">   50</span>&#160;                        col_type const&amp; v3);</div>
+<div class="line"><a name="l00051"></a><span class="lineno">   51</span>&#160; </div>
+<div class="line"><a name="l00052"></a><span class="lineno">   52</span>&#160;                <span class="comment">// -- Conversions --</span></div>
+<div class="line"><a name="l00053"></a><span class="lineno">   53</span>&#160; </div>
+<div class="line"><a name="l00054"></a><span class="lineno">   54</span>&#160;                template&lt;</div>
+<div class="line"><a name="l00055"></a><span class="lineno">   55</span>&#160;                        typename X0, typename Y0,</div>
+<div class="line"><a name="l00056"></a><span class="lineno">   56</span>&#160;                        typename X1, typename Y1,</div>
+<div class="line"><a name="l00057"></a><span class="lineno">   57</span>&#160;                        typename X2, typename Y2,</div>
+<div class="line"><a name="l00058"></a><span class="lineno">   58</span>&#160;                        typename X3, typename Y3&gt;</div>
+<div class="line"><a name="l00059"></a><span class="lineno">   59</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR mat(</div>
+<div class="line"><a name="l00060"></a><span class="lineno">   60</span>&#160;                        X0 x0, Y0 y0,</div>
+<div class="line"><a name="l00061"></a><span class="lineno">   61</span>&#160;                        X1 x1, Y1 y1,</div>
+<div class="line"><a name="l00062"></a><span class="lineno">   62</span>&#160;                        X2 x2, Y2 y2,</div>
+<div class="line"><a name="l00063"></a><span class="lineno">   63</span>&#160;                        X3 x3, Y3 y3);</div>
+<div class="line"><a name="l00064"></a><span class="lineno">   64</span>&#160; </div>
+<div class="line"><a name="l00065"></a><span class="lineno">   65</span>&#160;                template&lt;typename V1, typename V2, typename V3, typename V4&gt;</div>
+<div class="line"><a name="l00066"></a><span class="lineno">   66</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR mat(</div>
+<div class="line"><a name="l00067"></a><span class="lineno">   67</span>&#160;                        vec&lt;2, V1, Q&gt; const&amp; v1,</div>
+<div class="line"><a name="l00068"></a><span class="lineno">   68</span>&#160;                        vec&lt;2, V2, Q&gt; const&amp; v2,</div>
+<div class="line"><a name="l00069"></a><span class="lineno">   69</span>&#160;                        vec&lt;2, V3, Q&gt; const&amp; v3,</div>
+<div class="line"><a name="l00070"></a><span class="lineno">   70</span>&#160;                        vec&lt;2, V4, Q&gt; const&amp; v4);</div>
+<div class="line"><a name="l00071"></a><span class="lineno">   71</span>&#160; </div>
+<div class="line"><a name="l00072"></a><span class="lineno">   72</span>&#160;                <span class="comment">// -- Matrix conversions --</span></div>
+<div class="line"><a name="l00073"></a><span class="lineno">   73</span>&#160; </div>
+<div class="line"><a name="l00074"></a><span class="lineno">   74</span>&#160;                template&lt;typename U, qualifier P&gt;</div>
+<div class="line"><a name="l00075"></a><span class="lineno">   75</span>&#160;                GLM_FUNC_DECL GLM_EXPLICIT GLM_CONSTEXPR mat(mat&lt;4, 2, U, P&gt; const&amp; m);</div>
+<div class="line"><a name="l00076"></a><span class="lineno">   76</span>&#160; </div>
+<div class="line"><a name="l00077"></a><span class="lineno">   77</span>&#160;                GLM_FUNC_DECL GLM_EXPLICIT GLM_CONSTEXPR mat(mat&lt;2, 2, T, Q&gt; const&amp; x);</div>
+<div class="line"><a name="l00078"></a><span class="lineno">   78</span>&#160;                GLM_FUNC_DECL GLM_EXPLICIT GLM_CONSTEXPR mat(mat&lt;3, 3, T, Q&gt; const&amp; x);</div>
+<div class="line"><a name="l00079"></a><span class="lineno">   79</span>&#160;                GLM_FUNC_DECL GLM_EXPLICIT GLM_CONSTEXPR mat(mat&lt;4, 4, T, Q&gt; const&amp; x);</div>
+<div class="line"><a name="l00080"></a><span class="lineno">   80</span>&#160;                GLM_FUNC_DECL GLM_EXPLICIT GLM_CONSTEXPR mat(mat&lt;2, 3, T, Q&gt; const&amp; x);</div>
+<div class="line"><a name="l00081"></a><span class="lineno">   81</span>&#160;                GLM_FUNC_DECL GLM_EXPLICIT GLM_CONSTEXPR mat(mat&lt;3, 2, T, Q&gt; const&amp; x);</div>
+<div class="line"><a name="l00082"></a><span class="lineno">   82</span>&#160;                GLM_FUNC_DECL GLM_EXPLICIT GLM_CONSTEXPR mat(mat&lt;2, 4, T, Q&gt; const&amp; x);</div>
+<div class="line"><a name="l00083"></a><span class="lineno">   83</span>&#160;                GLM_FUNC_DECL GLM_EXPLICIT GLM_CONSTEXPR mat(mat&lt;4, 3, T, Q&gt; const&amp; x);</div>
+<div class="line"><a name="l00084"></a><span class="lineno">   84</span>&#160;                GLM_FUNC_DECL GLM_EXPLICIT GLM_CONSTEXPR mat(mat&lt;3, 4, T, Q&gt; const&amp; x);</div>
+<div class="line"><a name="l00085"></a><span class="lineno">   85</span>&#160; </div>
+<div class="line"><a name="l00086"></a><span class="lineno">   86</span>&#160;                <span class="comment">// -- Unary arithmetic operators --</span></div>
+<div class="line"><a name="l00087"></a><span class="lineno">   87</span>&#160; </div>
+<div class="line"><a name="l00088"></a><span class="lineno">   88</span>&#160;                template&lt;typename U&gt;</div>
+<div class="line"><a name="l00089"></a><span class="lineno">   89</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR mat&lt;4, 2, T, Q&gt; &amp; operator=(mat&lt;4, 2, U, Q&gt; const&amp; m);</div>
+<div class="line"><a name="l00090"></a><span class="lineno">   90</span>&#160;                template&lt;typename U&gt;</div>
+<div class="line"><a name="l00091"></a><span class="lineno">   91</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR mat&lt;4, 2, T, Q&gt; &amp; operator+=(U s);</div>
+<div class="line"><a name="l00092"></a><span class="lineno">   92</span>&#160;                template&lt;typename U&gt;</div>
+<div class="line"><a name="l00093"></a><span class="lineno">   93</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR mat&lt;4, 2, T, Q&gt; &amp; operator+=(mat&lt;4, 2, U, Q&gt; const&amp; m);</div>
+<div class="line"><a name="l00094"></a><span class="lineno">   94</span>&#160;                template&lt;typename U&gt;</div>
+<div class="line"><a name="l00095"></a><span class="lineno">   95</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR mat&lt;4, 2, T, Q&gt; &amp; operator-=(U s);</div>
+<div class="line"><a name="l00096"></a><span class="lineno">   96</span>&#160;                template&lt;typename U&gt;</div>
+<div class="line"><a name="l00097"></a><span class="lineno">   97</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR mat&lt;4, 2, T, Q&gt; &amp; operator-=(mat&lt;4, 2, U, Q&gt; const&amp; m);</div>
+<div class="line"><a name="l00098"></a><span class="lineno">   98</span>&#160;                template&lt;typename U&gt;</div>
+<div class="line"><a name="l00099"></a><span class="lineno">   99</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR mat&lt;4, 2, T, Q&gt; &amp; operator*=(U s);</div>
+<div class="line"><a name="l00100"></a><span class="lineno">  100</span>&#160;                template&lt;typename U&gt;</div>
+<div class="line"><a name="l00101"></a><span class="lineno">  101</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR mat&lt;4, 2, T, Q&gt; &amp; operator/=(U s);</div>
+<div class="line"><a name="l00102"></a><span class="lineno">  102</span>&#160; </div>
+<div class="line"><a name="l00103"></a><span class="lineno">  103</span>&#160;                <span class="comment">// -- Increment and decrement operators --</span></div>
+<div class="line"><a name="l00104"></a><span class="lineno">  104</span>&#160; </div>
+<div class="line"><a name="l00105"></a><span class="lineno">  105</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR mat&lt;4, 2, T, Q&gt; &amp; operator++ ();</div>
+<div class="line"><a name="l00106"></a><span class="lineno">  106</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR mat&lt;4, 2, T, Q&gt; &amp; operator-- ();</div>
+<div class="line"><a name="l00107"></a><span class="lineno">  107</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR mat&lt;4, 2, T, Q&gt; operator++(<span class="keywordtype">int</span>);</div>
+<div class="line"><a name="l00108"></a><span class="lineno">  108</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR mat&lt;4, 2, T, Q&gt; operator--(<span class="keywordtype">int</span>);</div>
+<div class="line"><a name="l00109"></a><span class="lineno">  109</span>&#160;        };</div>
+<div class="line"><a name="l00110"></a><span class="lineno">  110</span>&#160; </div>
+<div class="line"><a name="l00111"></a><span class="lineno">  111</span>&#160;        <span class="comment">// -- Unary operators --</span></div>
+<div class="line"><a name="l00112"></a><span class="lineno">  112</span>&#160; </div>
+<div class="line"><a name="l00113"></a><span class="lineno">  113</span>&#160;        template&lt;typename T, qualifier Q&gt;</div>
+<div class="line"><a name="l00114"></a><span class="lineno">  114</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR mat&lt;4, 2, T, Q&gt; operator+(mat&lt;4, 2, T, Q&gt; const&amp; m);</div>
+<div class="line"><a name="l00115"></a><span class="lineno">  115</span>&#160; </div>
+<div class="line"><a name="l00116"></a><span class="lineno">  116</span>&#160;        template&lt;typename T, qualifier Q&gt;</div>
+<div class="line"><a name="l00117"></a><span class="lineno">  117</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR mat&lt;4, 2, T, Q&gt; operator-(mat&lt;4, 2, T, Q&gt; const&amp; m);</div>
+<div class="line"><a name="l00118"></a><span class="lineno">  118</span>&#160; </div>
+<div class="line"><a name="l00119"></a><span class="lineno">  119</span>&#160;        <span class="comment">// -- Binary operators --</span></div>
+<div class="line"><a name="l00120"></a><span class="lineno">  120</span>&#160; </div>
+<div class="line"><a name="l00121"></a><span class="lineno">  121</span>&#160;        template&lt;typename T, qualifier Q&gt;</div>
+<div class="line"><a name="l00122"></a><span class="lineno">  122</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR mat&lt;4, 2, T, Q&gt; operator+(mat&lt;4, 2, T, Q&gt; const&amp; m, T scalar);</div>
+<div class="line"><a name="l00123"></a><span class="lineno">  123</span>&#160; </div>
+<div class="line"><a name="l00124"></a><span class="lineno">  124</span>&#160;        template&lt;typename T, qualifier Q&gt;</div>
+<div class="line"><a name="l00125"></a><span class="lineno">  125</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR mat&lt;4, 2, T, Q&gt; operator+(mat&lt;4, 2, T, Q&gt; const&amp; m1, mat&lt;4, 2, T, Q&gt; const&amp; m2);</div>
+<div class="line"><a name="l00126"></a><span class="lineno">  126</span>&#160; </div>
+<div class="line"><a name="l00127"></a><span class="lineno">  127</span>&#160;        template&lt;typename T, qualifier Q&gt;</div>
+<div class="line"><a name="l00128"></a><span class="lineno">  128</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR mat&lt;4, 2, T, Q&gt; operator-(mat&lt;4, 2, T, Q&gt; const&amp; m, T scalar);</div>
+<div class="line"><a name="l00129"></a><span class="lineno">  129</span>&#160; </div>
+<div class="line"><a name="l00130"></a><span class="lineno">  130</span>&#160;        template&lt;typename T, qualifier Q&gt;</div>
+<div class="line"><a name="l00131"></a><span class="lineno">  131</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR mat&lt;4, 2, T, Q&gt; operator-(mat&lt;4, 2, T, Q&gt; const&amp; m1,        mat&lt;4, 2, T, Q&gt; const&amp; m2);</div>
+<div class="line"><a name="l00132"></a><span class="lineno">  132</span>&#160; </div>
+<div class="line"><a name="l00133"></a><span class="lineno">  133</span>&#160;        template&lt;typename T, qualifier Q&gt;</div>
+<div class="line"><a name="l00134"></a><span class="lineno">  134</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR mat&lt;4, 2, T, Q&gt; operator*(mat&lt;4, 2, T, Q&gt; const&amp; m, T scalar);</div>
+<div class="line"><a name="l00135"></a><span class="lineno">  135</span>&#160; </div>
+<div class="line"><a name="l00136"></a><span class="lineno">  136</span>&#160;        template&lt;typename T, qualifier Q&gt;</div>
+<div class="line"><a name="l00137"></a><span class="lineno">  137</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR mat&lt;4, 2, T, Q&gt; operator*(T scalar, mat&lt;4, 2, T, Q&gt; const&amp; m);</div>
+<div class="line"><a name="l00138"></a><span class="lineno">  138</span>&#160; </div>
+<div class="line"><a name="l00139"></a><span class="lineno">  139</span>&#160;        template&lt;typename T, qualifier Q&gt;</div>
+<div class="line"><a name="l00140"></a><span class="lineno">  140</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR typename mat&lt;4, 2, T, Q&gt;::col_type operator*(mat&lt;4, 2, T, Q&gt; const&amp; m, typename mat&lt;4, 2, T, Q&gt;::row_type const&amp; v);</div>
+<div class="line"><a name="l00141"></a><span class="lineno">  141</span>&#160; </div>
+<div class="line"><a name="l00142"></a><span class="lineno">  142</span>&#160;        template&lt;typename T, qualifier Q&gt;</div>
+<div class="line"><a name="l00143"></a><span class="lineno">  143</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR typename mat&lt;4, 2, T, Q&gt;::row_type operator*(typename mat&lt;4, 2, T, Q&gt;::col_type const&amp; v, mat&lt;4, 2, T, Q&gt; const&amp; m);</div>
+<div class="line"><a name="l00144"></a><span class="lineno">  144</span>&#160; </div>
+<div class="line"><a name="l00145"></a><span class="lineno">  145</span>&#160;        template&lt;typename T, qualifier Q&gt;</div>
+<div class="line"><a name="l00146"></a><span class="lineno">  146</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR mat&lt;2, 2, T, Q&gt; operator*(mat&lt;4, 2, T, Q&gt; const&amp; m1, mat&lt;2, 4, T, Q&gt; const&amp; m2);</div>
+<div class="line"><a name="l00147"></a><span class="lineno">  147</span>&#160; </div>
+<div class="line"><a name="l00148"></a><span class="lineno">  148</span>&#160;        template&lt;typename T, qualifier Q&gt;</div>
+<div class="line"><a name="l00149"></a><span class="lineno">  149</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR mat&lt;3, 2, T, Q&gt; operator*(mat&lt;4, 2, T, Q&gt; const&amp; m1, mat&lt;3, 4, T, Q&gt; const&amp; m2);</div>
+<div class="line"><a name="l00150"></a><span class="lineno">  150</span>&#160; </div>
+<div class="line"><a name="l00151"></a><span class="lineno">  151</span>&#160;        template&lt;typename T, qualifier Q&gt;</div>
+<div class="line"><a name="l00152"></a><span class="lineno">  152</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR mat&lt;4, 2, T, Q&gt; operator*(mat&lt;4, 2, T, Q&gt; const&amp; m1, mat&lt;4, 4, T, Q&gt; const&amp; m2);</div>
+<div class="line"><a name="l00153"></a><span class="lineno">  153</span>&#160; </div>
+<div class="line"><a name="l00154"></a><span class="lineno">  154</span>&#160;        template&lt;typename T, qualifier Q&gt;</div>
+<div class="line"><a name="l00155"></a><span class="lineno">  155</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR mat&lt;4, 2, T, Q&gt; operator/(mat&lt;4, 2, T, Q&gt; const&amp; m, T scalar);</div>
+<div class="line"><a name="l00156"></a><span class="lineno">  156</span>&#160; </div>
+<div class="line"><a name="l00157"></a><span class="lineno">  157</span>&#160;        template&lt;typename T, qualifier Q&gt;</div>
+<div class="line"><a name="l00158"></a><span class="lineno">  158</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR mat&lt;4, 2, T, Q&gt; operator/(T scalar, mat&lt;4, 2, T, Q&gt; const&amp; m);</div>
+<div class="line"><a name="l00159"></a><span class="lineno">  159</span>&#160; </div>
+<div class="line"><a name="l00160"></a><span class="lineno">  160</span>&#160;        <span class="comment">// -- Boolean operators --</span></div>
+<div class="line"><a name="l00161"></a><span class="lineno">  161</span>&#160; </div>
+<div class="line"><a name="l00162"></a><span class="lineno">  162</span>&#160;        template&lt;typename T, qualifier Q&gt;</div>
+<div class="line"><a name="l00163"></a><span class="lineno">  163</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR <span class="keywordtype">bool</span> operator==(mat&lt;4, 2, T, Q&gt; const&amp; m1, mat&lt;4, 2, T, Q&gt; const&amp; m2);</div>
+<div class="line"><a name="l00164"></a><span class="lineno">  164</span>&#160; </div>
+<div class="line"><a name="l00165"></a><span class="lineno">  165</span>&#160;        template&lt;typename T, qualifier Q&gt;</div>
+<div class="line"><a name="l00166"></a><span class="lineno">  166</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR <span class="keywordtype">bool</span> operator!=(mat&lt;4, 2, T, Q&gt; const&amp; m1, mat&lt;4, 2, T, Q&gt; const&amp; m2);</div>
+<div class="line"><a name="l00167"></a><span class="lineno">  167</span>&#160;}<span class="comment">//namespace glm</span></div>
+<div class="line"><a name="l00168"></a><span class="lineno">  168</span>&#160; </div>
+<div class="line"><a name="l00169"></a><span class="lineno">  169</span>&#160;<span class="preprocessor">#ifndef GLM_EXTERNAL_TEMPLATE</span></div>
+<div class="line"><a name="l00170"></a><span class="lineno">  170</span>&#160;<span class="preprocessor">#include &quot;type_mat4x2.inl&quot;</span></div>
+<div class="line"><a name="l00171"></a><span class="lineno">  171</span>&#160;<span class="preprocessor">#endif</span></div>
 </div><!-- fragment --></div><!-- contents -->
+<div class="ttc" id="aa00074_html"><div class="ttname"><a href="a00074.html">type_vec2.hpp</a></div><div class="ttdoc">Core features</div></div>
+<div class="ttc" id="aa00080_html"><div class="ttname"><a href="a00080.html">type_vec4.hpp</a></div><div class="ttdoc">Core features</div></div>
+<div class="ttc" id="aa00853_html_gab703732449be6c7199369b3f9a91ed38"><div class="ttname"><a href="a00853.html#gab703732449be6c7199369b3f9a91ed38">glm::length</a></div><div class="ttdeci">GLM_FUNC_DECL T length(qua&lt; T, Q &gt; const &amp;q)</div><div class="ttdoc">Returns the norm of a quaternions.</div></div>
 <!-- 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.10
+</a> 1.8.18
 </small></address>
 </body>
 </html>

+ 0 - 108
doc/api/a00060.html

@@ -1,108 +0,0 @@
-<!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.10"/>
-<title>0.9.9 API documentation: matrix_common.hpp File Reference</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="search/search.css" rel="stylesheet" type="text/css"/>
-<script type="text/javascript" src="search/searchdata.js"></script>
-<script type="text/javascript" src="search/search.js"></script>
-<script type="text/javascript">
-  $(document).ready(function() { init_search(); });
-</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 id="projectlogo"><img alt="Logo" src="logo-mini.png"/></td>
-  <td id="projectalign" style="padding-left: 0.5em;">
-   <div id="projectname">0.9.9 API documentation
-   </div>
-  </td>
- </tr>
- </tbody>
-</table>
-</div>
-<!-- end header part -->
-<!-- Generated by Doxygen 1.8.10 -->
-<script type="text/javascript">
-var searchBox = new SearchBox("searchBox", "search",false,'Search');
-</script>
-  <div id="navrow1" class="tabs">
-    <ul class="tablist">
-      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
-      <li><a href="modules.html"><span>Modules</span></a></li>
-      <li class="current"><a href="files.html"><span>Files</span></a></li>
-      <li>
-        <div id="MSearchBox" class="MSearchBoxInactive">
-        <span class="left">
-          <img id="MSearchSelect" src="search/mag_sel.png"
-               onmouseover="return searchBox.OnSearchSelectShow()"
-               onmouseout="return searchBox.OnSearchSelectHide()"
-               alt=""/>
-          <input type="text" id="MSearchField" value="Search" accesskey="S"
-               onfocus="searchBox.OnSearchFieldFocus(true)" 
-               onblur="searchBox.OnSearchFieldFocus(false)" 
-               onkeyup="searchBox.OnSearchFieldChange(event)"/>
-          </span><span class="right">
-            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
-          </span>
-        </div>
-      </li>
-    </ul>
-  </div>
-  <div id="navrow2" class="tabs2">
-    <ul class="tablist">
-      <li><a href="files.html"><span>File&#160;List</span></a></li>
-    </ul>
-  </div>
-<!-- window showing the filter options -->
-<div id="MSearchSelectWindow"
-     onmouseover="return searchBox.OnSearchSelectShow()"
-     onmouseout="return searchBox.OnSearchSelectHide()"
-     onkeydown="return searchBox.OnSearchSelectKey(event)">
-</div>
-
-<!-- iframe showing the search results (closed by default) -->
-<div id="MSearchResultsWindow">
-<iframe src="javascript:void(0)" frameborder="0" 
-        name="MSearchResults" id="MSearchResults">
-</iframe>
-</div>
-
-<div id="nav-path" class="navpath">
-  <ul>
-<li class="navelem"><a class="el" href="dir_3a581ba30d25676e4b797b1f96d53b45.html">F:</a></li><li class="navelem"><a class="el" href="dir_9e5fe034a00e89334fd5186c3e7db156.html">G-Truc</a></li><li class="navelem"><a class="el" href="dir_d9496f0844b48bc7e53b5af8c99b9ab2.html">Source</a></li><li class="navelem"><a class="el" href="dir_a8bee7be44182a33f3820393ae0b105d.html">G-Truc</a></li><li class="navelem"><a class="el" href="dir_44e5e654415abd9ca6fdeaddaff8565e.html">glm</a></li><li class="navelem"><a class="el" href="dir_cef2d71d502cb69a9252bca2297d9549.html">glm</a></li><li class="navelem"><a class="el" href="dir_6b66465792d005310484819a0eb0b0d3.html">ext</a></li>  </ul>
-</div>
-</div><!-- top -->
-<div class="header">
-  <div class="headertitle">
-<div class="title">matrix_common.hpp File Reference</div>  </div>
-</div><!--header-->
-<div class="contents">
-
-<p><a class="el" href="a00244.html">GLM_EXT_matrix_common</a>  
-<a href="#details">More...</a></p>
-
-<p><a href="a00060_source.html">Go to the source code of this file.</a></p>
-<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
-<div class="textblock"><p><a class="el" href="a00244.html">GLM_EXT_matrix_common</a> </p>
-
-<p>Definition in file <a class="el" href="a00060_source.html">matrix_common.hpp</a>.</p>
-</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.10
-</small></address>
-</body>
-</html>

+ 0 - 123
doc/api/a00060_source.html

@@ -1,123 +0,0 @@
-<!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.10"/>
-<title>0.9.9 API documentation: matrix_common.hpp Source File</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="search/search.css" rel="stylesheet" type="text/css"/>
-<script type="text/javascript" src="search/searchdata.js"></script>
-<script type="text/javascript" src="search/search.js"></script>
-<script type="text/javascript">
-  $(document).ready(function() { init_search(); });
-</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 id="projectlogo"><img alt="Logo" src="logo-mini.png"/></td>
-  <td id="projectalign" style="padding-left: 0.5em;">
-   <div id="projectname">0.9.9 API documentation
-   </div>
-  </td>
- </tr>
- </tbody>
-</table>
-</div>
-<!-- end header part -->
-<!-- Generated by Doxygen 1.8.10 -->
-<script type="text/javascript">
-var searchBox = new SearchBox("searchBox", "search",false,'Search');
-</script>
-  <div id="navrow1" class="tabs">
-    <ul class="tablist">
-      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
-      <li><a href="modules.html"><span>Modules</span></a></li>
-      <li class="current"><a href="files.html"><span>Files</span></a></li>
-      <li>
-        <div id="MSearchBox" class="MSearchBoxInactive">
-        <span class="left">
-          <img id="MSearchSelect" src="search/mag_sel.png"
-               onmouseover="return searchBox.OnSearchSelectShow()"
-               onmouseout="return searchBox.OnSearchSelectHide()"
-               alt=""/>
-          <input type="text" id="MSearchField" value="Search" accesskey="S"
-               onfocus="searchBox.OnSearchFieldFocus(true)" 
-               onblur="searchBox.OnSearchFieldFocus(false)" 
-               onkeyup="searchBox.OnSearchFieldChange(event)"/>
-          </span><span class="right">
-            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
-          </span>
-        </div>
-      </li>
-    </ul>
-  </div>
-  <div id="navrow2" class="tabs2">
-    <ul class="tablist">
-      <li><a href="files.html"><span>File&#160;List</span></a></li>
-    </ul>
-  </div>
-<!-- window showing the filter options -->
-<div id="MSearchSelectWindow"
-     onmouseover="return searchBox.OnSearchSelectShow()"
-     onmouseout="return searchBox.OnSearchSelectHide()"
-     onkeydown="return searchBox.OnSearchSelectKey(event)">
-</div>
-
-<!-- iframe showing the search results (closed by default) -->
-<div id="MSearchResultsWindow">
-<iframe src="javascript:void(0)" frameborder="0" 
-        name="MSearchResults" id="MSearchResults">
-</iframe>
-</div>
-
-<div id="nav-path" class="navpath">
-  <ul>
-<li class="navelem"><a class="el" href="dir_3a581ba30d25676e4b797b1f96d53b45.html">F:</a></li><li class="navelem"><a class="el" href="dir_9e5fe034a00e89334fd5186c3e7db156.html">G-Truc</a></li><li class="navelem"><a class="el" href="dir_d9496f0844b48bc7e53b5af8c99b9ab2.html">Source</a></li><li class="navelem"><a class="el" href="dir_a8bee7be44182a33f3820393ae0b105d.html">G-Truc</a></li><li class="navelem"><a class="el" href="dir_44e5e654415abd9ca6fdeaddaff8565e.html">glm</a></li><li class="navelem"><a class="el" href="dir_cef2d71d502cb69a9252bca2297d9549.html">glm</a></li><li class="navelem"><a class="el" href="dir_6b66465792d005310484819a0eb0b0d3.html">ext</a></li>  </ul>
-</div>
-</div><!-- top -->
-<div class="header">
-  <div class="headertitle">
-<div class="title">matrix_common.hpp</div>  </div>
-</div><!--header-->
-<div class="contents">
-<a href="a00060.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span>&#160;</div>
-<div class="line"><a name="l00013"></a><span class="lineno">   13</span>&#160;<span class="preprocessor">#pragma once</span></div>
-<div class="line"><a name="l00014"></a><span class="lineno">   14</span>&#160;</div>
-<div class="line"><a name="l00015"></a><span class="lineno">   15</span>&#160;<span class="preprocessor">#include &quot;../detail/qualifier.hpp&quot;</span></div>
-<div class="line"><a name="l00016"></a><span class="lineno">   16</span>&#160;<span class="preprocessor">#include &quot;../detail/_fixes.hpp&quot;</span></div>
-<div class="line"><a name="l00017"></a><span class="lineno">   17</span>&#160;</div>
-<div class="line"><a name="l00018"></a><span class="lineno">   18</span>&#160;<span class="preprocessor">#if GLM_MESSAGES == GLM_ENABLE &amp;&amp; !defined(GLM_EXT_INCLUDED)</span></div>
-<div class="line"><a name="l00019"></a><span class="lineno">   19</span>&#160;<span class="preprocessor">#       pragma message(&quot;GLM: GLM_EXT_matrix_transform extension included&quot;)</span></div>
-<div class="line"><a name="l00020"></a><span class="lineno">   20</span>&#160;<span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00021"></a><span class="lineno">   21</span>&#160;</div>
-<div class="line"><a name="l00022"></a><span class="lineno">   22</span>&#160;<span class="keyword">namespace </span><a class="code" href="a00236.html">glm</a></div>
-<div class="line"><a name="l00023"></a><span class="lineno">   23</span>&#160;{</div>
-<div class="line"><a name="l00026"></a><span class="lineno">   26</span>&#160;</div>
-<div class="line"><a name="l00027"></a><span class="lineno">   27</span>&#160;        <span class="keyword">template</span>&lt;length_t C, length_t R, <span class="keyword">typename</span> T, <span class="keyword">typename</span> U, qualifier Q&gt;</div>
-<div class="line"><a name="l00028"></a><span class="lineno">   28</span>&#160;        GLM_FUNC_DECL mat&lt;C, R, T, Q&gt; <a class="code" href="a00241.html#ga8e93f374aae27d1a88b921860351f8d4">mix</a>(mat&lt;C, R, T, Q&gt; <span class="keyword">const</span>&amp; x, mat&lt;C, R, T, Q&gt; <span class="keyword">const</span>&amp; y, mat&lt;C, R, U, Q&gt; <span class="keyword">const</span>&amp; a);</div>
-<div class="line"><a name="l00029"></a><span class="lineno">   29</span>&#160;</div>
-<div class="line"><a name="l00030"></a><span class="lineno">   30</span>&#160;        <span class="keyword">template</span>&lt;length_t C, length_t R, <span class="keyword">typename</span> T, <span class="keyword">typename</span> U, qualifier Q&gt;</div>
-<div class="line"><a name="l00031"></a><span class="lineno">   31</span>&#160;        GLM_FUNC_DECL mat&lt;C, R, T, Q&gt; <a class="code" href="a00241.html#ga8e93f374aae27d1a88b921860351f8d4">mix</a>(mat&lt;C, R, T, Q&gt; <span class="keyword">const</span>&amp; x, mat&lt;C, R, T, Q&gt; <span class="keyword">const</span>&amp; y, U a);</div>
-<div class="line"><a name="l00032"></a><span class="lineno">   32</span>&#160;</div>
-<div class="line"><a name="l00034"></a><span class="lineno">   34</span>&#160;}<span class="comment">//namespace glm</span></div>
-<div class="line"><a name="l00035"></a><span class="lineno">   35</span>&#160;</div>
-<div class="line"><a name="l00036"></a><span class="lineno">   36</span>&#160;<span class="preprocessor">#include &quot;matrix_common.inl&quot;</span></div>
-<div class="ttc" id="a00241_html_ga8e93f374aae27d1a88b921860351f8d4"><div class="ttname"><a href="a00241.html#ga8e93f374aae27d1a88b921860351f8d4">glm::mix</a></div><div class="ttdeci">GLM_FUNC_DECL genTypeT mix(genTypeT x, genTypeT y, genTypeU a)</div><div class="ttdoc">If genTypeU is a floating scalar or vector: Returns x * (1.0 - a) + y * a, i.e., the linear blend of ...</div></div>
-<div class="ttc" id="a00236_html"><div class="ttname"><a href="a00236.html">glm</a></div><div class="ttdef"><b>Definition:</b> <a href="a00015_source.html#l00020">common.hpp:20</a></div></div>
-</div><!-- fragment --></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.10
-</small></address>
-</body>
-</html>

+ 0 - 130
doc/api/a00061_source.html

@@ -1,130 +0,0 @@
-<!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.10"/>
-<title>0.9.9 API documentation: matrix_cross_product.hpp Source File</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="search/search.css" rel="stylesheet" type="text/css"/>
-<script type="text/javascript" src="search/searchdata.js"></script>
-<script type="text/javascript" src="search/search.js"></script>
-<script type="text/javascript">
-  $(document).ready(function() { init_search(); });
-</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 id="projectlogo"><img alt="Logo" src="logo-mini.png"/></td>
-  <td id="projectalign" style="padding-left: 0.5em;">
-   <div id="projectname">0.9.9 API documentation
-   </div>
-  </td>
- </tr>
- </tbody>
-</table>
-</div>
-<!-- end header part -->
-<!-- Generated by Doxygen 1.8.10 -->
-<script type="text/javascript">
-var searchBox = new SearchBox("searchBox", "search",false,'Search');
-</script>
-  <div id="navrow1" class="tabs">
-    <ul class="tablist">
-      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
-      <li><a href="modules.html"><span>Modules</span></a></li>
-      <li class="current"><a href="files.html"><span>Files</span></a></li>
-      <li>
-        <div id="MSearchBox" class="MSearchBoxInactive">
-        <span class="left">
-          <img id="MSearchSelect" src="search/mag_sel.png"
-               onmouseover="return searchBox.OnSearchSelectShow()"
-               onmouseout="return searchBox.OnSearchSelectHide()"
-               alt=""/>
-          <input type="text" id="MSearchField" value="Search" accesskey="S"
-               onfocus="searchBox.OnSearchFieldFocus(true)" 
-               onblur="searchBox.OnSearchFieldFocus(false)" 
-               onkeyup="searchBox.OnSearchFieldChange(event)"/>
-          </span><span class="right">
-            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
-          </span>
-        </div>
-      </li>
-    </ul>
-  </div>
-  <div id="navrow2" class="tabs2">
-    <ul class="tablist">
-      <li><a href="files.html"><span>File&#160;List</span></a></li>
-    </ul>
-  </div>
-<!-- window showing the filter options -->
-<div id="MSearchSelectWindow"
-     onmouseover="return searchBox.OnSearchSelectShow()"
-     onmouseout="return searchBox.OnSearchSelectHide()"
-     onkeydown="return searchBox.OnSearchSelectKey(event)">
-</div>
-
-<!-- iframe showing the search results (closed by default) -->
-<div id="MSearchResultsWindow">
-<iframe src="javascript:void(0)" frameborder="0" 
-        name="MSearchResults" id="MSearchResults">
-</iframe>
-</div>
-
-<div id="nav-path" class="navpath">
-  <ul>
-<li class="navelem"><a class="el" href="dir_3a581ba30d25676e4b797b1f96d53b45.html">F:</a></li><li class="navelem"><a class="el" href="dir_9e5fe034a00e89334fd5186c3e7db156.html">G-Truc</a></li><li class="navelem"><a class="el" href="dir_d9496f0844b48bc7e53b5af8c99b9ab2.html">Source</a></li><li class="navelem"><a class="el" href="dir_a8bee7be44182a33f3820393ae0b105d.html">G-Truc</a></li><li class="navelem"><a class="el" href="dir_44e5e654415abd9ca6fdeaddaff8565e.html">glm</a></li><li class="navelem"><a class="el" href="dir_cef2d71d502cb69a9252bca2297d9549.html">glm</a></li><li class="navelem"><a class="el" href="dir_f35778ec600a1b9bbc4524e62e226aa2.html">gtx</a></li>  </ul>
-</div>
-</div><!-- top -->
-<div class="header">
-  <div class="headertitle">
-<div class="title">matrix_cross_product.hpp</div>  </div>
-</div><!--header-->
-<div class="contents">
-<a href="a00061.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span>&#160;</div>
-<div class="line"><a name="l00014"></a><span class="lineno">   14</span>&#160;<span class="preprocessor">#pragma once</span></div>
-<div class="line"><a name="l00015"></a><span class="lineno">   15</span>&#160;</div>
-<div class="line"><a name="l00016"></a><span class="lineno">   16</span>&#160;<span class="comment">// Dependency:</span></div>
-<div class="line"><a name="l00017"></a><span class="lineno">   17</span>&#160;<span class="preprocessor">#include &quot;../glm.hpp&quot;</span></div>
-<div class="line"><a name="l00018"></a><span class="lineno">   18</span>&#160;</div>
-<div class="line"><a name="l00019"></a><span class="lineno">   19</span>&#160;<span class="preprocessor">#if GLM_MESSAGES == GLM_ENABLE &amp;&amp; !defined(GLM_EXT_INCLUDED)</span></div>
-<div class="line"><a name="l00020"></a><span class="lineno">   20</span>&#160;<span class="preprocessor">#       ifndef GLM_ENABLE_EXPERIMENTAL</span></div>
-<div class="line"><a name="l00021"></a><span class="lineno">   21</span>&#160;<span class="preprocessor">#               pragma message(&quot;GLM: GLM_GTX_matrix_cross_product is an experimental extension and may change in the future. Use #define GLM_ENABLE_EXPERIMENTAL before including it, if you really want to use it.&quot;)</span></div>
-<div class="line"><a name="l00022"></a><span class="lineno">   22</span>&#160;<span class="preprocessor">#       else</span></div>
-<div class="line"><a name="l00023"></a><span class="lineno">   23</span>&#160;<span class="preprocessor">#               pragma message(&quot;GLM: GLM_GTX_matrix_cross_product extension included&quot;)</span></div>
-<div class="line"><a name="l00024"></a><span class="lineno">   24</span>&#160;<span class="preprocessor">#       endif</span></div>
-<div class="line"><a name="l00025"></a><span class="lineno">   25</span>&#160;<span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00026"></a><span class="lineno">   26</span>&#160;</div>
-<div class="line"><a name="l00027"></a><span class="lineno">   27</span>&#160;<span class="keyword">namespace </span><a class="code" href="a00236.html">glm</a></div>
-<div class="line"><a name="l00028"></a><span class="lineno">   28</span>&#160;{</div>
-<div class="line"><a name="l00031"></a><span class="lineno">   31</span>&#160;</div>
-<div class="line"><a name="l00034"></a><span class="lineno">   34</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T, qualifier Q&gt;</div>
-<div class="line"><a name="l00035"></a><span class="lineno">   35</span>&#160;        GLM_FUNC_DECL mat&lt;3, 3, T, Q&gt; <a class="code" href="a00334.html#ga5802386bb4c37b3332a3b6fd8b6960ff">matrixCross3</a>(</div>
-<div class="line"><a name="l00036"></a><span class="lineno">   36</span>&#160;                vec&lt;3, T, Q&gt; <span class="keyword">const</span>&amp; x);</div>
-<div class="line"><a name="l00037"></a><span class="lineno">   37</span>&#160;</div>
-<div class="line"><a name="l00040"></a><span class="lineno">   40</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T, qualifier Q&gt;</div>
-<div class="line"><a name="l00041"></a><span class="lineno">   41</span>&#160;        GLM_FUNC_DECL mat&lt;4, 4, T, Q&gt; <a class="code" href="a00334.html#ga20057fff91ddafa102934adb25458cde">matrixCross4</a>(</div>
-<div class="line"><a name="l00042"></a><span class="lineno">   42</span>&#160;                vec&lt;3, T, Q&gt; <span class="keyword">const</span>&amp; x);</div>
-<div class="line"><a name="l00043"></a><span class="lineno">   43</span>&#160;</div>
-<div class="line"><a name="l00045"></a><span class="lineno">   45</span>&#160;}<span class="comment">//namespace glm</span></div>
-<div class="line"><a name="l00046"></a><span class="lineno">   46</span>&#160;</div>
-<div class="line"><a name="l00047"></a><span class="lineno">   47</span>&#160;<span class="preprocessor">#include &quot;matrix_cross_product.inl&quot;</span></div>
-<div class="ttc" id="a00334_html_ga20057fff91ddafa102934adb25458cde"><div class="ttname"><a href="a00334.html#ga20057fff91ddafa102934adb25458cde">glm::matrixCross4</a></div><div class="ttdeci">GLM_FUNC_DECL mat&lt; 4, 4, T, Q &gt; matrixCross4(vec&lt; 3, T, Q &gt; const &amp;x)</div><div class="ttdoc">Build a cross product matrix. </div></div>
-<div class="ttc" id="a00334_html_ga5802386bb4c37b3332a3b6fd8b6960ff"><div class="ttname"><a href="a00334.html#ga5802386bb4c37b3332a3b6fd8b6960ff">glm::matrixCross3</a></div><div class="ttdeci">GLM_FUNC_DECL mat&lt; 3, 3, T, Q &gt; matrixCross3(vec&lt; 3, T, Q &gt; const &amp;x)</div><div class="ttdoc">Build a cross product matrix. </div></div>
-<div class="ttc" id="a00236_html"><div class="ttname"><a href="a00236.html">glm</a></div><div class="ttdef"><b>Definition:</b> <a href="a00015_source.html#l00020">common.hpp:20</a></div></div>
-</div><!-- fragment --></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.10
-</small></address>
-</body>
-</html>

+ 24 - 53
doc/api/a00062.html

@@ -1,19 +1,17 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://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.10"/>
-<title>0.9.9 API documentation: matrix_decompose.hpp File Reference</title>
+<meta name="generator" content="Doxygen 1.8.18"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>1.0.0 API documentation: type_mat4x3.hpp File Reference</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="search/search.css" rel="stylesheet" type="text/css"/>
 <script type="text/javascript" src="search/searchdata.js"></script>
 <script type="text/javascript" src="search/search.js"></script>
-<script type="text/javascript">
-  $(document).ready(function() { init_search(); });
-</script>
 <link href="doxygen.css" rel="stylesheet" type="text/css" />
 </head>
 <body>
@@ -24,7 +22,7 @@
  <tr style="height: 56px;">
   <td id="projectlogo"><img alt="Logo" src="logo-mini.png"/></td>
   <td id="projectalign" style="padding-left: 0.5em;">
-   <div id="projectname">0.9.9 API documentation
+   <div id="projectname">1.0.0 API documentation
    </div>
   </td>
  </tr>
@@ -32,38 +30,22 @@
 </table>
 </div>
 <!-- end header part -->
-<!-- Generated by Doxygen 1.8.10 -->
+<!-- Generated by Doxygen 1.8.18 -->
 <script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
 var searchBox = new SearchBox("searchBox", "search",false,'Search');
+/* @license-end */
 </script>
-  <div id="navrow1" class="tabs">
-    <ul class="tablist">
-      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
-      <li><a href="modules.html"><span>Modules</span></a></li>
-      <li class="current"><a href="files.html"><span>Files</span></a></li>
-      <li>
-        <div id="MSearchBox" class="MSearchBoxInactive">
-        <span class="left">
-          <img id="MSearchSelect" src="search/mag_sel.png"
-               onmouseover="return searchBox.OnSearchSelectShow()"
-               onmouseout="return searchBox.OnSearchSelectHide()"
-               alt=""/>
-          <input type="text" id="MSearchField" value="Search" accesskey="S"
-               onfocus="searchBox.OnSearchFieldFocus(true)" 
-               onblur="searchBox.OnSearchFieldFocus(false)" 
-               onkeyup="searchBox.OnSearchFieldChange(event)"/>
-          </span><span class="right">
-            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
-          </span>
-        </div>
-      </li>
-    </ul>
-  </div>
-  <div id="navrow2" class="tabs2">
-    <ul class="tablist">
-      <li><a href="files.html"><span>File&#160;List</span></a></li>
-    </ul>
-  </div>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
 <!-- window showing the filter options -->
 <div id="MSearchSelectWindow"
      onmouseover="return searchBox.OnSearchSelectShow()"
@@ -80,40 +62,29 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 
 <div id="nav-path" class="navpath">
   <ul>
-<li class="navelem"><a class="el" href="dir_3a581ba30d25676e4b797b1f96d53b45.html">F:</a></li><li class="navelem"><a class="el" href="dir_9e5fe034a00e89334fd5186c3e7db156.html">G-Truc</a></li><li class="navelem"><a class="el" href="dir_d9496f0844b48bc7e53b5af8c99b9ab2.html">Source</a></li><li class="navelem"><a class="el" href="dir_a8bee7be44182a33f3820393ae0b105d.html">G-Truc</a></li><li class="navelem"><a class="el" href="dir_44e5e654415abd9ca6fdeaddaff8565e.html">glm</a></li><li class="navelem"><a class="el" href="dir_cef2d71d502cb69a9252bca2297d9549.html">glm</a></li><li class="navelem"><a class="el" href="dir_f35778ec600a1b9bbc4524e62e226aa2.html">gtx</a></li>  </ul>
+<li class="navelem"><a class="el" href="dir_885cc87fac2d91e269af0a5a959fa5f6.html">E:</a></li><li class="navelem"><a class="el" href="dir_63ed049134a778d525e06b63afc2c979.html">Github</a></li><li class="navelem"><a class="el" href="dir_c98a9ac98258ab9f831b188d66361a70.html">g-truc</a></li><li class="navelem"><a class="el" href="dir_50f12b6ceb23d7f6adfb377a1ae8b006.html">glm</a></li><li class="navelem"><a class="el" href="dir_fca33f1b5115d46f42c670590789c0d2.html">glm</a></li><li class="navelem"><a class="el" href="dir_382f4fd018b81be8753cb53c0a41a09a.html">detail</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">matrix_decompose.hpp File Reference</div>  </div>
+<div class="title">type_mat4x3.hpp File Reference</div>  </div>
 </div><!--header-->
 <div class="contents">
 
-<p><a class="el" href="a00335.html">GLM_GTX_matrix_decompose</a>  
+<p><a class="el" href="a00889.html">Core features</a>  
 <a href="#details">More...</a></p>
 
 <p><a href="a00062_source.html">Go to the source code of this file.</a></p>
-<table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
-Functions</h2></td></tr>
-<tr class="memitem:gac0e342656ba09a9bc97c57182ba73124"><td class="memTemplParams" colspan="2">template&lt;typename T , qualifier Q&gt; </td></tr>
-<tr class="memitem:gac0e342656ba09a9bc97c57182ba73124"><td class="memTemplItemLeft" align="right" valign="top">GLM_FUNC_DECL bool&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00335.html#gac0e342656ba09a9bc97c57182ba73124">decompose</a> (mat&lt; 4, 4, T, Q &gt; const &amp;modelMatrix, vec&lt; 3, T, Q &gt; &amp;scale, qua&lt; T, Q &gt; &amp;orientation, vec&lt; 3, T, Q &gt; &amp;translation, vec&lt; 3, T, Q &gt; &amp;skew, vec&lt; 4, T, Q &gt; &amp;perspective)</td></tr>
-<tr class="memdesc:gac0e342656ba09a9bc97c57182ba73124"><td class="mdescLeft">&#160;</td><td class="mdescRight">Decomposes a model matrix to translations, rotation and scale components.  <a href="a00335.html#gac0e342656ba09a9bc97c57182ba73124">More...</a><br /></td></tr>
-<tr class="separator:gac0e342656ba09a9bc97c57182ba73124"><td class="memSeparator" colspan="2">&#160;</td></tr>
-</table>
 <a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
-<div class="textblock"><p><a class="el" href="a00335.html">GLM_GTX_matrix_decompose</a> </p>
-<dl class="section see"><dt>See also</dt><dd><a class="el" href="a00280.html" title="Features that implement in C++ the GLSL specification as closely as possible. ">Core features</a> (dependence) </dd></dl>
+<div class="textblock"><p><a class="el" href="a00889.html">Core features</a> </p>
 
-<p>Definition in file <a class="el" href="a00062_source.html">matrix_decompose.hpp</a>.</p>
+<p class="definition">Definition in file <a class="el" href="a00062_source.html">type_mat4x3.hpp</a>.</p>
 </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.10
+</a> 1.8.18
 </small></address>
 </body>
 </html>

+ 193 - 74
doc/api/a00062_source.html

@@ -1,19 +1,17 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://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.10"/>
-<title>0.9.9 API documentation: matrix_decompose.hpp Source File</title>
+<meta name="generator" content="Doxygen 1.8.18"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>1.0.0 API documentation: type_mat4x3.hpp Source File</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="search/search.css" rel="stylesheet" type="text/css"/>
 <script type="text/javascript" src="search/searchdata.js"></script>
 <script type="text/javascript" src="search/search.js"></script>
-<script type="text/javascript">
-  $(document).ready(function() { init_search(); });
-</script>
 <link href="doxygen.css" rel="stylesheet" type="text/css" />
 </head>
 <body>
@@ -24,7 +22,7 @@
  <tr style="height: 56px;">
   <td id="projectlogo"><img alt="Logo" src="logo-mini.png"/></td>
   <td id="projectalign" style="padding-left: 0.5em;">
-   <div id="projectname">0.9.9 API documentation
+   <div id="projectname">1.0.0 API documentation
    </div>
   </td>
  </tr>
@@ -32,38 +30,22 @@
 </table>
 </div>
 <!-- end header part -->
-<!-- Generated by Doxygen 1.8.10 -->
+<!-- Generated by Doxygen 1.8.18 -->
 <script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
 var searchBox = new SearchBox("searchBox", "search",false,'Search');
+/* @license-end */
 </script>
-  <div id="navrow1" class="tabs">
-    <ul class="tablist">
-      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
-      <li><a href="modules.html"><span>Modules</span></a></li>
-      <li class="current"><a href="files.html"><span>Files</span></a></li>
-      <li>
-        <div id="MSearchBox" class="MSearchBoxInactive">
-        <span class="left">
-          <img id="MSearchSelect" src="search/mag_sel.png"
-               onmouseover="return searchBox.OnSearchSelectShow()"
-               onmouseout="return searchBox.OnSearchSelectHide()"
-               alt=""/>
-          <input type="text" id="MSearchField" value="Search" accesskey="S"
-               onfocus="searchBox.OnSearchFieldFocus(true)" 
-               onblur="searchBox.OnSearchFieldFocus(false)" 
-               onkeyup="searchBox.OnSearchFieldChange(event)"/>
-          </span><span class="right">
-            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
-          </span>
-        </div>
-      </li>
-    </ul>
-  </div>
-  <div id="navrow2" class="tabs2">
-    <ul class="tablist">
-      <li><a href="files.html"><span>File&#160;List</span></a></li>
-    </ul>
-  </div>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
 <!-- window showing the filter options -->
 <div id="MSearchSelectWindow"
      onmouseover="return searchBox.OnSearchSelectShow()"
@@ -80,55 +62,192 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 
 <div id="nav-path" class="navpath">
   <ul>
-<li class="navelem"><a class="el" href="dir_3a581ba30d25676e4b797b1f96d53b45.html">F:</a></li><li class="navelem"><a class="el" href="dir_9e5fe034a00e89334fd5186c3e7db156.html">G-Truc</a></li><li class="navelem"><a class="el" href="dir_d9496f0844b48bc7e53b5af8c99b9ab2.html">Source</a></li><li class="navelem"><a class="el" href="dir_a8bee7be44182a33f3820393ae0b105d.html">G-Truc</a></li><li class="navelem"><a class="el" href="dir_44e5e654415abd9ca6fdeaddaff8565e.html">glm</a></li><li class="navelem"><a class="el" href="dir_cef2d71d502cb69a9252bca2297d9549.html">glm</a></li><li class="navelem"><a class="el" href="dir_f35778ec600a1b9bbc4524e62e226aa2.html">gtx</a></li>  </ul>
+<li class="navelem"><a class="el" href="dir_885cc87fac2d91e269af0a5a959fa5f6.html">E:</a></li><li class="navelem"><a class="el" href="dir_63ed049134a778d525e06b63afc2c979.html">Github</a></li><li class="navelem"><a class="el" href="dir_c98a9ac98258ab9f831b188d66361a70.html">g-truc</a></li><li class="navelem"><a class="el" href="dir_50f12b6ceb23d7f6adfb377a1ae8b006.html">glm</a></li><li class="navelem"><a class="el" href="dir_fca33f1b5115d46f42c670590789c0d2.html">glm</a></li><li class="navelem"><a class="el" href="dir_382f4fd018b81be8753cb53c0a41a09a.html">detail</a></li>  </ul>
 </div>
 </div><!-- top -->
 <div class="header">
   <div class="headertitle">
-<div class="title">matrix_decompose.hpp</div>  </div>
+<div class="title">type_mat4x3.hpp</div>  </div>
 </div><!--header-->
 <div class="contents">
-<a href="a00062.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span>&#160;</div>
-<div class="line"><a name="l00013"></a><span class="lineno">   13</span>&#160;<span class="preprocessor">#pragma once</span></div>
-<div class="line"><a name="l00014"></a><span class="lineno">   14</span>&#160;</div>
-<div class="line"><a name="l00015"></a><span class="lineno">   15</span>&#160;<span class="comment">// Dependencies</span></div>
-<div class="line"><a name="l00016"></a><span class="lineno">   16</span>&#160;<span class="preprocessor">#include &quot;../mat4x4.hpp&quot;</span></div>
-<div class="line"><a name="l00017"></a><span class="lineno">   17</span>&#160;<span class="preprocessor">#include &quot;../vec3.hpp&quot;</span></div>
-<div class="line"><a name="l00018"></a><span class="lineno">   18</span>&#160;<span class="preprocessor">#include &quot;../vec4.hpp&quot;</span></div>
-<div class="line"><a name="l00019"></a><span class="lineno">   19</span>&#160;<span class="preprocessor">#include &quot;../geometric.hpp&quot;</span></div>
-<div class="line"><a name="l00020"></a><span class="lineno">   20</span>&#160;<span class="preprocessor">#include &quot;../gtc/quaternion.hpp&quot;</span></div>
-<div class="line"><a name="l00021"></a><span class="lineno">   21</span>&#160;<span class="preprocessor">#include &quot;../gtc/matrix_transform.hpp&quot;</span></div>
-<div class="line"><a name="l00022"></a><span class="lineno">   22</span>&#160;</div>
-<div class="line"><a name="l00023"></a><span class="lineno">   23</span>&#160;<span class="preprocessor">#if GLM_MESSAGES == GLM_ENABLE &amp;&amp; !defined(GLM_EXT_INCLUDED)</span></div>
-<div class="line"><a name="l00024"></a><span class="lineno">   24</span>&#160;<span class="preprocessor">#       ifndef GLM_ENABLE_EXPERIMENTAL</span></div>
-<div class="line"><a name="l00025"></a><span class="lineno">   25</span>&#160;<span class="preprocessor">#               pragma message(&quot;GLM: GLM_GTX_matrix_decompose is an experimental extension and may change in the future. Use #define GLM_ENABLE_EXPERIMENTAL before including it, if you really want to use it.&quot;)</span></div>
-<div class="line"><a name="l00026"></a><span class="lineno">   26</span>&#160;<span class="preprocessor">#       else</span></div>
-<div class="line"><a name="l00027"></a><span class="lineno">   27</span>&#160;<span class="preprocessor">#               pragma message(&quot;GLM: GLM_GTX_matrix_decompose extension included&quot;)</span></div>
-<div class="line"><a name="l00028"></a><span class="lineno">   28</span>&#160;<span class="preprocessor">#       endif</span></div>
-<div class="line"><a name="l00029"></a><span class="lineno">   29</span>&#160;<span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00030"></a><span class="lineno">   30</span>&#160;</div>
-<div class="line"><a name="l00031"></a><span class="lineno">   31</span>&#160;<span class="keyword">namespace </span><a class="code" href="a00236.html">glm</a></div>
-<div class="line"><a name="l00032"></a><span class="lineno">   32</span>&#160;{</div>
-<div class="line"><a name="l00035"></a><span class="lineno">   35</span>&#160;</div>
-<div class="line"><a name="l00038"></a><span class="lineno">   38</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T, qualifier Q&gt;</div>
-<div class="line"><a name="l00039"></a><span class="lineno">   39</span>&#160;        GLM_FUNC_DECL <span class="keywordtype">bool</span> <a class="code" href="a00335.html#gac0e342656ba09a9bc97c57182ba73124">decompose</a>(</div>
-<div class="line"><a name="l00040"></a><span class="lineno">   40</span>&#160;                mat&lt;4, 4, T, Q&gt; <span class="keyword">const</span>&amp; modelMatrix,</div>
-<div class="line"><a name="l00041"></a><span class="lineno">   41</span>&#160;                vec&lt;3, T, Q&gt; &amp; <a class="code" href="a00247.html#ga05051adbee603fb3c5095d8cf5cc229b">scale</a>, qua&lt;T, Q&gt; &amp; <a class="code" href="a00356.html#ga1a32fceb71962e6160e8af295c91930a">orientation</a>, vec&lt;3, T, Q&gt; &amp; translation, vec&lt;3, T, Q&gt; &amp; skew, vec&lt;4, T, Q&gt; &amp; <a class="code" href="a00243.html#ga747c8cf99458663dd7ad1bb3a2f07787">perspective</a>);</div>
-<div class="line"><a name="l00042"></a><span class="lineno">   42</span>&#160;</div>
-<div class="line"><a name="l00044"></a><span class="lineno">   44</span>&#160;}<span class="comment">//namespace glm</span></div>
-<div class="line"><a name="l00045"></a><span class="lineno">   45</span>&#160;</div>
-<div class="line"><a name="l00046"></a><span class="lineno">   46</span>&#160;<span class="preprocessor">#include &quot;matrix_decompose.inl&quot;</span></div>
-<div class="ttc" id="a00335_html_gac0e342656ba09a9bc97c57182ba73124"><div class="ttname"><a href="a00335.html#gac0e342656ba09a9bc97c57182ba73124">glm::decompose</a></div><div class="ttdeci">GLM_FUNC_DECL bool decompose(mat&lt; 4, 4, T, Q &gt; const &amp;modelMatrix, vec&lt; 3, T, Q &gt; &amp;scale, qua&lt; T, Q &gt; &amp;orientation, vec&lt; 3, T, Q &gt; &amp;translation, vec&lt; 3, T, Q &gt; &amp;skew, vec&lt; 4, T, Q &gt; &amp;perspective)</div><div class="ttdoc">Decomposes a model matrix to translations, rotation and scale components. </div></div>
-<div class="ttc" id="a00247_html_ga05051adbee603fb3c5095d8cf5cc229b"><div class="ttname"><a href="a00247.html#ga05051adbee603fb3c5095d8cf5cc229b">glm::scale</a></div><div class="ttdeci">GLM_FUNC_DECL mat&lt; 4, 4, T, Q &gt; scale(mat&lt; 4, 4, T, Q &gt; const &amp;m, vec&lt; 3, T, Q &gt; const &amp;v)</div><div class="ttdoc">Builds a scale 4 * 4 matrix created from 3 scalars. </div></div>
-<div class="ttc" id="a00243_html_ga747c8cf99458663dd7ad1bb3a2f07787"><div class="ttname"><a href="a00243.html#ga747c8cf99458663dd7ad1bb3a2f07787">glm::perspective</a></div><div class="ttdeci">GLM_FUNC_DECL mat&lt; 4, 4, T, defaultp &gt; perspective(T fovy, T aspect, T near, T far)</div><div class="ttdoc">Creates a matrix for a symetric perspective-view frustum based on the default handedness and default ...</div></div>
-<div class="ttc" id="a00356_html_ga1a32fceb71962e6160e8af295c91930a"><div class="ttname"><a href="a00356.html#ga1a32fceb71962e6160e8af295c91930a">glm::orientation</a></div><div class="ttdeci">GLM_FUNC_DECL mat&lt; 4, 4, T, Q &gt; orientation(vec&lt; 3, T, Q &gt; const &amp;Normal, vec&lt; 3, T, Q &gt; const &amp;Up)</div><div class="ttdoc">Build a rotation matrix from a normal and a up vector. </div></div>
-<div class="ttc" id="a00236_html"><div class="ttname"><a href="a00236.html">glm</a></div><div class="ttdef"><b>Definition:</b> <a href="a00015_source.html#l00020">common.hpp:20</a></div></div>
+<a href="a00062.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span>&#160; </div>
+<div class="line"><a name="l00004"></a><span class="lineno">    4</span>&#160;<span class="preprocessor">#pragma once</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno">    5</span>&#160; </div>
+<div class="line"><a name="l00006"></a><span class="lineno">    6</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="a00077.html">type_vec3.hpp</a>&quot;</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno">    7</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="a00080.html">type_vec4.hpp</a>&quot;</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno">    8</span>&#160;<span class="preprocessor">#include &lt;limits&gt;</span></div>
+<div class="line"><a name="l00009"></a><span class="lineno">    9</span>&#160;<span class="preprocessor">#include &lt;cstddef&gt;</span></div>
+<div class="line"><a name="l00010"></a><span class="lineno">   10</span>&#160; </div>
+<div class="line"><a name="l00011"></a><span class="lineno">   11</span>&#160;<span class="keyword">namespace </span>glm</div>
+<div class="line"><a name="l00012"></a><span class="lineno">   12</span>&#160;{</div>
+<div class="line"><a name="l00013"></a><span class="lineno">   13</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T, qualifier Q&gt;</div>
+<div class="line"><a name="l00014"></a><span class="lineno">   14</span>&#160;        <span class="keyword">struct </span>mat&lt;4, 3, T, Q&gt;</div>
+<div class="line"><a name="l00015"></a><span class="lineno">   15</span>&#160;        {</div>
+<div class="line"><a name="l00016"></a><span class="lineno">   16</span>&#160;                <span class="keyword">typedef</span> vec&lt;3, T, Q&gt; col_type;</div>
+<div class="line"><a name="l00017"></a><span class="lineno">   17</span>&#160;                <span class="keyword">typedef</span> vec&lt;4, T, Q&gt; row_type;</div>
+<div class="line"><a name="l00018"></a><span class="lineno">   18</span>&#160;                <span class="keyword">typedef</span> mat&lt;4, 3, T, Q&gt; type;</div>
+<div class="line"><a name="l00019"></a><span class="lineno">   19</span>&#160;                <span class="keyword">typedef</span> mat&lt;3, 4, T, Q&gt; transpose_type;</div>
+<div class="line"><a name="l00020"></a><span class="lineno">   20</span>&#160;                <span class="keyword">typedef</span> T value_type;</div>
+<div class="line"><a name="l00021"></a><span class="lineno">   21</span>&#160; </div>
+<div class="line"><a name="l00022"></a><span class="lineno">   22</span>&#160;        <span class="keyword">private</span>:</div>
+<div class="line"><a name="l00023"></a><span class="lineno">   23</span>&#160;                col_type value[4];</div>
+<div class="line"><a name="l00024"></a><span class="lineno">   24</span>&#160; </div>
+<div class="line"><a name="l00025"></a><span class="lineno">   25</span>&#160;        <span class="keyword">public</span>:</div>
+<div class="line"><a name="l00026"></a><span class="lineno">   26</span>&#160;                <span class="comment">// -- Accesses --</span></div>
+<div class="line"><a name="l00027"></a><span class="lineno">   27</span>&#160; </div>
+<div class="line"><a name="l00028"></a><span class="lineno">   28</span>&#160;                <span class="keyword">typedef</span> length_t length_type;</div>
+<div class="line"><a name="l00029"></a><span class="lineno">   29</span>&#160;                GLM_FUNC_DECL <span class="keyword">static</span> GLM_CONSTEXPR length_type <a class="code" href="a00853.html#gab703732449be6c7199369b3f9a91ed38">length</a>() { <span class="keywordflow">return</span> 4; }</div>
+<div class="line"><a name="l00030"></a><span class="lineno">   30</span>&#160; </div>
+<div class="line"><a name="l00031"></a><span class="lineno">   31</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR col_type &amp; operator[](length_type i) GLM_NOEXCEPT;</div>
+<div class="line"><a name="l00032"></a><span class="lineno">   32</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR col_type <span class="keyword">const</span>&amp; operator[](length_type i) <span class="keyword">const</span> GLM_NOEXCEPT;</div>
+<div class="line"><a name="l00033"></a><span class="lineno">   33</span>&#160; </div>
+<div class="line"><a name="l00034"></a><span class="lineno">   34</span>&#160;                <span class="comment">// -- Constructors --</span></div>
+<div class="line"><a name="l00035"></a><span class="lineno">   35</span>&#160; </div>
+<div class="line"><a name="l00036"></a><span class="lineno">   36</span>&#160;                GLM_DEFAULTED_DEFAULT_CTOR_DECL GLM_CONSTEXPR mat() GLM_DEFAULT_CTOR;</div>
+<div class="line"><a name="l00037"></a><span class="lineno">   37</span>&#160;                template&lt;qualifier P&gt;</div>
+<div class="line"><a name="l00038"></a><span class="lineno">   38</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR mat(mat&lt;4, 3, T, P&gt; const&amp; m);</div>
+<div class="line"><a name="l00039"></a><span class="lineno">   39</span>&#160; </div>
+<div class="line"><a name="l00040"></a><span class="lineno">   40</span>&#160;                GLM_FUNC_DECL explicit GLM_CONSTEXPR mat(T s);</div>
+<div class="line"><a name="l00041"></a><span class="lineno">   41</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR mat(</div>
+<div class="line"><a name="l00042"></a><span class="lineno">   42</span>&#160;                        T const&amp; x0, T const&amp; y0, T const&amp; z0,</div>
+<div class="line"><a name="l00043"></a><span class="lineno">   43</span>&#160;                        T const&amp; x1, T const&amp; y1, T const&amp; z1,</div>
+<div class="line"><a name="l00044"></a><span class="lineno">   44</span>&#160;                        T const&amp; x2, T const&amp; y2, T const&amp; z2,</div>
+<div class="line"><a name="l00045"></a><span class="lineno">   45</span>&#160;                        T const&amp; x3, T const&amp; y3, T const&amp; z3);</div>
+<div class="line"><a name="l00046"></a><span class="lineno">   46</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR mat(</div>
+<div class="line"><a name="l00047"></a><span class="lineno">   47</span>&#160;                        col_type const&amp; v0,</div>
+<div class="line"><a name="l00048"></a><span class="lineno">   48</span>&#160;                        col_type const&amp; v1,</div>
+<div class="line"><a name="l00049"></a><span class="lineno">   49</span>&#160;                        col_type const&amp; v2,</div>
+<div class="line"><a name="l00050"></a><span class="lineno">   50</span>&#160;                        col_type const&amp; v3);</div>
+<div class="line"><a name="l00051"></a><span class="lineno">   51</span>&#160; </div>
+<div class="line"><a name="l00052"></a><span class="lineno">   52</span>&#160;                <span class="comment">// -- Conversions --</span></div>
+<div class="line"><a name="l00053"></a><span class="lineno">   53</span>&#160; </div>
+<div class="line"><a name="l00054"></a><span class="lineno">   54</span>&#160;                template&lt;</div>
+<div class="line"><a name="l00055"></a><span class="lineno">   55</span>&#160;                        typename X1, typename Y1, typename Z1,</div>
+<div class="line"><a name="l00056"></a><span class="lineno">   56</span>&#160;                        typename X2, typename Y2, typename Z2,</div>
+<div class="line"><a name="l00057"></a><span class="lineno">   57</span>&#160;                        typename X3, typename Y3, typename Z3,</div>
+<div class="line"><a name="l00058"></a><span class="lineno">   58</span>&#160;                        typename X4, typename Y4, typename Z4&gt;</div>
+<div class="line"><a name="l00059"></a><span class="lineno">   59</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR mat(</div>
+<div class="line"><a name="l00060"></a><span class="lineno">   60</span>&#160;                        X1 const&amp; x1, Y1 const&amp; y1, Z1 const&amp; z1,</div>
+<div class="line"><a name="l00061"></a><span class="lineno">   61</span>&#160;                        X2 const&amp; x2, Y2 const&amp; y2, Z2 const&amp; z2,</div>
+<div class="line"><a name="l00062"></a><span class="lineno">   62</span>&#160;                        X3 const&amp; x3, Y3 const&amp; y3, Z3 const&amp; z3,</div>
+<div class="line"><a name="l00063"></a><span class="lineno">   63</span>&#160;                        X4 const&amp; x4, Y4 const&amp; y4, Z4 const&amp; z4);</div>
+<div class="line"><a name="l00064"></a><span class="lineno">   64</span>&#160; </div>
+<div class="line"><a name="l00065"></a><span class="lineno">   65</span>&#160;                template&lt;typename V1, typename V2, typename V3, typename V4&gt;</div>
+<div class="line"><a name="l00066"></a><span class="lineno">   66</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR mat(</div>
+<div class="line"><a name="l00067"></a><span class="lineno">   67</span>&#160;                        vec&lt;3, V1, Q&gt; const&amp; v1,</div>
+<div class="line"><a name="l00068"></a><span class="lineno">   68</span>&#160;                        vec&lt;3, V2, Q&gt; const&amp; v2,</div>
+<div class="line"><a name="l00069"></a><span class="lineno">   69</span>&#160;                        vec&lt;3, V3, Q&gt; const&amp; v3,</div>
+<div class="line"><a name="l00070"></a><span class="lineno">   70</span>&#160;                        vec&lt;3, V4, Q&gt; const&amp; v4);</div>
+<div class="line"><a name="l00071"></a><span class="lineno">   71</span>&#160; </div>
+<div class="line"><a name="l00072"></a><span class="lineno">   72</span>&#160;                <span class="comment">// -- Matrix conversions --</span></div>
+<div class="line"><a name="l00073"></a><span class="lineno">   73</span>&#160; </div>
+<div class="line"><a name="l00074"></a><span class="lineno">   74</span>&#160;                template&lt;typename U, qualifier P&gt;</div>
+<div class="line"><a name="l00075"></a><span class="lineno">   75</span>&#160;                GLM_FUNC_DECL GLM_EXPLICIT GLM_CONSTEXPR mat(mat&lt;4, 3, U, P&gt; const&amp; m);</div>
+<div class="line"><a name="l00076"></a><span class="lineno">   76</span>&#160; </div>
+<div class="line"><a name="l00077"></a><span class="lineno">   77</span>&#160;                GLM_FUNC_DECL GLM_EXPLICIT GLM_CONSTEXPR mat(mat&lt;2, 2, T, Q&gt; const&amp; x);</div>
+<div class="line"><a name="l00078"></a><span class="lineno">   78</span>&#160;                GLM_FUNC_DECL GLM_EXPLICIT GLM_CONSTEXPR mat(mat&lt;3, 3, T, Q&gt; const&amp; x);</div>
+<div class="line"><a name="l00079"></a><span class="lineno">   79</span>&#160;                GLM_FUNC_DECL GLM_EXPLICIT GLM_CONSTEXPR mat(mat&lt;4, 4, T, Q&gt; const&amp; x);</div>
+<div class="line"><a name="l00080"></a><span class="lineno">   80</span>&#160;                GLM_FUNC_DECL GLM_EXPLICIT GLM_CONSTEXPR mat(mat&lt;2, 3, T, Q&gt; const&amp; x);</div>
+<div class="line"><a name="l00081"></a><span class="lineno">   81</span>&#160;                GLM_FUNC_DECL GLM_EXPLICIT GLM_CONSTEXPR mat(mat&lt;3, 2, T, Q&gt; const&amp; x);</div>
+<div class="line"><a name="l00082"></a><span class="lineno">   82</span>&#160;                GLM_FUNC_DECL GLM_EXPLICIT GLM_CONSTEXPR mat(mat&lt;2, 4, T, Q&gt; const&amp; x);</div>
+<div class="line"><a name="l00083"></a><span class="lineno">   83</span>&#160;                GLM_FUNC_DECL GLM_EXPLICIT GLM_CONSTEXPR mat(mat&lt;4, 2, T, Q&gt; const&amp; x);</div>
+<div class="line"><a name="l00084"></a><span class="lineno">   84</span>&#160;                GLM_FUNC_DECL GLM_EXPLICIT GLM_CONSTEXPR mat(mat&lt;3, 4, T, Q&gt; const&amp; x);</div>
+<div class="line"><a name="l00085"></a><span class="lineno">   85</span>&#160; </div>
+<div class="line"><a name="l00086"></a><span class="lineno">   86</span>&#160;                <span class="comment">// -- Unary arithmetic operators --</span></div>
+<div class="line"><a name="l00087"></a><span class="lineno">   87</span>&#160; </div>
+<div class="line"><a name="l00088"></a><span class="lineno">   88</span>&#160;                template&lt;typename U&gt;</div>
+<div class="line"><a name="l00089"></a><span class="lineno">   89</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR mat&lt;4, 3, T, Q&gt; &amp; operator=(mat&lt;4, 3, U, Q&gt; const&amp; m);</div>
+<div class="line"><a name="l00090"></a><span class="lineno">   90</span>&#160;                template&lt;typename U&gt;</div>
+<div class="line"><a name="l00091"></a><span class="lineno">   91</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR mat&lt;4, 3, T, Q&gt; &amp; operator+=(U s);</div>
+<div class="line"><a name="l00092"></a><span class="lineno">   92</span>&#160;                template&lt;typename U&gt;</div>
+<div class="line"><a name="l00093"></a><span class="lineno">   93</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR mat&lt;4, 3, T, Q&gt; &amp; operator+=(mat&lt;4, 3, U, Q&gt; const&amp; m);</div>
+<div class="line"><a name="l00094"></a><span class="lineno">   94</span>&#160;                template&lt;typename U&gt;</div>
+<div class="line"><a name="l00095"></a><span class="lineno">   95</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR mat&lt;4, 3, T, Q&gt; &amp; operator-=(U s);</div>
+<div class="line"><a name="l00096"></a><span class="lineno">   96</span>&#160;                template&lt;typename U&gt;</div>
+<div class="line"><a name="l00097"></a><span class="lineno">   97</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR mat&lt;4, 3, T, Q&gt; &amp; operator-=(mat&lt;4, 3, U, Q&gt; const&amp; m);</div>
+<div class="line"><a name="l00098"></a><span class="lineno">   98</span>&#160;                template&lt;typename U&gt;</div>
+<div class="line"><a name="l00099"></a><span class="lineno">   99</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR mat&lt;4, 3, T, Q&gt; &amp; operator*=(U s);</div>
+<div class="line"><a name="l00100"></a><span class="lineno">  100</span>&#160;                template&lt;typename U&gt;</div>
+<div class="line"><a name="l00101"></a><span class="lineno">  101</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR mat&lt;4, 3, T, Q&gt; &amp; operator/=(U s);</div>
+<div class="line"><a name="l00102"></a><span class="lineno">  102</span>&#160; </div>
+<div class="line"><a name="l00103"></a><span class="lineno">  103</span>&#160;                <span class="comment">// -- Increment and decrement operators --</span></div>
+<div class="line"><a name="l00104"></a><span class="lineno">  104</span>&#160; </div>
+<div class="line"><a name="l00105"></a><span class="lineno">  105</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR mat&lt;4, 3, T, Q&gt;&amp; operator++();</div>
+<div class="line"><a name="l00106"></a><span class="lineno">  106</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR mat&lt;4, 3, T, Q&gt;&amp; operator--();</div>
+<div class="line"><a name="l00107"></a><span class="lineno">  107</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR mat&lt;4, 3, T, Q&gt; operator++(<span class="keywordtype">int</span>);</div>
+<div class="line"><a name="l00108"></a><span class="lineno">  108</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR mat&lt;4, 3, T, Q&gt; operator--(<span class="keywordtype">int</span>);</div>
+<div class="line"><a name="l00109"></a><span class="lineno">  109</span>&#160;        };</div>
+<div class="line"><a name="l00110"></a><span class="lineno">  110</span>&#160; </div>
+<div class="line"><a name="l00111"></a><span class="lineno">  111</span>&#160;        <span class="comment">// -- Unary operators --</span></div>
+<div class="line"><a name="l00112"></a><span class="lineno">  112</span>&#160; </div>
+<div class="line"><a name="l00113"></a><span class="lineno">  113</span>&#160;        template&lt;typename T, qualifier Q&gt;</div>
+<div class="line"><a name="l00114"></a><span class="lineno">  114</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR mat&lt;4, 3, T, Q&gt; operator+(mat&lt;4, 3, T, Q&gt; const&amp; m);</div>
+<div class="line"><a name="l00115"></a><span class="lineno">  115</span>&#160; </div>
+<div class="line"><a name="l00116"></a><span class="lineno">  116</span>&#160;        template&lt;typename T, qualifier Q&gt;</div>
+<div class="line"><a name="l00117"></a><span class="lineno">  117</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR mat&lt;4, 3, T, Q&gt; operator-(mat&lt;4, 3, T, Q&gt; const&amp; m);</div>
+<div class="line"><a name="l00118"></a><span class="lineno">  118</span>&#160; </div>
+<div class="line"><a name="l00119"></a><span class="lineno">  119</span>&#160;        <span class="comment">// -- Binary operators --</span></div>
+<div class="line"><a name="l00120"></a><span class="lineno">  120</span>&#160; </div>
+<div class="line"><a name="l00121"></a><span class="lineno">  121</span>&#160;        template&lt;typename T, qualifier Q&gt;</div>
+<div class="line"><a name="l00122"></a><span class="lineno">  122</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR mat&lt;4, 3, T, Q&gt; operator+(mat&lt;4, 3, T, Q&gt; const&amp; m, T scalar);</div>
+<div class="line"><a name="l00123"></a><span class="lineno">  123</span>&#160; </div>
+<div class="line"><a name="l00124"></a><span class="lineno">  124</span>&#160;        template&lt;typename T, qualifier Q&gt;</div>
+<div class="line"><a name="l00125"></a><span class="lineno">  125</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR mat&lt;4, 3, T, Q&gt; operator+(mat&lt;4, 3, T, Q&gt; const&amp; m1, mat&lt;4, 3, T, Q&gt; const&amp; m2);</div>
+<div class="line"><a name="l00126"></a><span class="lineno">  126</span>&#160; </div>
+<div class="line"><a name="l00127"></a><span class="lineno">  127</span>&#160;        template&lt;typename T, qualifier Q&gt;</div>
+<div class="line"><a name="l00128"></a><span class="lineno">  128</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR mat&lt;4, 3, T, Q&gt; operator-(mat&lt;4, 3, T, Q&gt; const&amp; m, T scalar);</div>
+<div class="line"><a name="l00129"></a><span class="lineno">  129</span>&#160; </div>
+<div class="line"><a name="l00130"></a><span class="lineno">  130</span>&#160;        template&lt;typename T, qualifier Q&gt;</div>
+<div class="line"><a name="l00131"></a><span class="lineno">  131</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR mat&lt;4, 3, T, Q&gt; operator-(mat&lt;4, 3, T, Q&gt; const&amp; m1, mat&lt;4, 3, T, Q&gt; const&amp; m2);</div>
+<div class="line"><a name="l00132"></a><span class="lineno">  132</span>&#160; </div>
+<div class="line"><a name="l00133"></a><span class="lineno">  133</span>&#160;        template&lt;typename T, qualifier Q&gt;</div>
+<div class="line"><a name="l00134"></a><span class="lineno">  134</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR mat&lt;4, 3, T, Q&gt; operator*(mat&lt;4, 3, T, Q&gt; const&amp; m, T scalar);</div>
+<div class="line"><a name="l00135"></a><span class="lineno">  135</span>&#160; </div>
+<div class="line"><a name="l00136"></a><span class="lineno">  136</span>&#160;        template&lt;typename T, qualifier Q&gt;</div>
+<div class="line"><a name="l00137"></a><span class="lineno">  137</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR mat&lt;4, 3, T, Q&gt; operator*(T scalar, mat&lt;4, 3, T, Q&gt; const&amp; m);</div>
+<div class="line"><a name="l00138"></a><span class="lineno">  138</span>&#160; </div>
+<div class="line"><a name="l00139"></a><span class="lineno">  139</span>&#160;        template&lt;typename T, qualifier Q&gt;</div>
+<div class="line"><a name="l00140"></a><span class="lineno">  140</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR typename mat&lt;4, 3, T, Q&gt;::col_type operator*(mat&lt;4, 3, T, Q&gt; const&amp; m, typename mat&lt;4, 3, T, Q&gt;::row_type const&amp; v);</div>
+<div class="line"><a name="l00141"></a><span class="lineno">  141</span>&#160; </div>
+<div class="line"><a name="l00142"></a><span class="lineno">  142</span>&#160;        template&lt;typename T, qualifier Q&gt;</div>
+<div class="line"><a name="l00143"></a><span class="lineno">  143</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR typename mat&lt;4, 3, T, Q&gt;::row_type operator*(typename mat&lt;4, 3, T, Q&gt;::col_type const&amp; v, mat&lt;4, 3, T, Q&gt; const&amp; m);</div>
+<div class="line"><a name="l00144"></a><span class="lineno">  144</span>&#160; </div>
+<div class="line"><a name="l00145"></a><span class="lineno">  145</span>&#160;        template&lt;typename T, qualifier Q&gt;</div>
+<div class="line"><a name="l00146"></a><span class="lineno">  146</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR mat&lt;2, 3, T, Q&gt; operator*(mat&lt;4, 3, T, Q&gt; const&amp; m1, mat&lt;2, 4, T, Q&gt; const&amp; m2);</div>
+<div class="line"><a name="l00147"></a><span class="lineno">  147</span>&#160; </div>
+<div class="line"><a name="l00148"></a><span class="lineno">  148</span>&#160;        template&lt;typename T, qualifier Q&gt;</div>
+<div class="line"><a name="l00149"></a><span class="lineno">  149</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR mat&lt;3, 3, T, Q&gt; operator*(mat&lt;4, 3, T, Q&gt; const&amp; m1,        mat&lt;3, 4, T, Q&gt; const&amp; m2);</div>
+<div class="line"><a name="l00150"></a><span class="lineno">  150</span>&#160; </div>
+<div class="line"><a name="l00151"></a><span class="lineno">  151</span>&#160;        template&lt;typename T, qualifier Q&gt;</div>
+<div class="line"><a name="l00152"></a><span class="lineno">  152</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR mat&lt;4, 3, T, Q&gt; operator*(mat&lt;4, 3, T, Q&gt; const&amp; m1, mat&lt;4, 4, T, Q&gt; const&amp; m2);</div>
+<div class="line"><a name="l00153"></a><span class="lineno">  153</span>&#160; </div>
+<div class="line"><a name="l00154"></a><span class="lineno">  154</span>&#160;        template&lt;typename T, qualifier Q&gt;</div>
+<div class="line"><a name="l00155"></a><span class="lineno">  155</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR mat&lt;4, 3, T, Q&gt; operator/(mat&lt;4, 3, T, Q&gt; const&amp; m, T scalar);</div>
+<div class="line"><a name="l00156"></a><span class="lineno">  156</span>&#160; </div>
+<div class="line"><a name="l00157"></a><span class="lineno">  157</span>&#160;        template&lt;typename T, qualifier Q&gt;</div>
+<div class="line"><a name="l00158"></a><span class="lineno">  158</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR mat&lt;4, 3, T, Q&gt; operator/(T scalar, mat&lt;4, 3, T, Q&gt; const&amp; m);</div>
+<div class="line"><a name="l00159"></a><span class="lineno">  159</span>&#160; </div>
+<div class="line"><a name="l00160"></a><span class="lineno">  160</span>&#160;        <span class="comment">// -- Boolean operators --</span></div>
+<div class="line"><a name="l00161"></a><span class="lineno">  161</span>&#160; </div>
+<div class="line"><a name="l00162"></a><span class="lineno">  162</span>&#160;        template&lt;typename T, qualifier Q&gt;</div>
+<div class="line"><a name="l00163"></a><span class="lineno">  163</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR <span class="keywordtype">bool</span> operator==(mat&lt;4, 3, T, Q&gt; const&amp; m1, mat&lt;4, 3, T, Q&gt; const&amp; m2);</div>
+<div class="line"><a name="l00164"></a><span class="lineno">  164</span>&#160; </div>
+<div class="line"><a name="l00165"></a><span class="lineno">  165</span>&#160;        template&lt;typename T, qualifier Q&gt;</div>
+<div class="line"><a name="l00166"></a><span class="lineno">  166</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR <span class="keywordtype">bool</span> operator!=(mat&lt;4, 3, T, Q&gt; const&amp; m1, mat&lt;4, 3, T, Q&gt; const&amp; m2);</div>
+<div class="line"><a name="l00167"></a><span class="lineno">  167</span>&#160;}<span class="comment">//namespace glm</span></div>
+<div class="line"><a name="l00168"></a><span class="lineno">  168</span>&#160; </div>
+<div class="line"><a name="l00169"></a><span class="lineno">  169</span>&#160;<span class="preprocessor">#ifndef GLM_EXTERNAL_TEMPLATE</span></div>
+<div class="line"><a name="l00170"></a><span class="lineno">  170</span>&#160;<span class="preprocessor">#include &quot;type_mat4x3.inl&quot;</span></div>
+<div class="line"><a name="l00171"></a><span class="lineno">  171</span>&#160;<span class="preprocessor">#endif //GLM_EXTERNAL_TEMPLATE</span></div>
 </div><!-- fragment --></div><!-- contents -->
+<div class="ttc" id="aa00080_html"><div class="ttname"><a href="a00080.html">type_vec4.hpp</a></div><div class="ttdoc">Core features</div></div>
+<div class="ttc" id="aa00853_html_gab703732449be6c7199369b3f9a91ed38"><div class="ttname"><a href="a00853.html#gab703732449be6c7199369b3f9a91ed38">glm::length</a></div><div class="ttdeci">GLM_FUNC_DECL T length(qua&lt; T, Q &gt; const &amp;q)</div><div class="ttdoc">Returns the norm of a quaternions.</div></div>
+<div class="ttc" id="aa00077_html"><div class="ttname"><a href="a00077.html">type_vec3.hpp</a></div><div class="ttdoc">Core features</div></div>
 <!-- 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.10
+</a> 1.8.18
 </small></address>
 </body>
 </html>

+ 0 - 114
doc/api/a00063_source.html

@@ -1,114 +0,0 @@
-<!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.10"/>
-<title>0.9.9 API documentation: matrix_double2x2.hpp Source File</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="search/search.css" rel="stylesheet" type="text/css"/>
-<script type="text/javascript" src="search/searchdata.js"></script>
-<script type="text/javascript" src="search/search.js"></script>
-<script type="text/javascript">
-  $(document).ready(function() { init_search(); });
-</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 id="projectlogo"><img alt="Logo" src="logo-mini.png"/></td>
-  <td id="projectalign" style="padding-left: 0.5em;">
-   <div id="projectname">0.9.9 API documentation
-   </div>
-  </td>
- </tr>
- </tbody>
-</table>
-</div>
-<!-- end header part -->
-<!-- Generated by Doxygen 1.8.10 -->
-<script type="text/javascript">
-var searchBox = new SearchBox("searchBox", "search",false,'Search');
-</script>
-  <div id="navrow1" class="tabs">
-    <ul class="tablist">
-      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
-      <li><a href="modules.html"><span>Modules</span></a></li>
-      <li class="current"><a href="files.html"><span>Files</span></a></li>
-      <li>
-        <div id="MSearchBox" class="MSearchBoxInactive">
-        <span class="left">
-          <img id="MSearchSelect" src="search/mag_sel.png"
-               onmouseover="return searchBox.OnSearchSelectShow()"
-               onmouseout="return searchBox.OnSearchSelectHide()"
-               alt=""/>
-          <input type="text" id="MSearchField" value="Search" accesskey="S"
-               onfocus="searchBox.OnSearchFieldFocus(true)" 
-               onblur="searchBox.OnSearchFieldFocus(false)" 
-               onkeyup="searchBox.OnSearchFieldChange(event)"/>
-          </span><span class="right">
-            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
-          </span>
-        </div>
-      </li>
-    </ul>
-  </div>
-  <div id="navrow2" class="tabs2">
-    <ul class="tablist">
-      <li><a href="files.html"><span>File&#160;List</span></a></li>
-    </ul>
-  </div>
-<!-- window showing the filter options -->
-<div id="MSearchSelectWindow"
-     onmouseover="return searchBox.OnSearchSelectShow()"
-     onmouseout="return searchBox.OnSearchSelectHide()"
-     onkeydown="return searchBox.OnSearchSelectKey(event)">
-</div>
-
-<!-- iframe showing the search results (closed by default) -->
-<div id="MSearchResultsWindow">
-<iframe src="javascript:void(0)" frameborder="0" 
-        name="MSearchResults" id="MSearchResults">
-</iframe>
-</div>
-
-<div id="nav-path" class="navpath">
-  <ul>
-<li class="navelem"><a class="el" href="dir_3a581ba30d25676e4b797b1f96d53b45.html">F:</a></li><li class="navelem"><a class="el" href="dir_9e5fe034a00e89334fd5186c3e7db156.html">G-Truc</a></li><li class="navelem"><a class="el" href="dir_d9496f0844b48bc7e53b5af8c99b9ab2.html">Source</a></li><li class="navelem"><a class="el" href="dir_a8bee7be44182a33f3820393ae0b105d.html">G-Truc</a></li><li class="navelem"><a class="el" href="dir_44e5e654415abd9ca6fdeaddaff8565e.html">glm</a></li><li class="navelem"><a class="el" href="dir_cef2d71d502cb69a9252bca2297d9549.html">glm</a></li><li class="navelem"><a class="el" href="dir_6b66465792d005310484819a0eb0b0d3.html">ext</a></li>  </ul>
-</div>
-</div><!-- top -->
-<div class="header">
-  <div class="headertitle">
-<div class="title">matrix_double2x2.hpp</div>  </div>
-</div><!--header-->
-<div class="contents">
-<a href="a00063.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span>&#160;</div>
-<div class="line"><a name="l00004"></a><span class="lineno">    4</span>&#160;<span class="preprocessor">#pragma once</span></div>
-<div class="line"><a name="l00005"></a><span class="lineno">    5</span>&#160;<span class="preprocessor">#include &quot;../detail/type_mat2x2.hpp&quot;</span></div>
-<div class="line"><a name="l00006"></a><span class="lineno">    6</span>&#160;</div>
-<div class="line"><a name="l00007"></a><span class="lineno">    7</span>&#160;<span class="keyword">namespace </span><a class="code" href="a00236.html">glm</a></div>
-<div class="line"><a name="l00008"></a><span class="lineno">    8</span>&#160;{</div>
-<div class="line"><a name="l00011"></a><span class="lineno">   11</span>&#160;</div>
-<div class="line"><a name="l00015"></a><span class="lineno"><a class="line" href="a00283.html#ga66b6a9af787e468a46dfe24189e87f9b">   15</a></span>&#160;        <span class="keyword">typedef</span> mat&lt;2, 2, double, defaultp&gt;             <a class="code" href="a00283.html#ga66b6a9af787e468a46dfe24189e87f9b">dmat2x2</a>;</div>
-<div class="line"><a name="l00016"></a><span class="lineno">   16</span>&#160;</div>
-<div class="line"><a name="l00020"></a><span class="lineno"><a class="line" href="a00283.html#ga21dbd1f987775d7cc7607c139531c7e6">   20</a></span>&#160;        <span class="keyword">typedef</span> mat&lt;2, 2, double, defaultp&gt;             <a class="code" href="a00283.html#ga21dbd1f987775d7cc7607c139531c7e6">dmat2</a>;</div>
-<div class="line"><a name="l00021"></a><span class="lineno">   21</span>&#160;</div>
-<div class="line"><a name="l00023"></a><span class="lineno">   23</span>&#160;}<span class="comment">//namespace glm</span></div>
-<div class="ttc" id="a00283_html_ga21dbd1f987775d7cc7607c139531c7e6"><div class="ttname"><a href="a00283.html#ga21dbd1f987775d7cc7607c139531c7e6">glm::dmat2</a></div><div class="ttdeci">mat&lt; 2, 2, double, defaultp &gt; dmat2</div><div class="ttdoc">2 columns of 2 components matrix of double-precision floating-point numbers. </div><div class="ttdef"><b>Definition:</b> <a href="a00063_source.html#l00020">matrix_double2x2.hpp:20</a></div></div>
-<div class="ttc" id="a00283_html_ga66b6a9af787e468a46dfe24189e87f9b"><div class="ttname"><a href="a00283.html#ga66b6a9af787e468a46dfe24189e87f9b">glm::dmat2x2</a></div><div class="ttdeci">mat&lt; 2, 2, double, defaultp &gt; dmat2x2</div><div class="ttdoc">2 columns of 2 components matrix of double-precision floating-point numbers. </div><div class="ttdef"><b>Definition:</b> <a href="a00063_source.html#l00015">matrix_double2x2.hpp:15</a></div></div>
-<div class="ttc" id="a00236_html"><div class="ttname"><a href="a00236.html">glm</a></div><div class="ttdef"><b>Definition:</b> <a href="a00015_source.html#l00020">common.hpp:20</a></div></div>
-</div><!-- fragment --></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.10
-</small></address>
-</body>
-</html>

+ 0 - 132
doc/api/a00064.html

@@ -1,132 +0,0 @@
-<!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.10"/>
-<title>0.9.9 API documentation: matrix_double2x2_precision.hpp File Reference</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="search/search.css" rel="stylesheet" type="text/css"/>
-<script type="text/javascript" src="search/searchdata.js"></script>
-<script type="text/javascript" src="search/search.js"></script>
-<script type="text/javascript">
-  $(document).ready(function() { init_search(); });
-</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 id="projectlogo"><img alt="Logo" src="logo-mini.png"/></td>
-  <td id="projectalign" style="padding-left: 0.5em;">
-   <div id="projectname">0.9.9 API documentation
-   </div>
-  </td>
- </tr>
- </tbody>
-</table>
-</div>
-<!-- end header part -->
-<!-- Generated by Doxygen 1.8.10 -->
-<script type="text/javascript">
-var searchBox = new SearchBox("searchBox", "search",false,'Search');
-</script>
-  <div id="navrow1" class="tabs">
-    <ul class="tablist">
-      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
-      <li><a href="modules.html"><span>Modules</span></a></li>
-      <li class="current"><a href="files.html"><span>Files</span></a></li>
-      <li>
-        <div id="MSearchBox" class="MSearchBoxInactive">
-        <span class="left">
-          <img id="MSearchSelect" src="search/mag_sel.png"
-               onmouseover="return searchBox.OnSearchSelectShow()"
-               onmouseout="return searchBox.OnSearchSelectHide()"
-               alt=""/>
-          <input type="text" id="MSearchField" value="Search" accesskey="S"
-               onfocus="searchBox.OnSearchFieldFocus(true)" 
-               onblur="searchBox.OnSearchFieldFocus(false)" 
-               onkeyup="searchBox.OnSearchFieldChange(event)"/>
-          </span><span class="right">
-            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
-          </span>
-        </div>
-      </li>
-    </ul>
-  </div>
-  <div id="navrow2" class="tabs2">
-    <ul class="tablist">
-      <li><a href="files.html"><span>File&#160;List</span></a></li>
-    </ul>
-  </div>
-<!-- window showing the filter options -->
-<div id="MSearchSelectWindow"
-     onmouseover="return searchBox.OnSearchSelectShow()"
-     onmouseout="return searchBox.OnSearchSelectHide()"
-     onkeydown="return searchBox.OnSearchSelectKey(event)">
-</div>
-
-<!-- iframe showing the search results (closed by default) -->
-<div id="MSearchResultsWindow">
-<iframe src="javascript:void(0)" frameborder="0" 
-        name="MSearchResults" id="MSearchResults">
-</iframe>
-</div>
-
-<div id="nav-path" class="navpath">
-  <ul>
-<li class="navelem"><a class="el" href="dir_3a581ba30d25676e4b797b1f96d53b45.html">F:</a></li><li class="navelem"><a class="el" href="dir_9e5fe034a00e89334fd5186c3e7db156.html">G-Truc</a></li><li class="navelem"><a class="el" href="dir_d9496f0844b48bc7e53b5af8c99b9ab2.html">Source</a></li><li class="navelem"><a class="el" href="dir_a8bee7be44182a33f3820393ae0b105d.html">G-Truc</a></li><li class="navelem"><a class="el" href="dir_44e5e654415abd9ca6fdeaddaff8565e.html">glm</a></li><li class="navelem"><a class="el" href="dir_cef2d71d502cb69a9252bca2297d9549.html">glm</a></li><li class="navelem"><a class="el" href="dir_6b66465792d005310484819a0eb0b0d3.html">ext</a></li>  </ul>
-</div>
-</div><!-- top -->
-<div class="header">
-  <div class="summary">
-<a href="#typedef-members">Typedefs</a>  </div>
-  <div class="headertitle">
-<div class="title">matrix_double2x2_precision.hpp File Reference</div>  </div>
-</div><!--header-->
-<div class="contents">
-
-<p><a class="el" href="a00280.html">Core features</a>  
-<a href="#details">More...</a></p>
-
-<p><a href="a00064_source.html">Go to the source code of this file.</a></p>
-<table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="typedef-members"></a>
-Typedefs</h2></td></tr>
-<tr class="memitem:ga369b447bb1b312449b679ea1f90f3cea"><td class="memItemLeft" align="right" valign="top">typedef mat&lt; 2, 2, double, highp &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00284.html#ga369b447bb1b312449b679ea1f90f3cea">highp_dmat2</a></td></tr>
-<tr class="memdesc:ga369b447bb1b312449b679ea1f90f3cea"><td class="mdescLeft">&#160;</td><td class="mdescRight">2 columns of 2 components matrix of double-precision floating-point numbers using medium precision arithmetic in term of ULPs.  <a href="a00284.html#ga369b447bb1b312449b679ea1f90f3cea">More...</a><br /></td></tr>
-<tr class="separator:ga369b447bb1b312449b679ea1f90f3cea"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:gae27ac20302c2e39b6c78e7fe18e62ef7"><td class="memItemLeft" align="right" valign="top">typedef mat&lt; 2, 2, double, highp &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00284.html#gae27ac20302c2e39b6c78e7fe18e62ef7">highp_dmat2x2</a></td></tr>
-<tr class="memdesc:gae27ac20302c2e39b6c78e7fe18e62ef7"><td class="mdescLeft">&#160;</td><td class="mdescRight">2 columns of 2 components matrix of double-precision floating-point numbers using medium precision arithmetic in term of ULPs.  <a href="a00284.html#gae27ac20302c2e39b6c78e7fe18e62ef7">More...</a><br /></td></tr>
-<tr class="separator:gae27ac20302c2e39b6c78e7fe18e62ef7"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:gad8e2727a6e7aa68280245bb0022118e1"><td class="memItemLeft" align="right" valign="top">typedef mat&lt; 2, 2, double, lowp &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00284.html#gad8e2727a6e7aa68280245bb0022118e1">lowp_dmat2</a></td></tr>
-<tr class="memdesc:gad8e2727a6e7aa68280245bb0022118e1"><td class="mdescLeft">&#160;</td><td class="mdescRight">2 columns of 2 components matrix of double-precision floating-point numbers using low precision arithmetic in term of ULPs.  <a href="a00284.html#gad8e2727a6e7aa68280245bb0022118e1">More...</a><br /></td></tr>
-<tr class="separator:gad8e2727a6e7aa68280245bb0022118e1"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:gac61b94f5d9775f83f321bac899322fe2"><td class="memItemLeft" align="right" valign="top">typedef mat&lt; 2, 2, double, lowp &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00284.html#gac61b94f5d9775f83f321bac899322fe2">lowp_dmat2x2</a></td></tr>
-<tr class="memdesc:gac61b94f5d9775f83f321bac899322fe2"><td class="mdescLeft">&#160;</td><td class="mdescRight">2 columns of 2 components matrix of double-precision floating-point numbers using low precision arithmetic in term of ULPs.  <a href="a00284.html#gac61b94f5d9775f83f321bac899322fe2">More...</a><br /></td></tr>
-<tr class="separator:gac61b94f5d9775f83f321bac899322fe2"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:ga6205fd19be355600334edef6af0b27cb"><td class="memItemLeft" align="right" valign="top">typedef mat&lt; 2, 2, double, mediump &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00284.html#ga6205fd19be355600334edef6af0b27cb">mediump_dmat2</a></td></tr>
-<tr class="memdesc:ga6205fd19be355600334edef6af0b27cb"><td class="mdescLeft">&#160;</td><td class="mdescRight">2 columns of 2 components matrix of double-precision floating-point numbers using medium precision arithmetic in term of ULPs.  <a href="a00284.html#ga6205fd19be355600334edef6af0b27cb">More...</a><br /></td></tr>
-<tr class="separator:ga6205fd19be355600334edef6af0b27cb"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:ga51dc36a7719cb458fa5114831c20d64f"><td class="memItemLeft" align="right" valign="top">typedef mat&lt; 2, 2, double, mediump &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00284.html#ga51dc36a7719cb458fa5114831c20d64f">mediump_dmat2x2</a></td></tr>
-<tr class="memdesc:ga51dc36a7719cb458fa5114831c20d64f"><td class="mdescLeft">&#160;</td><td class="mdescRight">2 columns of 2 components matrix of double-precision floating-point numbers using medium precision arithmetic in term of ULPs.  <a href="a00284.html#ga51dc36a7719cb458fa5114831c20d64f">More...</a><br /></td></tr>
-<tr class="separator:ga51dc36a7719cb458fa5114831c20d64f"><td class="memSeparator" colspan="2">&#160;</td></tr>
-</table>
-<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
-<div class="textblock"><p><a class="el" href="a00280.html">Core features</a> </p>
-
-<p>Definition in file <a class="el" href="a00064_source.html">matrix_double2x2_precision.hpp</a>.</p>
-</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.10
-</small></address>
-</body>
-</html>

+ 0 - 126
doc/api/a00064_source.html

@@ -1,126 +0,0 @@
-<!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.10"/>
-<title>0.9.9 API documentation: matrix_double2x2_precision.hpp Source File</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="search/search.css" rel="stylesheet" type="text/css"/>
-<script type="text/javascript" src="search/searchdata.js"></script>
-<script type="text/javascript" src="search/search.js"></script>
-<script type="text/javascript">
-  $(document).ready(function() { init_search(); });
-</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 id="projectlogo"><img alt="Logo" src="logo-mini.png"/></td>
-  <td id="projectalign" style="padding-left: 0.5em;">
-   <div id="projectname">0.9.9 API documentation
-   </div>
-  </td>
- </tr>
- </tbody>
-</table>
-</div>
-<!-- end header part -->
-<!-- Generated by Doxygen 1.8.10 -->
-<script type="text/javascript">
-var searchBox = new SearchBox("searchBox", "search",false,'Search');
-</script>
-  <div id="navrow1" class="tabs">
-    <ul class="tablist">
-      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
-      <li><a href="modules.html"><span>Modules</span></a></li>
-      <li class="current"><a href="files.html"><span>Files</span></a></li>
-      <li>
-        <div id="MSearchBox" class="MSearchBoxInactive">
-        <span class="left">
-          <img id="MSearchSelect" src="search/mag_sel.png"
-               onmouseover="return searchBox.OnSearchSelectShow()"
-               onmouseout="return searchBox.OnSearchSelectHide()"
-               alt=""/>
-          <input type="text" id="MSearchField" value="Search" accesskey="S"
-               onfocus="searchBox.OnSearchFieldFocus(true)" 
-               onblur="searchBox.OnSearchFieldFocus(false)" 
-               onkeyup="searchBox.OnSearchFieldChange(event)"/>
-          </span><span class="right">
-            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
-          </span>
-        </div>
-      </li>
-    </ul>
-  </div>
-  <div id="navrow2" class="tabs2">
-    <ul class="tablist">
-      <li><a href="files.html"><span>File&#160;List</span></a></li>
-    </ul>
-  </div>
-<!-- window showing the filter options -->
-<div id="MSearchSelectWindow"
-     onmouseover="return searchBox.OnSearchSelectShow()"
-     onmouseout="return searchBox.OnSearchSelectHide()"
-     onkeydown="return searchBox.OnSearchSelectKey(event)">
-</div>
-
-<!-- iframe showing the search results (closed by default) -->
-<div id="MSearchResultsWindow">
-<iframe src="javascript:void(0)" frameborder="0" 
-        name="MSearchResults" id="MSearchResults">
-</iframe>
-</div>
-
-<div id="nav-path" class="navpath">
-  <ul>
-<li class="navelem"><a class="el" href="dir_3a581ba30d25676e4b797b1f96d53b45.html">F:</a></li><li class="navelem"><a class="el" href="dir_9e5fe034a00e89334fd5186c3e7db156.html">G-Truc</a></li><li class="navelem"><a class="el" href="dir_d9496f0844b48bc7e53b5af8c99b9ab2.html">Source</a></li><li class="navelem"><a class="el" href="dir_a8bee7be44182a33f3820393ae0b105d.html">G-Truc</a></li><li class="navelem"><a class="el" href="dir_44e5e654415abd9ca6fdeaddaff8565e.html">glm</a></li><li class="navelem"><a class="el" href="dir_cef2d71d502cb69a9252bca2297d9549.html">glm</a></li><li class="navelem"><a class="el" href="dir_6b66465792d005310484819a0eb0b0d3.html">ext</a></li>  </ul>
-</div>
-</div><!-- top -->
-<div class="header">
-  <div class="headertitle">
-<div class="title">matrix_double2x2_precision.hpp</div>  </div>
-</div><!--header-->
-<div class="contents">
-<a href="a00064.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span>&#160;</div>
-<div class="line"><a name="l00004"></a><span class="lineno">    4</span>&#160;<span class="preprocessor">#pragma once</span></div>
-<div class="line"><a name="l00005"></a><span class="lineno">    5</span>&#160;<span class="preprocessor">#include &quot;../detail/type_mat2x2.hpp&quot;</span></div>
-<div class="line"><a name="l00006"></a><span class="lineno">    6</span>&#160;</div>
-<div class="line"><a name="l00007"></a><span class="lineno">    7</span>&#160;<span class="keyword">namespace </span><a class="code" href="a00236.html">glm</a></div>
-<div class="line"><a name="l00008"></a><span class="lineno">    8</span>&#160;{</div>
-<div class="line"><a name="l00011"></a><span class="lineno">   11</span>&#160;</div>
-<div class="line"><a name="l00016"></a><span class="lineno"><a class="line" href="a00284.html#gad8e2727a6e7aa68280245bb0022118e1">   16</a></span>&#160;        <span class="keyword">typedef</span> mat&lt;2, 2, double, lowp&gt;         <a class="code" href="a00284.html#gad8e2727a6e7aa68280245bb0022118e1">lowp_dmat2</a>;</div>
-<div class="line"><a name="l00017"></a><span class="lineno">   17</span>&#160;</div>
-<div class="line"><a name="l00022"></a><span class="lineno"><a class="line" href="a00284.html#ga6205fd19be355600334edef6af0b27cb">   22</a></span>&#160;        <span class="keyword">typedef</span> mat&lt;2, 2, double, mediump&gt;      <a class="code" href="a00284.html#ga6205fd19be355600334edef6af0b27cb">mediump_dmat2</a>;</div>
-<div class="line"><a name="l00023"></a><span class="lineno">   23</span>&#160;</div>
-<div class="line"><a name="l00028"></a><span class="lineno"><a class="line" href="a00284.html#ga369b447bb1b312449b679ea1f90f3cea">   28</a></span>&#160;        <span class="keyword">typedef</span> mat&lt;2, 2, double, highp&gt;        <a class="code" href="a00284.html#ga369b447bb1b312449b679ea1f90f3cea">highp_dmat2</a>;</div>
-<div class="line"><a name="l00029"></a><span class="lineno">   29</span>&#160;</div>
-<div class="line"><a name="l00034"></a><span class="lineno"><a class="line" href="a00284.html#gac61b94f5d9775f83f321bac899322fe2">   34</a></span>&#160;        <span class="keyword">typedef</span> mat&lt;2, 2, double, lowp&gt;         <a class="code" href="a00284.html#gac61b94f5d9775f83f321bac899322fe2">lowp_dmat2x2</a>;</div>
-<div class="line"><a name="l00035"></a><span class="lineno">   35</span>&#160;</div>
-<div class="line"><a name="l00040"></a><span class="lineno"><a class="line" href="a00284.html#ga51dc36a7719cb458fa5114831c20d64f">   40</a></span>&#160;        <span class="keyword">typedef</span> mat&lt;2, 2, double, mediump&gt;      <a class="code" href="a00284.html#ga51dc36a7719cb458fa5114831c20d64f">mediump_dmat2x2</a>;</div>
-<div class="line"><a name="l00041"></a><span class="lineno">   41</span>&#160;</div>
-<div class="line"><a name="l00046"></a><span class="lineno"><a class="line" href="a00284.html#gae27ac20302c2e39b6c78e7fe18e62ef7">   46</a></span>&#160;        <span class="keyword">typedef</span> mat&lt;2, 2, double, highp&gt;        <a class="code" href="a00284.html#gae27ac20302c2e39b6c78e7fe18e62ef7">highp_dmat2x2</a>;</div>
-<div class="line"><a name="l00047"></a><span class="lineno">   47</span>&#160;</div>
-<div class="line"><a name="l00049"></a><span class="lineno">   49</span>&#160;}<span class="comment">//namespace glm</span></div>
-<div class="ttc" id="a00284_html_ga6205fd19be355600334edef6af0b27cb"><div class="ttname"><a href="a00284.html#ga6205fd19be355600334edef6af0b27cb">glm::mediump_dmat2</a></div><div class="ttdeci">mat&lt; 2, 2, double, mediump &gt; mediump_dmat2</div><div class="ttdoc">2 columns of 2 components matrix of double-precision floating-point numbers using medium precision ar...</div><div class="ttdef"><b>Definition:</b> <a href="a00064_source.html#l00022">matrix_double2x2_precision.hpp:22</a></div></div>
-<div class="ttc" id="a00284_html_gad8e2727a6e7aa68280245bb0022118e1"><div class="ttname"><a href="a00284.html#gad8e2727a6e7aa68280245bb0022118e1">glm::lowp_dmat2</a></div><div class="ttdeci">mat&lt; 2, 2, double, lowp &gt; lowp_dmat2</div><div class="ttdoc">2 columns of 2 components matrix of double-precision floating-point numbers using low precision arith...</div><div class="ttdef"><b>Definition:</b> <a href="a00064_source.html#l00016">matrix_double2x2_precision.hpp:16</a></div></div>
-<div class="ttc" id="a00284_html_ga51dc36a7719cb458fa5114831c20d64f"><div class="ttname"><a href="a00284.html#ga51dc36a7719cb458fa5114831c20d64f">glm::mediump_dmat2x2</a></div><div class="ttdeci">mat&lt; 2, 2, double, mediump &gt; mediump_dmat2x2</div><div class="ttdoc">2 columns of 2 components matrix of double-precision floating-point numbers using medium precision ar...</div><div class="ttdef"><b>Definition:</b> <a href="a00064_source.html#l00040">matrix_double2x2_precision.hpp:40</a></div></div>
-<div class="ttc" id="a00284_html_gae27ac20302c2e39b6c78e7fe18e62ef7"><div class="ttname"><a href="a00284.html#gae27ac20302c2e39b6c78e7fe18e62ef7">glm::highp_dmat2x2</a></div><div class="ttdeci">mat&lt; 2, 2, double, highp &gt; highp_dmat2x2</div><div class="ttdoc">2 columns of 2 components matrix of double-precision floating-point numbers using medium precision ar...</div><div class="ttdef"><b>Definition:</b> <a href="a00064_source.html#l00046">matrix_double2x2_precision.hpp:46</a></div></div>
-<div class="ttc" id="a00284_html_ga369b447bb1b312449b679ea1f90f3cea"><div class="ttname"><a href="a00284.html#ga369b447bb1b312449b679ea1f90f3cea">glm::highp_dmat2</a></div><div class="ttdeci">mat&lt; 2, 2, double, highp &gt; highp_dmat2</div><div class="ttdoc">2 columns of 2 components matrix of double-precision floating-point numbers using medium precision ar...</div><div class="ttdef"><b>Definition:</b> <a href="a00064_source.html#l00028">matrix_double2x2_precision.hpp:28</a></div></div>
-<div class="ttc" id="a00284_html_gac61b94f5d9775f83f321bac899322fe2"><div class="ttname"><a href="a00284.html#gac61b94f5d9775f83f321bac899322fe2">glm::lowp_dmat2x2</a></div><div class="ttdeci">mat&lt; 2, 2, double, lowp &gt; lowp_dmat2x2</div><div class="ttdoc">2 columns of 2 components matrix of double-precision floating-point numbers using low precision arith...</div><div class="ttdef"><b>Definition:</b> <a href="a00064_source.html#l00034">matrix_double2x2_precision.hpp:34</a></div></div>
-<div class="ttc" id="a00236_html"><div class="ttname"><a href="a00236.html">glm</a></div><div class="ttdef"><b>Definition:</b> <a href="a00015_source.html#l00020">common.hpp:20</a></div></div>
-</div><!-- fragment --></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.10
-</small></address>
-</body>
-</html>

+ 24 - 51
doc/api/a00065.html

@@ -1,19 +1,17 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://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.10"/>
-<title>0.9.9 API documentation: matrix_double2x3.hpp File Reference</title>
+<meta name="generator" content="Doxygen 1.8.18"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>1.0.0 API documentation: type_mat4x4.hpp File Reference</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="search/search.css" rel="stylesheet" type="text/css"/>
 <script type="text/javascript" src="search/searchdata.js"></script>
 <script type="text/javascript" src="search/search.js"></script>
-<script type="text/javascript">
-  $(document).ready(function() { init_search(); });
-</script>
 <link href="doxygen.css" rel="stylesheet" type="text/css" />
 </head>
 <body>
@@ -24,7 +22,7 @@
  <tr style="height: 56px;">
   <td id="projectlogo"><img alt="Logo" src="logo-mini.png"/></td>
   <td id="projectalign" style="padding-left: 0.5em;">
-   <div id="projectname">0.9.9 API documentation
+   <div id="projectname">1.0.0 API documentation
    </div>
   </td>
  </tr>
@@ -32,38 +30,22 @@
 </table>
 </div>
 <!-- end header part -->
-<!-- Generated by Doxygen 1.8.10 -->
+<!-- Generated by Doxygen 1.8.18 -->
 <script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
 var searchBox = new SearchBox("searchBox", "search",false,'Search');
+/* @license-end */
 </script>
-  <div id="navrow1" class="tabs">
-    <ul class="tablist">
-      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
-      <li><a href="modules.html"><span>Modules</span></a></li>
-      <li class="current"><a href="files.html"><span>Files</span></a></li>
-      <li>
-        <div id="MSearchBox" class="MSearchBoxInactive">
-        <span class="left">
-          <img id="MSearchSelect" src="search/mag_sel.png"
-               onmouseover="return searchBox.OnSearchSelectShow()"
-               onmouseout="return searchBox.OnSearchSelectHide()"
-               alt=""/>
-          <input type="text" id="MSearchField" value="Search" accesskey="S"
-               onfocus="searchBox.OnSearchFieldFocus(true)" 
-               onblur="searchBox.OnSearchFieldFocus(false)" 
-               onkeyup="searchBox.OnSearchFieldChange(event)"/>
-          </span><span class="right">
-            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
-          </span>
-        </div>
-      </li>
-    </ul>
-  </div>
-  <div id="navrow2" class="tabs2">
-    <ul class="tablist">
-      <li><a href="files.html"><span>File&#160;List</span></a></li>
-    </ul>
-  </div>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
 <!-- window showing the filter options -->
 <div id="MSearchSelectWindow"
      onmouseover="return searchBox.OnSearchSelectShow()"
@@ -80,38 +62,29 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 
 <div id="nav-path" class="navpath">
   <ul>
-<li class="navelem"><a class="el" href="dir_3a581ba30d25676e4b797b1f96d53b45.html">F:</a></li><li class="navelem"><a class="el" href="dir_9e5fe034a00e89334fd5186c3e7db156.html">G-Truc</a></li><li class="navelem"><a class="el" href="dir_d9496f0844b48bc7e53b5af8c99b9ab2.html">Source</a></li><li class="navelem"><a class="el" href="dir_a8bee7be44182a33f3820393ae0b105d.html">G-Truc</a></li><li class="navelem"><a class="el" href="dir_44e5e654415abd9ca6fdeaddaff8565e.html">glm</a></li><li class="navelem"><a class="el" href="dir_cef2d71d502cb69a9252bca2297d9549.html">glm</a></li><li class="navelem"><a class="el" href="dir_6b66465792d005310484819a0eb0b0d3.html">ext</a></li>  </ul>
+<li class="navelem"><a class="el" href="dir_885cc87fac2d91e269af0a5a959fa5f6.html">E:</a></li><li class="navelem"><a class="el" href="dir_63ed049134a778d525e06b63afc2c979.html">Github</a></li><li class="navelem"><a class="el" href="dir_c98a9ac98258ab9f831b188d66361a70.html">g-truc</a></li><li class="navelem"><a class="el" href="dir_50f12b6ceb23d7f6adfb377a1ae8b006.html">glm</a></li><li class="navelem"><a class="el" href="dir_fca33f1b5115d46f42c670590789c0d2.html">glm</a></li><li class="navelem"><a class="el" href="dir_382f4fd018b81be8753cb53c0a41a09a.html">detail</a></li>  </ul>
 </div>
 </div><!-- top -->
 <div class="header">
-  <div class="summary">
-<a href="#typedef-members">Typedefs</a>  </div>
   <div class="headertitle">
-<div class="title">matrix_double2x3.hpp File Reference</div>  </div>
+<div class="title">type_mat4x4.hpp File Reference</div>  </div>
 </div><!--header-->
 <div class="contents">
 
-<p><a class="el" href="a00280.html">Core features</a>  
+<p><a class="el" href="a00889.html">Core features</a>  
 <a href="#details">More...</a></p>
 
 <p><a href="a00065_source.html">Go to the source code of this file.</a></p>
-<table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="typedef-members"></a>
-Typedefs</h2></td></tr>
-<tr class="memitem:ga92cd388753d48e20de69ea2dbedf826a"><td class="memItemLeft" align="right" valign="top">typedef mat&lt; 2, 3, double, defaultp &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00283.html#ga92cd388753d48e20de69ea2dbedf826a">dmat2x3</a></td></tr>
-<tr class="memdesc:ga92cd388753d48e20de69ea2dbedf826a"><td class="mdescLeft">&#160;</td><td class="mdescRight">2 columns of 3 components matrix of double-precision floating-point numbers.  <a href="a00283.html#ga92cd388753d48e20de69ea2dbedf826a">More...</a><br /></td></tr>
-<tr class="separator:ga92cd388753d48e20de69ea2dbedf826a"><td class="memSeparator" colspan="2">&#160;</td></tr>
-</table>
 <a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
-<div class="textblock"><p><a class="el" href="a00280.html">Core features</a> </p>
+<div class="textblock"><p><a class="el" href="a00889.html">Core features</a> </p>
 
-<p>Definition in file <a class="el" href="a00065_source.html">matrix_double2x3.hpp</a>.</p>
+<p class="definition">Definition in file <a class="el" href="a00065_source.html">type_mat4x4.hpp</a>.</p>
 </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.10
+</a> 1.8.18
 </small></address>
 </body>
 </html>

+ 209 - 50
doc/api/a00065_source.html

@@ -1,19 +1,17 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://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.10"/>
-<title>0.9.9 API documentation: matrix_double2x3.hpp Source File</title>
+<meta name="generator" content="Doxygen 1.8.18"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>1.0.0 API documentation: type_mat4x4.hpp Source File</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="search/search.css" rel="stylesheet" type="text/css"/>
 <script type="text/javascript" src="search/searchdata.js"></script>
 <script type="text/javascript" src="search/search.js"></script>
-<script type="text/javascript">
-  $(document).ready(function() { init_search(); });
-</script>
 <link href="doxygen.css" rel="stylesheet" type="text/css" />
 </head>
 <body>
@@ -24,7 +22,7 @@
  <tr style="height: 56px;">
   <td id="projectlogo"><img alt="Logo" src="logo-mini.png"/></td>
   <td id="projectalign" style="padding-left: 0.5em;">
-   <div id="projectname">0.9.9 API documentation
+   <div id="projectname">1.0.0 API documentation
    </div>
   </td>
  </tr>
@@ -32,38 +30,22 @@
 </table>
 </div>
 <!-- end header part -->
-<!-- Generated by Doxygen 1.8.10 -->
+<!-- Generated by Doxygen 1.8.18 -->
 <script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
 var searchBox = new SearchBox("searchBox", "search",false,'Search');
+/* @license-end */
 </script>
-  <div id="navrow1" class="tabs">
-    <ul class="tablist">
-      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
-      <li><a href="modules.html"><span>Modules</span></a></li>
-      <li class="current"><a href="files.html"><span>Files</span></a></li>
-      <li>
-        <div id="MSearchBox" class="MSearchBoxInactive">
-        <span class="left">
-          <img id="MSearchSelect" src="search/mag_sel.png"
-               onmouseover="return searchBox.OnSearchSelectShow()"
-               onmouseout="return searchBox.OnSearchSelectHide()"
-               alt=""/>
-          <input type="text" id="MSearchField" value="Search" accesskey="S"
-               onfocus="searchBox.OnSearchFieldFocus(true)" 
-               onblur="searchBox.OnSearchFieldFocus(false)" 
-               onkeyup="searchBox.OnSearchFieldChange(event)"/>
-          </span><span class="right">
-            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
-          </span>
-        </div>
-      </li>
-    </ul>
-  </div>
-  <div id="navrow2" class="tabs2">
-    <ul class="tablist">
-      <li><a href="files.html"><span>File&#160;List</span></a></li>
-    </ul>
-  </div>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
 <!-- window showing the filter options -->
 <div id="MSearchSelectWindow"
      onmouseover="return searchBox.OnSearchSelectShow()"
@@ -80,32 +62,209 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 
 <div id="nav-path" class="navpath">
   <ul>
-<li class="navelem"><a class="el" href="dir_3a581ba30d25676e4b797b1f96d53b45.html">F:</a></li><li class="navelem"><a class="el" href="dir_9e5fe034a00e89334fd5186c3e7db156.html">G-Truc</a></li><li class="navelem"><a class="el" href="dir_d9496f0844b48bc7e53b5af8c99b9ab2.html">Source</a></li><li class="navelem"><a class="el" href="dir_a8bee7be44182a33f3820393ae0b105d.html">G-Truc</a></li><li class="navelem"><a class="el" href="dir_44e5e654415abd9ca6fdeaddaff8565e.html">glm</a></li><li class="navelem"><a class="el" href="dir_cef2d71d502cb69a9252bca2297d9549.html">glm</a></li><li class="navelem"><a class="el" href="dir_6b66465792d005310484819a0eb0b0d3.html">ext</a></li>  </ul>
+<li class="navelem"><a class="el" href="dir_885cc87fac2d91e269af0a5a959fa5f6.html">E:</a></li><li class="navelem"><a class="el" href="dir_63ed049134a778d525e06b63afc2c979.html">Github</a></li><li class="navelem"><a class="el" href="dir_c98a9ac98258ab9f831b188d66361a70.html">g-truc</a></li><li class="navelem"><a class="el" href="dir_50f12b6ceb23d7f6adfb377a1ae8b006.html">glm</a></li><li class="navelem"><a class="el" href="dir_fca33f1b5115d46f42c670590789c0d2.html">glm</a></li><li class="navelem"><a class="el" href="dir_382f4fd018b81be8753cb53c0a41a09a.html">detail</a></li>  </ul>
 </div>
 </div><!-- top -->
 <div class="header">
   <div class="headertitle">
-<div class="title">matrix_double2x3.hpp</div>  </div>
+<div class="title">type_mat4x4.hpp</div>  </div>
 </div><!--header-->
 <div class="contents">
-<a href="a00065.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span>&#160;</div>
+<a href="a00065.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span>&#160; </div>
 <div class="line"><a name="l00004"></a><span class="lineno">    4</span>&#160;<span class="preprocessor">#pragma once</span></div>
-<div class="line"><a name="l00005"></a><span class="lineno">    5</span>&#160;<span class="preprocessor">#include &quot;../detail/type_mat2x3.hpp&quot;</span></div>
-<div class="line"><a name="l00006"></a><span class="lineno">    6</span>&#160;</div>
-<div class="line"><a name="l00007"></a><span class="lineno">    7</span>&#160;<span class="keyword">namespace </span><a class="code" href="a00236.html">glm</a></div>
-<div class="line"><a name="l00008"></a><span class="lineno">    8</span>&#160;{</div>
-<div class="line"><a name="l00011"></a><span class="lineno">   11</span>&#160;</div>
-<div class="line"><a name="l00015"></a><span class="lineno"><a class="line" href="a00283.html#ga92cd388753d48e20de69ea2dbedf826a">   15</a></span>&#160;        <span class="keyword">typedef</span> mat&lt;2, 3, double, defaultp&gt;             <a class="code" href="a00283.html#ga92cd388753d48e20de69ea2dbedf826a">dmat2x3</a>;</div>
-<div class="line"><a name="l00016"></a><span class="lineno">   16</span>&#160;</div>
-<div class="line"><a name="l00018"></a><span class="lineno">   18</span>&#160;}<span class="comment">//namespace glm</span></div>
-<div class="ttc" id="a00283_html_ga92cd388753d48e20de69ea2dbedf826a"><div class="ttname"><a href="a00283.html#ga92cd388753d48e20de69ea2dbedf826a">glm::dmat2x3</a></div><div class="ttdeci">mat&lt; 2, 3, double, defaultp &gt; dmat2x3</div><div class="ttdoc">2 columns of 3 components matrix of double-precision floating-point numbers. </div><div class="ttdef"><b>Definition:</b> <a href="a00065_source.html#l00015">matrix_double2x3.hpp:15</a></div></div>
-<div class="ttc" id="a00236_html"><div class="ttname"><a href="a00236.html">glm</a></div><div class="ttdef"><b>Definition:</b> <a href="a00015_source.html#l00020">common.hpp:20</a></div></div>
+<div class="line"><a name="l00005"></a><span class="lineno">    5</span>&#160; </div>
+<div class="line"><a name="l00006"></a><span class="lineno">    6</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="a00080.html">type_vec4.hpp</a>&quot;</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno">    7</span>&#160;<span class="preprocessor">#include &lt;limits&gt;</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno">    8</span>&#160;<span class="preprocessor">#include &lt;cstddef&gt;</span></div>
+<div class="line"><a name="l00009"></a><span class="lineno">    9</span>&#160; </div>
+<div class="line"><a name="l00010"></a><span class="lineno">   10</span>&#160;<span class="keyword">namespace </span>glm</div>
+<div class="line"><a name="l00011"></a><span class="lineno">   11</span>&#160;{</div>
+<div class="line"><a name="l00012"></a><span class="lineno">   12</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T, qualifier Q&gt;</div>
+<div class="line"><a name="l00013"></a><span class="lineno">   13</span>&#160;        <span class="keyword">struct </span>mat&lt;4, 4, T, Q&gt;</div>
+<div class="line"><a name="l00014"></a><span class="lineno">   14</span>&#160;        {</div>
+<div class="line"><a name="l00015"></a><span class="lineno">   15</span>&#160;                <span class="keyword">typedef</span> vec&lt;4, T, Q&gt; col_type;</div>
+<div class="line"><a name="l00016"></a><span class="lineno">   16</span>&#160;                <span class="keyword">typedef</span> vec&lt;4, T, Q&gt; row_type;</div>
+<div class="line"><a name="l00017"></a><span class="lineno">   17</span>&#160;                <span class="keyword">typedef</span> mat&lt;4, 4, T, Q&gt; type;</div>
+<div class="line"><a name="l00018"></a><span class="lineno">   18</span>&#160;                <span class="keyword">typedef</span> mat&lt;4, 4, T, Q&gt; transpose_type;</div>
+<div class="line"><a name="l00019"></a><span class="lineno">   19</span>&#160;                <span class="keyword">typedef</span> T value_type;</div>
+<div class="line"><a name="l00020"></a><span class="lineno">   20</span>&#160; </div>
+<div class="line"><a name="l00021"></a><span class="lineno">   21</span>&#160;        <span class="keyword">private</span>:</div>
+<div class="line"><a name="l00022"></a><span class="lineno">   22</span>&#160;                col_type value[4];</div>
+<div class="line"><a name="l00023"></a><span class="lineno">   23</span>&#160; </div>
+<div class="line"><a name="l00024"></a><span class="lineno">   24</span>&#160;        <span class="keyword">public</span>:</div>
+<div class="line"><a name="l00025"></a><span class="lineno">   25</span>&#160;                <span class="comment">// -- Accesses --</span></div>
+<div class="line"><a name="l00026"></a><span class="lineno">   26</span>&#160; </div>
+<div class="line"><a name="l00027"></a><span class="lineno">   27</span>&#160;                <span class="keyword">typedef</span> length_t length_type;</div>
+<div class="line"><a name="l00028"></a><span class="lineno">   28</span>&#160;                GLM_FUNC_DECL <span class="keyword">static</span> GLM_CONSTEXPR length_type <a class="code" href="a00853.html#gab703732449be6c7199369b3f9a91ed38">length</a>(){<span class="keywordflow">return</span> 4;}</div>
+<div class="line"><a name="l00029"></a><span class="lineno">   29</span>&#160; </div>
+<div class="line"><a name="l00030"></a><span class="lineno">   30</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR col_type &amp; operator[](length_type i) GLM_NOEXCEPT;</div>
+<div class="line"><a name="l00031"></a><span class="lineno">   31</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR col_type <span class="keyword">const</span>&amp; operator[](length_type i) <span class="keyword">const</span> GLM_NOEXCEPT;</div>
+<div class="line"><a name="l00032"></a><span class="lineno">   32</span>&#160; </div>
+<div class="line"><a name="l00033"></a><span class="lineno">   33</span>&#160;                <span class="comment">// -- Constructors --</span></div>
+<div class="line"><a name="l00034"></a><span class="lineno">   34</span>&#160; </div>
+<div class="line"><a name="l00035"></a><span class="lineno">   35</span>&#160;                GLM_DEFAULTED_DEFAULT_CTOR_DECL GLM_CONSTEXPR mat() GLM_DEFAULT_CTOR;</div>
+<div class="line"><a name="l00036"></a><span class="lineno">   36</span>&#160;                template&lt;qualifier P&gt;</div>
+<div class="line"><a name="l00037"></a><span class="lineno">   37</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR mat(mat&lt;4, 4, T, P&gt; const&amp; m);</div>
+<div class="line"><a name="l00038"></a><span class="lineno">   38</span>&#160; </div>
+<div class="line"><a name="l00039"></a><span class="lineno">   39</span>&#160;                GLM_FUNC_DECL explicit GLM_CONSTEXPR mat(T s);</div>
+<div class="line"><a name="l00040"></a><span class="lineno">   40</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR mat(</div>
+<div class="line"><a name="l00041"></a><span class="lineno">   41</span>&#160;                        T const&amp; x0, T const&amp; y0, T const&amp; z0, T const&amp; w0,</div>
+<div class="line"><a name="l00042"></a><span class="lineno">   42</span>&#160;                        T const&amp; x1, T const&amp; y1, T const&amp; z1, T const&amp; w1,</div>
+<div class="line"><a name="l00043"></a><span class="lineno">   43</span>&#160;                        T const&amp; x2, T const&amp; y2, T const&amp; z2, T const&amp; w2,</div>
+<div class="line"><a name="l00044"></a><span class="lineno">   44</span>&#160;                        T const&amp; x3, T const&amp; y3, T const&amp; z3, T const&amp; w3);</div>
+<div class="line"><a name="l00045"></a><span class="lineno">   45</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR mat(</div>
+<div class="line"><a name="l00046"></a><span class="lineno">   46</span>&#160;                        col_type const&amp; v0,</div>
+<div class="line"><a name="l00047"></a><span class="lineno">   47</span>&#160;                        col_type const&amp; v1,</div>
+<div class="line"><a name="l00048"></a><span class="lineno">   48</span>&#160;                        col_type const&amp; v2,</div>
+<div class="line"><a name="l00049"></a><span class="lineno">   49</span>&#160;                        col_type const&amp; v3);</div>
+<div class="line"><a name="l00050"></a><span class="lineno">   50</span>&#160; </div>
+<div class="line"><a name="l00051"></a><span class="lineno">   51</span>&#160;                <span class="comment">// -- Conversions --</span></div>
+<div class="line"><a name="l00052"></a><span class="lineno">   52</span>&#160; </div>
+<div class="line"><a name="l00053"></a><span class="lineno">   53</span>&#160;                template&lt;</div>
+<div class="line"><a name="l00054"></a><span class="lineno">   54</span>&#160;                        typename X1, typename Y1, typename Z1, typename W1,</div>
+<div class="line"><a name="l00055"></a><span class="lineno">   55</span>&#160;                        typename X2, typename Y2, typename Z2, typename W2,</div>
+<div class="line"><a name="l00056"></a><span class="lineno">   56</span>&#160;                        typename X3, typename Y3, typename Z3, typename W3,</div>
+<div class="line"><a name="l00057"></a><span class="lineno">   57</span>&#160;                        typename X4, typename Y4, typename Z4, typename W4&gt;</div>
+<div class="line"><a name="l00058"></a><span class="lineno">   58</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR mat(</div>
+<div class="line"><a name="l00059"></a><span class="lineno">   59</span>&#160;                        X1 const&amp; x1, Y1 const&amp; y1, Z1 const&amp; z1, W1 const&amp; w1,</div>
+<div class="line"><a name="l00060"></a><span class="lineno">   60</span>&#160;                        X2 const&amp; x2, Y2 const&amp; y2, Z2 const&amp; z2, W2 const&amp; w2,</div>
+<div class="line"><a name="l00061"></a><span class="lineno">   61</span>&#160;                        X3 const&amp; x3, Y3 const&amp; y3, Z3 const&amp; z3, W3 const&amp; w3,</div>
+<div class="line"><a name="l00062"></a><span class="lineno">   62</span>&#160;                        X4 const&amp; x4, Y4 const&amp; y4, Z4 const&amp; z4, W4 const&amp; w4);</div>
+<div class="line"><a name="l00063"></a><span class="lineno">   63</span>&#160; </div>
+<div class="line"><a name="l00064"></a><span class="lineno">   64</span>&#160;                template&lt;typename V1, typename V2, typename V3, typename V4&gt;</div>
+<div class="line"><a name="l00065"></a><span class="lineno">   65</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR mat(</div>
+<div class="line"><a name="l00066"></a><span class="lineno">   66</span>&#160;                        vec&lt;4, V1, Q&gt; const&amp; v1,</div>
+<div class="line"><a name="l00067"></a><span class="lineno">   67</span>&#160;                        vec&lt;4, V2, Q&gt; const&amp; v2,</div>
+<div class="line"><a name="l00068"></a><span class="lineno">   68</span>&#160;                        vec&lt;4, V3, Q&gt; const&amp; v3,</div>
+<div class="line"><a name="l00069"></a><span class="lineno">   69</span>&#160;                        vec&lt;4, V4, Q&gt; const&amp; v4);</div>
+<div class="line"><a name="l00070"></a><span class="lineno">   70</span>&#160; </div>
+<div class="line"><a name="l00071"></a><span class="lineno">   71</span>&#160;                <span class="comment">// -- Matrix conversions --</span></div>
+<div class="line"><a name="l00072"></a><span class="lineno">   72</span>&#160; </div>
+<div class="line"><a name="l00073"></a><span class="lineno">   73</span>&#160;                template&lt;typename U, qualifier P&gt;</div>
+<div class="line"><a name="l00074"></a><span class="lineno">   74</span>&#160;                GLM_FUNC_DECL GLM_EXPLICIT GLM_CONSTEXPR mat(mat&lt;4, 4, U, P&gt; const&amp; m);</div>
+<div class="line"><a name="l00075"></a><span class="lineno">   75</span>&#160; </div>
+<div class="line"><a name="l00076"></a><span class="lineno">   76</span>&#160;                GLM_FUNC_DECL GLM_EXPLICIT GLM_CONSTEXPR mat(mat&lt;2, 2, T, Q&gt; const&amp; x);</div>
+<div class="line"><a name="l00077"></a><span class="lineno">   77</span>&#160;                GLM_FUNC_DECL GLM_EXPLICIT GLM_CONSTEXPR mat(mat&lt;3, 3, T, Q&gt; const&amp; x);</div>
+<div class="line"><a name="l00078"></a><span class="lineno">   78</span>&#160;                GLM_FUNC_DECL GLM_EXPLICIT GLM_CONSTEXPR mat(mat&lt;2, 3, T, Q&gt; const&amp; x);</div>
+<div class="line"><a name="l00079"></a><span class="lineno">   79</span>&#160;                GLM_FUNC_DECL GLM_EXPLICIT GLM_CONSTEXPR mat(mat&lt;3, 2, T, Q&gt; const&amp; x);</div>
+<div class="line"><a name="l00080"></a><span class="lineno">   80</span>&#160;                GLM_FUNC_DECL GLM_EXPLICIT GLM_CONSTEXPR mat(mat&lt;2, 4, T, Q&gt; const&amp; x);</div>
+<div class="line"><a name="l00081"></a><span class="lineno">   81</span>&#160;                GLM_FUNC_DECL GLM_EXPLICIT GLM_CONSTEXPR mat(mat&lt;4, 2, T, Q&gt; const&amp; x);</div>
+<div class="line"><a name="l00082"></a><span class="lineno">   82</span>&#160;                GLM_FUNC_DECL GLM_EXPLICIT GLM_CONSTEXPR mat(mat&lt;3, 4, T, Q&gt; const&amp; x);</div>
+<div class="line"><a name="l00083"></a><span class="lineno">   83</span>&#160;                GLM_FUNC_DECL GLM_EXPLICIT GLM_CONSTEXPR mat(mat&lt;4, 3, T, Q&gt; const&amp; x);</div>
+<div class="line"><a name="l00084"></a><span class="lineno">   84</span>&#160; </div>
+<div class="line"><a name="l00085"></a><span class="lineno">   85</span>&#160;                <span class="comment">// -- Unary arithmetic operators --</span></div>
+<div class="line"><a name="l00086"></a><span class="lineno">   86</span>&#160; </div>
+<div class="line"><a name="l00087"></a><span class="lineno">   87</span>&#160;                template&lt;typename U&gt;</div>
+<div class="line"><a name="l00088"></a><span class="lineno">   88</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR mat&lt;4, 4, T, Q&gt; &amp; operator=(mat&lt;4, 4, U, Q&gt; const&amp; m);</div>
+<div class="line"><a name="l00089"></a><span class="lineno">   89</span>&#160;                template&lt;typename U&gt;</div>
+<div class="line"><a name="l00090"></a><span class="lineno">   90</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR mat&lt;4, 4, T, Q&gt; &amp; operator+=(U s);</div>
+<div class="line"><a name="l00091"></a><span class="lineno">   91</span>&#160;                template&lt;typename U&gt;</div>
+<div class="line"><a name="l00092"></a><span class="lineno">   92</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR mat&lt;4, 4, T, Q&gt; &amp; operator+=(mat&lt;4, 4, U, Q&gt; const&amp; m);</div>
+<div class="line"><a name="l00093"></a><span class="lineno">   93</span>&#160;                template&lt;typename U&gt;</div>
+<div class="line"><a name="l00094"></a><span class="lineno">   94</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR mat&lt;4, 4, T, Q&gt; &amp; operator-=(U s);</div>
+<div class="line"><a name="l00095"></a><span class="lineno">   95</span>&#160;                template&lt;typename U&gt;</div>
+<div class="line"><a name="l00096"></a><span class="lineno">   96</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR mat&lt;4, 4, T, Q&gt; &amp; operator-=(mat&lt;4, 4, U, Q&gt; const&amp; m);</div>
+<div class="line"><a name="l00097"></a><span class="lineno">   97</span>&#160;                template&lt;typename U&gt;</div>
+<div class="line"><a name="l00098"></a><span class="lineno">   98</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR mat&lt;4, 4, T, Q&gt; &amp; operator*=(U s);</div>
+<div class="line"><a name="l00099"></a><span class="lineno">   99</span>&#160;                template&lt;typename U&gt;</div>
+<div class="line"><a name="l00100"></a><span class="lineno">  100</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR mat&lt;4, 4, T, Q&gt; &amp; operator*=(mat&lt;4, 4, U, Q&gt; const&amp; m);</div>
+<div class="line"><a name="l00101"></a><span class="lineno">  101</span>&#160;                template&lt;typename U&gt;</div>
+<div class="line"><a name="l00102"></a><span class="lineno">  102</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR mat&lt;4, 4, T, Q&gt; &amp; operator/=(U s);</div>
+<div class="line"><a name="l00103"></a><span class="lineno">  103</span>&#160;                template&lt;typename U&gt;</div>
+<div class="line"><a name="l00104"></a><span class="lineno">  104</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR mat&lt;4, 4, T, Q&gt; &amp; operator/=(mat&lt;4, 4, U, Q&gt; const&amp; m);</div>
+<div class="line"><a name="l00105"></a><span class="lineno">  105</span>&#160; </div>
+<div class="line"><a name="l00106"></a><span class="lineno">  106</span>&#160;                <span class="comment">// -- Increment and decrement operators --</span></div>
+<div class="line"><a name="l00107"></a><span class="lineno">  107</span>&#160; </div>
+<div class="line"><a name="l00108"></a><span class="lineno">  108</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR mat&lt;4, 4, T, Q&gt; &amp; operator++();</div>
+<div class="line"><a name="l00109"></a><span class="lineno">  109</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR mat&lt;4, 4, T, Q&gt; &amp; operator--();</div>
+<div class="line"><a name="l00110"></a><span class="lineno">  110</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR mat&lt;4, 4, T, Q&gt; operator++(<span class="keywordtype">int</span>);</div>
+<div class="line"><a name="l00111"></a><span class="lineno">  111</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR mat&lt;4, 4, T, Q&gt; operator--(<span class="keywordtype">int</span>);</div>
+<div class="line"><a name="l00112"></a><span class="lineno">  112</span>&#160;        };</div>
+<div class="line"><a name="l00113"></a><span class="lineno">  113</span>&#160; </div>
+<div class="line"><a name="l00114"></a><span class="lineno">  114</span>&#160;        <span class="comment">// -- Unary operators --</span></div>
+<div class="line"><a name="l00115"></a><span class="lineno">  115</span>&#160; </div>
+<div class="line"><a name="l00116"></a><span class="lineno">  116</span>&#160;        template&lt;typename T, qualifier Q&gt;</div>
+<div class="line"><a name="l00117"></a><span class="lineno">  117</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR mat&lt;4, 4, T, Q&gt; operator+(mat&lt;4, 4, T, Q&gt; const&amp; m);</div>
+<div class="line"><a name="l00118"></a><span class="lineno">  118</span>&#160; </div>
+<div class="line"><a name="l00119"></a><span class="lineno">  119</span>&#160;        template&lt;typename T, qualifier Q&gt;</div>
+<div class="line"><a name="l00120"></a><span class="lineno">  120</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR mat&lt;4, 4, T, Q&gt; operator-(mat&lt;4, 4, T, Q&gt; const&amp; m);</div>
+<div class="line"><a name="l00121"></a><span class="lineno">  121</span>&#160; </div>
+<div class="line"><a name="l00122"></a><span class="lineno">  122</span>&#160;        <span class="comment">// -- Binary operators --</span></div>
+<div class="line"><a name="l00123"></a><span class="lineno">  123</span>&#160; </div>
+<div class="line"><a name="l00124"></a><span class="lineno">  124</span>&#160;        template&lt;typename T, qualifier Q&gt;</div>
+<div class="line"><a name="l00125"></a><span class="lineno">  125</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR mat&lt;4, 4, T, Q&gt; operator+(mat&lt;4, 4, T, Q&gt; const&amp; m, T scalar);</div>
+<div class="line"><a name="l00126"></a><span class="lineno">  126</span>&#160; </div>
+<div class="line"><a name="l00127"></a><span class="lineno">  127</span>&#160;        template&lt;typename T, qualifier Q&gt;</div>
+<div class="line"><a name="l00128"></a><span class="lineno">  128</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR mat&lt;4, 4, T, Q&gt; operator+(T scalar, mat&lt;4, 4, T, Q&gt; const&amp; m);</div>
+<div class="line"><a name="l00129"></a><span class="lineno">  129</span>&#160; </div>
+<div class="line"><a name="l00130"></a><span class="lineno">  130</span>&#160;        template&lt;typename T, qualifier Q&gt;</div>
+<div class="line"><a name="l00131"></a><span class="lineno">  131</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR mat&lt;4, 4, T, Q&gt; operator+(mat&lt;4, 4, T, Q&gt; const&amp; m1, mat&lt;4, 4, T, Q&gt; const&amp; m2);</div>
+<div class="line"><a name="l00132"></a><span class="lineno">  132</span>&#160; </div>
+<div class="line"><a name="l00133"></a><span class="lineno">  133</span>&#160;        template&lt;typename T, qualifier Q&gt;</div>
+<div class="line"><a name="l00134"></a><span class="lineno">  134</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR mat&lt;4, 4, T, Q&gt; operator-(mat&lt;4, 4, T, Q&gt; const&amp; m, T scalar);</div>
+<div class="line"><a name="l00135"></a><span class="lineno">  135</span>&#160; </div>
+<div class="line"><a name="l00136"></a><span class="lineno">  136</span>&#160;        template&lt;typename T, qualifier Q&gt;</div>
+<div class="line"><a name="l00137"></a><span class="lineno">  137</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR mat&lt;4, 4, T, Q&gt; operator-(T scalar, mat&lt;4, 4, T, Q&gt; const&amp; m);</div>
+<div class="line"><a name="l00138"></a><span class="lineno">  138</span>&#160; </div>
+<div class="line"><a name="l00139"></a><span class="lineno">  139</span>&#160;        template&lt;typename T, qualifier Q&gt;</div>
+<div class="line"><a name="l00140"></a><span class="lineno">  140</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR mat&lt;4, 4, T, Q&gt; operator-(mat&lt;4, 4, T, Q&gt; const&amp; m1,        mat&lt;4, 4, T, Q&gt; const&amp; m2);</div>
+<div class="line"><a name="l00141"></a><span class="lineno">  141</span>&#160; </div>
+<div class="line"><a name="l00142"></a><span class="lineno">  142</span>&#160;        template&lt;typename T, qualifier Q&gt;</div>
+<div class="line"><a name="l00143"></a><span class="lineno">  143</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR mat&lt;4, 4, T, Q&gt; operator*(mat&lt;4, 4, T, Q&gt; const&amp; m, T scalar);</div>
+<div class="line"><a name="l00144"></a><span class="lineno">  144</span>&#160; </div>
+<div class="line"><a name="l00145"></a><span class="lineno">  145</span>&#160;        template&lt;typename T, qualifier Q&gt;</div>
+<div class="line"><a name="l00146"></a><span class="lineno">  146</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR mat&lt;4, 4, T, Q&gt; operator*(T scalar, mat&lt;4, 4, T, Q&gt; const&amp; m);</div>
+<div class="line"><a name="l00147"></a><span class="lineno">  147</span>&#160; </div>
+<div class="line"><a name="l00148"></a><span class="lineno">  148</span>&#160;        template&lt;typename T, qualifier Q&gt;</div>
+<div class="line"><a name="l00149"></a><span class="lineno">  149</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR typename mat&lt;4, 4, T, Q&gt;::col_type operator*(mat&lt;4, 4, T, Q&gt; const&amp; m, typename mat&lt;4, 4, T, Q&gt;::row_type const&amp; v);</div>
+<div class="line"><a name="l00150"></a><span class="lineno">  150</span>&#160; </div>
+<div class="line"><a name="l00151"></a><span class="lineno">  151</span>&#160;        template&lt;typename T, qualifier Q&gt;</div>
+<div class="line"><a name="l00152"></a><span class="lineno">  152</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR typename mat&lt;4, 4, T, Q&gt;::row_type operator*(typename mat&lt;4, 4, T, Q&gt;::col_type const&amp; v, mat&lt;4, 4, T, Q&gt; const&amp; m);</div>
+<div class="line"><a name="l00153"></a><span class="lineno">  153</span>&#160; </div>
+<div class="line"><a name="l00154"></a><span class="lineno">  154</span>&#160;        template&lt;typename T, qualifier Q&gt;</div>
+<div class="line"><a name="l00155"></a><span class="lineno">  155</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR mat&lt;2, 4, T, Q&gt; operator*(mat&lt;4, 4, T, Q&gt; const&amp; m1, mat&lt;2, 4, T, Q&gt; const&amp; m2);</div>
+<div class="line"><a name="l00156"></a><span class="lineno">  156</span>&#160; </div>
+<div class="line"><a name="l00157"></a><span class="lineno">  157</span>&#160;        template&lt;typename T, qualifier Q&gt;</div>
+<div class="line"><a name="l00158"></a><span class="lineno">  158</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR mat&lt;3, 4, T, Q&gt; operator*(mat&lt;4, 4, T, Q&gt; const&amp; m1, mat&lt;3, 4, T, Q&gt; const&amp; m2);</div>
+<div class="line"><a name="l00159"></a><span class="lineno">  159</span>&#160; </div>
+<div class="line"><a name="l00160"></a><span class="lineno">  160</span>&#160;        template&lt;typename T, qualifier Q&gt;</div>
+<div class="line"><a name="l00161"></a><span class="lineno">  161</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR mat&lt;4, 4, T, Q&gt; operator*(mat&lt;4, 4, T, Q&gt; const&amp; m1, mat&lt;4, 4, T, Q&gt; const&amp; m2);</div>
+<div class="line"><a name="l00162"></a><span class="lineno">  162</span>&#160; </div>
+<div class="line"><a name="l00163"></a><span class="lineno">  163</span>&#160;        template&lt;typename T, qualifier Q&gt;</div>
+<div class="line"><a name="l00164"></a><span class="lineno">  164</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR mat&lt;4, 4, T, Q&gt; operator/(mat&lt;4, 4, T, Q&gt; const&amp; m, T scalar);</div>
+<div class="line"><a name="l00165"></a><span class="lineno">  165</span>&#160; </div>
+<div class="line"><a name="l00166"></a><span class="lineno">  166</span>&#160;        template&lt;typename T, qualifier Q&gt;</div>
+<div class="line"><a name="l00167"></a><span class="lineno">  167</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR mat&lt;4, 4, T, Q&gt; operator/(T scalar, mat&lt;4, 4, T, Q&gt; const&amp; m);</div>
+<div class="line"><a name="l00168"></a><span class="lineno">  168</span>&#160; </div>
+<div class="line"><a name="l00169"></a><span class="lineno">  169</span>&#160;        template&lt;typename T, qualifier Q&gt;</div>
+<div class="line"><a name="l00170"></a><span class="lineno">  170</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR typename mat&lt;4, 4, T, Q&gt;::col_type operator/(mat&lt;4, 4, T, Q&gt; const&amp; m, typename mat&lt;4, 4, T, Q&gt;::row_type const&amp; v);</div>
+<div class="line"><a name="l00171"></a><span class="lineno">  171</span>&#160; </div>
+<div class="line"><a name="l00172"></a><span class="lineno">  172</span>&#160;        template&lt;typename T, qualifier Q&gt;</div>
+<div class="line"><a name="l00173"></a><span class="lineno">  173</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR typename mat&lt;4, 4, T, Q&gt;::row_type operator/(typename mat&lt;4, 4, T, Q&gt;::col_type const&amp; v, mat&lt;4, 4, T, Q&gt; const&amp; m);</div>
+<div class="line"><a name="l00174"></a><span class="lineno">  174</span>&#160; </div>
+<div class="line"><a name="l00175"></a><span class="lineno">  175</span>&#160;        template&lt;typename T, qualifier Q&gt;</div>
+<div class="line"><a name="l00176"></a><span class="lineno">  176</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR mat&lt;4, 4, T, Q&gt; operator/(mat&lt;4, 4, T, Q&gt; const&amp; m1,        mat&lt;4, 4, T, Q&gt; const&amp; m2);</div>
+<div class="line"><a name="l00177"></a><span class="lineno">  177</span>&#160; </div>
+<div class="line"><a name="l00178"></a><span class="lineno">  178</span>&#160;        <span class="comment">// -- Boolean operators --</span></div>
+<div class="line"><a name="l00179"></a><span class="lineno">  179</span>&#160; </div>
+<div class="line"><a name="l00180"></a><span class="lineno">  180</span>&#160;        template&lt;typename T, qualifier Q&gt;</div>
+<div class="line"><a name="l00181"></a><span class="lineno">  181</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR <span class="keywordtype">bool</span> operator==(mat&lt;4, 4, T, Q&gt; const&amp; m1, mat&lt;4, 4, T, Q&gt; const&amp; m2);</div>
+<div class="line"><a name="l00182"></a><span class="lineno">  182</span>&#160; </div>
+<div class="line"><a name="l00183"></a><span class="lineno">  183</span>&#160;        template&lt;typename T, qualifier Q&gt;</div>
+<div class="line"><a name="l00184"></a><span class="lineno">  184</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR <span class="keywordtype">bool</span> operator!=(mat&lt;4, 4, T, Q&gt; const&amp; m1, mat&lt;4, 4, T, Q&gt; const&amp; m2);</div>
+<div class="line"><a name="l00185"></a><span class="lineno">  185</span>&#160;}<span class="comment">//namespace glm</span></div>
+<div class="line"><a name="l00186"></a><span class="lineno">  186</span>&#160; </div>
+<div class="line"><a name="l00187"></a><span class="lineno">  187</span>&#160;<span class="preprocessor">#ifndef GLM_EXTERNAL_TEMPLATE</span></div>
+<div class="line"><a name="l00188"></a><span class="lineno">  188</span>&#160;<span class="preprocessor">#include &quot;type_mat4x4.inl&quot;</span></div>
+<div class="line"><a name="l00189"></a><span class="lineno">  189</span>&#160;<span class="preprocessor">#endif//GLM_EXTERNAL_TEMPLATE</span></div>
 </div><!-- fragment --></div><!-- contents -->
+<div class="ttc" id="aa00080_html"><div class="ttname"><a href="a00080.html">type_vec4.hpp</a></div><div class="ttdoc">Core features</div></div>
+<div class="ttc" id="aa00853_html_gab703732449be6c7199369b3f9a91ed38"><div class="ttname"><a href="a00853.html#gab703732449be6c7199369b3f9a91ed38">glm::length</a></div><div class="ttdeci">GLM_FUNC_DECL T length(qua&lt; T, Q &gt; const &amp;q)</div><div class="ttdoc">Returns the norm of a quaternions.</div></div>
 <!-- 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.10
+</a> 1.8.18
 </small></address>
 </body>
 </html>

+ 0 - 123
doc/api/a00066.html

@@ -1,123 +0,0 @@
-<!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.10"/>
-<title>0.9.9 API documentation: matrix_double2x3_precision.hpp File Reference</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="search/search.css" rel="stylesheet" type="text/css"/>
-<script type="text/javascript" src="search/searchdata.js"></script>
-<script type="text/javascript" src="search/search.js"></script>
-<script type="text/javascript">
-  $(document).ready(function() { init_search(); });
-</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 id="projectlogo"><img alt="Logo" src="logo-mini.png"/></td>
-  <td id="projectalign" style="padding-left: 0.5em;">
-   <div id="projectname">0.9.9 API documentation
-   </div>
-  </td>
- </tr>
- </tbody>
-</table>
-</div>
-<!-- end header part -->
-<!-- Generated by Doxygen 1.8.10 -->
-<script type="text/javascript">
-var searchBox = new SearchBox("searchBox", "search",false,'Search');
-</script>
-  <div id="navrow1" class="tabs">
-    <ul class="tablist">
-      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
-      <li><a href="modules.html"><span>Modules</span></a></li>
-      <li class="current"><a href="files.html"><span>Files</span></a></li>
-      <li>
-        <div id="MSearchBox" class="MSearchBoxInactive">
-        <span class="left">
-          <img id="MSearchSelect" src="search/mag_sel.png"
-               onmouseover="return searchBox.OnSearchSelectShow()"
-               onmouseout="return searchBox.OnSearchSelectHide()"
-               alt=""/>
-          <input type="text" id="MSearchField" value="Search" accesskey="S"
-               onfocus="searchBox.OnSearchFieldFocus(true)" 
-               onblur="searchBox.OnSearchFieldFocus(false)" 
-               onkeyup="searchBox.OnSearchFieldChange(event)"/>
-          </span><span class="right">
-            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
-          </span>
-        </div>
-      </li>
-    </ul>
-  </div>
-  <div id="navrow2" class="tabs2">
-    <ul class="tablist">
-      <li><a href="files.html"><span>File&#160;List</span></a></li>
-    </ul>
-  </div>
-<!-- window showing the filter options -->
-<div id="MSearchSelectWindow"
-     onmouseover="return searchBox.OnSearchSelectShow()"
-     onmouseout="return searchBox.OnSearchSelectHide()"
-     onkeydown="return searchBox.OnSearchSelectKey(event)">
-</div>
-
-<!-- iframe showing the search results (closed by default) -->
-<div id="MSearchResultsWindow">
-<iframe src="javascript:void(0)" frameborder="0" 
-        name="MSearchResults" id="MSearchResults">
-</iframe>
-</div>
-
-<div id="nav-path" class="navpath">
-  <ul>
-<li class="navelem"><a class="el" href="dir_3a581ba30d25676e4b797b1f96d53b45.html">F:</a></li><li class="navelem"><a class="el" href="dir_9e5fe034a00e89334fd5186c3e7db156.html">G-Truc</a></li><li class="navelem"><a class="el" href="dir_d9496f0844b48bc7e53b5af8c99b9ab2.html">Source</a></li><li class="navelem"><a class="el" href="dir_a8bee7be44182a33f3820393ae0b105d.html">G-Truc</a></li><li class="navelem"><a class="el" href="dir_44e5e654415abd9ca6fdeaddaff8565e.html">glm</a></li><li class="navelem"><a class="el" href="dir_cef2d71d502cb69a9252bca2297d9549.html">glm</a></li><li class="navelem"><a class="el" href="dir_6b66465792d005310484819a0eb0b0d3.html">ext</a></li>  </ul>
-</div>
-</div><!-- top -->
-<div class="header">
-  <div class="summary">
-<a href="#typedef-members">Typedefs</a>  </div>
-  <div class="headertitle">
-<div class="title">matrix_double2x3_precision.hpp File Reference</div>  </div>
-</div><!--header-->
-<div class="contents">
-
-<p><a class="el" href="a00280.html">Core features</a>  
-<a href="#details">More...</a></p>
-
-<p><a href="a00066_source.html">Go to the source code of this file.</a></p>
-<table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="typedef-members"></a>
-Typedefs</h2></td></tr>
-<tr class="memitem:gad4689ec33bc2c26e10132b174b49001a"><td class="memItemLeft" align="right" valign="top">typedef mat&lt; 2, 3, double, highp &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00284.html#gad4689ec33bc2c26e10132b174b49001a">highp_dmat2x3</a></td></tr>
-<tr class="memdesc:gad4689ec33bc2c26e10132b174b49001a"><td class="mdescLeft">&#160;</td><td class="mdescRight">2 columns of 3 components matrix of double-precision floating-point numbers using medium precision arithmetic in term of ULPs.  <a href="a00284.html#gad4689ec33bc2c26e10132b174b49001a">More...</a><br /></td></tr>
-<tr class="separator:gad4689ec33bc2c26e10132b174b49001a"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:gaf6bf2f5bde7ad5b9c289f777b93094af"><td class="memItemLeft" align="right" valign="top">typedef mat&lt; 2, 3, double, lowp &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00284.html#gaf6bf2f5bde7ad5b9c289f777b93094af">lowp_dmat2x3</a></td></tr>
-<tr class="memdesc:gaf6bf2f5bde7ad5b9c289f777b93094af"><td class="mdescLeft">&#160;</td><td class="mdescRight">2 columns of 3 components matrix of double-precision floating-point numbers using low precision arithmetic in term of ULPs.  <a href="a00284.html#gaf6bf2f5bde7ad5b9c289f777b93094af">More...</a><br /></td></tr>
-<tr class="separator:gaf6bf2f5bde7ad5b9c289f777b93094af"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:ga741e05adf1f12d5d913f67088db1009a"><td class="memItemLeft" align="right" valign="top">typedef mat&lt; 2, 3, double, mediump &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00284.html#ga741e05adf1f12d5d913f67088db1009a">mediump_dmat2x3</a></td></tr>
-<tr class="memdesc:ga741e05adf1f12d5d913f67088db1009a"><td class="mdescLeft">&#160;</td><td class="mdescRight">2 columns of 3 components matrix of double-precision floating-point numbers using medium precision arithmetic in term of ULPs.  <a href="a00284.html#ga741e05adf1f12d5d913f67088db1009a">More...</a><br /></td></tr>
-<tr class="separator:ga741e05adf1f12d5d913f67088db1009a"><td class="memSeparator" colspan="2">&#160;</td></tr>
-</table>
-<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
-<div class="textblock"><p><a class="el" href="a00280.html">Core features</a> </p>
-
-<p>Definition in file <a class="el" href="a00066_source.html">matrix_double2x3_precision.hpp</a>.</p>
-</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.10
-</small></address>
-</body>
-</html>

+ 0 - 117
doc/api/a00066_source.html

@@ -1,117 +0,0 @@
-<!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.10"/>
-<title>0.9.9 API documentation: matrix_double2x3_precision.hpp Source File</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="search/search.css" rel="stylesheet" type="text/css"/>
-<script type="text/javascript" src="search/searchdata.js"></script>
-<script type="text/javascript" src="search/search.js"></script>
-<script type="text/javascript">
-  $(document).ready(function() { init_search(); });
-</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 id="projectlogo"><img alt="Logo" src="logo-mini.png"/></td>
-  <td id="projectalign" style="padding-left: 0.5em;">
-   <div id="projectname">0.9.9 API documentation
-   </div>
-  </td>
- </tr>
- </tbody>
-</table>
-</div>
-<!-- end header part -->
-<!-- Generated by Doxygen 1.8.10 -->
-<script type="text/javascript">
-var searchBox = new SearchBox("searchBox", "search",false,'Search');
-</script>
-  <div id="navrow1" class="tabs">
-    <ul class="tablist">
-      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
-      <li><a href="modules.html"><span>Modules</span></a></li>
-      <li class="current"><a href="files.html"><span>Files</span></a></li>
-      <li>
-        <div id="MSearchBox" class="MSearchBoxInactive">
-        <span class="left">
-          <img id="MSearchSelect" src="search/mag_sel.png"
-               onmouseover="return searchBox.OnSearchSelectShow()"
-               onmouseout="return searchBox.OnSearchSelectHide()"
-               alt=""/>
-          <input type="text" id="MSearchField" value="Search" accesskey="S"
-               onfocus="searchBox.OnSearchFieldFocus(true)" 
-               onblur="searchBox.OnSearchFieldFocus(false)" 
-               onkeyup="searchBox.OnSearchFieldChange(event)"/>
-          </span><span class="right">
-            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
-          </span>
-        </div>
-      </li>
-    </ul>
-  </div>
-  <div id="navrow2" class="tabs2">
-    <ul class="tablist">
-      <li><a href="files.html"><span>File&#160;List</span></a></li>
-    </ul>
-  </div>
-<!-- window showing the filter options -->
-<div id="MSearchSelectWindow"
-     onmouseover="return searchBox.OnSearchSelectShow()"
-     onmouseout="return searchBox.OnSearchSelectHide()"
-     onkeydown="return searchBox.OnSearchSelectKey(event)">
-</div>
-
-<!-- iframe showing the search results (closed by default) -->
-<div id="MSearchResultsWindow">
-<iframe src="javascript:void(0)" frameborder="0" 
-        name="MSearchResults" id="MSearchResults">
-</iframe>
-</div>
-
-<div id="nav-path" class="navpath">
-  <ul>
-<li class="navelem"><a class="el" href="dir_3a581ba30d25676e4b797b1f96d53b45.html">F:</a></li><li class="navelem"><a class="el" href="dir_9e5fe034a00e89334fd5186c3e7db156.html">G-Truc</a></li><li class="navelem"><a class="el" href="dir_d9496f0844b48bc7e53b5af8c99b9ab2.html">Source</a></li><li class="navelem"><a class="el" href="dir_a8bee7be44182a33f3820393ae0b105d.html">G-Truc</a></li><li class="navelem"><a class="el" href="dir_44e5e654415abd9ca6fdeaddaff8565e.html">glm</a></li><li class="navelem"><a class="el" href="dir_cef2d71d502cb69a9252bca2297d9549.html">glm</a></li><li class="navelem"><a class="el" href="dir_6b66465792d005310484819a0eb0b0d3.html">ext</a></li>  </ul>
-</div>
-</div><!-- top -->
-<div class="header">
-  <div class="headertitle">
-<div class="title">matrix_double2x3_precision.hpp</div>  </div>
-</div><!--header-->
-<div class="contents">
-<a href="a00066.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span>&#160;</div>
-<div class="line"><a name="l00004"></a><span class="lineno">    4</span>&#160;<span class="preprocessor">#pragma once</span></div>
-<div class="line"><a name="l00005"></a><span class="lineno">    5</span>&#160;<span class="preprocessor">#include &quot;../detail/type_mat2x3.hpp&quot;</span></div>
-<div class="line"><a name="l00006"></a><span class="lineno">    6</span>&#160;</div>
-<div class="line"><a name="l00007"></a><span class="lineno">    7</span>&#160;<span class="keyword">namespace </span><a class="code" href="a00236.html">glm</a></div>
-<div class="line"><a name="l00008"></a><span class="lineno">    8</span>&#160;{</div>
-<div class="line"><a name="l00011"></a><span class="lineno">   11</span>&#160;</div>
-<div class="line"><a name="l00016"></a><span class="lineno"><a class="line" href="a00284.html#gaf6bf2f5bde7ad5b9c289f777b93094af">   16</a></span>&#160;        <span class="keyword">typedef</span> mat&lt;2, 3, double, lowp&gt;         <a class="code" href="a00284.html#gaf6bf2f5bde7ad5b9c289f777b93094af">lowp_dmat2x3</a>;</div>
-<div class="line"><a name="l00017"></a><span class="lineno">   17</span>&#160;</div>
-<div class="line"><a name="l00022"></a><span class="lineno"><a class="line" href="a00284.html#ga741e05adf1f12d5d913f67088db1009a">   22</a></span>&#160;        <span class="keyword">typedef</span> mat&lt;2, 3, double, mediump&gt;      <a class="code" href="a00284.html#ga741e05adf1f12d5d913f67088db1009a">mediump_dmat2x3</a>;</div>
-<div class="line"><a name="l00023"></a><span class="lineno">   23</span>&#160;</div>
-<div class="line"><a name="l00028"></a><span class="lineno"><a class="line" href="a00284.html#gad4689ec33bc2c26e10132b174b49001a">   28</a></span>&#160;        <span class="keyword">typedef</span> mat&lt;2, 3, double, highp&gt;        <a class="code" href="a00284.html#gad4689ec33bc2c26e10132b174b49001a">highp_dmat2x3</a>;</div>
-<div class="line"><a name="l00029"></a><span class="lineno">   29</span>&#160;</div>
-<div class="line"><a name="l00031"></a><span class="lineno">   31</span>&#160;}<span class="comment">//namespace glm</span></div>
-<div class="ttc" id="a00284_html_ga741e05adf1f12d5d913f67088db1009a"><div class="ttname"><a href="a00284.html#ga741e05adf1f12d5d913f67088db1009a">glm::mediump_dmat2x3</a></div><div class="ttdeci">mat&lt; 2, 3, double, mediump &gt; mediump_dmat2x3</div><div class="ttdoc">2 columns of 3 components matrix of double-precision floating-point numbers using medium precision ar...</div><div class="ttdef"><b>Definition:</b> <a href="a00066_source.html#l00022">matrix_double2x3_precision.hpp:22</a></div></div>
-<div class="ttc" id="a00284_html_gad4689ec33bc2c26e10132b174b49001a"><div class="ttname"><a href="a00284.html#gad4689ec33bc2c26e10132b174b49001a">glm::highp_dmat2x3</a></div><div class="ttdeci">mat&lt; 2, 3, double, highp &gt; highp_dmat2x3</div><div class="ttdoc">2 columns of 3 components matrix of double-precision floating-point numbers using medium precision ar...</div><div class="ttdef"><b>Definition:</b> <a href="a00066_source.html#l00028">matrix_double2x3_precision.hpp:28</a></div></div>
-<div class="ttc" id="a00284_html_gaf6bf2f5bde7ad5b9c289f777b93094af"><div class="ttname"><a href="a00284.html#gaf6bf2f5bde7ad5b9c289f777b93094af">glm::lowp_dmat2x3</a></div><div class="ttdeci">mat&lt; 2, 3, double, lowp &gt; lowp_dmat2x3</div><div class="ttdoc">2 columns of 3 components matrix of double-precision floating-point numbers using low precision arith...</div><div class="ttdef"><b>Definition:</b> <a href="a00066_source.html#l00016">matrix_double2x3_precision.hpp:16</a></div></div>
-<div class="ttc" id="a00236_html"><div class="ttname"><a href="a00236.html">glm</a></div><div class="ttdef"><b>Definition:</b> <a href="a00015_source.html#l00020">common.hpp:20</a></div></div>
-</div><!-- fragment --></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.10
-</small></address>
-</body>
-</html>

+ 0 - 117
doc/api/a00067.html

@@ -1,117 +0,0 @@
-<!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.10"/>
-<title>0.9.9 API documentation: matrix_double2x4.hpp File Reference</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="search/search.css" rel="stylesheet" type="text/css"/>
-<script type="text/javascript" src="search/searchdata.js"></script>
-<script type="text/javascript" src="search/search.js"></script>
-<script type="text/javascript">
-  $(document).ready(function() { init_search(); });
-</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 id="projectlogo"><img alt="Logo" src="logo-mini.png"/></td>
-  <td id="projectalign" style="padding-left: 0.5em;">
-   <div id="projectname">0.9.9 API documentation
-   </div>
-  </td>
- </tr>
- </tbody>
-</table>
-</div>
-<!-- end header part -->
-<!-- Generated by Doxygen 1.8.10 -->
-<script type="text/javascript">
-var searchBox = new SearchBox("searchBox", "search",false,'Search');
-</script>
-  <div id="navrow1" class="tabs">
-    <ul class="tablist">
-      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
-      <li><a href="modules.html"><span>Modules</span></a></li>
-      <li class="current"><a href="files.html"><span>Files</span></a></li>
-      <li>
-        <div id="MSearchBox" class="MSearchBoxInactive">
-        <span class="left">
-          <img id="MSearchSelect" src="search/mag_sel.png"
-               onmouseover="return searchBox.OnSearchSelectShow()"
-               onmouseout="return searchBox.OnSearchSelectHide()"
-               alt=""/>
-          <input type="text" id="MSearchField" value="Search" accesskey="S"
-               onfocus="searchBox.OnSearchFieldFocus(true)" 
-               onblur="searchBox.OnSearchFieldFocus(false)" 
-               onkeyup="searchBox.OnSearchFieldChange(event)"/>
-          </span><span class="right">
-            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
-          </span>
-        </div>
-      </li>
-    </ul>
-  </div>
-  <div id="navrow2" class="tabs2">
-    <ul class="tablist">
-      <li><a href="files.html"><span>File&#160;List</span></a></li>
-    </ul>
-  </div>
-<!-- window showing the filter options -->
-<div id="MSearchSelectWindow"
-     onmouseover="return searchBox.OnSearchSelectShow()"
-     onmouseout="return searchBox.OnSearchSelectHide()"
-     onkeydown="return searchBox.OnSearchSelectKey(event)">
-</div>
-
-<!-- iframe showing the search results (closed by default) -->
-<div id="MSearchResultsWindow">
-<iframe src="javascript:void(0)" frameborder="0" 
-        name="MSearchResults" id="MSearchResults">
-</iframe>
-</div>
-
-<div id="nav-path" class="navpath">
-  <ul>
-<li class="navelem"><a class="el" href="dir_3a581ba30d25676e4b797b1f96d53b45.html">F:</a></li><li class="navelem"><a class="el" href="dir_9e5fe034a00e89334fd5186c3e7db156.html">G-Truc</a></li><li class="navelem"><a class="el" href="dir_d9496f0844b48bc7e53b5af8c99b9ab2.html">Source</a></li><li class="navelem"><a class="el" href="dir_a8bee7be44182a33f3820393ae0b105d.html">G-Truc</a></li><li class="navelem"><a class="el" href="dir_44e5e654415abd9ca6fdeaddaff8565e.html">glm</a></li><li class="navelem"><a class="el" href="dir_cef2d71d502cb69a9252bca2297d9549.html">glm</a></li><li class="navelem"><a class="el" href="dir_6b66465792d005310484819a0eb0b0d3.html">ext</a></li>  </ul>
-</div>
-</div><!-- top -->
-<div class="header">
-  <div class="summary">
-<a href="#typedef-members">Typedefs</a>  </div>
-  <div class="headertitle">
-<div class="title">matrix_double2x4.hpp File Reference</div>  </div>
-</div><!--header-->
-<div class="contents">
-
-<p><a class="el" href="a00280.html">Core features</a>  
-<a href="#details">More...</a></p>
-
-<p><a href="a00067_source.html">Go to the source code of this file.</a></p>
-<table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="typedef-members"></a>
-Typedefs</h2></td></tr>
-<tr class="memitem:gaef2198807e937072803ae0ae45e1965e"><td class="memItemLeft" align="right" valign="top">typedef mat&lt; 2, 4, double, defaultp &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00283.html#gaef2198807e937072803ae0ae45e1965e">dmat2x4</a></td></tr>
-<tr class="memdesc:gaef2198807e937072803ae0ae45e1965e"><td class="mdescLeft">&#160;</td><td class="mdescRight">2 columns of 4 components matrix of double-precision floating-point numbers.  <a href="a00283.html#gaef2198807e937072803ae0ae45e1965e">More...</a><br /></td></tr>
-<tr class="separator:gaef2198807e937072803ae0ae45e1965e"><td class="memSeparator" colspan="2">&#160;</td></tr>
-</table>
-<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
-<div class="textblock"><p><a class="el" href="a00280.html">Core features</a> </p>
-
-<p>Definition in file <a class="el" href="a00067_source.html">matrix_double2x4.hpp</a>.</p>
-</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.10
-</small></address>
-</body>
-</html>

+ 0 - 111
doc/api/a00067_source.html

@@ -1,111 +0,0 @@
-<!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.10"/>
-<title>0.9.9 API documentation: matrix_double2x4.hpp Source File</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="search/search.css" rel="stylesheet" type="text/css"/>
-<script type="text/javascript" src="search/searchdata.js"></script>
-<script type="text/javascript" src="search/search.js"></script>
-<script type="text/javascript">
-  $(document).ready(function() { init_search(); });
-</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 id="projectlogo"><img alt="Logo" src="logo-mini.png"/></td>
-  <td id="projectalign" style="padding-left: 0.5em;">
-   <div id="projectname">0.9.9 API documentation
-   </div>
-  </td>
- </tr>
- </tbody>
-</table>
-</div>
-<!-- end header part -->
-<!-- Generated by Doxygen 1.8.10 -->
-<script type="text/javascript">
-var searchBox = new SearchBox("searchBox", "search",false,'Search');
-</script>
-  <div id="navrow1" class="tabs">
-    <ul class="tablist">
-      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
-      <li><a href="modules.html"><span>Modules</span></a></li>
-      <li class="current"><a href="files.html"><span>Files</span></a></li>
-      <li>
-        <div id="MSearchBox" class="MSearchBoxInactive">
-        <span class="left">
-          <img id="MSearchSelect" src="search/mag_sel.png"
-               onmouseover="return searchBox.OnSearchSelectShow()"
-               onmouseout="return searchBox.OnSearchSelectHide()"
-               alt=""/>
-          <input type="text" id="MSearchField" value="Search" accesskey="S"
-               onfocus="searchBox.OnSearchFieldFocus(true)" 
-               onblur="searchBox.OnSearchFieldFocus(false)" 
-               onkeyup="searchBox.OnSearchFieldChange(event)"/>
-          </span><span class="right">
-            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
-          </span>
-        </div>
-      </li>
-    </ul>
-  </div>
-  <div id="navrow2" class="tabs2">
-    <ul class="tablist">
-      <li><a href="files.html"><span>File&#160;List</span></a></li>
-    </ul>
-  </div>
-<!-- window showing the filter options -->
-<div id="MSearchSelectWindow"
-     onmouseover="return searchBox.OnSearchSelectShow()"
-     onmouseout="return searchBox.OnSearchSelectHide()"
-     onkeydown="return searchBox.OnSearchSelectKey(event)">
-</div>
-
-<!-- iframe showing the search results (closed by default) -->
-<div id="MSearchResultsWindow">
-<iframe src="javascript:void(0)" frameborder="0" 
-        name="MSearchResults" id="MSearchResults">
-</iframe>
-</div>
-
-<div id="nav-path" class="navpath">
-  <ul>
-<li class="navelem"><a class="el" href="dir_3a581ba30d25676e4b797b1f96d53b45.html">F:</a></li><li class="navelem"><a class="el" href="dir_9e5fe034a00e89334fd5186c3e7db156.html">G-Truc</a></li><li class="navelem"><a class="el" href="dir_d9496f0844b48bc7e53b5af8c99b9ab2.html">Source</a></li><li class="navelem"><a class="el" href="dir_a8bee7be44182a33f3820393ae0b105d.html">G-Truc</a></li><li class="navelem"><a class="el" href="dir_44e5e654415abd9ca6fdeaddaff8565e.html">glm</a></li><li class="navelem"><a class="el" href="dir_cef2d71d502cb69a9252bca2297d9549.html">glm</a></li><li class="navelem"><a class="el" href="dir_6b66465792d005310484819a0eb0b0d3.html">ext</a></li>  </ul>
-</div>
-</div><!-- top -->
-<div class="header">
-  <div class="headertitle">
-<div class="title">matrix_double2x4.hpp</div>  </div>
-</div><!--header-->
-<div class="contents">
-<a href="a00067.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span>&#160;</div>
-<div class="line"><a name="l00004"></a><span class="lineno">    4</span>&#160;<span class="preprocessor">#pragma once</span></div>
-<div class="line"><a name="l00005"></a><span class="lineno">    5</span>&#160;<span class="preprocessor">#include &quot;../detail/type_mat2x4.hpp&quot;</span></div>
-<div class="line"><a name="l00006"></a><span class="lineno">    6</span>&#160;</div>
-<div class="line"><a name="l00007"></a><span class="lineno">    7</span>&#160;<span class="keyword">namespace </span><a class="code" href="a00236.html">glm</a></div>
-<div class="line"><a name="l00008"></a><span class="lineno">    8</span>&#160;{</div>
-<div class="line"><a name="l00011"></a><span class="lineno">   11</span>&#160;</div>
-<div class="line"><a name="l00015"></a><span class="lineno"><a class="line" href="a00283.html#gaef2198807e937072803ae0ae45e1965e">   15</a></span>&#160;        <span class="keyword">typedef</span> mat&lt;2, 4, double, defaultp&gt;             <a class="code" href="a00283.html#gaef2198807e937072803ae0ae45e1965e">dmat2x4</a>;</div>
-<div class="line"><a name="l00016"></a><span class="lineno">   16</span>&#160;</div>
-<div class="line"><a name="l00018"></a><span class="lineno">   18</span>&#160;}<span class="comment">//namespace glm</span></div>
-<div class="ttc" id="a00283_html_gaef2198807e937072803ae0ae45e1965e"><div class="ttname"><a href="a00283.html#gaef2198807e937072803ae0ae45e1965e">glm::dmat2x4</a></div><div class="ttdeci">mat&lt; 2, 4, double, defaultp &gt; dmat2x4</div><div class="ttdoc">2 columns of 4 components matrix of double-precision floating-point numbers. </div><div class="ttdef"><b>Definition:</b> <a href="a00067_source.html#l00015">matrix_double2x4.hpp:15</a></div></div>
-<div class="ttc" id="a00236_html"><div class="ttname"><a href="a00236.html">glm</a></div><div class="ttdef"><b>Definition:</b> <a href="a00015_source.html#l00020">common.hpp:20</a></div></div>
-</div><!-- fragment --></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.10
-</small></address>
-</body>
-</html>

+ 24 - 57
doc/api/a00068.html

@@ -1,19 +1,17 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://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.10"/>
-<title>0.9.9 API documentation: matrix_double2x4_precision.hpp File Reference</title>
+<meta name="generator" content="Doxygen 1.8.18"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>1.0.0 API documentation: type_quat.hpp File Reference</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="search/search.css" rel="stylesheet" type="text/css"/>
 <script type="text/javascript" src="search/searchdata.js"></script>
 <script type="text/javascript" src="search/search.js"></script>
-<script type="text/javascript">
-  $(document).ready(function() { init_search(); });
-</script>
 <link href="doxygen.css" rel="stylesheet" type="text/css" />
 </head>
 <body>
@@ -24,7 +22,7 @@
  <tr style="height: 56px;">
   <td id="projectlogo"><img alt="Logo" src="logo-mini.png"/></td>
   <td id="projectalign" style="padding-left: 0.5em;">
-   <div id="projectname">0.9.9 API documentation
+   <div id="projectname">1.0.0 API documentation
    </div>
   </td>
  </tr>
@@ -32,38 +30,22 @@
 </table>
 </div>
 <!-- end header part -->
-<!-- Generated by Doxygen 1.8.10 -->
+<!-- Generated by Doxygen 1.8.18 -->
 <script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
 var searchBox = new SearchBox("searchBox", "search",false,'Search');
+/* @license-end */
 </script>
-  <div id="navrow1" class="tabs">
-    <ul class="tablist">
-      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
-      <li><a href="modules.html"><span>Modules</span></a></li>
-      <li class="current"><a href="files.html"><span>Files</span></a></li>
-      <li>
-        <div id="MSearchBox" class="MSearchBoxInactive">
-        <span class="left">
-          <img id="MSearchSelect" src="search/mag_sel.png"
-               onmouseover="return searchBox.OnSearchSelectShow()"
-               onmouseout="return searchBox.OnSearchSelectHide()"
-               alt=""/>
-          <input type="text" id="MSearchField" value="Search" accesskey="S"
-               onfocus="searchBox.OnSearchFieldFocus(true)" 
-               onblur="searchBox.OnSearchFieldFocus(false)" 
-               onkeyup="searchBox.OnSearchFieldChange(event)"/>
-          </span><span class="right">
-            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
-          </span>
-        </div>
-      </li>
-    </ul>
-  </div>
-  <div id="navrow2" class="tabs2">
-    <ul class="tablist">
-      <li><a href="files.html"><span>File&#160;List</span></a></li>
-    </ul>
-  </div>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
 <!-- window showing the filter options -->
 <div id="MSearchSelectWindow"
      onmouseover="return searchBox.OnSearchSelectShow()"
@@ -80,44 +62,29 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 
 <div id="nav-path" class="navpath">
   <ul>
-<li class="navelem"><a class="el" href="dir_3a581ba30d25676e4b797b1f96d53b45.html">F:</a></li><li class="navelem"><a class="el" href="dir_9e5fe034a00e89334fd5186c3e7db156.html">G-Truc</a></li><li class="navelem"><a class="el" href="dir_d9496f0844b48bc7e53b5af8c99b9ab2.html">Source</a></li><li class="navelem"><a class="el" href="dir_a8bee7be44182a33f3820393ae0b105d.html">G-Truc</a></li><li class="navelem"><a class="el" href="dir_44e5e654415abd9ca6fdeaddaff8565e.html">glm</a></li><li class="navelem"><a class="el" href="dir_cef2d71d502cb69a9252bca2297d9549.html">glm</a></li><li class="navelem"><a class="el" href="dir_6b66465792d005310484819a0eb0b0d3.html">ext</a></li>  </ul>
+<li class="navelem"><a class="el" href="dir_885cc87fac2d91e269af0a5a959fa5f6.html">E:</a></li><li class="navelem"><a class="el" href="dir_63ed049134a778d525e06b63afc2c979.html">Github</a></li><li class="navelem"><a class="el" href="dir_c98a9ac98258ab9f831b188d66361a70.html">g-truc</a></li><li class="navelem"><a class="el" href="dir_50f12b6ceb23d7f6adfb377a1ae8b006.html">glm</a></li><li class="navelem"><a class="el" href="dir_fca33f1b5115d46f42c670590789c0d2.html">glm</a></li><li class="navelem"><a class="el" href="dir_382f4fd018b81be8753cb53c0a41a09a.html">detail</a></li>  </ul>
 </div>
 </div><!-- top -->
 <div class="header">
-  <div class="summary">
-<a href="#typedef-members">Typedefs</a>  </div>
   <div class="headertitle">
-<div class="title">matrix_double2x4_precision.hpp File Reference</div>  </div>
+<div class="title">type_quat.hpp File Reference</div>  </div>
 </div><!--header-->
 <div class="contents">
 
-<p><a class="el" href="a00280.html">Core features</a>  
+<p><a class="el" href="a00889.html">Core features</a>  
 <a href="#details">More...</a></p>
 
 <p><a href="a00068_source.html">Go to the source code of this file.</a></p>
-<table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="typedef-members"></a>
-Typedefs</h2></td></tr>
-<tr class="memitem:ga5ceeb46670fdc000a0701910cc5061c9"><td class="memItemLeft" align="right" valign="top">typedef mat&lt; 2, 4, double, highp &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00284.html#ga5ceeb46670fdc000a0701910cc5061c9">highp_dmat2x4</a></td></tr>
-<tr class="memdesc:ga5ceeb46670fdc000a0701910cc5061c9"><td class="mdescLeft">&#160;</td><td class="mdescRight">2 columns of 4 components matrix of double-precision floating-point numbers using medium precision arithmetic in term of ULPs.  <a href="a00284.html#ga5ceeb46670fdc000a0701910cc5061c9">More...</a><br /></td></tr>
-<tr class="separator:ga5ceeb46670fdc000a0701910cc5061c9"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:ga97507a31ecee8609887d0f23bbde92c7"><td class="memItemLeft" align="right" valign="top">typedef mat&lt; 2, 4, double, lowp &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00284.html#ga97507a31ecee8609887d0f23bbde92c7">lowp_dmat2x4</a></td></tr>
-<tr class="memdesc:ga97507a31ecee8609887d0f23bbde92c7"><td class="mdescLeft">&#160;</td><td class="mdescRight">2 columns of 4 components matrix of double-precision floating-point numbers using low precision arithmetic in term of ULPs.  <a href="a00284.html#ga97507a31ecee8609887d0f23bbde92c7">More...</a><br /></td></tr>
-<tr class="separator:ga97507a31ecee8609887d0f23bbde92c7"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:ga685bda24922d112786af385deb4deb43"><td class="memItemLeft" align="right" valign="top">typedef mat&lt; 2, 4, double, mediump &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00284.html#ga685bda24922d112786af385deb4deb43">mediump_dmat2x4</a></td></tr>
-<tr class="memdesc:ga685bda24922d112786af385deb4deb43"><td class="mdescLeft">&#160;</td><td class="mdescRight">2 columns of 4 components matrix of double-precision floating-point numbers using medium precision arithmetic in term of ULPs.  <a href="a00284.html#ga685bda24922d112786af385deb4deb43">More...</a><br /></td></tr>
-<tr class="separator:ga685bda24922d112786af385deb4deb43"><td class="memSeparator" colspan="2">&#160;</td></tr>
-</table>
 <a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
-<div class="textblock"><p><a class="el" href="a00280.html">Core features</a> </p>
+<div class="textblock"><p><a class="el" href="a00889.html">Core features</a> </p>
 
-<p>Definition in file <a class="el" href="a00068_source.html">matrix_double2x4_precision.hpp</a>.</p>
+<p class="definition">Definition in file <a class="el" href="a00068_source.html">type_quat.hpp</a>.</p>
 </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.10
+</a> 1.8.18
 </small></address>
 </body>
 </html>

+ 204 - 56
doc/api/a00068_source.html

@@ -1,19 +1,17 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://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.10"/>
-<title>0.9.9 API documentation: matrix_double2x4_precision.hpp Source File</title>
+<meta name="generator" content="Doxygen 1.8.18"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>1.0.0 API documentation: type_quat.hpp Source File</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="search/search.css" rel="stylesheet" type="text/css"/>
 <script type="text/javascript" src="search/searchdata.js"></script>
 <script type="text/javascript" src="search/search.js"></script>
-<script type="text/javascript">
-  $(document).ready(function() { init_search(); });
-</script>
 <link href="doxygen.css" rel="stylesheet" type="text/css" />
 </head>
 <body>
@@ -24,7 +22,7 @@
  <tr style="height: 56px;">
   <td id="projectlogo"><img alt="Logo" src="logo-mini.png"/></td>
   <td id="projectalign" style="padding-left: 0.5em;">
-   <div id="projectname">0.9.9 API documentation
+   <div id="projectname">1.0.0 API documentation
    </div>
   </td>
  </tr>
@@ -32,38 +30,22 @@
 </table>
 </div>
 <!-- end header part -->
-<!-- Generated by Doxygen 1.8.10 -->
+<!-- Generated by Doxygen 1.8.18 -->
 <script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
 var searchBox = new SearchBox("searchBox", "search",false,'Search');
+/* @license-end */
 </script>
-  <div id="navrow1" class="tabs">
-    <ul class="tablist">
-      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
-      <li><a href="modules.html"><span>Modules</span></a></li>
-      <li class="current"><a href="files.html"><span>Files</span></a></li>
-      <li>
-        <div id="MSearchBox" class="MSearchBoxInactive">
-        <span class="left">
-          <img id="MSearchSelect" src="search/mag_sel.png"
-               onmouseover="return searchBox.OnSearchSelectShow()"
-               onmouseout="return searchBox.OnSearchSelectHide()"
-               alt=""/>
-          <input type="text" id="MSearchField" value="Search" accesskey="S"
-               onfocus="searchBox.OnSearchFieldFocus(true)" 
-               onblur="searchBox.OnSearchFieldFocus(false)" 
-               onkeyup="searchBox.OnSearchFieldChange(event)"/>
-          </span><span class="right">
-            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
-          </span>
-        </div>
-      </li>
-    </ul>
-  </div>
-  <div id="navrow2" class="tabs2">
-    <ul class="tablist">
-      <li><a href="files.html"><span>File&#160;List</span></a></li>
-    </ul>
-  </div>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
 <!-- window showing the filter options -->
 <div id="MSearchSelectWindow"
      onmouseover="return searchBox.OnSearchSelectShow()"
@@ -80,38 +62,204 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 
 <div id="nav-path" class="navpath">
   <ul>
-<li class="navelem"><a class="el" href="dir_3a581ba30d25676e4b797b1f96d53b45.html">F:</a></li><li class="navelem"><a class="el" href="dir_9e5fe034a00e89334fd5186c3e7db156.html">G-Truc</a></li><li class="navelem"><a class="el" href="dir_d9496f0844b48bc7e53b5af8c99b9ab2.html">Source</a></li><li class="navelem"><a class="el" href="dir_a8bee7be44182a33f3820393ae0b105d.html">G-Truc</a></li><li class="navelem"><a class="el" href="dir_44e5e654415abd9ca6fdeaddaff8565e.html">glm</a></li><li class="navelem"><a class="el" href="dir_cef2d71d502cb69a9252bca2297d9549.html">glm</a></li><li class="navelem"><a class="el" href="dir_6b66465792d005310484819a0eb0b0d3.html">ext</a></li>  </ul>
+<li class="navelem"><a class="el" href="dir_885cc87fac2d91e269af0a5a959fa5f6.html">E:</a></li><li class="navelem"><a class="el" href="dir_63ed049134a778d525e06b63afc2c979.html">Github</a></li><li class="navelem"><a class="el" href="dir_c98a9ac98258ab9f831b188d66361a70.html">g-truc</a></li><li class="navelem"><a class="el" href="dir_50f12b6ceb23d7f6adfb377a1ae8b006.html">glm</a></li><li class="navelem"><a class="el" href="dir_fca33f1b5115d46f42c670590789c0d2.html">glm</a></li><li class="navelem"><a class="el" href="dir_382f4fd018b81be8753cb53c0a41a09a.html">detail</a></li>  </ul>
 </div>
 </div><!-- top -->
 <div class="header">
   <div class="headertitle">
-<div class="title">matrix_double2x4_precision.hpp</div>  </div>
+<div class="title">type_quat.hpp</div>  </div>
 </div><!--header-->
 <div class="contents">
-<a href="a00068.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span>&#160;</div>
+<a href="a00068.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span>&#160; </div>
 <div class="line"><a name="l00004"></a><span class="lineno">    4</span>&#160;<span class="preprocessor">#pragma once</span></div>
-<div class="line"><a name="l00005"></a><span class="lineno">    5</span>&#160;<span class="preprocessor">#include &quot;../detail/type_mat2x4.hpp&quot;</span></div>
-<div class="line"><a name="l00006"></a><span class="lineno">    6</span>&#160;</div>
-<div class="line"><a name="l00007"></a><span class="lineno">    7</span>&#160;<span class="keyword">namespace </span><a class="code" href="a00236.html">glm</a></div>
-<div class="line"><a name="l00008"></a><span class="lineno">    8</span>&#160;{</div>
-<div class="line"><a name="l00011"></a><span class="lineno">   11</span>&#160;</div>
-<div class="line"><a name="l00016"></a><span class="lineno"><a class="line" href="a00284.html#ga97507a31ecee8609887d0f23bbde92c7">   16</a></span>&#160;        <span class="keyword">typedef</span> mat&lt;2, 4, double, lowp&gt;         <a class="code" href="a00284.html#ga97507a31ecee8609887d0f23bbde92c7">lowp_dmat2x4</a>;</div>
-<div class="line"><a name="l00017"></a><span class="lineno">   17</span>&#160;</div>
-<div class="line"><a name="l00022"></a><span class="lineno"><a class="line" href="a00284.html#ga685bda24922d112786af385deb4deb43">   22</a></span>&#160;        <span class="keyword">typedef</span> mat&lt;2, 4, double, mediump&gt;      <a class="code" href="a00284.html#ga685bda24922d112786af385deb4deb43">mediump_dmat2x4</a>;</div>
-<div class="line"><a name="l00023"></a><span class="lineno">   23</span>&#160;</div>
-<div class="line"><a name="l00028"></a><span class="lineno"><a class="line" href="a00284.html#ga5ceeb46670fdc000a0701910cc5061c9">   28</a></span>&#160;        <span class="keyword">typedef</span> mat&lt;2, 4, double, highp&gt;        <a class="code" href="a00284.html#ga5ceeb46670fdc000a0701910cc5061c9">highp_dmat2x4</a>;</div>
-<div class="line"><a name="l00029"></a><span class="lineno">   29</span>&#160;</div>
-<div class="line"><a name="l00031"></a><span class="lineno">   31</span>&#160;}<span class="comment">//namespace glm</span></div>
-<div class="ttc" id="a00284_html_ga5ceeb46670fdc000a0701910cc5061c9"><div class="ttname"><a href="a00284.html#ga5ceeb46670fdc000a0701910cc5061c9">glm::highp_dmat2x4</a></div><div class="ttdeci">mat&lt; 2, 4, double, highp &gt; highp_dmat2x4</div><div class="ttdoc">2 columns of 4 components matrix of double-precision floating-point numbers using medium precision ar...</div><div class="ttdef"><b>Definition:</b> <a href="a00068_source.html#l00028">matrix_double2x4_precision.hpp:28</a></div></div>
-<div class="ttc" id="a00284_html_ga685bda24922d112786af385deb4deb43"><div class="ttname"><a href="a00284.html#ga685bda24922d112786af385deb4deb43">glm::mediump_dmat2x4</a></div><div class="ttdeci">mat&lt; 2, 4, double, mediump &gt; mediump_dmat2x4</div><div class="ttdoc">2 columns of 4 components matrix of double-precision floating-point numbers using medium precision ar...</div><div class="ttdef"><b>Definition:</b> <a href="a00068_source.html#l00022">matrix_double2x4_precision.hpp:22</a></div></div>
-<div class="ttc" id="a00284_html_ga97507a31ecee8609887d0f23bbde92c7"><div class="ttname"><a href="a00284.html#ga97507a31ecee8609887d0f23bbde92c7">glm::lowp_dmat2x4</a></div><div class="ttdeci">mat&lt; 2, 4, double, lowp &gt; lowp_dmat2x4</div><div class="ttdoc">2 columns of 4 components matrix of double-precision floating-point numbers using low precision arith...</div><div class="ttdef"><b>Definition:</b> <a href="a00068_source.html#l00016">matrix_double2x4_precision.hpp:16</a></div></div>
-<div class="ttc" id="a00236_html"><div class="ttname"><a href="a00236.html">glm</a></div><div class="ttdef"><b>Definition:</b> <a href="a00015_source.html#l00020">common.hpp:20</a></div></div>
+<div class="line"><a name="l00005"></a><span class="lineno">    5</span>&#160; </div>
+<div class="line"><a name="l00006"></a><span class="lineno">    6</span>&#160;<span class="comment">// Dependency:</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno">    7</span>&#160;<span class="preprocessor">#include &quot;../detail/type_mat3x3.hpp&quot;</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno">    8</span>&#160;<span class="preprocessor">#include &quot;../detail/type_mat4x4.hpp&quot;</span></div>
+<div class="line"><a name="l00009"></a><span class="lineno">    9</span>&#160;<span class="preprocessor">#include &quot;../detail/type_vec3.hpp&quot;</span></div>
+<div class="line"><a name="l00010"></a><span class="lineno">   10</span>&#160;<span class="preprocessor">#include &quot;../detail/type_vec4.hpp&quot;</span></div>
+<div class="line"><a name="l00011"></a><span class="lineno">   11</span>&#160;<span class="preprocessor">#include &quot;../ext/vector_relational.hpp&quot;</span></div>
+<div class="line"><a name="l00012"></a><span class="lineno">   12</span>&#160;<span class="preprocessor">#include &quot;../ext/quaternion_relational.hpp&quot;</span></div>
+<div class="line"><a name="l00013"></a><span class="lineno">   13</span>&#160;<span class="preprocessor">#include &quot;../gtc/constants.hpp&quot;</span></div>
+<div class="line"><a name="l00014"></a><span class="lineno">   14</span>&#160;<span class="preprocessor">#include &quot;../gtc/matrix_transform.hpp&quot;</span></div>
+<div class="line"><a name="l00015"></a><span class="lineno">   15</span>&#160; </div>
+<div class="line"><a name="l00016"></a><span class="lineno">   16</span>&#160;<span class="keyword">namespace </span>glm</div>
+<div class="line"><a name="l00017"></a><span class="lineno">   17</span>&#160;{</div>
+<div class="line"><a name="l00018"></a><span class="lineno">   18</span>&#160;<span class="preprocessor">#               if GLM_SILENT_WARNINGS == GLM_ENABLE</span></div>
+<div class="line"><a name="l00019"></a><span class="lineno">   19</span>&#160;<span class="preprocessor">#                       if GLM_COMPILER &amp; GLM_COMPILER_GCC</span></div>
+<div class="line"><a name="l00020"></a><span class="lineno">   20</span>&#160;<span class="preprocessor">#                               pragma GCC diagnostic push</span></div>
+<div class="line"><a name="l00021"></a><span class="lineno">   21</span>&#160;<span class="preprocessor">#                               pragma GCC diagnostic ignored &quot;-Wpedantic&quot;</span></div>
+<div class="line"><a name="l00022"></a><span class="lineno">   22</span>&#160;<span class="preprocessor">#                       elif GLM_COMPILER &amp; GLM_COMPILER_CLANG</span></div>
+<div class="line"><a name="l00023"></a><span class="lineno">   23</span>&#160;<span class="preprocessor">#                               pragma clang diagnostic push</span></div>
+<div class="line"><a name="l00024"></a><span class="lineno">   24</span>&#160;<span class="preprocessor">#                               pragma clang diagnostic ignored &quot;-Wgnu-anonymous-struct&quot;</span></div>
+<div class="line"><a name="l00025"></a><span class="lineno">   25</span>&#160;<span class="preprocessor">#                               pragma clang diagnostic ignored &quot;-Wnested-anon-types&quot;</span></div>
+<div class="line"><a name="l00026"></a><span class="lineno">   26</span>&#160;<span class="preprocessor">#                       elif GLM_COMPILER &amp; GLM_COMPILER_VC</span></div>
+<div class="line"><a name="l00027"></a><span class="lineno">   27</span>&#160;<span class="preprocessor">#                               pragma warning(push)</span></div>
+<div class="line"><a name="l00028"></a><span class="lineno">   28</span>&#160;<span class="preprocessor">#                               pragma warning(disable: 4201)  // nonstandard extension used : nameless struct/union</span></div>
+<div class="line"><a name="l00029"></a><span class="lineno">   29</span>&#160;<span class="preprocessor">#                       endif</span></div>
+<div class="line"><a name="l00030"></a><span class="lineno">   30</span>&#160;<span class="preprocessor">#               endif</span></div>
+<div class="line"><a name="l00031"></a><span class="lineno">   31</span>&#160; </div>
+<div class="line"><a name="l00032"></a><span class="lineno">   32</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T, qualifier Q&gt;</div>
+<div class="line"><a name="l00033"></a><span class="lineno">   33</span>&#160;        <span class="keyword">struct </span>qua</div>
+<div class="line"><a name="l00034"></a><span class="lineno">   34</span>&#160;        {</div>
+<div class="line"><a name="l00035"></a><span class="lineno">   35</span>&#160;                <span class="comment">// -- Implementation detail --</span></div>
+<div class="line"><a name="l00036"></a><span class="lineno">   36</span>&#160; </div>
+<div class="line"><a name="l00037"></a><span class="lineno">   37</span>&#160;                <span class="keyword">typedef</span> qua&lt;T, Q&gt; type;</div>
+<div class="line"><a name="l00038"></a><span class="lineno">   38</span>&#160;                <span class="keyword">typedef</span> T value_type;</div>
+<div class="line"><a name="l00039"></a><span class="lineno">   39</span>&#160; </div>
+<div class="line"><a name="l00040"></a><span class="lineno">   40</span>&#160;                <span class="comment">// -- Data --</span></div>
+<div class="line"><a name="l00041"></a><span class="lineno">   41</span>&#160; </div>
+<div class="line"><a name="l00042"></a><span class="lineno">   42</span>&#160;<span class="preprocessor">#               if GLM_LANG &amp; GLM_LANG_CXXMS_FLAG</span></div>
+<div class="line"><a name="l00043"></a><span class="lineno">   43</span>&#160;                        <span class="keyword">union</span></div>
+<div class="line"><a name="l00044"></a><span class="lineno">   44</span>&#160;                        {</div>
+<div class="line"><a name="l00045"></a><span class="lineno">   45</span>&#160;<span class="preprocessor">#                               ifdef GLM_FORCE_QUAT_DATA_WXYZ</span></div>
+<div class="line"><a name="l00046"></a><span class="lineno">   46</span>&#160;                                        <span class="keyword">struct </span>{ T w, x, y, z; };</div>
+<div class="line"><a name="l00047"></a><span class="lineno">   47</span>&#160;<span class="preprocessor">#                               else</span></div>
+<div class="line"><a name="l00048"></a><span class="lineno">   48</span>&#160;                                        <span class="keyword">struct </span>{ T x, y, z, w; };</div>
+<div class="line"><a name="l00049"></a><span class="lineno">   49</span>&#160;<span class="preprocessor">#                               endif</span></div>
+<div class="line"><a name="l00050"></a><span class="lineno">   50</span>&#160; </div>
+<div class="line"><a name="l00051"></a><span class="lineno">   51</span>&#160;                                <span class="keyword">typename</span> detail::storage&lt;4, T, detail::is_aligned&lt;Q&gt;::value&gt;::type data;</div>
+<div class="line"><a name="l00052"></a><span class="lineno">   52</span>&#160;                        };</div>
+<div class="line"><a name="l00053"></a><span class="lineno">   53</span>&#160;<span class="preprocessor">#               else</span></div>
+<div class="line"><a name="l00054"></a><span class="lineno">   54</span>&#160;<span class="preprocessor">#                       ifdef GLM_FORCE_QUAT_DATA_WXYZ</span></div>
+<div class="line"><a name="l00055"></a><span class="lineno">   55</span>&#160;                                T w, x, y, z;</div>
+<div class="line"><a name="l00056"></a><span class="lineno">   56</span>&#160;<span class="preprocessor">#                       else</span></div>
+<div class="line"><a name="l00057"></a><span class="lineno">   57</span>&#160;                                T x, y, z, w;</div>
+<div class="line"><a name="l00058"></a><span class="lineno">   58</span>&#160;<span class="preprocessor">#                       endif</span></div>
+<div class="line"><a name="l00059"></a><span class="lineno">   59</span>&#160;<span class="preprocessor">#               endif</span></div>
+<div class="line"><a name="l00060"></a><span class="lineno">   60</span>&#160; </div>
+<div class="line"><a name="l00061"></a><span class="lineno">   61</span>&#160;                <span class="comment">// -- Component accesses --</span></div>
+<div class="line"><a name="l00062"></a><span class="lineno">   62</span>&#160; </div>
+<div class="line"><a name="l00063"></a><span class="lineno">   63</span>&#160;                <span class="keyword">typedef</span> length_t length_type;</div>
+<div class="line"><a name="l00064"></a><span class="lineno">   64</span>&#160; </div>
+<div class="line"><a name="l00066"></a><span class="lineno">   66</span>&#160;                GLM_FUNC_DECL <span class="keyword">static</span> GLM_CONSTEXPR length_type <a class="code" href="a00853.html#gab703732449be6c7199369b3f9a91ed38">length</a>(){<span class="keywordflow">return</span> 4;}</div>
+<div class="line"><a name="l00067"></a><span class="lineno">   67</span>&#160; </div>
+<div class="line"><a name="l00068"></a><span class="lineno">   68</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR T &amp; operator[](length_type i);</div>
+<div class="line"><a name="l00069"></a><span class="lineno">   69</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR T <span class="keyword">const</span>&amp; operator[](length_type i) <span class="keyword">const</span>;</div>
+<div class="line"><a name="l00070"></a><span class="lineno">   70</span>&#160; </div>
+<div class="line"><a name="l00071"></a><span class="lineno">   71</span>&#160;                <span class="comment">// -- Implicit basic constructors --</span></div>
+<div class="line"><a name="l00072"></a><span class="lineno">   72</span>&#160; </div>
+<div class="line"><a name="l00073"></a><span class="lineno">   73</span>&#160;                GLM_DEFAULTED_DEFAULT_CTOR_DECL GLM_CONSTEXPR qua() GLM_DEFAULT_CTOR;</div>
+<div class="line"><a name="l00074"></a><span class="lineno">   74</span>&#160;                GLM_DEFAULTED_FUNC_DECL GLM_CONSTEXPR qua(qua&lt;T, Q&gt; const&amp; q) GLM_DEFAULT;</div>
+<div class="line"><a name="l00075"></a><span class="lineno">   75</span>&#160;                template&lt;qualifier P&gt;</div>
+<div class="line"><a name="l00076"></a><span class="lineno">   76</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR qua(qua&lt;T, P&gt; const&amp; q);</div>
+<div class="line"><a name="l00077"></a><span class="lineno">   77</span>&#160; </div>
+<div class="line"><a name="l00078"></a><span class="lineno">   78</span>&#160;                <span class="comment">// -- Explicit basic constructors --</span></div>
+<div class="line"><a name="l00079"></a><span class="lineno">   79</span>&#160; </div>
+<div class="line"><a name="l00080"></a><span class="lineno">   80</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR qua(T s, vec&lt;3, T, Q&gt; const&amp; v);</div>
+<div class="line"><a name="l00081"></a><span class="lineno">   81</span>&#160; </div>
+<div class="line"><a name="l00082"></a><span class="lineno">   82</span>&#160;<span class="preprocessor">#               ifdef GLM_FORCE_QUAT_CTOR_XYZW</span></div>
+<div class="line"><a name="l00083"></a><span class="lineno">   83</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR qua(T x, T y, T z, T w);</div>
+<div class="line"><a name="l00084"></a><span class="lineno">   84</span>&#160;<span class="preprocessor">#               else</span></div>
+<div class="line"><a name="l00085"></a><span class="lineno">   85</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR qua(T w, T x, T y, T z);</div>
+<div class="line"><a name="l00086"></a><span class="lineno">   86</span>&#160;<span class="preprocessor">#               endif</span></div>
+<div class="line"><a name="l00087"></a><span class="lineno">   87</span>&#160; </div>
+<div class="line"><a name="l00088"></a><span class="lineno">   88</span>&#160;                GLM_FUNC_DECL <span class="keyword">static</span> GLM_CONSTEXPR qua&lt;T, Q&gt; wxyz(T w, T x, T y, T z);</div>
+<div class="line"><a name="l00089"></a><span class="lineno">   89</span>&#160; </div>
+<div class="line"><a name="l00090"></a><span class="lineno">   90</span>&#160;                <span class="comment">// -- Conversion constructors --</span></div>
+<div class="line"><a name="l00091"></a><span class="lineno">   91</span>&#160; </div>
+<div class="line"><a name="l00092"></a><span class="lineno">   92</span>&#160;                <span class="keyword">template</span>&lt;<span class="keyword">typename</span> U, qualifier P&gt;</div>
+<div class="line"><a name="l00093"></a><span class="lineno">   93</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR GLM_EXPLICIT qua(qua&lt;U, P&gt; <span class="keyword">const</span>&amp; q);</div>
+<div class="line"><a name="l00094"></a><span class="lineno">   94</span>&#160; </div>
+<div class="line"><a name="l00096"></a><span class="lineno">   96</span>&#160;<span class="preprocessor">#               if GLM_HAS_EXPLICIT_CONVERSION_OPERATORS</span></div>
+<div class="line"><a name="l00097"></a><span class="lineno">   97</span>&#160;                        GLM_FUNC_DECL <span class="keyword">explicit</span> <span class="keyword">operator</span> mat&lt;3, 3, T, Q&gt;() <span class="keyword">const</span>;</div>
+<div class="line"><a name="l00098"></a><span class="lineno">   98</span>&#160;                        GLM_FUNC_DECL <span class="keyword">explicit</span> <span class="keyword">operator</span> mat&lt;4, 4, T, Q&gt;() <span class="keyword">const</span>;</div>
+<div class="line"><a name="l00099"></a><span class="lineno">   99</span>&#160;<span class="preprocessor">#               endif</span></div>
+<div class="line"><a name="l00100"></a><span class="lineno">  100</span>&#160; </div>
+<div class="line"><a name="l00107"></a><span class="lineno">  107</span>&#160;                GLM_FUNC_DECL qua(vec&lt;3, T, Q&gt; <span class="keyword">const</span>&amp; u, vec&lt;3, T, Q&gt; <span class="keyword">const</span>&amp; v);</div>
+<div class="line"><a name="l00108"></a><span class="lineno">  108</span>&#160; </div>
+<div class="line"><a name="l00110"></a><span class="lineno">  110</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR GLM_EXPLICIT qua(vec&lt;3, T, Q&gt; <span class="keyword">const</span>&amp; <a class="code" href="a00908.html#gaf4dd967dead22dd932fc7460ceecb03f">eulerAngles</a>);</div>
+<div class="line"><a name="l00111"></a><span class="lineno">  111</span>&#160;                GLM_FUNC_DECL GLM_EXPLICIT qua(mat&lt;3, 3, T, Q&gt; <span class="keyword">const</span>&amp; q);</div>
+<div class="line"><a name="l00112"></a><span class="lineno">  112</span>&#160;                GLM_FUNC_DECL GLM_EXPLICIT qua(mat&lt;4, 4, T, Q&gt; <span class="keyword">const</span>&amp; q);</div>
+<div class="line"><a name="l00113"></a><span class="lineno">  113</span>&#160; </div>
+<div class="line"><a name="l00114"></a><span class="lineno">  114</span>&#160;                <span class="comment">// -- Unary arithmetic operators --</span></div>
+<div class="line"><a name="l00115"></a><span class="lineno">  115</span>&#160; </div>
+<div class="line"><a name="l00116"></a><span class="lineno">  116</span>&#160;                GLM_DEFAULTED_FUNC_DECL GLM_CONSTEXPR qua&lt;T, Q&gt;&amp; operator=(qua&lt;T, Q&gt; <span class="keyword">const</span>&amp; q) GLM_DEFAULT;</div>
+<div class="line"><a name="l00117"></a><span class="lineno">  117</span>&#160; </div>
+<div class="line"><a name="l00118"></a><span class="lineno">  118</span>&#160;                <span class="keyword">template</span>&lt;<span class="keyword">typename</span> U&gt;</div>
+<div class="line"><a name="l00119"></a><span class="lineno">  119</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR qua&lt;T, Q&gt;&amp; operator=(qua&lt;U, Q&gt; <span class="keyword">const</span>&amp; q);</div>
+<div class="line"><a name="l00120"></a><span class="lineno">  120</span>&#160;                <span class="keyword">template</span>&lt;<span class="keyword">typename</span> U&gt;</div>
+<div class="line"><a name="l00121"></a><span class="lineno">  121</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR qua&lt;T, Q&gt;&amp; operator+=(qua&lt;U, Q&gt; <span class="keyword">const</span>&amp; q);</div>
+<div class="line"><a name="l00122"></a><span class="lineno">  122</span>&#160;                <span class="keyword">template</span>&lt;<span class="keyword">typename</span> U&gt;</div>
+<div class="line"><a name="l00123"></a><span class="lineno">  123</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR qua&lt;T, Q&gt;&amp; operator-=(qua&lt;U, Q&gt; <span class="keyword">const</span>&amp; q);</div>
+<div class="line"><a name="l00124"></a><span class="lineno">  124</span>&#160;                <span class="keyword">template</span>&lt;<span class="keyword">typename</span> U&gt;</div>
+<div class="line"><a name="l00125"></a><span class="lineno">  125</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR qua&lt;T, Q&gt;&amp; operator*=(qua&lt;U, Q&gt; <span class="keyword">const</span>&amp; q);</div>
+<div class="line"><a name="l00126"></a><span class="lineno">  126</span>&#160;                <span class="keyword">template</span>&lt;<span class="keyword">typename</span> U&gt;</div>
+<div class="line"><a name="l00127"></a><span class="lineno">  127</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR qua&lt;T, Q&gt;&amp; operator*=(U s);</div>
+<div class="line"><a name="l00128"></a><span class="lineno">  128</span>&#160;                <span class="keyword">template</span>&lt;<span class="keyword">typename</span> U&gt;</div>
+<div class="line"><a name="l00129"></a><span class="lineno">  129</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR qua&lt;T, Q&gt;&amp; operator/=(U s);</div>
+<div class="line"><a name="l00130"></a><span class="lineno">  130</span>&#160;        };</div>
+<div class="line"><a name="l00131"></a><span class="lineno">  131</span>&#160; </div>
+<div class="line"><a name="l00132"></a><span class="lineno">  132</span>&#160;<span class="preprocessor">#               if GLM_SILENT_WARNINGS == GLM_ENABLE</span></div>
+<div class="line"><a name="l00133"></a><span class="lineno">  133</span>&#160;<span class="preprocessor">#                       if GLM_COMPILER &amp; GLM_COMPILER_CLANG</span></div>
+<div class="line"><a name="l00134"></a><span class="lineno">  134</span>&#160;<span class="preprocessor">#                               pragma clang diagnostic pop</span></div>
+<div class="line"><a name="l00135"></a><span class="lineno">  135</span>&#160;<span class="preprocessor">#                       elif GLM_COMPILER &amp; GLM_COMPILER_GCC</span></div>
+<div class="line"><a name="l00136"></a><span class="lineno">  136</span>&#160;<span class="preprocessor">#                               pragma GCC diagnostic pop</span></div>
+<div class="line"><a name="l00137"></a><span class="lineno">  137</span>&#160;<span class="preprocessor">#                       elif GLM_COMPILER &amp; GLM_COMPILER_VC</span></div>
+<div class="line"><a name="l00138"></a><span class="lineno">  138</span>&#160;<span class="preprocessor">#                               pragma warning(pop)</span></div>
+<div class="line"><a name="l00139"></a><span class="lineno">  139</span>&#160;<span class="preprocessor">#                       endif</span></div>
+<div class="line"><a name="l00140"></a><span class="lineno">  140</span>&#160;<span class="preprocessor">#               endif</span></div>
+<div class="line"><a name="l00141"></a><span class="lineno">  141</span>&#160; </div>
+<div class="line"><a name="l00142"></a><span class="lineno">  142</span>&#160;        <span class="comment">// -- Unary bit operators --</span></div>
+<div class="line"><a name="l00143"></a><span class="lineno">  143</span>&#160; </div>
+<div class="line"><a name="l00144"></a><span class="lineno">  144</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T, qualifier Q&gt;</div>
+<div class="line"><a name="l00145"></a><span class="lineno">  145</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR qua&lt;T, Q&gt; operator+(qua&lt;T, Q&gt; <span class="keyword">const</span>&amp; q);</div>
+<div class="line"><a name="l00146"></a><span class="lineno">  146</span>&#160; </div>
+<div class="line"><a name="l00147"></a><span class="lineno">  147</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T, qualifier Q&gt;</div>
+<div class="line"><a name="l00148"></a><span class="lineno">  148</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR qua&lt;T, Q&gt; operator-(qua&lt;T, Q&gt; <span class="keyword">const</span>&amp; q);</div>
+<div class="line"><a name="l00149"></a><span class="lineno">  149</span>&#160; </div>
+<div class="line"><a name="l00150"></a><span class="lineno">  150</span>&#160;        <span class="comment">// -- Binary operators --</span></div>
+<div class="line"><a name="l00151"></a><span class="lineno">  151</span>&#160; </div>
+<div class="line"><a name="l00152"></a><span class="lineno">  152</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T, qualifier Q&gt;</div>
+<div class="line"><a name="l00153"></a><span class="lineno">  153</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR qua&lt;T, Q&gt; operator+(qua&lt;T, Q&gt; <span class="keyword">const</span>&amp; q, qua&lt;T, Q&gt; <span class="keyword">const</span>&amp; p);</div>
+<div class="line"><a name="l00154"></a><span class="lineno">  154</span>&#160; </div>
+<div class="line"><a name="l00155"></a><span class="lineno">  155</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T, qualifier Q&gt;</div>
+<div class="line"><a name="l00156"></a><span class="lineno">  156</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR qua&lt;T, Q&gt; operator-(qua&lt;T, Q&gt; <span class="keyword">const</span>&amp; q, qua&lt;T, Q&gt; <span class="keyword">const</span>&amp; p);</div>
+<div class="line"><a name="l00157"></a><span class="lineno">  157</span>&#160; </div>
+<div class="line"><a name="l00158"></a><span class="lineno">  158</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T, qualifier Q&gt;</div>
+<div class="line"><a name="l00159"></a><span class="lineno">  159</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR qua&lt;T, Q&gt; operator*(qua&lt;T, Q&gt; <span class="keyword">const</span>&amp; q, qua&lt;T, Q&gt; <span class="keyword">const</span>&amp; p);</div>
+<div class="line"><a name="l00160"></a><span class="lineno">  160</span>&#160; </div>
+<div class="line"><a name="l00161"></a><span class="lineno">  161</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T, qualifier Q&gt;</div>
+<div class="line"><a name="l00162"></a><span class="lineno">  162</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR vec&lt;3, T, Q&gt; operator*(qua&lt;T, Q&gt; <span class="keyword">const</span>&amp; q, vec&lt;3, T, Q&gt; <span class="keyword">const</span>&amp; v);</div>
+<div class="line"><a name="l00163"></a><span class="lineno">  163</span>&#160; </div>
+<div class="line"><a name="l00164"></a><span class="lineno">  164</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T, qualifier Q&gt;</div>
+<div class="line"><a name="l00165"></a><span class="lineno">  165</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR vec&lt;3, T, Q&gt; operator*(vec&lt;3, T, Q&gt; <span class="keyword">const</span>&amp; v, qua&lt;T, Q&gt; <span class="keyword">const</span>&amp; q);</div>
+<div class="line"><a name="l00166"></a><span class="lineno">  166</span>&#160; </div>
+<div class="line"><a name="l00167"></a><span class="lineno">  167</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T, qualifier Q&gt;</div>
+<div class="line"><a name="l00168"></a><span class="lineno">  168</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR vec&lt;4, T, Q&gt; operator*(qua&lt;T, Q&gt; <span class="keyword">const</span>&amp; q, vec&lt;4, T, Q&gt; <span class="keyword">const</span>&amp; v);</div>
+<div class="line"><a name="l00169"></a><span class="lineno">  169</span>&#160; </div>
+<div class="line"><a name="l00170"></a><span class="lineno">  170</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T, qualifier Q&gt;</div>
+<div class="line"><a name="l00171"></a><span class="lineno">  171</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR vec&lt;4, T, Q&gt; operator*(vec&lt;4, T, Q&gt; <span class="keyword">const</span>&amp; v, qua&lt;T, Q&gt; <span class="keyword">const</span>&amp; q);</div>
+<div class="line"><a name="l00172"></a><span class="lineno">  172</span>&#160; </div>
+<div class="line"><a name="l00173"></a><span class="lineno">  173</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T, qualifier Q&gt;</div>
+<div class="line"><a name="l00174"></a><span class="lineno">  174</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR qua&lt;T, Q&gt; operator*(qua&lt;T, Q&gt; <span class="keyword">const</span>&amp; q, T <span class="keyword">const</span>&amp; s);</div>
+<div class="line"><a name="l00175"></a><span class="lineno">  175</span>&#160; </div>
+<div class="line"><a name="l00176"></a><span class="lineno">  176</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T, qualifier Q&gt;</div>
+<div class="line"><a name="l00177"></a><span class="lineno">  177</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR qua&lt;T, Q&gt; operator*(T <span class="keyword">const</span>&amp; s, qua&lt;T, Q&gt; <span class="keyword">const</span>&amp; q);</div>
+<div class="line"><a name="l00178"></a><span class="lineno">  178</span>&#160; </div>
+<div class="line"><a name="l00179"></a><span class="lineno">  179</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T, qualifier Q&gt;</div>
+<div class="line"><a name="l00180"></a><span class="lineno">  180</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR qua&lt;T, Q&gt; operator/(qua&lt;T, Q&gt; <span class="keyword">const</span>&amp; q, T <span class="keyword">const</span>&amp; s);</div>
+<div class="line"><a name="l00181"></a><span class="lineno">  181</span>&#160; </div>
+<div class="line"><a name="l00182"></a><span class="lineno">  182</span>&#160;        <span class="comment">// -- Boolean operators --</span></div>
+<div class="line"><a name="l00183"></a><span class="lineno">  183</span>&#160; </div>
+<div class="line"><a name="l00184"></a><span class="lineno">  184</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T, qualifier Q&gt;</div>
+<div class="line"><a name="l00185"></a><span class="lineno">  185</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR <span class="keywordtype">bool</span> operator==(qua&lt;T, Q&gt; <span class="keyword">const</span>&amp; q1, qua&lt;T, Q&gt; <span class="keyword">const</span>&amp; q2);</div>
+<div class="line"><a name="l00186"></a><span class="lineno">  186</span>&#160; </div>
+<div class="line"><a name="l00187"></a><span class="lineno">  187</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T, qualifier Q&gt;</div>
+<div class="line"><a name="l00188"></a><span class="lineno">  188</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR <span class="keywordtype">bool</span> operator!=(qua&lt;T, Q&gt; <span class="keyword">const</span>&amp; q1, qua&lt;T, Q&gt; <span class="keyword">const</span>&amp; q2);</div>
+<div class="line"><a name="l00189"></a><span class="lineno">  189</span>&#160;} <span class="comment">//namespace glm</span></div>
+<div class="line"><a name="l00190"></a><span class="lineno">  190</span>&#160; </div>
+<div class="line"><a name="l00191"></a><span class="lineno">  191</span>&#160;<span class="preprocessor">#ifndef GLM_EXTERNAL_TEMPLATE</span></div>
+<div class="line"><a name="l00192"></a><span class="lineno">  192</span>&#160;<span class="preprocessor">#include &quot;type_quat.inl&quot;</span></div>
+<div class="line"><a name="l00193"></a><span class="lineno">  193</span>&#160;<span class="preprocessor">#endif//GLM_EXTERNAL_TEMPLATE</span></div>
 </div><!-- fragment --></div><!-- contents -->
+<div class="ttc" id="aa00853_html_gab703732449be6c7199369b3f9a91ed38"><div class="ttname"><a href="a00853.html#gab703732449be6c7199369b3f9a91ed38">glm::length</a></div><div class="ttdeci">GLM_FUNC_DECL T length(qua&lt; T, Q &gt; const &amp;q)</div><div class="ttdoc">Returns the norm of a quaternions.</div></div>
+<div class="ttc" id="aa00908_html_gaf4dd967dead22dd932fc7460ceecb03f"><div class="ttname"><a href="a00908.html#gaf4dd967dead22dd932fc7460ceecb03f">glm::eulerAngles</a></div><div class="ttdeci">GLM_FUNC_DECL vec&lt; 3, T, Q &gt; eulerAngles(qua&lt; T, Q &gt; const &amp;x)</div><div class="ttdoc">Returns euler angles, pitch as x, yaw as y, roll as z.</div></div>
 <!-- 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.10
+</a> 1.8.18
 </small></address>
 </body>
 </html>

+ 0 - 117
doc/api/a00069.html

@@ -1,117 +0,0 @@
-<!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.10"/>
-<title>0.9.9 API documentation: matrix_double3x2.hpp File Reference</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="search/search.css" rel="stylesheet" type="text/css"/>
-<script type="text/javascript" src="search/searchdata.js"></script>
-<script type="text/javascript" src="search/search.js"></script>
-<script type="text/javascript">
-  $(document).ready(function() { init_search(); });
-</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 id="projectlogo"><img alt="Logo" src="logo-mini.png"/></td>
-  <td id="projectalign" style="padding-left: 0.5em;">
-   <div id="projectname">0.9.9 API documentation
-   </div>
-  </td>
- </tr>
- </tbody>
-</table>
-</div>
-<!-- end header part -->
-<!-- Generated by Doxygen 1.8.10 -->
-<script type="text/javascript">
-var searchBox = new SearchBox("searchBox", "search",false,'Search');
-</script>
-  <div id="navrow1" class="tabs">
-    <ul class="tablist">
-      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
-      <li><a href="modules.html"><span>Modules</span></a></li>
-      <li class="current"><a href="files.html"><span>Files</span></a></li>
-      <li>
-        <div id="MSearchBox" class="MSearchBoxInactive">
-        <span class="left">
-          <img id="MSearchSelect" src="search/mag_sel.png"
-               onmouseover="return searchBox.OnSearchSelectShow()"
-               onmouseout="return searchBox.OnSearchSelectHide()"
-               alt=""/>
-          <input type="text" id="MSearchField" value="Search" accesskey="S"
-               onfocus="searchBox.OnSearchFieldFocus(true)" 
-               onblur="searchBox.OnSearchFieldFocus(false)" 
-               onkeyup="searchBox.OnSearchFieldChange(event)"/>
-          </span><span class="right">
-            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
-          </span>
-        </div>
-      </li>
-    </ul>
-  </div>
-  <div id="navrow2" class="tabs2">
-    <ul class="tablist">
-      <li><a href="files.html"><span>File&#160;List</span></a></li>
-    </ul>
-  </div>
-<!-- window showing the filter options -->
-<div id="MSearchSelectWindow"
-     onmouseover="return searchBox.OnSearchSelectShow()"
-     onmouseout="return searchBox.OnSearchSelectHide()"
-     onkeydown="return searchBox.OnSearchSelectKey(event)">
-</div>
-
-<!-- iframe showing the search results (closed by default) -->
-<div id="MSearchResultsWindow">
-<iframe src="javascript:void(0)" frameborder="0" 
-        name="MSearchResults" id="MSearchResults">
-</iframe>
-</div>
-
-<div id="nav-path" class="navpath">
-  <ul>
-<li class="navelem"><a class="el" href="dir_3a581ba30d25676e4b797b1f96d53b45.html">F:</a></li><li class="navelem"><a class="el" href="dir_9e5fe034a00e89334fd5186c3e7db156.html">G-Truc</a></li><li class="navelem"><a class="el" href="dir_d9496f0844b48bc7e53b5af8c99b9ab2.html">Source</a></li><li class="navelem"><a class="el" href="dir_a8bee7be44182a33f3820393ae0b105d.html">G-Truc</a></li><li class="navelem"><a class="el" href="dir_44e5e654415abd9ca6fdeaddaff8565e.html">glm</a></li><li class="navelem"><a class="el" href="dir_cef2d71d502cb69a9252bca2297d9549.html">glm</a></li><li class="navelem"><a class="el" href="dir_6b66465792d005310484819a0eb0b0d3.html">ext</a></li>  </ul>
-</div>
-</div><!-- top -->
-<div class="header">
-  <div class="summary">
-<a href="#typedef-members">Typedefs</a>  </div>
-  <div class="headertitle">
-<div class="title">matrix_double3x2.hpp File Reference</div>  </div>
-</div><!--header-->
-<div class="contents">
-
-<p><a class="el" href="a00280.html">Core features</a>  
-<a href="#details">More...</a></p>
-
-<p><a href="a00069_source.html">Go to the source code of this file.</a></p>
-<table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="typedef-members"></a>
-Typedefs</h2></td></tr>
-<tr class="memitem:ga001e3e0638fbf8719788fc64c5b8cf39"><td class="memItemLeft" align="right" valign="top">typedef mat&lt; 3, 2, double, defaultp &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00283.html#ga001e3e0638fbf8719788fc64c5b8cf39">dmat3x2</a></td></tr>
-<tr class="memdesc:ga001e3e0638fbf8719788fc64c5b8cf39"><td class="mdescLeft">&#160;</td><td class="mdescRight">3 columns of 2 components matrix of double-precision floating-point numbers.  <a href="a00283.html#ga001e3e0638fbf8719788fc64c5b8cf39">More...</a><br /></td></tr>
-<tr class="separator:ga001e3e0638fbf8719788fc64c5b8cf39"><td class="memSeparator" colspan="2">&#160;</td></tr>
-</table>
-<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
-<div class="textblock"><p><a class="el" href="a00280.html">Core features</a> </p>
-
-<p>Definition in file <a class="el" href="a00069_source.html">matrix_double3x2.hpp</a>.</p>
-</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.10
-</small></address>
-</body>
-</html>

+ 0 - 111
doc/api/a00069_source.html

@@ -1,111 +0,0 @@
-<!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.10"/>
-<title>0.9.9 API documentation: matrix_double3x2.hpp Source File</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="search/search.css" rel="stylesheet" type="text/css"/>
-<script type="text/javascript" src="search/searchdata.js"></script>
-<script type="text/javascript" src="search/search.js"></script>
-<script type="text/javascript">
-  $(document).ready(function() { init_search(); });
-</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 id="projectlogo"><img alt="Logo" src="logo-mini.png"/></td>
-  <td id="projectalign" style="padding-left: 0.5em;">
-   <div id="projectname">0.9.9 API documentation
-   </div>
-  </td>
- </tr>
- </tbody>
-</table>
-</div>
-<!-- end header part -->
-<!-- Generated by Doxygen 1.8.10 -->
-<script type="text/javascript">
-var searchBox = new SearchBox("searchBox", "search",false,'Search');
-</script>
-  <div id="navrow1" class="tabs">
-    <ul class="tablist">
-      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
-      <li><a href="modules.html"><span>Modules</span></a></li>
-      <li class="current"><a href="files.html"><span>Files</span></a></li>
-      <li>
-        <div id="MSearchBox" class="MSearchBoxInactive">
-        <span class="left">
-          <img id="MSearchSelect" src="search/mag_sel.png"
-               onmouseover="return searchBox.OnSearchSelectShow()"
-               onmouseout="return searchBox.OnSearchSelectHide()"
-               alt=""/>
-          <input type="text" id="MSearchField" value="Search" accesskey="S"
-               onfocus="searchBox.OnSearchFieldFocus(true)" 
-               onblur="searchBox.OnSearchFieldFocus(false)" 
-               onkeyup="searchBox.OnSearchFieldChange(event)"/>
-          </span><span class="right">
-            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
-          </span>
-        </div>
-      </li>
-    </ul>
-  </div>
-  <div id="navrow2" class="tabs2">
-    <ul class="tablist">
-      <li><a href="files.html"><span>File&#160;List</span></a></li>
-    </ul>
-  </div>
-<!-- window showing the filter options -->
-<div id="MSearchSelectWindow"
-     onmouseover="return searchBox.OnSearchSelectShow()"
-     onmouseout="return searchBox.OnSearchSelectHide()"
-     onkeydown="return searchBox.OnSearchSelectKey(event)">
-</div>
-
-<!-- iframe showing the search results (closed by default) -->
-<div id="MSearchResultsWindow">
-<iframe src="javascript:void(0)" frameborder="0" 
-        name="MSearchResults" id="MSearchResults">
-</iframe>
-</div>
-
-<div id="nav-path" class="navpath">
-  <ul>
-<li class="navelem"><a class="el" href="dir_3a581ba30d25676e4b797b1f96d53b45.html">F:</a></li><li class="navelem"><a class="el" href="dir_9e5fe034a00e89334fd5186c3e7db156.html">G-Truc</a></li><li class="navelem"><a class="el" href="dir_d9496f0844b48bc7e53b5af8c99b9ab2.html">Source</a></li><li class="navelem"><a class="el" href="dir_a8bee7be44182a33f3820393ae0b105d.html">G-Truc</a></li><li class="navelem"><a class="el" href="dir_44e5e654415abd9ca6fdeaddaff8565e.html">glm</a></li><li class="navelem"><a class="el" href="dir_cef2d71d502cb69a9252bca2297d9549.html">glm</a></li><li class="navelem"><a class="el" href="dir_6b66465792d005310484819a0eb0b0d3.html">ext</a></li>  </ul>
-</div>
-</div><!-- top -->
-<div class="header">
-  <div class="headertitle">
-<div class="title">matrix_double3x2.hpp</div>  </div>
-</div><!--header-->
-<div class="contents">
-<a href="a00069.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span>&#160;</div>
-<div class="line"><a name="l00004"></a><span class="lineno">    4</span>&#160;<span class="preprocessor">#pragma once</span></div>
-<div class="line"><a name="l00005"></a><span class="lineno">    5</span>&#160;<span class="preprocessor">#include &quot;../detail/type_mat3x2.hpp&quot;</span></div>
-<div class="line"><a name="l00006"></a><span class="lineno">    6</span>&#160;</div>
-<div class="line"><a name="l00007"></a><span class="lineno">    7</span>&#160;<span class="keyword">namespace </span><a class="code" href="a00236.html">glm</a></div>
-<div class="line"><a name="l00008"></a><span class="lineno">    8</span>&#160;{</div>
-<div class="line"><a name="l00011"></a><span class="lineno">   11</span>&#160;</div>
-<div class="line"><a name="l00015"></a><span class="lineno"><a class="line" href="a00283.html#ga001e3e0638fbf8719788fc64c5b8cf39">   15</a></span>&#160;        <span class="keyword">typedef</span> mat&lt;3, 2, double, defaultp&gt;             <a class="code" href="a00283.html#ga001e3e0638fbf8719788fc64c5b8cf39">dmat3x2</a>;</div>
-<div class="line"><a name="l00016"></a><span class="lineno">   16</span>&#160;</div>
-<div class="line"><a name="l00018"></a><span class="lineno">   18</span>&#160;}<span class="comment">//namespace glm</span></div>
-<div class="ttc" id="a00283_html_ga001e3e0638fbf8719788fc64c5b8cf39"><div class="ttname"><a href="a00283.html#ga001e3e0638fbf8719788fc64c5b8cf39">glm::dmat3x2</a></div><div class="ttdeci">mat&lt; 3, 2, double, defaultp &gt; dmat3x2</div><div class="ttdoc">3 columns of 2 components matrix of double-precision floating-point numbers. </div><div class="ttdef"><b>Definition:</b> <a href="a00069_source.html#l00015">matrix_double3x2.hpp:15</a></div></div>
-<div class="ttc" id="a00236_html"><div class="ttname"><a href="a00236.html">glm</a></div><div class="ttdef"><b>Definition:</b> <a href="a00015_source.html#l00020">common.hpp:20</a></div></div>
-</div><!-- fragment --></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.10
-</small></address>
-</body>
-</html>

+ 0 - 123
doc/api/a00070.html

@@ -1,123 +0,0 @@
-<!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.10"/>
-<title>0.9.9 API documentation: matrix_double3x2_precision.hpp File Reference</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="search/search.css" rel="stylesheet" type="text/css"/>
-<script type="text/javascript" src="search/searchdata.js"></script>
-<script type="text/javascript" src="search/search.js"></script>
-<script type="text/javascript">
-  $(document).ready(function() { init_search(); });
-</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 id="projectlogo"><img alt="Logo" src="logo-mini.png"/></td>
-  <td id="projectalign" style="padding-left: 0.5em;">
-   <div id="projectname">0.9.9 API documentation
-   </div>
-  </td>
- </tr>
- </tbody>
-</table>
-</div>
-<!-- end header part -->
-<!-- Generated by Doxygen 1.8.10 -->
-<script type="text/javascript">
-var searchBox = new SearchBox("searchBox", "search",false,'Search');
-</script>
-  <div id="navrow1" class="tabs">
-    <ul class="tablist">
-      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
-      <li><a href="modules.html"><span>Modules</span></a></li>
-      <li class="current"><a href="files.html"><span>Files</span></a></li>
-      <li>
-        <div id="MSearchBox" class="MSearchBoxInactive">
-        <span class="left">
-          <img id="MSearchSelect" src="search/mag_sel.png"
-               onmouseover="return searchBox.OnSearchSelectShow()"
-               onmouseout="return searchBox.OnSearchSelectHide()"
-               alt=""/>
-          <input type="text" id="MSearchField" value="Search" accesskey="S"
-               onfocus="searchBox.OnSearchFieldFocus(true)" 
-               onblur="searchBox.OnSearchFieldFocus(false)" 
-               onkeyup="searchBox.OnSearchFieldChange(event)"/>
-          </span><span class="right">
-            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
-          </span>
-        </div>
-      </li>
-    </ul>
-  </div>
-  <div id="navrow2" class="tabs2">
-    <ul class="tablist">
-      <li><a href="files.html"><span>File&#160;List</span></a></li>
-    </ul>
-  </div>
-<!-- window showing the filter options -->
-<div id="MSearchSelectWindow"
-     onmouseover="return searchBox.OnSearchSelectShow()"
-     onmouseout="return searchBox.OnSearchSelectHide()"
-     onkeydown="return searchBox.OnSearchSelectKey(event)">
-</div>
-
-<!-- iframe showing the search results (closed by default) -->
-<div id="MSearchResultsWindow">
-<iframe src="javascript:void(0)" frameborder="0" 
-        name="MSearchResults" id="MSearchResults">
-</iframe>
-</div>
-
-<div id="nav-path" class="navpath">
-  <ul>
-<li class="navelem"><a class="el" href="dir_3a581ba30d25676e4b797b1f96d53b45.html">F:</a></li><li class="navelem"><a class="el" href="dir_9e5fe034a00e89334fd5186c3e7db156.html">G-Truc</a></li><li class="navelem"><a class="el" href="dir_d9496f0844b48bc7e53b5af8c99b9ab2.html">Source</a></li><li class="navelem"><a class="el" href="dir_a8bee7be44182a33f3820393ae0b105d.html">G-Truc</a></li><li class="navelem"><a class="el" href="dir_44e5e654415abd9ca6fdeaddaff8565e.html">glm</a></li><li class="navelem"><a class="el" href="dir_cef2d71d502cb69a9252bca2297d9549.html">glm</a></li><li class="navelem"><a class="el" href="dir_6b66465792d005310484819a0eb0b0d3.html">ext</a></li>  </ul>
-</div>
-</div><!-- top -->
-<div class="header">
-  <div class="summary">
-<a href="#typedef-members">Typedefs</a>  </div>
-  <div class="headertitle">
-<div class="title">matrix_double3x2_precision.hpp File Reference</div>  </div>
-</div><!--header-->
-<div class="contents">
-
-<p><a class="el" href="a00280.html">Core features</a>  
-<a href="#details">More...</a></p>
-
-<p><a href="a00070_source.html">Go to the source code of this file.</a></p>
-<table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="typedef-members"></a>
-Typedefs</h2></td></tr>
-<tr class="memitem:ga3647309010a2160e9ec89bc6f7c95c35"><td class="memItemLeft" align="right" valign="top">typedef mat&lt; 3, 2, double, highp &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00284.html#ga3647309010a2160e9ec89bc6f7c95c35">highp_dmat3x2</a></td></tr>
-<tr class="memdesc:ga3647309010a2160e9ec89bc6f7c95c35"><td class="mdescLeft">&#160;</td><td class="mdescRight">3 columns of 2 components matrix of double-precision floating-point numbers using medium precision arithmetic in term of ULPs.  <a href="a00284.html#ga3647309010a2160e9ec89bc6f7c95c35">More...</a><br /></td></tr>
-<tr class="separator:ga3647309010a2160e9ec89bc6f7c95c35"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:ga1e0ea3fba496bc7c6f620d2590acb66b"><td class="memItemLeft" align="right" valign="top">typedef mat&lt; 3, 2, double, lowp &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00284.html#ga1e0ea3fba496bc7c6f620d2590acb66b">lowp_dmat3x2</a></td></tr>
-<tr class="memdesc:ga1e0ea3fba496bc7c6f620d2590acb66b"><td class="mdescLeft">&#160;</td><td class="mdescRight">3 columns of 2 components matrix of double-precision floating-point numbers using low precision arithmetic in term of ULPs.  <a href="a00284.html#ga1e0ea3fba496bc7c6f620d2590acb66b">More...</a><br /></td></tr>
-<tr class="separator:ga1e0ea3fba496bc7c6f620d2590acb66b"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:ga2076157df85e49b8c021e03e46a376c1"><td class="memItemLeft" align="right" valign="top">typedef mat&lt; 3, 2, double, mediump &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00284.html#ga2076157df85e49b8c021e03e46a376c1">mediump_dmat3x2</a></td></tr>
-<tr class="memdesc:ga2076157df85e49b8c021e03e46a376c1"><td class="mdescLeft">&#160;</td><td class="mdescRight">3 columns of 2 components matrix of double-precision floating-point numbers using medium precision arithmetic in term of ULPs.  <a href="a00284.html#ga2076157df85e49b8c021e03e46a376c1">More...</a><br /></td></tr>
-<tr class="separator:ga2076157df85e49b8c021e03e46a376c1"><td class="memSeparator" colspan="2">&#160;</td></tr>
-</table>
-<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
-<div class="textblock"><p><a class="el" href="a00280.html">Core features</a> </p>
-
-<p>Definition in file <a class="el" href="a00070_source.html">matrix_double3x2_precision.hpp</a>.</p>
-</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.10
-</small></address>
-</body>
-</html>

+ 0 - 117
doc/api/a00070_source.html

@@ -1,117 +0,0 @@
-<!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.10"/>
-<title>0.9.9 API documentation: matrix_double3x2_precision.hpp Source File</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="search/search.css" rel="stylesheet" type="text/css"/>
-<script type="text/javascript" src="search/searchdata.js"></script>
-<script type="text/javascript" src="search/search.js"></script>
-<script type="text/javascript">
-  $(document).ready(function() { init_search(); });
-</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 id="projectlogo"><img alt="Logo" src="logo-mini.png"/></td>
-  <td id="projectalign" style="padding-left: 0.5em;">
-   <div id="projectname">0.9.9 API documentation
-   </div>
-  </td>
- </tr>
- </tbody>
-</table>
-</div>
-<!-- end header part -->
-<!-- Generated by Doxygen 1.8.10 -->
-<script type="text/javascript">
-var searchBox = new SearchBox("searchBox", "search",false,'Search');
-</script>
-  <div id="navrow1" class="tabs">
-    <ul class="tablist">
-      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
-      <li><a href="modules.html"><span>Modules</span></a></li>
-      <li class="current"><a href="files.html"><span>Files</span></a></li>
-      <li>
-        <div id="MSearchBox" class="MSearchBoxInactive">
-        <span class="left">
-          <img id="MSearchSelect" src="search/mag_sel.png"
-               onmouseover="return searchBox.OnSearchSelectShow()"
-               onmouseout="return searchBox.OnSearchSelectHide()"
-               alt=""/>
-          <input type="text" id="MSearchField" value="Search" accesskey="S"
-               onfocus="searchBox.OnSearchFieldFocus(true)" 
-               onblur="searchBox.OnSearchFieldFocus(false)" 
-               onkeyup="searchBox.OnSearchFieldChange(event)"/>
-          </span><span class="right">
-            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
-          </span>
-        </div>
-      </li>
-    </ul>
-  </div>
-  <div id="navrow2" class="tabs2">
-    <ul class="tablist">
-      <li><a href="files.html"><span>File&#160;List</span></a></li>
-    </ul>
-  </div>
-<!-- window showing the filter options -->
-<div id="MSearchSelectWindow"
-     onmouseover="return searchBox.OnSearchSelectShow()"
-     onmouseout="return searchBox.OnSearchSelectHide()"
-     onkeydown="return searchBox.OnSearchSelectKey(event)">
-</div>
-
-<!-- iframe showing the search results (closed by default) -->
-<div id="MSearchResultsWindow">
-<iframe src="javascript:void(0)" frameborder="0" 
-        name="MSearchResults" id="MSearchResults">
-</iframe>
-</div>
-
-<div id="nav-path" class="navpath">
-  <ul>
-<li class="navelem"><a class="el" href="dir_3a581ba30d25676e4b797b1f96d53b45.html">F:</a></li><li class="navelem"><a class="el" href="dir_9e5fe034a00e89334fd5186c3e7db156.html">G-Truc</a></li><li class="navelem"><a class="el" href="dir_d9496f0844b48bc7e53b5af8c99b9ab2.html">Source</a></li><li class="navelem"><a class="el" href="dir_a8bee7be44182a33f3820393ae0b105d.html">G-Truc</a></li><li class="navelem"><a class="el" href="dir_44e5e654415abd9ca6fdeaddaff8565e.html">glm</a></li><li class="navelem"><a class="el" href="dir_cef2d71d502cb69a9252bca2297d9549.html">glm</a></li><li class="navelem"><a class="el" href="dir_6b66465792d005310484819a0eb0b0d3.html">ext</a></li>  </ul>
-</div>
-</div><!-- top -->
-<div class="header">
-  <div class="headertitle">
-<div class="title">matrix_double3x2_precision.hpp</div>  </div>
-</div><!--header-->
-<div class="contents">
-<a href="a00070.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span>&#160;</div>
-<div class="line"><a name="l00004"></a><span class="lineno">    4</span>&#160;<span class="preprocessor">#pragma once</span></div>
-<div class="line"><a name="l00005"></a><span class="lineno">    5</span>&#160;<span class="preprocessor">#include &quot;../detail/type_mat3x2.hpp&quot;</span></div>
-<div class="line"><a name="l00006"></a><span class="lineno">    6</span>&#160;</div>
-<div class="line"><a name="l00007"></a><span class="lineno">    7</span>&#160;<span class="keyword">namespace </span><a class="code" href="a00236.html">glm</a></div>
-<div class="line"><a name="l00008"></a><span class="lineno">    8</span>&#160;{</div>
-<div class="line"><a name="l00011"></a><span class="lineno">   11</span>&#160;</div>
-<div class="line"><a name="l00016"></a><span class="lineno"><a class="line" href="a00284.html#ga1e0ea3fba496bc7c6f620d2590acb66b">   16</a></span>&#160;        <span class="keyword">typedef</span> mat&lt;3, 2, double, lowp&gt;         <a class="code" href="a00284.html#ga1e0ea3fba496bc7c6f620d2590acb66b">lowp_dmat3x2</a>;</div>
-<div class="line"><a name="l00017"></a><span class="lineno">   17</span>&#160;</div>
-<div class="line"><a name="l00022"></a><span class="lineno"><a class="line" href="a00284.html#ga2076157df85e49b8c021e03e46a376c1">   22</a></span>&#160;        <span class="keyword">typedef</span> mat&lt;3, 2, double, mediump&gt;      <a class="code" href="a00284.html#ga2076157df85e49b8c021e03e46a376c1">mediump_dmat3x2</a>;</div>
-<div class="line"><a name="l00023"></a><span class="lineno">   23</span>&#160;</div>
-<div class="line"><a name="l00028"></a><span class="lineno"><a class="line" href="a00284.html#ga3647309010a2160e9ec89bc6f7c95c35">   28</a></span>&#160;        <span class="keyword">typedef</span> mat&lt;3, 2, double, highp&gt;        <a class="code" href="a00284.html#ga3647309010a2160e9ec89bc6f7c95c35">highp_dmat3x2</a>;</div>
-<div class="line"><a name="l00029"></a><span class="lineno">   29</span>&#160;</div>
-<div class="line"><a name="l00031"></a><span class="lineno">   31</span>&#160;}<span class="comment">//namespace glm</span></div>
-<div class="ttc" id="a00284_html_ga2076157df85e49b8c021e03e46a376c1"><div class="ttname"><a href="a00284.html#ga2076157df85e49b8c021e03e46a376c1">glm::mediump_dmat3x2</a></div><div class="ttdeci">mat&lt; 3, 2, double, mediump &gt; mediump_dmat3x2</div><div class="ttdoc">3 columns of 2 components matrix of double-precision floating-point numbers using medium precision ar...</div><div class="ttdef"><b>Definition:</b> <a href="a00070_source.html#l00022">matrix_double3x2_precision.hpp:22</a></div></div>
-<div class="ttc" id="a00284_html_ga1e0ea3fba496bc7c6f620d2590acb66b"><div class="ttname"><a href="a00284.html#ga1e0ea3fba496bc7c6f620d2590acb66b">glm::lowp_dmat3x2</a></div><div class="ttdeci">mat&lt; 3, 2, double, lowp &gt; lowp_dmat3x2</div><div class="ttdoc">3 columns of 2 components matrix of double-precision floating-point numbers using low precision arith...</div><div class="ttdef"><b>Definition:</b> <a href="a00070_source.html#l00016">matrix_double3x2_precision.hpp:16</a></div></div>
-<div class="ttc" id="a00284_html_ga3647309010a2160e9ec89bc6f7c95c35"><div class="ttname"><a href="a00284.html#ga3647309010a2160e9ec89bc6f7c95c35">glm::highp_dmat3x2</a></div><div class="ttdeci">mat&lt; 3, 2, double, highp &gt; highp_dmat3x2</div><div class="ttdoc">3 columns of 2 components matrix of double-precision floating-point numbers using medium precision ar...</div><div class="ttdef"><b>Definition:</b> <a href="a00070_source.html#l00028">matrix_double3x2_precision.hpp:28</a></div></div>
-<div class="ttc" id="a00236_html"><div class="ttname"><a href="a00236.html">glm</a></div><div class="ttdef"><b>Definition:</b> <a href="a00015_source.html#l00020">common.hpp:20</a></div></div>
-</div><!-- fragment --></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.10
-</small></address>
-</body>
-</html>

+ 24 - 54
doc/api/a00071.html

@@ -1,19 +1,17 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://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.10"/>
-<title>0.9.9 API documentation: matrix_double3x3.hpp File Reference</title>
+<meta name="generator" content="Doxygen 1.8.18"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>1.0.0 API documentation: type_vec1.hpp File Reference</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="search/search.css" rel="stylesheet" type="text/css"/>
 <script type="text/javascript" src="search/searchdata.js"></script>
 <script type="text/javascript" src="search/search.js"></script>
-<script type="text/javascript">
-  $(document).ready(function() { init_search(); });
-</script>
 <link href="doxygen.css" rel="stylesheet" type="text/css" />
 </head>
 <body>
@@ -24,7 +22,7 @@
  <tr style="height: 56px;">
   <td id="projectlogo"><img alt="Logo" src="logo-mini.png"/></td>
   <td id="projectalign" style="padding-left: 0.5em;">
-   <div id="projectname">0.9.9 API documentation
+   <div id="projectname">1.0.0 API documentation
    </div>
   </td>
  </tr>
@@ -32,38 +30,22 @@
 </table>
 </div>
 <!-- end header part -->
-<!-- Generated by Doxygen 1.8.10 -->
+<!-- Generated by Doxygen 1.8.18 -->
 <script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
 var searchBox = new SearchBox("searchBox", "search",false,'Search');
+/* @license-end */
 </script>
-  <div id="navrow1" class="tabs">
-    <ul class="tablist">
-      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
-      <li><a href="modules.html"><span>Modules</span></a></li>
-      <li class="current"><a href="files.html"><span>Files</span></a></li>
-      <li>
-        <div id="MSearchBox" class="MSearchBoxInactive">
-        <span class="left">
-          <img id="MSearchSelect" src="search/mag_sel.png"
-               onmouseover="return searchBox.OnSearchSelectShow()"
-               onmouseout="return searchBox.OnSearchSelectHide()"
-               alt=""/>
-          <input type="text" id="MSearchField" value="Search" accesskey="S"
-               onfocus="searchBox.OnSearchFieldFocus(true)" 
-               onblur="searchBox.OnSearchFieldFocus(false)" 
-               onkeyup="searchBox.OnSearchFieldChange(event)"/>
-          </span><span class="right">
-            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
-          </span>
-        </div>
-      </li>
-    </ul>
-  </div>
-  <div id="navrow2" class="tabs2">
-    <ul class="tablist">
-      <li><a href="files.html"><span>File&#160;List</span></a></li>
-    </ul>
-  </div>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
 <!-- window showing the filter options -->
 <div id="MSearchSelectWindow"
      onmouseover="return searchBox.OnSearchSelectShow()"
@@ -80,41 +62,29 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 
 <div id="nav-path" class="navpath">
   <ul>
-<li class="navelem"><a class="el" href="dir_3a581ba30d25676e4b797b1f96d53b45.html">F:</a></li><li class="navelem"><a class="el" href="dir_9e5fe034a00e89334fd5186c3e7db156.html">G-Truc</a></li><li class="navelem"><a class="el" href="dir_d9496f0844b48bc7e53b5af8c99b9ab2.html">Source</a></li><li class="navelem"><a class="el" href="dir_a8bee7be44182a33f3820393ae0b105d.html">G-Truc</a></li><li class="navelem"><a class="el" href="dir_44e5e654415abd9ca6fdeaddaff8565e.html">glm</a></li><li class="navelem"><a class="el" href="dir_cef2d71d502cb69a9252bca2297d9549.html">glm</a></li><li class="navelem"><a class="el" href="dir_6b66465792d005310484819a0eb0b0d3.html">ext</a></li>  </ul>
+<li class="navelem"><a class="el" href="dir_885cc87fac2d91e269af0a5a959fa5f6.html">E:</a></li><li class="navelem"><a class="el" href="dir_63ed049134a778d525e06b63afc2c979.html">Github</a></li><li class="navelem"><a class="el" href="dir_c98a9ac98258ab9f831b188d66361a70.html">g-truc</a></li><li class="navelem"><a class="el" href="dir_50f12b6ceb23d7f6adfb377a1ae8b006.html">glm</a></li><li class="navelem"><a class="el" href="dir_fca33f1b5115d46f42c670590789c0d2.html">glm</a></li><li class="navelem"><a class="el" href="dir_382f4fd018b81be8753cb53c0a41a09a.html">detail</a></li>  </ul>
 </div>
 </div><!-- top -->
 <div class="header">
-  <div class="summary">
-<a href="#typedef-members">Typedefs</a>  </div>
   <div class="headertitle">
-<div class="title">matrix_double3x3.hpp File Reference</div>  </div>
+<div class="title">type_vec1.hpp File Reference</div>  </div>
 </div><!--header-->
 <div class="contents">
 
-<p><a class="el" href="a00280.html">Core features</a>  
+<p><a class="el" href="a00889.html">Core features</a>  
 <a href="#details">More...</a></p>
 
 <p><a href="a00071_source.html">Go to the source code of this file.</a></p>
-<table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="typedef-members"></a>
-Typedefs</h2></td></tr>
-<tr class="memitem:ga6f40aa56265b4b0ccad41b86802efe33"><td class="memItemLeft" align="right" valign="top">typedef mat&lt; 3, 3, double, defaultp &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00283.html#ga6f40aa56265b4b0ccad41b86802efe33">dmat3</a></td></tr>
-<tr class="memdesc:ga6f40aa56265b4b0ccad41b86802efe33"><td class="mdescLeft">&#160;</td><td class="mdescRight">3 columns of 3 components matrix of double-precision floating-point numbers.  <a href="a00283.html#ga6f40aa56265b4b0ccad41b86802efe33">More...</a><br /></td></tr>
-<tr class="separator:ga6f40aa56265b4b0ccad41b86802efe33"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:ga970cb3306be25a5ca5db5a9456831228"><td class="memItemLeft" align="right" valign="top">typedef mat&lt; 3, 3, double, defaultp &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00283.html#ga970cb3306be25a5ca5db5a9456831228">dmat3x3</a></td></tr>
-<tr class="memdesc:ga970cb3306be25a5ca5db5a9456831228"><td class="mdescLeft">&#160;</td><td class="mdescRight">3 columns of 3 components matrix of double-precision floating-point numbers.  <a href="a00283.html#ga970cb3306be25a5ca5db5a9456831228">More...</a><br /></td></tr>
-<tr class="separator:ga970cb3306be25a5ca5db5a9456831228"><td class="memSeparator" colspan="2">&#160;</td></tr>
-</table>
 <a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
-<div class="textblock"><p><a class="el" href="a00280.html">Core features</a> </p>
+<div class="textblock"><p><a class="el" href="a00889.html">Core features</a> </p>
 
-<p>Definition in file <a class="el" href="a00071_source.html">matrix_double3x3.hpp</a>.</p>
+<p class="definition">Definition in file <a class="el" href="a00071_source.html">type_vec1.hpp</a>.</p>
 </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.10
+</a> 1.8.18
 </small></address>
 </body>
 </html>

+ 322 - 53
doc/api/a00071_source.html

@@ -1,19 +1,17 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://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.10"/>
-<title>0.9.9 API documentation: matrix_double3x3.hpp Source File</title>
+<meta name="generator" content="Doxygen 1.8.18"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>1.0.0 API documentation: type_vec1.hpp Source File</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="search/search.css" rel="stylesheet" type="text/css"/>
 <script type="text/javascript" src="search/searchdata.js"></script>
 <script type="text/javascript" src="search/search.js"></script>
-<script type="text/javascript">
-  $(document).ready(function() { init_search(); });
-</script>
 <link href="doxygen.css" rel="stylesheet" type="text/css" />
 </head>
 <body>
@@ -24,7 +22,7 @@
  <tr style="height: 56px;">
   <td id="projectlogo"><img alt="Logo" src="logo-mini.png"/></td>
   <td id="projectalign" style="padding-left: 0.5em;">
-   <div id="projectname">0.9.9 API documentation
+   <div id="projectname">1.0.0 API documentation
    </div>
   </td>
  </tr>
@@ -32,38 +30,22 @@
 </table>
 </div>
 <!-- end header part -->
-<!-- Generated by Doxygen 1.8.10 -->
+<!-- Generated by Doxygen 1.8.18 -->
 <script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
 var searchBox = new SearchBox("searchBox", "search",false,'Search');
+/* @license-end */
 </script>
-  <div id="navrow1" class="tabs">
-    <ul class="tablist">
-      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
-      <li><a href="modules.html"><span>Modules</span></a></li>
-      <li class="current"><a href="files.html"><span>Files</span></a></li>
-      <li>
-        <div id="MSearchBox" class="MSearchBoxInactive">
-        <span class="left">
-          <img id="MSearchSelect" src="search/mag_sel.png"
-               onmouseover="return searchBox.OnSearchSelectShow()"
-               onmouseout="return searchBox.OnSearchSelectHide()"
-               alt=""/>
-          <input type="text" id="MSearchField" value="Search" accesskey="S"
-               onfocus="searchBox.OnSearchFieldFocus(true)" 
-               onblur="searchBox.OnSearchFieldFocus(false)" 
-               onkeyup="searchBox.OnSearchFieldChange(event)"/>
-          </span><span class="right">
-            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
-          </span>
-        </div>
-      </li>
-    </ul>
-  </div>
-  <div id="navrow2" class="tabs2">
-    <ul class="tablist">
-      <li><a href="files.html"><span>File&#160;List</span></a></li>
-    </ul>
-  </div>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
 <!-- window showing the filter options -->
 <div id="MSearchSelectWindow"
      onmouseover="return searchBox.OnSearchSelectShow()"
@@ -80,35 +62,322 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 
 <div id="nav-path" class="navpath">
   <ul>
-<li class="navelem"><a class="el" href="dir_3a581ba30d25676e4b797b1f96d53b45.html">F:</a></li><li class="navelem"><a class="el" href="dir_9e5fe034a00e89334fd5186c3e7db156.html">G-Truc</a></li><li class="navelem"><a class="el" href="dir_d9496f0844b48bc7e53b5af8c99b9ab2.html">Source</a></li><li class="navelem"><a class="el" href="dir_a8bee7be44182a33f3820393ae0b105d.html">G-Truc</a></li><li class="navelem"><a class="el" href="dir_44e5e654415abd9ca6fdeaddaff8565e.html">glm</a></li><li class="navelem"><a class="el" href="dir_cef2d71d502cb69a9252bca2297d9549.html">glm</a></li><li class="navelem"><a class="el" href="dir_6b66465792d005310484819a0eb0b0d3.html">ext</a></li>  </ul>
+<li class="navelem"><a class="el" href="dir_885cc87fac2d91e269af0a5a959fa5f6.html">E:</a></li><li class="navelem"><a class="el" href="dir_63ed049134a778d525e06b63afc2c979.html">Github</a></li><li class="navelem"><a class="el" href="dir_c98a9ac98258ab9f831b188d66361a70.html">g-truc</a></li><li class="navelem"><a class="el" href="dir_50f12b6ceb23d7f6adfb377a1ae8b006.html">glm</a></li><li class="navelem"><a class="el" href="dir_fca33f1b5115d46f42c670590789c0d2.html">glm</a></li><li class="navelem"><a class="el" href="dir_382f4fd018b81be8753cb53c0a41a09a.html">detail</a></li>  </ul>
 </div>
 </div><!-- top -->
 <div class="header">
   <div class="headertitle">
-<div class="title">matrix_double3x3.hpp</div>  </div>
+<div class="title">type_vec1.hpp</div>  </div>
 </div><!--header-->
 <div class="contents">
-<a href="a00071.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span>&#160;</div>
+<a href="a00071.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span>&#160; </div>
 <div class="line"><a name="l00004"></a><span class="lineno">    4</span>&#160;<span class="preprocessor">#pragma once</span></div>
-<div class="line"><a name="l00005"></a><span class="lineno">    5</span>&#160;<span class="preprocessor">#include &quot;../detail/type_mat3x3.hpp&quot;</span></div>
-<div class="line"><a name="l00006"></a><span class="lineno">    6</span>&#160;</div>
-<div class="line"><a name="l00007"></a><span class="lineno">    7</span>&#160;<span class="keyword">namespace </span><a class="code" href="a00236.html">glm</a></div>
-<div class="line"><a name="l00008"></a><span class="lineno">    8</span>&#160;{</div>
-<div class="line"><a name="l00011"></a><span class="lineno">   11</span>&#160;</div>
-<div class="line"><a name="l00015"></a><span class="lineno"><a class="line" href="a00283.html#ga970cb3306be25a5ca5db5a9456831228">   15</a></span>&#160;        <span class="keyword">typedef</span> mat&lt;3, 3, double, defaultp&gt;             <a class="code" href="a00283.html#ga970cb3306be25a5ca5db5a9456831228">dmat3x3</a>;</div>
-<div class="line"><a name="l00016"></a><span class="lineno">   16</span>&#160;</div>
-<div class="line"><a name="l00020"></a><span class="lineno"><a class="line" href="a00283.html#ga6f40aa56265b4b0ccad41b86802efe33">   20</a></span>&#160;        <span class="keyword">typedef</span> mat&lt;3, 3, double, defaultp&gt;             <a class="code" href="a00283.html#ga6f40aa56265b4b0ccad41b86802efe33">dmat3</a>;</div>
-<div class="line"><a name="l00021"></a><span class="lineno">   21</span>&#160;</div>
-<div class="line"><a name="l00023"></a><span class="lineno">   23</span>&#160;}<span class="comment">//namespace glm</span></div>
-<div class="ttc" id="a00283_html_ga970cb3306be25a5ca5db5a9456831228"><div class="ttname"><a href="a00283.html#ga970cb3306be25a5ca5db5a9456831228">glm::dmat3x3</a></div><div class="ttdeci">mat&lt; 3, 3, double, defaultp &gt; dmat3x3</div><div class="ttdoc">3 columns of 3 components matrix of double-precision floating-point numbers. </div><div class="ttdef"><b>Definition:</b> <a href="a00071_source.html#l00015">matrix_double3x3.hpp:15</a></div></div>
-<div class="ttc" id="a00283_html_ga6f40aa56265b4b0ccad41b86802efe33"><div class="ttname"><a href="a00283.html#ga6f40aa56265b4b0ccad41b86802efe33">glm::dmat3</a></div><div class="ttdeci">mat&lt; 3, 3, double, defaultp &gt; dmat3</div><div class="ttdoc">3 columns of 3 components matrix of double-precision floating-point numbers. </div><div class="ttdef"><b>Definition:</b> <a href="a00071_source.html#l00020">matrix_double3x3.hpp:20</a></div></div>
-<div class="ttc" id="a00236_html"><div class="ttname"><a href="a00236.html">glm</a></div><div class="ttdef"><b>Definition:</b> <a href="a00015_source.html#l00020">common.hpp:20</a></div></div>
+<div class="line"><a name="l00005"></a><span class="lineno">    5</span>&#160; </div>
+<div class="line"><a name="l00006"></a><span class="lineno">    6</span>&#160;<span class="preprocessor">#include &quot;qualifier.hpp&quot;</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno">    7</span>&#160;<span class="preprocessor">#if GLM_CONFIG_SWIZZLE == GLM_SWIZZLE_OPERATOR</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno">    8</span>&#160;<span class="preprocessor">#       include &quot;_swizzle.hpp&quot;</span></div>
+<div class="line"><a name="l00009"></a><span class="lineno">    9</span>&#160;<span class="preprocessor">#elif GLM_CONFIG_SWIZZLE == GLM_SWIZZLE_FUNCTION</span></div>
+<div class="line"><a name="l00010"></a><span class="lineno">   10</span>&#160;<span class="preprocessor">#       include &quot;_swizzle_func.hpp&quot;</span></div>
+<div class="line"><a name="l00011"></a><span class="lineno">   11</span>&#160;<span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l00012"></a><span class="lineno">   12</span>&#160;<span class="preprocessor">#include &lt;cstddef&gt;</span></div>
+<div class="line"><a name="l00013"></a><span class="lineno">   13</span>&#160; </div>
+<div class="line"><a name="l00014"></a><span class="lineno">   14</span>&#160;<span class="keyword">namespace </span>glm</div>
+<div class="line"><a name="l00015"></a><span class="lineno">   15</span>&#160;{</div>
+<div class="line"><a name="l00016"></a><span class="lineno">   16</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T, qualifier Q&gt;</div>
+<div class="line"><a name="l00017"></a><span class="lineno">   17</span>&#160;        <span class="keyword">struct </span>vec&lt;1, T, Q&gt;</div>
+<div class="line"><a name="l00018"></a><span class="lineno">   18</span>&#160;        {</div>
+<div class="line"><a name="l00019"></a><span class="lineno">   19</span>&#160;                <span class="comment">// -- Implementation detail --</span></div>
+<div class="line"><a name="l00020"></a><span class="lineno">   20</span>&#160; </div>
+<div class="line"><a name="l00021"></a><span class="lineno">   21</span>&#160;                <span class="keyword">typedef</span> T value_type;</div>
+<div class="line"><a name="l00022"></a><span class="lineno">   22</span>&#160;                <span class="keyword">typedef</span> vec&lt;1, T, Q&gt; type;</div>
+<div class="line"><a name="l00023"></a><span class="lineno">   23</span>&#160;                <span class="keyword">typedef</span> vec&lt;1, bool, Q&gt; bool_type;</div>
+<div class="line"><a name="l00024"></a><span class="lineno">   24</span>&#160; </div>
+<div class="line"><a name="l00025"></a><span class="lineno">   25</span>&#160;                <span class="comment">// -- Data --</span></div>
+<div class="line"><a name="l00026"></a><span class="lineno">   26</span>&#160; </div>
+<div class="line"><a name="l00027"></a><span class="lineno">   27</span>&#160;<span class="preprocessor">#               if GLM_SILENT_WARNINGS == GLM_ENABLE</span></div>
+<div class="line"><a name="l00028"></a><span class="lineno">   28</span>&#160;<span class="preprocessor">#                       if GLM_COMPILER &amp; GLM_COMPILER_GCC</span></div>
+<div class="line"><a name="l00029"></a><span class="lineno">   29</span>&#160;<span class="preprocessor">#                               pragma GCC diagnostic push</span></div>
+<div class="line"><a name="l00030"></a><span class="lineno">   30</span>&#160;<span class="preprocessor">#                               pragma GCC diagnostic ignored &quot;-Wpedantic&quot;</span></div>
+<div class="line"><a name="l00031"></a><span class="lineno">   31</span>&#160;<span class="preprocessor">#                       elif GLM_COMPILER &amp; GLM_COMPILER_CLANG</span></div>
+<div class="line"><a name="l00032"></a><span class="lineno">   32</span>&#160;<span class="preprocessor">#                               pragma clang diagnostic push</span></div>
+<div class="line"><a name="l00033"></a><span class="lineno">   33</span>&#160;<span class="preprocessor">#                               pragma clang diagnostic ignored &quot;-Wgnu-anonymous-struct&quot;</span></div>
+<div class="line"><a name="l00034"></a><span class="lineno">   34</span>&#160;<span class="preprocessor">#                               pragma clang diagnostic ignored &quot;-Wnested-anon-types&quot;</span></div>
+<div class="line"><a name="l00035"></a><span class="lineno">   35</span>&#160;<span class="preprocessor">#                       elif GLM_COMPILER &amp; GLM_COMPILER_VC</span></div>
+<div class="line"><a name="l00036"></a><span class="lineno">   36</span>&#160;<span class="preprocessor">#                               pragma warning(push)</span></div>
+<div class="line"><a name="l00037"></a><span class="lineno">   37</span>&#160;<span class="preprocessor">#                               pragma warning(disable: 4201)  // nonstandard extension used : nameless struct/union</span></div>
+<div class="line"><a name="l00038"></a><span class="lineno">   38</span>&#160;<span class="preprocessor">#                       endif</span></div>
+<div class="line"><a name="l00039"></a><span class="lineno">   39</span>&#160;<span class="preprocessor">#               endif</span></div>
+<div class="line"><a name="l00040"></a><span class="lineno">   40</span>&#160; </div>
+<div class="line"><a name="l00041"></a><span class="lineno">   41</span>&#160;<span class="preprocessor">#               if GLM_CONFIG_XYZW_ONLY</span></div>
+<div class="line"><a name="l00042"></a><span class="lineno">   42</span>&#160;                        T x;</div>
+<div class="line"><a name="l00043"></a><span class="lineno">   43</span>&#160;<span class="preprocessor">#               elif GLM_CONFIG_ANONYMOUS_STRUCT == GLM_ENABLE</span></div>
+<div class="line"><a name="l00044"></a><span class="lineno">   44</span>&#160;                        <span class="keyword">union</span></div>
+<div class="line"><a name="l00045"></a><span class="lineno">   45</span>&#160;                        {</div>
+<div class="line"><a name="l00046"></a><span class="lineno">   46</span>&#160;                                T x;</div>
+<div class="line"><a name="l00047"></a><span class="lineno">   47</span>&#160;                                T r;</div>
+<div class="line"><a name="l00048"></a><span class="lineno">   48</span>&#160;                                T s;</div>
+<div class="line"><a name="l00049"></a><span class="lineno">   49</span>&#160; </div>
+<div class="line"><a name="l00050"></a><span class="lineno">   50</span>&#160;                                <span class="keyword">typename</span> detail::storage&lt;1, T, detail::is_aligned&lt;Q&gt;::value&gt;::type data;</div>
+<div class="line"><a name="l00051"></a><span class="lineno">   51</span>&#160;<span class="comment">/*</span></div>
+<div class="line"><a name="l00052"></a><span class="lineno">   52</span>&#160;<span class="comment">#                               if GLM_CONFIG_SWIZZLE == GLM_SWIZZLE_OPERATOR</span></div>
+<div class="line"><a name="l00053"></a><span class="lineno">   53</span>&#160;<span class="comment">                                        _GLM_SWIZZLE1_2_MEMBERS(T, Q, x)</span></div>
+<div class="line"><a name="l00054"></a><span class="lineno">   54</span>&#160;<span class="comment">                                        _GLM_SWIZZLE1_2_MEMBERS(T, Q, r)</span></div>
+<div class="line"><a name="l00055"></a><span class="lineno">   55</span>&#160;<span class="comment">                                        _GLM_SWIZZLE1_2_MEMBERS(T, Q, s)</span></div>
+<div class="line"><a name="l00056"></a><span class="lineno">   56</span>&#160;<span class="comment">                                        _GLM_SWIZZLE1_3_MEMBERS(T, Q, x)</span></div>
+<div class="line"><a name="l00057"></a><span class="lineno">   57</span>&#160;<span class="comment">                                        _GLM_SWIZZLE1_3_MEMBERS(T, Q, r)</span></div>
+<div class="line"><a name="l00058"></a><span class="lineno">   58</span>&#160;<span class="comment">                                        _GLM_SWIZZLE1_3_MEMBERS(T, Q, s)</span></div>
+<div class="line"><a name="l00059"></a><span class="lineno">   59</span>&#160;<span class="comment">                                        _GLM_SWIZZLE1_4_MEMBERS(T, Q, x)</span></div>
+<div class="line"><a name="l00060"></a><span class="lineno">   60</span>&#160;<span class="comment">                                        _GLM_SWIZZLE1_4_MEMBERS(T, Q, r)</span></div>
+<div class="line"><a name="l00061"></a><span class="lineno">   61</span>&#160;<span class="comment">                                        _GLM_SWIZZLE1_4_MEMBERS(T, Q, s)</span></div>
+<div class="line"><a name="l00062"></a><span class="lineno">   62</span>&#160;<span class="comment">#                               endif</span></div>
+<div class="line"><a name="l00063"></a><span class="lineno">   63</span>&#160;<span class="comment">*/</span></div>
+<div class="line"><a name="l00064"></a><span class="lineno">   64</span>&#160;                        };</div>
+<div class="line"><a name="l00065"></a><span class="lineno">   65</span>&#160;<span class="preprocessor">#               else</span></div>
+<div class="line"><a name="l00066"></a><span class="lineno">   66</span>&#160;                        <span class="keyword">union </span>{T x, r, s;};</div>
+<div class="line"><a name="l00067"></a><span class="lineno">   67</span>&#160;<span class="comment">/*</span></div>
+<div class="line"><a name="l00068"></a><span class="lineno">   68</span>&#160;<span class="comment">#                       if GLM_CONFIG_SWIZZLE == GLM_SWIZZLE_FUNCTION</span></div>
+<div class="line"><a name="l00069"></a><span class="lineno">   69</span>&#160;<span class="comment">                                GLM_SWIZZLE_GEN_VEC_FROM_VEC1(T, Q)</span></div>
+<div class="line"><a name="l00070"></a><span class="lineno">   70</span>&#160;<span class="comment">#                       endif</span></div>
+<div class="line"><a name="l00071"></a><span class="lineno">   71</span>&#160;<span class="comment">*/</span></div>
+<div class="line"><a name="l00072"></a><span class="lineno">   72</span>&#160;<span class="preprocessor">#               endif</span></div>
+<div class="line"><a name="l00073"></a><span class="lineno">   73</span>&#160; </div>
+<div class="line"><a name="l00074"></a><span class="lineno">   74</span>&#160;<span class="preprocessor">#               if GLM_SILENT_WARNINGS == GLM_ENABLE</span></div>
+<div class="line"><a name="l00075"></a><span class="lineno">   75</span>&#160;<span class="preprocessor">#                       if GLM_COMPILER &amp; GLM_COMPILER_CLANG</span></div>
+<div class="line"><a name="l00076"></a><span class="lineno">   76</span>&#160;<span class="preprocessor">#                               pragma clang diagnostic pop</span></div>
+<div class="line"><a name="l00077"></a><span class="lineno">   77</span>&#160;<span class="preprocessor">#                       elif GLM_COMPILER &amp; GLM_COMPILER_GCC</span></div>
+<div class="line"><a name="l00078"></a><span class="lineno">   78</span>&#160;<span class="preprocessor">#                               pragma GCC diagnostic pop</span></div>
+<div class="line"><a name="l00079"></a><span class="lineno">   79</span>&#160;<span class="preprocessor">#                       elif GLM_COMPILER &amp; GLM_COMPILER_VC</span></div>
+<div class="line"><a name="l00080"></a><span class="lineno">   80</span>&#160;<span class="preprocessor">#                               pragma warning(pop)</span></div>
+<div class="line"><a name="l00081"></a><span class="lineno">   81</span>&#160;<span class="preprocessor">#                       endif</span></div>
+<div class="line"><a name="l00082"></a><span class="lineno">   82</span>&#160;<span class="preprocessor">#               endif</span></div>
+<div class="line"><a name="l00083"></a><span class="lineno">   83</span>&#160; </div>
+<div class="line"><a name="l00084"></a><span class="lineno">   84</span>&#160;                <span class="comment">// -- Component accesses --</span></div>
+<div class="line"><a name="l00085"></a><span class="lineno">   85</span>&#160; </div>
+<div class="line"><a name="l00087"></a><span class="lineno">   87</span>&#160;                <span class="keyword">typedef</span> length_t length_type;</div>
+<div class="line"><a name="l00088"></a><span class="lineno">   88</span>&#160;                GLM_FUNC_DECL <span class="keyword">static</span> GLM_CONSTEXPR length_type <a class="code" href="a00853.html#gab703732449be6c7199369b3f9a91ed38">length</a>(){<span class="keywordflow">return</span> 1;}</div>
+<div class="line"><a name="l00089"></a><span class="lineno">   89</span>&#160; </div>
+<div class="line"><a name="l00090"></a><span class="lineno">   90</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR T &amp; operator[](length_type i);</div>
+<div class="line"><a name="l00091"></a><span class="lineno">   91</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR T <span class="keyword">const</span>&amp; operator[](length_type i) <span class="keyword">const</span>;</div>
+<div class="line"><a name="l00092"></a><span class="lineno">   92</span>&#160; </div>
+<div class="line"><a name="l00093"></a><span class="lineno">   93</span>&#160;                <span class="comment">// -- Implicit basic constructors --</span></div>
+<div class="line"><a name="l00094"></a><span class="lineno">   94</span>&#160; </div>
+<div class="line"><a name="l00095"></a><span class="lineno">   95</span>&#160;                GLM_DEFAULTED_DEFAULT_CTOR_DECL GLM_CONSTEXPR vec() GLM_DEFAULT_CTOR;</div>
+<div class="line"><a name="l00096"></a><span class="lineno">   96</span>&#160;                GLM_DEFAULTED_FUNC_DECL GLM_CONSTEXPR vec(vec const&amp; v) GLM_DEFAULT;</div>
+<div class="line"><a name="l00097"></a><span class="lineno">   97</span>&#160;                template&lt;qualifier P&gt;</div>
+<div class="line"><a name="l00098"></a><span class="lineno">   98</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR vec(vec&lt;1, T, P&gt; const&amp; v);</div>
+<div class="line"><a name="l00099"></a><span class="lineno">   99</span>&#160; </div>
+<div class="line"><a name="l00100"></a><span class="lineno">  100</span>&#160;                <span class="comment">// -- Explicit basic constructors --</span></div>
+<div class="line"><a name="l00101"></a><span class="lineno">  101</span>&#160; </div>
+<div class="line"><a name="l00102"></a><span class="lineno">  102</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR explicit vec(T scalar);</div>
+<div class="line"><a name="l00103"></a><span class="lineno">  103</span>&#160; </div>
+<div class="line"><a name="l00104"></a><span class="lineno">  104</span>&#160;                <span class="comment">// -- Conversion vector constructors --</span></div>
+<div class="line"><a name="l00105"></a><span class="lineno">  105</span>&#160; </div>
+<div class="line"><a name="l00107"></a><span class="lineno">  107</span>&#160;                template&lt;typename U, qualifier P&gt;</div>
+<div class="line"><a name="l00108"></a><span class="lineno">  108</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR GLM_EXPLICIT vec(vec&lt;2, U, P&gt; const&amp; v);</div>
+<div class="line"><a name="l00110"></a><span class="lineno">  110</span>&#160;                template&lt;typename U, qualifier P&gt;</div>
+<div class="line"><a name="l00111"></a><span class="lineno">  111</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR GLM_EXPLICIT vec(vec&lt;3, U, P&gt; const&amp; v);</div>
+<div class="line"><a name="l00113"></a><span class="lineno">  113</span>&#160;                template&lt;typename U, qualifier P&gt;</div>
+<div class="line"><a name="l00114"></a><span class="lineno">  114</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR GLM_EXPLICIT vec(vec&lt;4, U, P&gt; const&amp; v);</div>
+<div class="line"><a name="l00115"></a><span class="lineno">  115</span>&#160; </div>
+<div class="line"><a name="l00117"></a><span class="lineno">  117</span>&#160;                template&lt;typename U, qualifier P&gt;</div>
+<div class="line"><a name="l00118"></a><span class="lineno">  118</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR GLM_EXPLICIT vec(vec&lt;1, U, P&gt; const&amp; v);</div>
+<div class="line"><a name="l00119"></a><span class="lineno">  119</span>&#160; </div>
+<div class="line"><a name="l00120"></a><span class="lineno">  120</span>&#160;                <span class="comment">// -- Swizzle constructors --</span></div>
+<div class="line"><a name="l00121"></a><span class="lineno">  121</span>&#160;<span class="comment">/*</span></div>
+<div class="line"><a name="l00122"></a><span class="lineno">  122</span>&#160;<span class="comment">#               if GLM_CONFIG_SWIZZLE == GLM_SWIZZLE_OPERATOR</span></div>
+<div class="line"><a name="l00123"></a><span class="lineno">  123</span>&#160;<span class="comment">                        template&lt;int E0&gt;</span></div>
+<div class="line"><a name="l00124"></a><span class="lineno">  124</span>&#160;<span class="comment">                        GLM_FUNC_DECL GLM_CONSTEXPR vec(detail::_swizzle&lt;1, T, Q, E0, -1,-2,-3&gt; const&amp; that)</span></div>
+<div class="line"><a name="l00125"></a><span class="lineno">  125</span>&#160;<span class="comment">                        {</span></div>
+<div class="line"><a name="l00126"></a><span class="lineno">  126</span>&#160;<span class="comment">                                *this = that();</span></div>
+<div class="line"><a name="l00127"></a><span class="lineno">  127</span>&#160;<span class="comment">                        }</span></div>
+<div class="line"><a name="l00128"></a><span class="lineno">  128</span>&#160;<span class="comment">#               endif//GLM_CONFIG_SWIZZLE == GLM_SWIZZLE_OPERATOR</span></div>
+<div class="line"><a name="l00129"></a><span class="lineno">  129</span>&#160;<span class="comment">*/</span></div>
+<div class="line"><a name="l00130"></a><span class="lineno">  130</span>&#160;                <span class="comment">// -- Unary arithmetic operators --</span></div>
+<div class="line"><a name="l00131"></a><span class="lineno">  131</span>&#160; </div>
+<div class="line"><a name="l00132"></a><span class="lineno">  132</span>&#160;                GLM_DEFAULTED_FUNC_DECL GLM_CONSTEXPR vec&lt;1, T, Q&gt; &amp; operator=(vec const&amp; v) GLM_DEFAULT;</div>
+<div class="line"><a name="l00133"></a><span class="lineno">  133</span>&#160; </div>
+<div class="line"><a name="l00134"></a><span class="lineno">  134</span>&#160;                template&lt;typename U&gt;</div>
+<div class="line"><a name="l00135"></a><span class="lineno">  135</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR vec&lt;1, T, Q&gt; &amp; operator=(vec&lt;1, U, Q&gt; const&amp; v);</div>
+<div class="line"><a name="l00136"></a><span class="lineno">  136</span>&#160;                template&lt;typename U&gt;</div>
+<div class="line"><a name="l00137"></a><span class="lineno">  137</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR vec&lt;1, T, Q&gt; &amp; operator+=(U scalar);</div>
+<div class="line"><a name="l00138"></a><span class="lineno">  138</span>&#160;                template&lt;typename U&gt;</div>
+<div class="line"><a name="l00139"></a><span class="lineno">  139</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR vec&lt;1, T, Q&gt; &amp; operator+=(vec&lt;1, U, Q&gt; const&amp; v);</div>
+<div class="line"><a name="l00140"></a><span class="lineno">  140</span>&#160;                template&lt;typename U&gt;</div>
+<div class="line"><a name="l00141"></a><span class="lineno">  141</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR vec&lt;1, T, Q&gt; &amp; operator-=(U scalar);</div>
+<div class="line"><a name="l00142"></a><span class="lineno">  142</span>&#160;                template&lt;typename U&gt;</div>
+<div class="line"><a name="l00143"></a><span class="lineno">  143</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR vec&lt;1, T, Q&gt; &amp; operator-=(vec&lt;1, U, Q&gt; const&amp; v);</div>
+<div class="line"><a name="l00144"></a><span class="lineno">  144</span>&#160;                template&lt;typename U&gt;</div>
+<div class="line"><a name="l00145"></a><span class="lineno">  145</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR vec&lt;1, T, Q&gt; &amp; operator*=(U scalar);</div>
+<div class="line"><a name="l00146"></a><span class="lineno">  146</span>&#160;                template&lt;typename U&gt;</div>
+<div class="line"><a name="l00147"></a><span class="lineno">  147</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR vec&lt;1, T, Q&gt; &amp; operator*=(vec&lt;1, U, Q&gt; const&amp; v);</div>
+<div class="line"><a name="l00148"></a><span class="lineno">  148</span>&#160;                template&lt;typename U&gt;</div>
+<div class="line"><a name="l00149"></a><span class="lineno">  149</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR vec&lt;1, T, Q&gt; &amp; operator/=(U scalar);</div>
+<div class="line"><a name="l00150"></a><span class="lineno">  150</span>&#160;                template&lt;typename U&gt;</div>
+<div class="line"><a name="l00151"></a><span class="lineno">  151</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR vec&lt;1, T, Q&gt; &amp; operator/=(vec&lt;1, U, Q&gt; const&amp; v);</div>
+<div class="line"><a name="l00152"></a><span class="lineno">  152</span>&#160; </div>
+<div class="line"><a name="l00153"></a><span class="lineno">  153</span>&#160;                <span class="comment">// -- Increment and decrement operators --</span></div>
+<div class="line"><a name="l00154"></a><span class="lineno">  154</span>&#160; </div>
+<div class="line"><a name="l00155"></a><span class="lineno">  155</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR vec&lt;1, T, Q&gt; &amp; operator++();</div>
+<div class="line"><a name="l00156"></a><span class="lineno">  156</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR vec&lt;1, T, Q&gt; &amp; operator--();</div>
+<div class="line"><a name="l00157"></a><span class="lineno">  157</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR vec&lt;1, T, Q&gt; operator++(<span class="keywordtype">int</span>);</div>
+<div class="line"><a name="l00158"></a><span class="lineno">  158</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR vec&lt;1, T, Q&gt; operator--(<span class="keywordtype">int</span>);</div>
+<div class="line"><a name="l00159"></a><span class="lineno">  159</span>&#160; </div>
+<div class="line"><a name="l00160"></a><span class="lineno">  160</span>&#160;                <span class="comment">// -- Unary bit operators --</span></div>
+<div class="line"><a name="l00161"></a><span class="lineno">  161</span>&#160; </div>
+<div class="line"><a name="l00162"></a><span class="lineno">  162</span>&#160;                template&lt;typename U&gt;</div>
+<div class="line"><a name="l00163"></a><span class="lineno">  163</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR vec&lt;1, T, Q&gt; &amp; operator%=(U scalar);</div>
+<div class="line"><a name="l00164"></a><span class="lineno">  164</span>&#160;                template&lt;typename U&gt;</div>
+<div class="line"><a name="l00165"></a><span class="lineno">  165</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR vec&lt;1, T, Q&gt; &amp; operator%=(vec&lt;1, U, Q&gt; const&amp; v);</div>
+<div class="line"><a name="l00166"></a><span class="lineno">  166</span>&#160;                template&lt;typename U&gt;</div>
+<div class="line"><a name="l00167"></a><span class="lineno">  167</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR vec&lt;1, T, Q&gt; &amp; operator&amp;=(U scalar);</div>
+<div class="line"><a name="l00168"></a><span class="lineno">  168</span>&#160;                template&lt;typename U&gt;</div>
+<div class="line"><a name="l00169"></a><span class="lineno">  169</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR vec&lt;1, T, Q&gt; &amp; operator&amp;=(vec&lt;1, U, Q&gt; const&amp; v);</div>
+<div class="line"><a name="l00170"></a><span class="lineno">  170</span>&#160;                template&lt;typename U&gt;</div>
+<div class="line"><a name="l00171"></a><span class="lineno">  171</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR vec&lt;1, T, Q&gt; &amp; operator|=(U scalar);</div>
+<div class="line"><a name="l00172"></a><span class="lineno">  172</span>&#160;                template&lt;typename U&gt;</div>
+<div class="line"><a name="l00173"></a><span class="lineno">  173</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR vec&lt;1, T, Q&gt; &amp; operator|=(vec&lt;1, U, Q&gt; const&amp; v);</div>
+<div class="line"><a name="l00174"></a><span class="lineno">  174</span>&#160;                template&lt;typename U&gt;</div>
+<div class="line"><a name="l00175"></a><span class="lineno">  175</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR vec&lt;1, T, Q&gt; &amp; operator^=(U scalar);</div>
+<div class="line"><a name="l00176"></a><span class="lineno">  176</span>&#160;                template&lt;typename U&gt;</div>
+<div class="line"><a name="l00177"></a><span class="lineno">  177</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR vec&lt;1, T, Q&gt; &amp; operator^=(vec&lt;1, U, Q&gt; const&amp; v);</div>
+<div class="line"><a name="l00178"></a><span class="lineno">  178</span>&#160;                template&lt;typename U&gt;</div>
+<div class="line"><a name="l00179"></a><span class="lineno">  179</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR vec&lt;1, T, Q&gt; &amp; operator&lt;&lt;=(U scalar);</div>
+<div class="line"><a name="l00180"></a><span class="lineno">  180</span>&#160;                template&lt;typename U&gt;</div>
+<div class="line"><a name="l00181"></a><span class="lineno">  181</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR vec&lt;1, T, Q&gt; &amp; operator&lt;&lt;=(vec&lt;1, U, Q&gt; const&amp; v);</div>
+<div class="line"><a name="l00182"></a><span class="lineno">  182</span>&#160;                template&lt;typename U&gt;</div>
+<div class="line"><a name="l00183"></a><span class="lineno">  183</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR vec&lt;1, T, Q&gt; &amp; operator&gt;&gt;=(U scalar);</div>
+<div class="line"><a name="l00184"></a><span class="lineno">  184</span>&#160;                template&lt;typename U&gt;</div>
+<div class="line"><a name="l00185"></a><span class="lineno">  185</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR vec&lt;1, T, Q&gt; &amp; operator&gt;&gt;=(vec&lt;1, U, Q&gt; const&amp; v);</div>
+<div class="line"><a name="l00186"></a><span class="lineno">  186</span>&#160;        };</div>
+<div class="line"><a name="l00187"></a><span class="lineno">  187</span>&#160; </div>
+<div class="line"><a name="l00188"></a><span class="lineno">  188</span>&#160;        <span class="comment">// -- Unary operators --</span></div>
+<div class="line"><a name="l00189"></a><span class="lineno">  189</span>&#160; </div>
+<div class="line"><a name="l00190"></a><span class="lineno">  190</span>&#160;        template&lt;typename T, qualifier Q&gt;</div>
+<div class="line"><a name="l00191"></a><span class="lineno">  191</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR vec&lt;1, T, Q&gt; operator+(vec&lt;1, T, Q&gt; const&amp; v);</div>
+<div class="line"><a name="l00192"></a><span class="lineno">  192</span>&#160; </div>
+<div class="line"><a name="l00193"></a><span class="lineno">  193</span>&#160;        template&lt;typename T, qualifier Q&gt;</div>
+<div class="line"><a name="l00194"></a><span class="lineno">  194</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR vec&lt;1, T, Q&gt; operator-(vec&lt;1, T, Q&gt; const&amp; v);</div>
+<div class="line"><a name="l00195"></a><span class="lineno">  195</span>&#160; </div>
+<div class="line"><a name="l00196"></a><span class="lineno">  196</span>&#160;        <span class="comment">// -- Binary operators --</span></div>
+<div class="line"><a name="l00197"></a><span class="lineno">  197</span>&#160; </div>
+<div class="line"><a name="l00198"></a><span class="lineno">  198</span>&#160;        template&lt;typename T, qualifier Q&gt;</div>
+<div class="line"><a name="l00199"></a><span class="lineno">  199</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR vec&lt;1, T, Q&gt; operator+(vec&lt;1, T, Q&gt; const&amp; v, T scalar);</div>
+<div class="line"><a name="l00200"></a><span class="lineno">  200</span>&#160; </div>
+<div class="line"><a name="l00201"></a><span class="lineno">  201</span>&#160;        template&lt;typename T, qualifier Q&gt;</div>
+<div class="line"><a name="l00202"></a><span class="lineno">  202</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR vec&lt;1, T, Q&gt; operator+(T scalar, vec&lt;1, T, Q&gt; const&amp; v);</div>
+<div class="line"><a name="l00203"></a><span class="lineno">  203</span>&#160; </div>
+<div class="line"><a name="l00204"></a><span class="lineno">  204</span>&#160;        template&lt;typename T, qualifier Q&gt;</div>
+<div class="line"><a name="l00205"></a><span class="lineno">  205</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR vec&lt;1, T, Q&gt; operator+(vec&lt;1, T, Q&gt; const&amp; v1, vec&lt;1, T, Q&gt; const&amp; v2);</div>
+<div class="line"><a name="l00206"></a><span class="lineno">  206</span>&#160; </div>
+<div class="line"><a name="l00207"></a><span class="lineno">  207</span>&#160;        template&lt;typename T, qualifier Q&gt;</div>
+<div class="line"><a name="l00208"></a><span class="lineno">  208</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR vec&lt;1, T, Q&gt; operator-(vec&lt;1, T, Q&gt; const&amp; v, T scalar);</div>
+<div class="line"><a name="l00209"></a><span class="lineno">  209</span>&#160; </div>
+<div class="line"><a name="l00210"></a><span class="lineno">  210</span>&#160;        template&lt;typename T, qualifier Q&gt;</div>
+<div class="line"><a name="l00211"></a><span class="lineno">  211</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR vec&lt;1, T, Q&gt; operator-(T scalar, vec&lt;1, T, Q&gt; const&amp; v);</div>
+<div class="line"><a name="l00212"></a><span class="lineno">  212</span>&#160; </div>
+<div class="line"><a name="l00213"></a><span class="lineno">  213</span>&#160;        template&lt;typename T, qualifier Q&gt;</div>
+<div class="line"><a name="l00214"></a><span class="lineno">  214</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR vec&lt;1, T, Q&gt; operator-(vec&lt;1, T, Q&gt; const&amp; v1, vec&lt;1, T, Q&gt; const&amp; v2);</div>
+<div class="line"><a name="l00215"></a><span class="lineno">  215</span>&#160; </div>
+<div class="line"><a name="l00216"></a><span class="lineno">  216</span>&#160;        template&lt;typename T, qualifier Q&gt;</div>
+<div class="line"><a name="l00217"></a><span class="lineno">  217</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR vec&lt;1, T, Q&gt; operator*(vec&lt;1, T, Q&gt; const&amp; v, T scalar);</div>
+<div class="line"><a name="l00218"></a><span class="lineno">  218</span>&#160; </div>
+<div class="line"><a name="l00219"></a><span class="lineno">  219</span>&#160;        template&lt;typename T, qualifier Q&gt;</div>
+<div class="line"><a name="l00220"></a><span class="lineno">  220</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR vec&lt;1, T, Q&gt; operator*(T scalar, vec&lt;1, T, Q&gt; const&amp; v);</div>
+<div class="line"><a name="l00221"></a><span class="lineno">  221</span>&#160; </div>
+<div class="line"><a name="l00222"></a><span class="lineno">  222</span>&#160;        template&lt;typename T, qualifier Q&gt;</div>
+<div class="line"><a name="l00223"></a><span class="lineno">  223</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR vec&lt;1, T, Q&gt; operator*(vec&lt;1, T, Q&gt; const&amp; v1, vec&lt;1, T, Q&gt; const&amp; v2);</div>
+<div class="line"><a name="l00224"></a><span class="lineno">  224</span>&#160; </div>
+<div class="line"><a name="l00225"></a><span class="lineno">  225</span>&#160;        template&lt;typename T, qualifier Q&gt;</div>
+<div class="line"><a name="l00226"></a><span class="lineno">  226</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR vec&lt;1, T, Q&gt; operator/(vec&lt;1, T, Q&gt; const&amp; v, T scalar);</div>
+<div class="line"><a name="l00227"></a><span class="lineno">  227</span>&#160; </div>
+<div class="line"><a name="l00228"></a><span class="lineno">  228</span>&#160;        template&lt;typename T, qualifier Q&gt;</div>
+<div class="line"><a name="l00229"></a><span class="lineno">  229</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR vec&lt;1, T, Q&gt; operator/(T scalar, vec&lt;1, T, Q&gt; const&amp; v);</div>
+<div class="line"><a name="l00230"></a><span class="lineno">  230</span>&#160; </div>
+<div class="line"><a name="l00231"></a><span class="lineno">  231</span>&#160;        template&lt;typename T, qualifier Q&gt;</div>
+<div class="line"><a name="l00232"></a><span class="lineno">  232</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR vec&lt;1, T, Q&gt; operator/(vec&lt;1, T, Q&gt; const&amp; v1, vec&lt;1, T, Q&gt; const&amp; v2);</div>
+<div class="line"><a name="l00233"></a><span class="lineno">  233</span>&#160; </div>
+<div class="line"><a name="l00234"></a><span class="lineno">  234</span>&#160;        template&lt;typename T, qualifier Q&gt;</div>
+<div class="line"><a name="l00235"></a><span class="lineno">  235</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR vec&lt;1, T, Q&gt; operator%(vec&lt;1, T, Q&gt; const&amp; v, T scalar);</div>
+<div class="line"><a name="l00236"></a><span class="lineno">  236</span>&#160; </div>
+<div class="line"><a name="l00237"></a><span class="lineno">  237</span>&#160;        template&lt;typename T, qualifier Q&gt;</div>
+<div class="line"><a name="l00238"></a><span class="lineno">  238</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR vec&lt;1, T, Q&gt; operator%(T scalar, vec&lt;1, T, Q&gt; const&amp; v);</div>
+<div class="line"><a name="l00239"></a><span class="lineno">  239</span>&#160; </div>
+<div class="line"><a name="l00240"></a><span class="lineno">  240</span>&#160;        template&lt;typename T, qualifier Q&gt;</div>
+<div class="line"><a name="l00241"></a><span class="lineno">  241</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR vec&lt;1, T, Q&gt; operator%(vec&lt;1, T, Q&gt; const&amp; v1, vec&lt;1, T, Q&gt; const&amp; v2);</div>
+<div class="line"><a name="l00242"></a><span class="lineno">  242</span>&#160; </div>
+<div class="line"><a name="l00243"></a><span class="lineno">  243</span>&#160;        template&lt;typename T, qualifier Q&gt;</div>
+<div class="line"><a name="l00244"></a><span class="lineno">  244</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR vec&lt;1, T, Q&gt; operator&amp;(vec&lt;1, T, Q&gt; const&amp; v, T scalar);</div>
+<div class="line"><a name="l00245"></a><span class="lineno">  245</span>&#160; </div>
+<div class="line"><a name="l00246"></a><span class="lineno">  246</span>&#160;        template&lt;typename T, qualifier Q&gt;</div>
+<div class="line"><a name="l00247"></a><span class="lineno">  247</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR vec&lt;1, T, Q&gt; operator&amp;(T scalar, vec&lt;1, T, Q&gt; const&amp; v);</div>
+<div class="line"><a name="l00248"></a><span class="lineno">  248</span>&#160; </div>
+<div class="line"><a name="l00249"></a><span class="lineno">  249</span>&#160;        template&lt;typename T, qualifier Q&gt;</div>
+<div class="line"><a name="l00250"></a><span class="lineno">  250</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR vec&lt;1, T, Q&gt; operator&amp;(vec&lt;1, T, Q&gt; const&amp; v1, vec&lt;1, T, Q&gt; const&amp; v2);</div>
+<div class="line"><a name="l00251"></a><span class="lineno">  251</span>&#160; </div>
+<div class="line"><a name="l00252"></a><span class="lineno">  252</span>&#160;        template&lt;typename T, qualifier Q&gt;</div>
+<div class="line"><a name="l00253"></a><span class="lineno">  253</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR vec&lt;1, T, Q&gt; operator|(vec&lt;1, T, Q&gt; const&amp; v, T scalar);</div>
+<div class="line"><a name="l00254"></a><span class="lineno">  254</span>&#160; </div>
+<div class="line"><a name="l00255"></a><span class="lineno">  255</span>&#160;        template&lt;typename T, qualifier Q&gt;</div>
+<div class="line"><a name="l00256"></a><span class="lineno">  256</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR vec&lt;1, T, Q&gt; operator|(T scalar, vec&lt;1, T, Q&gt; const&amp; v);</div>
+<div class="line"><a name="l00257"></a><span class="lineno">  257</span>&#160; </div>
+<div class="line"><a name="l00258"></a><span class="lineno">  258</span>&#160;        template&lt;typename T, qualifier Q&gt;</div>
+<div class="line"><a name="l00259"></a><span class="lineno">  259</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR vec&lt;1, T, Q&gt; operator|(vec&lt;1, T, Q&gt; const&amp; v1, vec&lt;1, T, Q&gt; const&amp; v2);</div>
+<div class="line"><a name="l00260"></a><span class="lineno">  260</span>&#160; </div>
+<div class="line"><a name="l00261"></a><span class="lineno">  261</span>&#160;        template&lt;typename T, qualifier Q&gt;</div>
+<div class="line"><a name="l00262"></a><span class="lineno">  262</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR vec&lt;1, T, Q&gt; operator^(vec&lt;1, T, Q&gt; const&amp; v, T scalar);</div>
+<div class="line"><a name="l00263"></a><span class="lineno">  263</span>&#160; </div>
+<div class="line"><a name="l00264"></a><span class="lineno">  264</span>&#160;        template&lt;typename T, qualifier Q&gt;</div>
+<div class="line"><a name="l00265"></a><span class="lineno">  265</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR vec&lt;1, T, Q&gt; operator^(T scalar, vec&lt;1, T, Q&gt; const&amp; v);</div>
+<div class="line"><a name="l00266"></a><span class="lineno">  266</span>&#160; </div>
+<div class="line"><a name="l00267"></a><span class="lineno">  267</span>&#160;        template&lt;typename T, qualifier Q&gt;</div>
+<div class="line"><a name="l00268"></a><span class="lineno">  268</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR vec&lt;1, T, Q&gt; operator^(vec&lt;1, T, Q&gt; const&amp; v1, vec&lt;1, T, Q&gt; const&amp; v2);</div>
+<div class="line"><a name="l00269"></a><span class="lineno">  269</span>&#160; </div>
+<div class="line"><a name="l00270"></a><span class="lineno">  270</span>&#160;        template&lt;typename T, qualifier Q&gt;</div>
+<div class="line"><a name="l00271"></a><span class="lineno">  271</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR vec&lt;1, T, Q&gt; operator&lt;&lt;(vec&lt;1, T, Q&gt; const&amp; v, T scalar);</div>
+<div class="line"><a name="l00272"></a><span class="lineno">  272</span>&#160; </div>
+<div class="line"><a name="l00273"></a><span class="lineno">  273</span>&#160;        template&lt;typename T, qualifier Q&gt;</div>
+<div class="line"><a name="l00274"></a><span class="lineno">  274</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR vec&lt;1, T, Q&gt; operator&lt;&lt;(T scalar, vec&lt;1, T, Q&gt; const&amp; v);</div>
+<div class="line"><a name="l00275"></a><span class="lineno">  275</span>&#160; </div>
+<div class="line"><a name="l00276"></a><span class="lineno">  276</span>&#160;        template&lt;typename T, qualifier Q&gt;</div>
+<div class="line"><a name="l00277"></a><span class="lineno">  277</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR vec&lt;1, T, Q&gt; operator&lt;&lt;(vec&lt;1, T, Q&gt; const&amp; v1, vec&lt;1, T, Q&gt; const&amp; v2);</div>
+<div class="line"><a name="l00278"></a><span class="lineno">  278</span>&#160; </div>
+<div class="line"><a name="l00279"></a><span class="lineno">  279</span>&#160;        template&lt;typename T, qualifier Q&gt;</div>
+<div class="line"><a name="l00280"></a><span class="lineno">  280</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR vec&lt;1, T, Q&gt; operator&gt;&gt;(vec&lt;1, T, Q&gt; const&amp; v, T scalar);</div>
+<div class="line"><a name="l00281"></a><span class="lineno">  281</span>&#160; </div>
+<div class="line"><a name="l00282"></a><span class="lineno">  282</span>&#160;        template&lt;typename T, qualifier Q&gt;</div>
+<div class="line"><a name="l00283"></a><span class="lineno">  283</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR vec&lt;1, T, Q&gt; operator&gt;&gt;(T scalar, vec&lt;1, T, Q&gt; const&amp; v);</div>
+<div class="line"><a name="l00284"></a><span class="lineno">  284</span>&#160; </div>
+<div class="line"><a name="l00285"></a><span class="lineno">  285</span>&#160;        template&lt;typename T, qualifier Q&gt;</div>
+<div class="line"><a name="l00286"></a><span class="lineno">  286</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR vec&lt;1, T, Q&gt; operator&gt;&gt;(vec&lt;1, T, Q&gt; const&amp; v1, vec&lt;1, T, Q&gt; const&amp; v2);</div>
+<div class="line"><a name="l00287"></a><span class="lineno">  287</span>&#160; </div>
+<div class="line"><a name="l00288"></a><span class="lineno">  288</span>&#160;        template&lt;typename T, qualifier Q&gt;</div>
+<div class="line"><a name="l00289"></a><span class="lineno">  289</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR vec&lt;1, T, Q&gt; operator~(vec&lt;1, T, Q&gt; const&amp; v);</div>
+<div class="line"><a name="l00290"></a><span class="lineno">  290</span>&#160; </div>
+<div class="line"><a name="l00291"></a><span class="lineno">  291</span>&#160;        <span class="comment">// -- Boolean operators --</span></div>
+<div class="line"><a name="l00292"></a><span class="lineno">  292</span>&#160; </div>
+<div class="line"><a name="l00293"></a><span class="lineno">  293</span>&#160;        template&lt;typename T, qualifier Q&gt;</div>
+<div class="line"><a name="l00294"></a><span class="lineno">  294</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR <span class="keywordtype">bool</span> operator==(vec&lt;1, T, Q&gt; const&amp; v1, vec&lt;1, T, Q&gt; const&amp; v2);</div>
+<div class="line"><a name="l00295"></a><span class="lineno">  295</span>&#160; </div>
+<div class="line"><a name="l00296"></a><span class="lineno">  296</span>&#160;        template&lt;typename T, qualifier Q&gt;</div>
+<div class="line"><a name="l00297"></a><span class="lineno">  297</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR <span class="keywordtype">bool</span> operator!=(vec&lt;1, T, Q&gt; const&amp; v1, vec&lt;1, T, Q&gt; const&amp; v2);</div>
+<div class="line"><a name="l00298"></a><span class="lineno">  298</span>&#160; </div>
+<div class="line"><a name="l00299"></a><span class="lineno">  299</span>&#160;        template&lt;qualifier Q&gt;</div>
+<div class="line"><a name="l00300"></a><span class="lineno">  300</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR vec&lt;1, <span class="keywordtype">bool</span>, Q&gt; operator&amp;&amp;(vec&lt;1, <span class="keywordtype">bool</span>, Q&gt; const&amp; v1, vec&lt;1, <span class="keywordtype">bool</span>, Q&gt; const&amp; v2);</div>
+<div class="line"><a name="l00301"></a><span class="lineno">  301</span>&#160; </div>
+<div class="line"><a name="l00302"></a><span class="lineno">  302</span>&#160;        template&lt;qualifier Q&gt;</div>
+<div class="line"><a name="l00303"></a><span class="lineno">  303</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR vec&lt;1, <span class="keywordtype">bool</span>, Q&gt; operator||(vec&lt;1, <span class="keywordtype">bool</span>, Q&gt; const&amp; v1, vec&lt;1, <span class="keywordtype">bool</span>, Q&gt; const&amp; v2);</div>
+<div class="line"><a name="l00304"></a><span class="lineno">  304</span>&#160;}<span class="comment">//namespace glm</span></div>
+<div class="line"><a name="l00305"></a><span class="lineno">  305</span>&#160; </div>
+<div class="line"><a name="l00306"></a><span class="lineno">  306</span>&#160;<span class="preprocessor">#ifndef GLM_EXTERNAL_TEMPLATE</span></div>
+<div class="line"><a name="l00307"></a><span class="lineno">  307</span>&#160;<span class="preprocessor">#include &quot;type_vec1.inl&quot;</span></div>
+<div class="line"><a name="l00308"></a><span class="lineno">  308</span>&#160;<span class="preprocessor">#endif//GLM_EXTERNAL_TEMPLATE</span></div>
 </div><!-- fragment --></div><!-- contents -->
+<div class="ttc" id="aa00853_html_gab703732449be6c7199369b3f9a91ed38"><div class="ttname"><a href="a00853.html#gab703732449be6c7199369b3f9a91ed38">glm::length</a></div><div class="ttdeci">GLM_FUNC_DECL T length(qua&lt; T, Q &gt; const &amp;q)</div><div class="ttdoc">Returns the norm of a quaternions.</div></div>
 <!-- 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.10
+</a> 1.8.18
 </small></address>
 </body>
 </html>

+ 0 - 132
doc/api/a00072.html

@@ -1,132 +0,0 @@
-<!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.10"/>
-<title>0.9.9 API documentation: matrix_double3x3_precision.hpp File Reference</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="search/search.css" rel="stylesheet" type="text/css"/>
-<script type="text/javascript" src="search/searchdata.js"></script>
-<script type="text/javascript" src="search/search.js"></script>
-<script type="text/javascript">
-  $(document).ready(function() { init_search(); });
-</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 id="projectlogo"><img alt="Logo" src="logo-mini.png"/></td>
-  <td id="projectalign" style="padding-left: 0.5em;">
-   <div id="projectname">0.9.9 API documentation
-   </div>
-  </td>
- </tr>
- </tbody>
-</table>
-</div>
-<!-- end header part -->
-<!-- Generated by Doxygen 1.8.10 -->
-<script type="text/javascript">
-var searchBox = new SearchBox("searchBox", "search",false,'Search');
-</script>
-  <div id="navrow1" class="tabs">
-    <ul class="tablist">
-      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
-      <li><a href="modules.html"><span>Modules</span></a></li>
-      <li class="current"><a href="files.html"><span>Files</span></a></li>
-      <li>
-        <div id="MSearchBox" class="MSearchBoxInactive">
-        <span class="left">
-          <img id="MSearchSelect" src="search/mag_sel.png"
-               onmouseover="return searchBox.OnSearchSelectShow()"
-               onmouseout="return searchBox.OnSearchSelectHide()"
-               alt=""/>
-          <input type="text" id="MSearchField" value="Search" accesskey="S"
-               onfocus="searchBox.OnSearchFieldFocus(true)" 
-               onblur="searchBox.OnSearchFieldFocus(false)" 
-               onkeyup="searchBox.OnSearchFieldChange(event)"/>
-          </span><span class="right">
-            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
-          </span>
-        </div>
-      </li>
-    </ul>
-  </div>
-  <div id="navrow2" class="tabs2">
-    <ul class="tablist">
-      <li><a href="files.html"><span>File&#160;List</span></a></li>
-    </ul>
-  </div>
-<!-- window showing the filter options -->
-<div id="MSearchSelectWindow"
-     onmouseover="return searchBox.OnSearchSelectShow()"
-     onmouseout="return searchBox.OnSearchSelectHide()"
-     onkeydown="return searchBox.OnSearchSelectKey(event)">
-</div>
-
-<!-- iframe showing the search results (closed by default) -->
-<div id="MSearchResultsWindow">
-<iframe src="javascript:void(0)" frameborder="0" 
-        name="MSearchResults" id="MSearchResults">
-</iframe>
-</div>
-
-<div id="nav-path" class="navpath">
-  <ul>
-<li class="navelem"><a class="el" href="dir_3a581ba30d25676e4b797b1f96d53b45.html">F:</a></li><li class="navelem"><a class="el" href="dir_9e5fe034a00e89334fd5186c3e7db156.html">G-Truc</a></li><li class="navelem"><a class="el" href="dir_d9496f0844b48bc7e53b5af8c99b9ab2.html">Source</a></li><li class="navelem"><a class="el" href="dir_a8bee7be44182a33f3820393ae0b105d.html">G-Truc</a></li><li class="navelem"><a class="el" href="dir_44e5e654415abd9ca6fdeaddaff8565e.html">glm</a></li><li class="navelem"><a class="el" href="dir_cef2d71d502cb69a9252bca2297d9549.html">glm</a></li><li class="navelem"><a class="el" href="dir_6b66465792d005310484819a0eb0b0d3.html">ext</a></li>  </ul>
-</div>
-</div><!-- top -->
-<div class="header">
-  <div class="summary">
-<a href="#typedef-members">Typedefs</a>  </div>
-  <div class="headertitle">
-<div class="title">matrix_double3x3_precision.hpp File Reference</div>  </div>
-</div><!--header-->
-<div class="contents">
-
-<p><a class="el" href="a00280.html">Core features</a>  
-<a href="#details">More...</a></p>
-
-<p><a href="a00072_source.html">Go to the source code of this file.</a></p>
-<table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="typedef-members"></a>
-Typedefs</h2></td></tr>
-<tr class="memitem:ga86d6d4dbad92ffdcc759773340e15a97"><td class="memItemLeft" align="right" valign="top">typedef mat&lt; 3, 3, double, highp &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00284.html#ga86d6d4dbad92ffdcc759773340e15a97">highp_dmat3</a></td></tr>
-<tr class="memdesc:ga86d6d4dbad92ffdcc759773340e15a97"><td class="mdescLeft">&#160;</td><td class="mdescRight">3 columns of 3 components matrix of double-precision floating-point numbers using medium precision arithmetic in term of ULPs.  <a href="a00284.html#ga86d6d4dbad92ffdcc759773340e15a97">More...</a><br /></td></tr>
-<tr class="separator:ga86d6d4dbad92ffdcc759773340e15a97"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:gae367ea93c4ad8a7c101dd27b8b2b04ce"><td class="memItemLeft" align="right" valign="top">typedef mat&lt; 3, 3, double, highp &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00284.html#gae367ea93c4ad8a7c101dd27b8b2b04ce">highp_dmat3x3</a></td></tr>
-<tr class="memdesc:gae367ea93c4ad8a7c101dd27b8b2b04ce"><td class="mdescLeft">&#160;</td><td class="mdescRight">3 columns of 3 components matrix of double-precision floating-point numbers using medium precision arithmetic in term of ULPs.  <a href="a00284.html#gae367ea93c4ad8a7c101dd27b8b2b04ce">More...</a><br /></td></tr>
-<tr class="separator:gae367ea93c4ad8a7c101dd27b8b2b04ce"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:ga0cab80beee64a5f8d2ae4e823983063a"><td class="memItemLeft" align="right" valign="top">typedef mat&lt; 3, 3, double, lowp &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00284.html#ga0cab80beee64a5f8d2ae4e823983063a">lowp_dmat3</a></td></tr>
-<tr class="memdesc:ga0cab80beee64a5f8d2ae4e823983063a"><td class="mdescLeft">&#160;</td><td class="mdescRight">3 columns of 3 components matrix of double-precision floating-point numbers using low precision arithmetic in term of ULPs.  <a href="a00284.html#ga0cab80beee64a5f8d2ae4e823983063a">More...</a><br /></td></tr>
-<tr class="separator:ga0cab80beee64a5f8d2ae4e823983063a"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:gac017848a9df570f60916a21a297b1e8e"><td class="memItemLeft" align="right" valign="top">typedef mat&lt; 3, 3, double, lowp &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00284.html#gac017848a9df570f60916a21a297b1e8e">lowp_dmat3x3</a></td></tr>
-<tr class="memdesc:gac017848a9df570f60916a21a297b1e8e"><td class="mdescLeft">&#160;</td><td class="mdescRight">3 columns of 3 components matrix of double-precision floating-point numbers using low precision arithmetic in term of ULPs.  <a href="a00284.html#gac017848a9df570f60916a21a297b1e8e">More...</a><br /></td></tr>
-<tr class="separator:gac017848a9df570f60916a21a297b1e8e"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:ga939fbf9c53008a8e84c7dd7cf8de29e2"><td class="memItemLeft" align="right" valign="top">typedef mat&lt; 3, 3, double, mediump &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00284.html#ga939fbf9c53008a8e84c7dd7cf8de29e2">mediump_dmat3</a></td></tr>
-<tr class="memdesc:ga939fbf9c53008a8e84c7dd7cf8de29e2"><td class="mdescLeft">&#160;</td><td class="mdescRight">3 columns of 3 components matrix of double-precision floating-point numbers using medium precision arithmetic in term of ULPs.  <a href="a00284.html#ga939fbf9c53008a8e84c7dd7cf8de29e2">More...</a><br /></td></tr>
-<tr class="separator:ga939fbf9c53008a8e84c7dd7cf8de29e2"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:ga47bd2aae4701ee2fc865674a9df3d7a6"><td class="memItemLeft" align="right" valign="top">typedef mat&lt; 3, 3, double, mediump &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00284.html#ga47bd2aae4701ee2fc865674a9df3d7a6">mediump_dmat3x3</a></td></tr>
-<tr class="memdesc:ga47bd2aae4701ee2fc865674a9df3d7a6"><td class="mdescLeft">&#160;</td><td class="mdescRight">3 columns of 3 components matrix of double-precision floating-point numbers using medium precision arithmetic in term of ULPs.  <a href="a00284.html#ga47bd2aae4701ee2fc865674a9df3d7a6">More...</a><br /></td></tr>
-<tr class="separator:ga47bd2aae4701ee2fc865674a9df3d7a6"><td class="memSeparator" colspan="2">&#160;</td></tr>
-</table>
-<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
-<div class="textblock"><p><a class="el" href="a00280.html">Core features</a> </p>
-
-<p>Definition in file <a class="el" href="a00072_source.html">matrix_double3x3_precision.hpp</a>.</p>
-</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.10
-</small></address>
-</body>
-</html>

+ 0 - 126
doc/api/a00072_source.html

@@ -1,126 +0,0 @@
-<!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.10"/>
-<title>0.9.9 API documentation: matrix_double3x3_precision.hpp Source File</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="search/search.css" rel="stylesheet" type="text/css"/>
-<script type="text/javascript" src="search/searchdata.js"></script>
-<script type="text/javascript" src="search/search.js"></script>
-<script type="text/javascript">
-  $(document).ready(function() { init_search(); });
-</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 id="projectlogo"><img alt="Logo" src="logo-mini.png"/></td>
-  <td id="projectalign" style="padding-left: 0.5em;">
-   <div id="projectname">0.9.9 API documentation
-   </div>
-  </td>
- </tr>
- </tbody>
-</table>
-</div>
-<!-- end header part -->
-<!-- Generated by Doxygen 1.8.10 -->
-<script type="text/javascript">
-var searchBox = new SearchBox("searchBox", "search",false,'Search');
-</script>
-  <div id="navrow1" class="tabs">
-    <ul class="tablist">
-      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
-      <li><a href="modules.html"><span>Modules</span></a></li>
-      <li class="current"><a href="files.html"><span>Files</span></a></li>
-      <li>
-        <div id="MSearchBox" class="MSearchBoxInactive">
-        <span class="left">
-          <img id="MSearchSelect" src="search/mag_sel.png"
-               onmouseover="return searchBox.OnSearchSelectShow()"
-               onmouseout="return searchBox.OnSearchSelectHide()"
-               alt=""/>
-          <input type="text" id="MSearchField" value="Search" accesskey="S"
-               onfocus="searchBox.OnSearchFieldFocus(true)" 
-               onblur="searchBox.OnSearchFieldFocus(false)" 
-               onkeyup="searchBox.OnSearchFieldChange(event)"/>
-          </span><span class="right">
-            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
-          </span>
-        </div>
-      </li>
-    </ul>
-  </div>
-  <div id="navrow2" class="tabs2">
-    <ul class="tablist">
-      <li><a href="files.html"><span>File&#160;List</span></a></li>
-    </ul>
-  </div>
-<!-- window showing the filter options -->
-<div id="MSearchSelectWindow"
-     onmouseover="return searchBox.OnSearchSelectShow()"
-     onmouseout="return searchBox.OnSearchSelectHide()"
-     onkeydown="return searchBox.OnSearchSelectKey(event)">
-</div>
-
-<!-- iframe showing the search results (closed by default) -->
-<div id="MSearchResultsWindow">
-<iframe src="javascript:void(0)" frameborder="0" 
-        name="MSearchResults" id="MSearchResults">
-</iframe>
-</div>
-
-<div id="nav-path" class="navpath">
-  <ul>
-<li class="navelem"><a class="el" href="dir_3a581ba30d25676e4b797b1f96d53b45.html">F:</a></li><li class="navelem"><a class="el" href="dir_9e5fe034a00e89334fd5186c3e7db156.html">G-Truc</a></li><li class="navelem"><a class="el" href="dir_d9496f0844b48bc7e53b5af8c99b9ab2.html">Source</a></li><li class="navelem"><a class="el" href="dir_a8bee7be44182a33f3820393ae0b105d.html">G-Truc</a></li><li class="navelem"><a class="el" href="dir_44e5e654415abd9ca6fdeaddaff8565e.html">glm</a></li><li class="navelem"><a class="el" href="dir_cef2d71d502cb69a9252bca2297d9549.html">glm</a></li><li class="navelem"><a class="el" href="dir_6b66465792d005310484819a0eb0b0d3.html">ext</a></li>  </ul>
-</div>
-</div><!-- top -->
-<div class="header">
-  <div class="headertitle">
-<div class="title">matrix_double3x3_precision.hpp</div>  </div>
-</div><!--header-->
-<div class="contents">
-<a href="a00072.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span>&#160;</div>
-<div class="line"><a name="l00004"></a><span class="lineno">    4</span>&#160;<span class="preprocessor">#pragma once</span></div>
-<div class="line"><a name="l00005"></a><span class="lineno">    5</span>&#160;<span class="preprocessor">#include &quot;../detail/type_mat3x3.hpp&quot;</span></div>
-<div class="line"><a name="l00006"></a><span class="lineno">    6</span>&#160;</div>
-<div class="line"><a name="l00007"></a><span class="lineno">    7</span>&#160;<span class="keyword">namespace </span><a class="code" href="a00236.html">glm</a></div>
-<div class="line"><a name="l00008"></a><span class="lineno">    8</span>&#160;{</div>
-<div class="line"><a name="l00011"></a><span class="lineno">   11</span>&#160;</div>
-<div class="line"><a name="l00016"></a><span class="lineno"><a class="line" href="a00284.html#ga0cab80beee64a5f8d2ae4e823983063a">   16</a></span>&#160;        <span class="keyword">typedef</span> mat&lt;3, 3, double, lowp&gt;         <a class="code" href="a00284.html#ga0cab80beee64a5f8d2ae4e823983063a">lowp_dmat3</a>;</div>
-<div class="line"><a name="l00017"></a><span class="lineno">   17</span>&#160;</div>
-<div class="line"><a name="l00022"></a><span class="lineno"><a class="line" href="a00284.html#ga939fbf9c53008a8e84c7dd7cf8de29e2">   22</a></span>&#160;        <span class="keyword">typedef</span> mat&lt;3, 3, double, mediump&gt;      <a class="code" href="a00284.html#ga939fbf9c53008a8e84c7dd7cf8de29e2">mediump_dmat3</a>;</div>
-<div class="line"><a name="l00023"></a><span class="lineno">   23</span>&#160;</div>
-<div class="line"><a name="l00028"></a><span class="lineno"><a class="line" href="a00284.html#ga86d6d4dbad92ffdcc759773340e15a97">   28</a></span>&#160;        <span class="keyword">typedef</span> mat&lt;3, 3, double, highp&gt;        <a class="code" href="a00284.html#ga86d6d4dbad92ffdcc759773340e15a97">highp_dmat3</a>;</div>
-<div class="line"><a name="l00029"></a><span class="lineno">   29</span>&#160;</div>
-<div class="line"><a name="l00034"></a><span class="lineno"><a class="line" href="a00284.html#gac017848a9df570f60916a21a297b1e8e">   34</a></span>&#160;        <span class="keyword">typedef</span> mat&lt;3, 3, double, lowp&gt;         <a class="code" href="a00284.html#gac017848a9df570f60916a21a297b1e8e">lowp_dmat3x3</a>;</div>
-<div class="line"><a name="l00035"></a><span class="lineno">   35</span>&#160;</div>
-<div class="line"><a name="l00040"></a><span class="lineno"><a class="line" href="a00284.html#ga47bd2aae4701ee2fc865674a9df3d7a6">   40</a></span>&#160;        <span class="keyword">typedef</span> mat&lt;3, 3, double, mediump&gt;      <a class="code" href="a00284.html#ga47bd2aae4701ee2fc865674a9df3d7a6">mediump_dmat3x3</a>;</div>
-<div class="line"><a name="l00041"></a><span class="lineno">   41</span>&#160;</div>
-<div class="line"><a name="l00046"></a><span class="lineno"><a class="line" href="a00284.html#gae367ea93c4ad8a7c101dd27b8b2b04ce">   46</a></span>&#160;        <span class="keyword">typedef</span> mat&lt;3, 3, double, highp&gt;        <a class="code" href="a00284.html#gae367ea93c4ad8a7c101dd27b8b2b04ce">highp_dmat3x3</a>;</div>
-<div class="line"><a name="l00047"></a><span class="lineno">   47</span>&#160;</div>
-<div class="line"><a name="l00049"></a><span class="lineno">   49</span>&#160;}<span class="comment">//namespace glm</span></div>
-<div class="ttc" id="a00284_html_ga0cab80beee64a5f8d2ae4e823983063a"><div class="ttname"><a href="a00284.html#ga0cab80beee64a5f8d2ae4e823983063a">glm::lowp_dmat3</a></div><div class="ttdeci">mat&lt; 3, 3, double, lowp &gt; lowp_dmat3</div><div class="ttdoc">3 columns of 3 components matrix of double-precision floating-point numbers using low precision arith...</div><div class="ttdef"><b>Definition:</b> <a href="a00072_source.html#l00016">matrix_double3x3_precision.hpp:16</a></div></div>
-<div class="ttc" id="a00284_html_gac017848a9df570f60916a21a297b1e8e"><div class="ttname"><a href="a00284.html#gac017848a9df570f60916a21a297b1e8e">glm::lowp_dmat3x3</a></div><div class="ttdeci">mat&lt; 3, 3, double, lowp &gt; lowp_dmat3x3</div><div class="ttdoc">3 columns of 3 components matrix of double-precision floating-point numbers using low precision arith...</div><div class="ttdef"><b>Definition:</b> <a href="a00072_source.html#l00034">matrix_double3x3_precision.hpp:34</a></div></div>
-<div class="ttc" id="a00284_html_ga86d6d4dbad92ffdcc759773340e15a97"><div class="ttname"><a href="a00284.html#ga86d6d4dbad92ffdcc759773340e15a97">glm::highp_dmat3</a></div><div class="ttdeci">mat&lt; 3, 3, double, highp &gt; highp_dmat3</div><div class="ttdoc">3 columns of 3 components matrix of double-precision floating-point numbers using medium precision ar...</div><div class="ttdef"><b>Definition:</b> <a href="a00072_source.html#l00028">matrix_double3x3_precision.hpp:28</a></div></div>
-<div class="ttc" id="a00284_html_gae367ea93c4ad8a7c101dd27b8b2b04ce"><div class="ttname"><a href="a00284.html#gae367ea93c4ad8a7c101dd27b8b2b04ce">glm::highp_dmat3x3</a></div><div class="ttdeci">mat&lt; 3, 3, double, highp &gt; highp_dmat3x3</div><div class="ttdoc">3 columns of 3 components matrix of double-precision floating-point numbers using medium precision ar...</div><div class="ttdef"><b>Definition:</b> <a href="a00072_source.html#l00046">matrix_double3x3_precision.hpp:46</a></div></div>
-<div class="ttc" id="a00284_html_ga47bd2aae4701ee2fc865674a9df3d7a6"><div class="ttname"><a href="a00284.html#ga47bd2aae4701ee2fc865674a9df3d7a6">glm::mediump_dmat3x3</a></div><div class="ttdeci">mat&lt; 3, 3, double, mediump &gt; mediump_dmat3x3</div><div class="ttdoc">3 columns of 3 components matrix of double-precision floating-point numbers using medium precision ar...</div><div class="ttdef"><b>Definition:</b> <a href="a00072_source.html#l00040">matrix_double3x3_precision.hpp:40</a></div></div>
-<div class="ttc" id="a00284_html_ga939fbf9c53008a8e84c7dd7cf8de29e2"><div class="ttname"><a href="a00284.html#ga939fbf9c53008a8e84c7dd7cf8de29e2">glm::mediump_dmat3</a></div><div class="ttdeci">mat&lt; 3, 3, double, mediump &gt; mediump_dmat3</div><div class="ttdoc">3 columns of 3 components matrix of double-precision floating-point numbers using medium precision ar...</div><div class="ttdef"><b>Definition:</b> <a href="a00072_source.html#l00022">matrix_double3x3_precision.hpp:22</a></div></div>
-<div class="ttc" id="a00236_html"><div class="ttname"><a href="a00236.html">glm</a></div><div class="ttdef"><b>Definition:</b> <a href="a00015_source.html#l00020">common.hpp:20</a></div></div>
-</div><!-- fragment --></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.10
-</small></address>
-</body>
-</html>

+ 0 - 117
doc/api/a00073.html

@@ -1,117 +0,0 @@
-<!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.10"/>
-<title>0.9.9 API documentation: matrix_double3x4.hpp File Reference</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="search/search.css" rel="stylesheet" type="text/css"/>
-<script type="text/javascript" src="search/searchdata.js"></script>
-<script type="text/javascript" src="search/search.js"></script>
-<script type="text/javascript">
-  $(document).ready(function() { init_search(); });
-</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 id="projectlogo"><img alt="Logo" src="logo-mini.png"/></td>
-  <td id="projectalign" style="padding-left: 0.5em;">
-   <div id="projectname">0.9.9 API documentation
-   </div>
-  </td>
- </tr>
- </tbody>
-</table>
-</div>
-<!-- end header part -->
-<!-- Generated by Doxygen 1.8.10 -->
-<script type="text/javascript">
-var searchBox = new SearchBox("searchBox", "search",false,'Search');
-</script>
-  <div id="navrow1" class="tabs">
-    <ul class="tablist">
-      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
-      <li><a href="modules.html"><span>Modules</span></a></li>
-      <li class="current"><a href="files.html"><span>Files</span></a></li>
-      <li>
-        <div id="MSearchBox" class="MSearchBoxInactive">
-        <span class="left">
-          <img id="MSearchSelect" src="search/mag_sel.png"
-               onmouseover="return searchBox.OnSearchSelectShow()"
-               onmouseout="return searchBox.OnSearchSelectHide()"
-               alt=""/>
-          <input type="text" id="MSearchField" value="Search" accesskey="S"
-               onfocus="searchBox.OnSearchFieldFocus(true)" 
-               onblur="searchBox.OnSearchFieldFocus(false)" 
-               onkeyup="searchBox.OnSearchFieldChange(event)"/>
-          </span><span class="right">
-            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
-          </span>
-        </div>
-      </li>
-    </ul>
-  </div>
-  <div id="navrow2" class="tabs2">
-    <ul class="tablist">
-      <li><a href="files.html"><span>File&#160;List</span></a></li>
-    </ul>
-  </div>
-<!-- window showing the filter options -->
-<div id="MSearchSelectWindow"
-     onmouseover="return searchBox.OnSearchSelectShow()"
-     onmouseout="return searchBox.OnSearchSelectHide()"
-     onkeydown="return searchBox.OnSearchSelectKey(event)">
-</div>
-
-<!-- iframe showing the search results (closed by default) -->
-<div id="MSearchResultsWindow">
-<iframe src="javascript:void(0)" frameborder="0" 
-        name="MSearchResults" id="MSearchResults">
-</iframe>
-</div>
-
-<div id="nav-path" class="navpath">
-  <ul>
-<li class="navelem"><a class="el" href="dir_3a581ba30d25676e4b797b1f96d53b45.html">F:</a></li><li class="navelem"><a class="el" href="dir_9e5fe034a00e89334fd5186c3e7db156.html">G-Truc</a></li><li class="navelem"><a class="el" href="dir_d9496f0844b48bc7e53b5af8c99b9ab2.html">Source</a></li><li class="navelem"><a class="el" href="dir_a8bee7be44182a33f3820393ae0b105d.html">G-Truc</a></li><li class="navelem"><a class="el" href="dir_44e5e654415abd9ca6fdeaddaff8565e.html">glm</a></li><li class="navelem"><a class="el" href="dir_cef2d71d502cb69a9252bca2297d9549.html">glm</a></li><li class="navelem"><a class="el" href="dir_6b66465792d005310484819a0eb0b0d3.html">ext</a></li>  </ul>
-</div>
-</div><!-- top -->
-<div class="header">
-  <div class="summary">
-<a href="#typedef-members">Typedefs</a>  </div>
-  <div class="headertitle">
-<div class="title">matrix_double3x4.hpp File Reference</div>  </div>
-</div><!--header-->
-<div class="contents">
-
-<p><a class="el" href="a00280.html">Core features</a>  
-<a href="#details">More...</a></p>
-
-<p><a href="a00073_source.html">Go to the source code of this file.</a></p>
-<table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="typedef-members"></a>
-Typedefs</h2></td></tr>
-<tr class="memitem:ga0412a634d183587e6188e9b11869f8f4"><td class="memItemLeft" align="right" valign="top">typedef mat&lt; 3, 4, double, defaultp &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00283.html#ga0412a634d183587e6188e9b11869f8f4">dmat3x4</a></td></tr>
-<tr class="memdesc:ga0412a634d183587e6188e9b11869f8f4"><td class="mdescLeft">&#160;</td><td class="mdescRight">3 columns of 4 components matrix of double-precision floating-point numbers.  <a href="a00283.html#ga0412a634d183587e6188e9b11869f8f4">More...</a><br /></td></tr>
-<tr class="separator:ga0412a634d183587e6188e9b11869f8f4"><td class="memSeparator" colspan="2">&#160;</td></tr>
-</table>
-<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
-<div class="textblock"><p><a class="el" href="a00280.html">Core features</a> </p>
-
-<p>Definition in file <a class="el" href="a00073_source.html">matrix_double3x4.hpp</a>.</p>
-</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.10
-</small></address>
-</body>
-</html>

+ 0 - 111
doc/api/a00073_source.html

@@ -1,111 +0,0 @@
-<!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.10"/>
-<title>0.9.9 API documentation: matrix_double3x4.hpp Source File</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="search/search.css" rel="stylesheet" type="text/css"/>
-<script type="text/javascript" src="search/searchdata.js"></script>
-<script type="text/javascript" src="search/search.js"></script>
-<script type="text/javascript">
-  $(document).ready(function() { init_search(); });
-</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 id="projectlogo"><img alt="Logo" src="logo-mini.png"/></td>
-  <td id="projectalign" style="padding-left: 0.5em;">
-   <div id="projectname">0.9.9 API documentation
-   </div>
-  </td>
- </tr>
- </tbody>
-</table>
-</div>
-<!-- end header part -->
-<!-- Generated by Doxygen 1.8.10 -->
-<script type="text/javascript">
-var searchBox = new SearchBox("searchBox", "search",false,'Search');
-</script>
-  <div id="navrow1" class="tabs">
-    <ul class="tablist">
-      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
-      <li><a href="modules.html"><span>Modules</span></a></li>
-      <li class="current"><a href="files.html"><span>Files</span></a></li>
-      <li>
-        <div id="MSearchBox" class="MSearchBoxInactive">
-        <span class="left">
-          <img id="MSearchSelect" src="search/mag_sel.png"
-               onmouseover="return searchBox.OnSearchSelectShow()"
-               onmouseout="return searchBox.OnSearchSelectHide()"
-               alt=""/>
-          <input type="text" id="MSearchField" value="Search" accesskey="S"
-               onfocus="searchBox.OnSearchFieldFocus(true)" 
-               onblur="searchBox.OnSearchFieldFocus(false)" 
-               onkeyup="searchBox.OnSearchFieldChange(event)"/>
-          </span><span class="right">
-            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
-          </span>
-        </div>
-      </li>
-    </ul>
-  </div>
-  <div id="navrow2" class="tabs2">
-    <ul class="tablist">
-      <li><a href="files.html"><span>File&#160;List</span></a></li>
-    </ul>
-  </div>
-<!-- window showing the filter options -->
-<div id="MSearchSelectWindow"
-     onmouseover="return searchBox.OnSearchSelectShow()"
-     onmouseout="return searchBox.OnSearchSelectHide()"
-     onkeydown="return searchBox.OnSearchSelectKey(event)">
-</div>
-
-<!-- iframe showing the search results (closed by default) -->
-<div id="MSearchResultsWindow">
-<iframe src="javascript:void(0)" frameborder="0" 
-        name="MSearchResults" id="MSearchResults">
-</iframe>
-</div>
-
-<div id="nav-path" class="navpath">
-  <ul>
-<li class="navelem"><a class="el" href="dir_3a581ba30d25676e4b797b1f96d53b45.html">F:</a></li><li class="navelem"><a class="el" href="dir_9e5fe034a00e89334fd5186c3e7db156.html">G-Truc</a></li><li class="navelem"><a class="el" href="dir_d9496f0844b48bc7e53b5af8c99b9ab2.html">Source</a></li><li class="navelem"><a class="el" href="dir_a8bee7be44182a33f3820393ae0b105d.html">G-Truc</a></li><li class="navelem"><a class="el" href="dir_44e5e654415abd9ca6fdeaddaff8565e.html">glm</a></li><li class="navelem"><a class="el" href="dir_cef2d71d502cb69a9252bca2297d9549.html">glm</a></li><li class="navelem"><a class="el" href="dir_6b66465792d005310484819a0eb0b0d3.html">ext</a></li>  </ul>
-</div>
-</div><!-- top -->
-<div class="header">
-  <div class="headertitle">
-<div class="title">matrix_double3x4.hpp</div>  </div>
-</div><!--header-->
-<div class="contents">
-<a href="a00073.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span>&#160;</div>
-<div class="line"><a name="l00004"></a><span class="lineno">    4</span>&#160;<span class="preprocessor">#pragma once</span></div>
-<div class="line"><a name="l00005"></a><span class="lineno">    5</span>&#160;<span class="preprocessor">#include &quot;../detail/type_mat3x4.hpp&quot;</span></div>
-<div class="line"><a name="l00006"></a><span class="lineno">    6</span>&#160;</div>
-<div class="line"><a name="l00007"></a><span class="lineno">    7</span>&#160;<span class="keyword">namespace </span><a class="code" href="a00236.html">glm</a></div>
-<div class="line"><a name="l00008"></a><span class="lineno">    8</span>&#160;{</div>
-<div class="line"><a name="l00011"></a><span class="lineno">   11</span>&#160;</div>
-<div class="line"><a name="l00015"></a><span class="lineno"><a class="line" href="a00283.html#ga0412a634d183587e6188e9b11869f8f4">   15</a></span>&#160;        <span class="keyword">typedef</span> mat&lt;3, 4, double, defaultp&gt;             <a class="code" href="a00283.html#ga0412a634d183587e6188e9b11869f8f4">dmat3x4</a>;</div>
-<div class="line"><a name="l00016"></a><span class="lineno">   16</span>&#160;</div>
-<div class="line"><a name="l00018"></a><span class="lineno">   18</span>&#160;}<span class="comment">//namespace glm</span></div>
-<div class="ttc" id="a00283_html_ga0412a634d183587e6188e9b11869f8f4"><div class="ttname"><a href="a00283.html#ga0412a634d183587e6188e9b11869f8f4">glm::dmat3x4</a></div><div class="ttdeci">mat&lt; 3, 4, double, defaultp &gt; dmat3x4</div><div class="ttdoc">3 columns of 4 components matrix of double-precision floating-point numbers. </div><div class="ttdef"><b>Definition:</b> <a href="a00073_source.html#l00015">matrix_double3x4.hpp:15</a></div></div>
-<div class="ttc" id="a00236_html"><div class="ttname"><a href="a00236.html">glm</a></div><div class="ttdef"><b>Definition:</b> <a href="a00015_source.html#l00020">common.hpp:20</a></div></div>
-</div><!-- fragment --></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.10
-</small></address>
-</body>
-</html>

+ 24 - 57
doc/api/a00074.html

@@ -1,19 +1,17 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://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.10"/>
-<title>0.9.9 API documentation: matrix_double3x4_precision.hpp File Reference</title>
+<meta name="generator" content="Doxygen 1.8.18"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>1.0.0 API documentation: type_vec2.hpp File Reference</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="search/search.css" rel="stylesheet" type="text/css"/>
 <script type="text/javascript" src="search/searchdata.js"></script>
 <script type="text/javascript" src="search/search.js"></script>
-<script type="text/javascript">
-  $(document).ready(function() { init_search(); });
-</script>
 <link href="doxygen.css" rel="stylesheet" type="text/css" />
 </head>
 <body>
@@ -24,7 +22,7 @@
  <tr style="height: 56px;">
   <td id="projectlogo"><img alt="Logo" src="logo-mini.png"/></td>
   <td id="projectalign" style="padding-left: 0.5em;">
-   <div id="projectname">0.9.9 API documentation
+   <div id="projectname">1.0.0 API documentation
    </div>
   </td>
  </tr>
@@ -32,38 +30,22 @@
 </table>
 </div>
 <!-- end header part -->
-<!-- Generated by Doxygen 1.8.10 -->
+<!-- Generated by Doxygen 1.8.18 -->
 <script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
 var searchBox = new SearchBox("searchBox", "search",false,'Search');
+/* @license-end */
 </script>
-  <div id="navrow1" class="tabs">
-    <ul class="tablist">
-      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
-      <li><a href="modules.html"><span>Modules</span></a></li>
-      <li class="current"><a href="files.html"><span>Files</span></a></li>
-      <li>
-        <div id="MSearchBox" class="MSearchBoxInactive">
-        <span class="left">
-          <img id="MSearchSelect" src="search/mag_sel.png"
-               onmouseover="return searchBox.OnSearchSelectShow()"
-               onmouseout="return searchBox.OnSearchSelectHide()"
-               alt=""/>
-          <input type="text" id="MSearchField" value="Search" accesskey="S"
-               onfocus="searchBox.OnSearchFieldFocus(true)" 
-               onblur="searchBox.OnSearchFieldFocus(false)" 
-               onkeyup="searchBox.OnSearchFieldChange(event)"/>
-          </span><span class="right">
-            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
-          </span>
-        </div>
-      </li>
-    </ul>
-  </div>
-  <div id="navrow2" class="tabs2">
-    <ul class="tablist">
-      <li><a href="files.html"><span>File&#160;List</span></a></li>
-    </ul>
-  </div>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
 <!-- window showing the filter options -->
 <div id="MSearchSelectWindow"
      onmouseover="return searchBox.OnSearchSelectShow()"
@@ -80,44 +62,29 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 
 <div id="nav-path" class="navpath">
   <ul>
-<li class="navelem"><a class="el" href="dir_3a581ba30d25676e4b797b1f96d53b45.html">F:</a></li><li class="navelem"><a class="el" href="dir_9e5fe034a00e89334fd5186c3e7db156.html">G-Truc</a></li><li class="navelem"><a class="el" href="dir_d9496f0844b48bc7e53b5af8c99b9ab2.html">Source</a></li><li class="navelem"><a class="el" href="dir_a8bee7be44182a33f3820393ae0b105d.html">G-Truc</a></li><li class="navelem"><a class="el" href="dir_44e5e654415abd9ca6fdeaddaff8565e.html">glm</a></li><li class="navelem"><a class="el" href="dir_cef2d71d502cb69a9252bca2297d9549.html">glm</a></li><li class="navelem"><a class="el" href="dir_6b66465792d005310484819a0eb0b0d3.html">ext</a></li>  </ul>
+<li class="navelem"><a class="el" href="dir_885cc87fac2d91e269af0a5a959fa5f6.html">E:</a></li><li class="navelem"><a class="el" href="dir_63ed049134a778d525e06b63afc2c979.html">Github</a></li><li class="navelem"><a class="el" href="dir_c98a9ac98258ab9f831b188d66361a70.html">g-truc</a></li><li class="navelem"><a class="el" href="dir_50f12b6ceb23d7f6adfb377a1ae8b006.html">glm</a></li><li class="navelem"><a class="el" href="dir_fca33f1b5115d46f42c670590789c0d2.html">glm</a></li><li class="navelem"><a class="el" href="dir_382f4fd018b81be8753cb53c0a41a09a.html">detail</a></li>  </ul>
 </div>
 </div><!-- top -->
 <div class="header">
-  <div class="summary">
-<a href="#typedef-members">Typedefs</a>  </div>
   <div class="headertitle">
-<div class="title">matrix_double3x4_precision.hpp File Reference</div>  </div>
+<div class="title">type_vec2.hpp File Reference</div>  </div>
 </div><!--header-->
 <div class="contents">
 
-<p><a class="el" href="a00280.html">Core features</a>  
+<p><a class="el" href="a00889.html">Core features</a>  
 <a href="#details">More...</a></p>
 
 <p><a href="a00074_source.html">Go to the source code of this file.</a></p>
-<table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="typedef-members"></a>
-Typedefs</h2></td></tr>
-<tr class="memitem:ga6543eeeb64f48d79a0b96484308c50f0"><td class="memItemLeft" align="right" valign="top">typedef mat&lt; 3, 4, double, highp &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00284.html#ga6543eeeb64f48d79a0b96484308c50f0">highp_dmat3x4</a></td></tr>
-<tr class="memdesc:ga6543eeeb64f48d79a0b96484308c50f0"><td class="mdescLeft">&#160;</td><td class="mdescRight">3 columns of 4 components matrix of double-precision floating-point numbers using medium precision arithmetic in term of ULPs.  <a href="a00284.html#ga6543eeeb64f48d79a0b96484308c50f0">More...</a><br /></td></tr>
-<tr class="separator:ga6543eeeb64f48d79a0b96484308c50f0"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:ga93add35d2a44c5830978b827e8c295e8"><td class="memItemLeft" align="right" valign="top">typedef mat&lt; 3, 4, double, lowp &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00284.html#ga93add35d2a44c5830978b827e8c295e8">lowp_dmat3x4</a></td></tr>
-<tr class="memdesc:ga93add35d2a44c5830978b827e8c295e8"><td class="mdescLeft">&#160;</td><td class="mdescRight">3 columns of 4 components matrix of double-precision floating-point numbers using low precision arithmetic in term of ULPs.  <a href="a00284.html#ga93add35d2a44c5830978b827e8c295e8">More...</a><br /></td></tr>
-<tr class="separator:ga93add35d2a44c5830978b827e8c295e8"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:ga3a132bd05675c2e46556f67cf738600b"><td class="memItemLeft" align="right" valign="top">typedef mat&lt; 3, 4, double, mediump &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00284.html#ga3a132bd05675c2e46556f67cf738600b">mediump_dmat3x4</a></td></tr>
-<tr class="memdesc:ga3a132bd05675c2e46556f67cf738600b"><td class="mdescLeft">&#160;</td><td class="mdescRight">3 columns of 4 components matrix of double-precision floating-point numbers using medium precision arithmetic in term of ULPs.  <a href="a00284.html#ga3a132bd05675c2e46556f67cf738600b">More...</a><br /></td></tr>
-<tr class="separator:ga3a132bd05675c2e46556f67cf738600b"><td class="memSeparator" colspan="2">&#160;</td></tr>
-</table>
 <a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
-<div class="textblock"><p><a class="el" href="a00280.html">Core features</a> </p>
+<div class="textblock"><p><a class="el" href="a00889.html">Core features</a> </p>
 
-<p>Definition in file <a class="el" href="a00074_source.html">matrix_double3x4_precision.hpp</a>.</p>
+<p class="definition">Definition in file <a class="el" href="a00074_source.html">type_vec2.hpp</a>.</p>
 </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.10
+</a> 1.8.18
 </small></address>
 </body>
 </html>

+ 416 - 56
doc/api/a00074_source.html

@@ -1,19 +1,17 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://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.10"/>
-<title>0.9.9 API documentation: matrix_double3x4_precision.hpp Source File</title>
+<meta name="generator" content="Doxygen 1.8.18"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>1.0.0 API documentation: type_vec2.hpp Source File</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="search/search.css" rel="stylesheet" type="text/css"/>
 <script type="text/javascript" src="search/searchdata.js"></script>
 <script type="text/javascript" src="search/search.js"></script>
-<script type="text/javascript">
-  $(document).ready(function() { init_search(); });
-</script>
 <link href="doxygen.css" rel="stylesheet" type="text/css" />
 </head>
 <body>
@@ -24,7 +22,7 @@
  <tr style="height: 56px;">
   <td id="projectlogo"><img alt="Logo" src="logo-mini.png"/></td>
   <td id="projectalign" style="padding-left: 0.5em;">
-   <div id="projectname">0.9.9 API documentation
+   <div id="projectname">1.0.0 API documentation
    </div>
   </td>
  </tr>
@@ -32,38 +30,22 @@
 </table>
 </div>
 <!-- end header part -->
-<!-- Generated by Doxygen 1.8.10 -->
+<!-- Generated by Doxygen 1.8.18 -->
 <script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
 var searchBox = new SearchBox("searchBox", "search",false,'Search');
+/* @license-end */
 </script>
-  <div id="navrow1" class="tabs">
-    <ul class="tablist">
-      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
-      <li><a href="modules.html"><span>Modules</span></a></li>
-      <li class="current"><a href="files.html"><span>Files</span></a></li>
-      <li>
-        <div id="MSearchBox" class="MSearchBoxInactive">
-        <span class="left">
-          <img id="MSearchSelect" src="search/mag_sel.png"
-               onmouseover="return searchBox.OnSearchSelectShow()"
-               onmouseout="return searchBox.OnSearchSelectHide()"
-               alt=""/>
-          <input type="text" id="MSearchField" value="Search" accesskey="S"
-               onfocus="searchBox.OnSearchFieldFocus(true)" 
-               onblur="searchBox.OnSearchFieldFocus(false)" 
-               onkeyup="searchBox.OnSearchFieldChange(event)"/>
-          </span><span class="right">
-            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
-          </span>
-        </div>
-      </li>
-    </ul>
-  </div>
-  <div id="navrow2" class="tabs2">
-    <ul class="tablist">
-      <li><a href="files.html"><span>File&#160;List</span></a></li>
-    </ul>
-  </div>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
 <!-- window showing the filter options -->
 <div id="MSearchSelectWindow"
      onmouseover="return searchBox.OnSearchSelectShow()"
@@ -80,38 +62,416 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 
 <div id="nav-path" class="navpath">
   <ul>
-<li class="navelem"><a class="el" href="dir_3a581ba30d25676e4b797b1f96d53b45.html">F:</a></li><li class="navelem"><a class="el" href="dir_9e5fe034a00e89334fd5186c3e7db156.html">G-Truc</a></li><li class="navelem"><a class="el" href="dir_d9496f0844b48bc7e53b5af8c99b9ab2.html">Source</a></li><li class="navelem"><a class="el" href="dir_a8bee7be44182a33f3820393ae0b105d.html">G-Truc</a></li><li class="navelem"><a class="el" href="dir_44e5e654415abd9ca6fdeaddaff8565e.html">glm</a></li><li class="navelem"><a class="el" href="dir_cef2d71d502cb69a9252bca2297d9549.html">glm</a></li><li class="navelem"><a class="el" href="dir_6b66465792d005310484819a0eb0b0d3.html">ext</a></li>  </ul>
+<li class="navelem"><a class="el" href="dir_885cc87fac2d91e269af0a5a959fa5f6.html">E:</a></li><li class="navelem"><a class="el" href="dir_63ed049134a778d525e06b63afc2c979.html">Github</a></li><li class="navelem"><a class="el" href="dir_c98a9ac98258ab9f831b188d66361a70.html">g-truc</a></li><li class="navelem"><a class="el" href="dir_50f12b6ceb23d7f6adfb377a1ae8b006.html">glm</a></li><li class="navelem"><a class="el" href="dir_fca33f1b5115d46f42c670590789c0d2.html">glm</a></li><li class="navelem"><a class="el" href="dir_382f4fd018b81be8753cb53c0a41a09a.html">detail</a></li>  </ul>
 </div>
 </div><!-- top -->
 <div class="header">
   <div class="headertitle">
-<div class="title">matrix_double3x4_precision.hpp</div>  </div>
+<div class="title">type_vec2.hpp</div>  </div>
 </div><!--header-->
 <div class="contents">
-<a href="a00074.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span>&#160;</div>
+<a href="a00074.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span>&#160; </div>
 <div class="line"><a name="l00004"></a><span class="lineno">    4</span>&#160;<span class="preprocessor">#pragma once</span></div>
-<div class="line"><a name="l00005"></a><span class="lineno">    5</span>&#160;<span class="preprocessor">#include &quot;../detail/type_mat3x4.hpp&quot;</span></div>
-<div class="line"><a name="l00006"></a><span class="lineno">    6</span>&#160;</div>
-<div class="line"><a name="l00007"></a><span class="lineno">    7</span>&#160;<span class="keyword">namespace </span><a class="code" href="a00236.html">glm</a></div>
-<div class="line"><a name="l00008"></a><span class="lineno">    8</span>&#160;{</div>
-<div class="line"><a name="l00011"></a><span class="lineno">   11</span>&#160;</div>
-<div class="line"><a name="l00016"></a><span class="lineno"><a class="line" href="a00284.html#ga93add35d2a44c5830978b827e8c295e8">   16</a></span>&#160;        <span class="keyword">typedef</span> mat&lt;3, 4, double, lowp&gt;         <a class="code" href="a00284.html#ga93add35d2a44c5830978b827e8c295e8">lowp_dmat3x4</a>;</div>
-<div class="line"><a name="l00017"></a><span class="lineno">   17</span>&#160;</div>
-<div class="line"><a name="l00022"></a><span class="lineno"><a class="line" href="a00284.html#ga3a132bd05675c2e46556f67cf738600b">   22</a></span>&#160;        <span class="keyword">typedef</span> mat&lt;3, 4, double, mediump&gt;      <a class="code" href="a00284.html#ga3a132bd05675c2e46556f67cf738600b">mediump_dmat3x4</a>;</div>
-<div class="line"><a name="l00023"></a><span class="lineno">   23</span>&#160;</div>
-<div class="line"><a name="l00028"></a><span class="lineno"><a class="line" href="a00284.html#ga6543eeeb64f48d79a0b96484308c50f0">   28</a></span>&#160;        <span class="keyword">typedef</span> mat&lt;3, 4, double, highp&gt;        <a class="code" href="a00284.html#ga6543eeeb64f48d79a0b96484308c50f0">highp_dmat3x4</a>;</div>
-<div class="line"><a name="l00029"></a><span class="lineno">   29</span>&#160;</div>
-<div class="line"><a name="l00031"></a><span class="lineno">   31</span>&#160;}<span class="comment">//namespace glm</span></div>
-<div class="ttc" id="a00284_html_ga93add35d2a44c5830978b827e8c295e8"><div class="ttname"><a href="a00284.html#ga93add35d2a44c5830978b827e8c295e8">glm::lowp_dmat3x4</a></div><div class="ttdeci">mat&lt; 3, 4, double, lowp &gt; lowp_dmat3x4</div><div class="ttdoc">3 columns of 4 components matrix of double-precision floating-point numbers using low precision arith...</div><div class="ttdef"><b>Definition:</b> <a href="a00074_source.html#l00016">matrix_double3x4_precision.hpp:16</a></div></div>
-<div class="ttc" id="a00284_html_ga3a132bd05675c2e46556f67cf738600b"><div class="ttname"><a href="a00284.html#ga3a132bd05675c2e46556f67cf738600b">glm::mediump_dmat3x4</a></div><div class="ttdeci">mat&lt; 3, 4, double, mediump &gt; mediump_dmat3x4</div><div class="ttdoc">3 columns of 4 components matrix of double-precision floating-point numbers using medium precision ar...</div><div class="ttdef"><b>Definition:</b> <a href="a00074_source.html#l00022">matrix_double3x4_precision.hpp:22</a></div></div>
-<div class="ttc" id="a00284_html_ga6543eeeb64f48d79a0b96484308c50f0"><div class="ttname"><a href="a00284.html#ga6543eeeb64f48d79a0b96484308c50f0">glm::highp_dmat3x4</a></div><div class="ttdeci">mat&lt; 3, 4, double, highp &gt; highp_dmat3x4</div><div class="ttdoc">3 columns of 4 components matrix of double-precision floating-point numbers using medium precision ar...</div><div class="ttdef"><b>Definition:</b> <a href="a00074_source.html#l00028">matrix_double3x4_precision.hpp:28</a></div></div>
-<div class="ttc" id="a00236_html"><div class="ttname"><a href="a00236.html">glm</a></div><div class="ttdef"><b>Definition:</b> <a href="a00015_source.html#l00020">common.hpp:20</a></div></div>
+<div class="line"><a name="l00005"></a><span class="lineno">    5</span>&#160; </div>
+<div class="line"><a name="l00006"></a><span class="lineno">    6</span>&#160;<span class="preprocessor">#include &quot;qualifier.hpp&quot;</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno">    7</span>&#160;<span class="preprocessor">#if GLM_CONFIG_SWIZZLE == GLM_SWIZZLE_OPERATOR</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno">    8</span>&#160;<span class="preprocessor">#       include &quot;_swizzle.hpp&quot;</span></div>
+<div class="line"><a name="l00009"></a><span class="lineno">    9</span>&#160;<span class="preprocessor">#elif GLM_CONFIG_SWIZZLE == GLM_SWIZZLE_FUNCTION</span></div>
+<div class="line"><a name="l00010"></a><span class="lineno">   10</span>&#160;<span class="preprocessor">#       include &quot;_swizzle_func.hpp&quot;</span></div>
+<div class="line"><a name="l00011"></a><span class="lineno">   11</span>&#160;<span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l00012"></a><span class="lineno">   12</span>&#160;<span class="preprocessor">#include &lt;cstddef&gt;</span></div>
+<div class="line"><a name="l00013"></a><span class="lineno">   13</span>&#160; </div>
+<div class="line"><a name="l00014"></a><span class="lineno">   14</span>&#160;<span class="keyword">namespace </span>glm</div>
+<div class="line"><a name="l00015"></a><span class="lineno">   15</span>&#160;{</div>
+<div class="line"><a name="l00016"></a><span class="lineno">   16</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T, qualifier Q&gt;</div>
+<div class="line"><a name="l00017"></a><span class="lineno">   17</span>&#160;        <span class="keyword">struct </span>vec&lt;2, T, Q&gt;</div>
+<div class="line"><a name="l00018"></a><span class="lineno">   18</span>&#160;        {</div>
+<div class="line"><a name="l00019"></a><span class="lineno">   19</span>&#160;                <span class="comment">// -- Implementation detail --</span></div>
+<div class="line"><a name="l00020"></a><span class="lineno">   20</span>&#160; </div>
+<div class="line"><a name="l00021"></a><span class="lineno">   21</span>&#160;                <span class="keyword">typedef</span> T value_type;</div>
+<div class="line"><a name="l00022"></a><span class="lineno">   22</span>&#160;                <span class="keyword">typedef</span> vec&lt;2, T, Q&gt; type;</div>
+<div class="line"><a name="l00023"></a><span class="lineno">   23</span>&#160;                <span class="keyword">typedef</span> vec&lt;2, bool, Q&gt; bool_type;</div>
+<div class="line"><a name="l00024"></a><span class="lineno">   24</span>&#160; </div>
+<div class="line"><a name="l00025"></a><span class="lineno">   25</span>&#160;                <span class="comment">// -- Data --</span></div>
+<div class="line"><a name="l00026"></a><span class="lineno">   26</span>&#160; </div>
+<div class="line"><a name="l00027"></a><span class="lineno">   27</span>&#160;<span class="preprocessor">#               if GLM_SILENT_WARNINGS == GLM_ENABLE</span></div>
+<div class="line"><a name="l00028"></a><span class="lineno">   28</span>&#160;<span class="preprocessor">#                       if GLM_COMPILER &amp; GLM_COMPILER_GCC</span></div>
+<div class="line"><a name="l00029"></a><span class="lineno">   29</span>&#160;<span class="preprocessor">#                               pragma GCC diagnostic push</span></div>
+<div class="line"><a name="l00030"></a><span class="lineno">   30</span>&#160;<span class="preprocessor">#                               pragma GCC diagnostic ignored &quot;-Wpedantic&quot;</span></div>
+<div class="line"><a name="l00031"></a><span class="lineno">   31</span>&#160;<span class="preprocessor">#                       elif GLM_COMPILER &amp; GLM_COMPILER_CLANG</span></div>
+<div class="line"><a name="l00032"></a><span class="lineno">   32</span>&#160;<span class="preprocessor">#                               pragma clang diagnostic push</span></div>
+<div class="line"><a name="l00033"></a><span class="lineno">   33</span>&#160;<span class="preprocessor">#                               pragma clang diagnostic ignored &quot;-Wgnu-anonymous-struct&quot;</span></div>
+<div class="line"><a name="l00034"></a><span class="lineno">   34</span>&#160;<span class="preprocessor">#                               pragma clang diagnostic ignored &quot;-Wnested-anon-types&quot;</span></div>
+<div class="line"><a name="l00035"></a><span class="lineno">   35</span>&#160;<span class="preprocessor">#                       elif GLM_COMPILER &amp; GLM_COMPILER_VC</span></div>
+<div class="line"><a name="l00036"></a><span class="lineno">   36</span>&#160;<span class="preprocessor">#                               pragma warning(push)</span></div>
+<div class="line"><a name="l00037"></a><span class="lineno">   37</span>&#160;<span class="preprocessor">#                               pragma warning(disable: 4201)  // nonstandard extension used : nameless struct/union</span></div>
+<div class="line"><a name="l00038"></a><span class="lineno">   38</span>&#160;<span class="preprocessor">#                       endif</span></div>
+<div class="line"><a name="l00039"></a><span class="lineno">   39</span>&#160;<span class="preprocessor">#               endif</span></div>
+<div class="line"><a name="l00040"></a><span class="lineno">   40</span>&#160; </div>
+<div class="line"><a name="l00041"></a><span class="lineno">   41</span>&#160;<span class="preprocessor">#               if GLM_CONFIG_XYZW_ONLY</span></div>
+<div class="line"><a name="l00042"></a><span class="lineno">   42</span>&#160;                        T x, y;</div>
+<div class="line"><a name="l00043"></a><span class="lineno">   43</span>&#160;<span class="preprocessor">#                       if GLM_CONFIG_SWIZZLE == GLM_SWIZZLE_FUNCTION</span></div>
+<div class="line"><a name="l00044"></a><span class="lineno">   44</span>&#160;                        GLM_SWIZZLE_GEN_VEC_FROM_VEC2_COMP(T, Q, x, y)</div>
+<div class="line"><a name="l00045"></a><span class="lineno">   45</span>&#160;<span class="preprocessor">#                       endif//GLM_CONFIG_SWIZZLE</span></div>
+<div class="line"><a name="l00046"></a><span class="lineno">   46</span>&#160;<span class="preprocessor">#               elif GLM_CONFIG_ANONYMOUS_STRUCT == GLM_ENABLE</span></div>
+<div class="line"><a name="l00047"></a><span class="lineno">   47</span>&#160;                        <span class="keyword">union</span></div>
+<div class="line"><a name="l00048"></a><span class="lineno">   48</span>&#160;                        {</div>
+<div class="line"><a name="l00049"></a><span class="lineno">   49</span>&#160;                                <span class="keyword">struct</span>{ T x, y; };</div>
+<div class="line"><a name="l00050"></a><span class="lineno">   50</span>&#160;                                <span class="keyword">struct</span>{ T r, g; };</div>
+<div class="line"><a name="l00051"></a><span class="lineno">   51</span>&#160;                                <span class="keyword">struct</span>{ T s, t; };</div>
+<div class="line"><a name="l00052"></a><span class="lineno">   52</span>&#160; </div>
+<div class="line"><a name="l00053"></a><span class="lineno">   53</span>&#160;                                <span class="keyword">typename</span> detail::storage&lt;2, T, detail::is_aligned&lt;Q&gt;::value&gt;::type data;</div>
+<div class="line"><a name="l00054"></a><span class="lineno">   54</span>&#160; </div>
+<div class="line"><a name="l00055"></a><span class="lineno">   55</span>&#160;<span class="preprocessor">#                               if GLM_CONFIG_SWIZZLE == GLM_SWIZZLE_OPERATOR</span></div>
+<div class="line"><a name="l00056"></a><span class="lineno">   56</span>&#160;                                        GLM_SWIZZLE2_2_MEMBERS(T, Q, x, y)</div>
+<div class="line"><a name="l00057"></a><span class="lineno">   57</span>&#160;                                        GLM_SWIZZLE2_2_MEMBERS(T, Q, r, g)</div>
+<div class="line"><a name="l00058"></a><span class="lineno">   58</span>&#160;                                        GLM_SWIZZLE2_2_MEMBERS(T, Q, s, t)</div>
+<div class="line"><a name="l00059"></a><span class="lineno">   59</span>&#160;                                        GLM_SWIZZLE2_3_MEMBERS(T, Q, x, y)</div>
+<div class="line"><a name="l00060"></a><span class="lineno">   60</span>&#160;                                        GLM_SWIZZLE2_3_MEMBERS(T, Q, r, g)</div>
+<div class="line"><a name="l00061"></a><span class="lineno">   61</span>&#160;                                        GLM_SWIZZLE2_3_MEMBERS(T, Q, s, t)</div>
+<div class="line"><a name="l00062"></a><span class="lineno">   62</span>&#160;                                        GLM_SWIZZLE2_4_MEMBERS(T, Q, x, y)</div>
+<div class="line"><a name="l00063"></a><span class="lineno">   63</span>&#160;                                        GLM_SWIZZLE2_4_MEMBERS(T, Q, r, g)</div>
+<div class="line"><a name="l00064"></a><span class="lineno">   64</span>&#160;                                        GLM_SWIZZLE2_4_MEMBERS(T, Q, s, t)</div>
+<div class="line"><a name="l00065"></a><span class="lineno">   65</span>&#160;<span class="preprocessor">#                               endif</span></div>
+<div class="line"><a name="l00066"></a><span class="lineno">   66</span>&#160;                        };</div>
+<div class="line"><a name="l00067"></a><span class="lineno">   67</span>&#160;<span class="preprocessor">#               else</span></div>
+<div class="line"><a name="l00068"></a><span class="lineno">   68</span>&#160;                        <span class="keyword">union </span>{T x, r, s;};</div>
+<div class="line"><a name="l00069"></a><span class="lineno">   69</span>&#160;                        <span class="keyword">union </span>{T y, g, t;};</div>
+<div class="line"><a name="l00070"></a><span class="lineno">   70</span>&#160; </div>
+<div class="line"><a name="l00071"></a><span class="lineno">   71</span>&#160;<span class="preprocessor">#                       if GLM_CONFIG_SWIZZLE == GLM_SWIZZLE_FUNCTION</span></div>
+<div class="line"><a name="l00072"></a><span class="lineno">   72</span>&#160;                                GLM_SWIZZLE_GEN_VEC_FROM_VEC2(T, Q)</div>
+<div class="line"><a name="l00073"></a><span class="lineno">   73</span>&#160;<span class="preprocessor">#                       endif//GLM_CONFIG_SWIZZLE</span></div>
+<div class="line"><a name="l00074"></a><span class="lineno">   74</span>&#160;<span class="preprocessor">#               endif</span></div>
+<div class="line"><a name="l00075"></a><span class="lineno">   75</span>&#160; </div>
+<div class="line"><a name="l00076"></a><span class="lineno">   76</span>&#160;<span class="preprocessor">#               if GLM_SILENT_WARNINGS == GLM_ENABLE</span></div>
+<div class="line"><a name="l00077"></a><span class="lineno">   77</span>&#160;<span class="preprocessor">#                       if GLM_COMPILER &amp; GLM_COMPILER_CLANG</span></div>
+<div class="line"><a name="l00078"></a><span class="lineno">   78</span>&#160;<span class="preprocessor">#                               pragma clang diagnostic pop</span></div>
+<div class="line"><a name="l00079"></a><span class="lineno">   79</span>&#160;<span class="preprocessor">#                       elif GLM_COMPILER &amp; GLM_COMPILER_GCC</span></div>
+<div class="line"><a name="l00080"></a><span class="lineno">   80</span>&#160;<span class="preprocessor">#                               pragma GCC diagnostic pop</span></div>
+<div class="line"><a name="l00081"></a><span class="lineno">   81</span>&#160;<span class="preprocessor">#                       elif GLM_COMPILER &amp; GLM_COMPILER_VC</span></div>
+<div class="line"><a name="l00082"></a><span class="lineno">   82</span>&#160;<span class="preprocessor">#                               pragma warning(pop)</span></div>
+<div class="line"><a name="l00083"></a><span class="lineno">   83</span>&#160;<span class="preprocessor">#                       endif</span></div>
+<div class="line"><a name="l00084"></a><span class="lineno">   84</span>&#160;<span class="preprocessor">#               endif</span></div>
+<div class="line"><a name="l00085"></a><span class="lineno">   85</span>&#160; </div>
+<div class="line"><a name="l00086"></a><span class="lineno">   86</span>&#160;                <span class="comment">// -- Component accesses --</span></div>
+<div class="line"><a name="l00087"></a><span class="lineno">   87</span>&#160; </div>
+<div class="line"><a name="l00089"></a><span class="lineno">   89</span>&#160;                <span class="keyword">typedef</span> length_t length_type;</div>
+<div class="line"><a name="l00090"></a><span class="lineno">   90</span>&#160;                GLM_FUNC_DECL <span class="keyword">static</span> GLM_CONSTEXPR length_type <a class="code" href="a00853.html#gab703732449be6c7199369b3f9a91ed38">length</a>(){<span class="keywordflow">return</span> 2;}</div>
+<div class="line"><a name="l00091"></a><span class="lineno">   91</span>&#160; </div>
+<div class="line"><a name="l00092"></a><span class="lineno">   92</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR T&amp; operator[](length_type i);</div>
+<div class="line"><a name="l00093"></a><span class="lineno">   93</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR T <span class="keyword">const</span>&amp; operator[](length_type i) <span class="keyword">const</span>;</div>
+<div class="line"><a name="l00094"></a><span class="lineno">   94</span>&#160; </div>
+<div class="line"><a name="l00095"></a><span class="lineno">   95</span>&#160;                <span class="comment">// -- Implicit basic constructors --</span></div>
+<div class="line"><a name="l00096"></a><span class="lineno">   96</span>&#160; </div>
+<div class="line"><a name="l00097"></a><span class="lineno">   97</span>&#160;                GLM_DEFAULTED_DEFAULT_CTOR_DECL GLM_CONSTEXPR vec() GLM_DEFAULT_CTOR;</div>
+<div class="line"><a name="l00098"></a><span class="lineno">   98</span>&#160;                GLM_DEFAULTED_FUNC_DECL GLM_CONSTEXPR vec(vec const&amp; v) GLM_DEFAULT;</div>
+<div class="line"><a name="l00099"></a><span class="lineno">   99</span>&#160;                template&lt;qualifier P&gt;</div>
+<div class="line"><a name="l00100"></a><span class="lineno">  100</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR vec(vec&lt;2, T, P&gt; const&amp; v);</div>
+<div class="line"><a name="l00101"></a><span class="lineno">  101</span>&#160; </div>
+<div class="line"><a name="l00102"></a><span class="lineno">  102</span>&#160;                <span class="comment">// -- Explicit basic constructors --</span></div>
+<div class="line"><a name="l00103"></a><span class="lineno">  103</span>&#160; </div>
+<div class="line"><a name="l00104"></a><span class="lineno">  104</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR explicit vec(T scalar);</div>
+<div class="line"><a name="l00105"></a><span class="lineno">  105</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR vec(T x, T y);</div>
+<div class="line"><a name="l00106"></a><span class="lineno">  106</span>&#160; </div>
+<div class="line"><a name="l00107"></a><span class="lineno">  107</span>&#160;                <span class="comment">// -- Conversion constructors --</span></div>
+<div class="line"><a name="l00108"></a><span class="lineno">  108</span>&#160; </div>
+<div class="line"><a name="l00109"></a><span class="lineno">  109</span>&#160;                template&lt;typename U, qualifier P&gt;</div>
+<div class="line"><a name="l00110"></a><span class="lineno">  110</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR explicit vec(vec&lt;1, U, P&gt; const&amp; v);</div>
+<div class="line"><a name="l00111"></a><span class="lineno">  111</span>&#160; </div>
+<div class="line"><a name="l00113"></a><span class="lineno">  113</span>&#160;                template&lt;typename A, typename B&gt;</div>
+<div class="line"><a name="l00114"></a><span class="lineno">  114</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR vec(A x, B y);</div>
+<div class="line"><a name="l00115"></a><span class="lineno">  115</span>&#160;                template&lt;typename A, typename B&gt;</div>
+<div class="line"><a name="l00116"></a><span class="lineno">  116</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR vec(vec&lt;1, A, Q&gt; const&amp; x, B y);</div>
+<div class="line"><a name="l00117"></a><span class="lineno">  117</span>&#160;                template&lt;typename A, typename B&gt;</div>
+<div class="line"><a name="l00118"></a><span class="lineno">  118</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR vec(A x, vec&lt;1, B, Q&gt; const&amp; y);</div>
+<div class="line"><a name="l00119"></a><span class="lineno">  119</span>&#160;                template&lt;typename A, typename B&gt;</div>
+<div class="line"><a name="l00120"></a><span class="lineno">  120</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR vec(vec&lt;1, A, Q&gt; const&amp; x, vec&lt;1, B, Q&gt; const&amp; y);</div>
+<div class="line"><a name="l00121"></a><span class="lineno">  121</span>&#160; </div>
+<div class="line"><a name="l00122"></a><span class="lineno">  122</span>&#160;                <span class="comment">// -- Conversion vector constructors --</span></div>
+<div class="line"><a name="l00123"></a><span class="lineno">  123</span>&#160; </div>
+<div class="line"><a name="l00125"></a><span class="lineno">  125</span>&#160;                template&lt;typename U, qualifier P&gt;</div>
+<div class="line"><a name="l00126"></a><span class="lineno">  126</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR GLM_EXPLICIT vec(vec&lt;3, U, P&gt; const&amp; v);</div>
+<div class="line"><a name="l00128"></a><span class="lineno">  128</span>&#160;                template&lt;typename U, qualifier P&gt;</div>
+<div class="line"><a name="l00129"></a><span class="lineno">  129</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR GLM_EXPLICIT vec(vec&lt;4, U, P&gt; const&amp; v);</div>
+<div class="line"><a name="l00130"></a><span class="lineno">  130</span>&#160; </div>
+<div class="line"><a name="l00132"></a><span class="lineno">  132</span>&#160;                template&lt;typename U, qualifier P&gt;</div>
+<div class="line"><a name="l00133"></a><span class="lineno">  133</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR GLM_EXPLICIT vec(vec&lt;2, U, P&gt; const&amp; v);</div>
+<div class="line"><a name="l00134"></a><span class="lineno">  134</span>&#160; </div>
+<div class="line"><a name="l00135"></a><span class="lineno">  135</span>&#160;                <span class="comment">// -- Swizzle constructors --</span></div>
+<div class="line"><a name="l00136"></a><span class="lineno">  136</span>&#160;<span class="preprocessor">#               if GLM_CONFIG_SWIZZLE == GLM_SWIZZLE_OPERATOR</span></div>
+<div class="line"><a name="l00137"></a><span class="lineno">  137</span>&#160;                        <span class="keyword">template</span>&lt;<span class="keywordtype">int</span> E0, <span class="keywordtype">int</span> E1&gt;</div>
+<div class="line"><a name="l00138"></a><span class="lineno">  138</span>&#160;                        GLM_FUNC_DECL GLM_CONSTEXPR vec(detail::_swizzle&lt;2, T, Q, E0, E1,-1,-2&gt; <span class="keyword">const</span>&amp; that)</div>
+<div class="line"><a name="l00139"></a><span class="lineno">  139</span>&#160;                        {</div>
+<div class="line"><a name="l00140"></a><span class="lineno">  140</span>&#160;                                *<span class="keyword">this</span> = that();</div>
+<div class="line"><a name="l00141"></a><span class="lineno">  141</span>&#160;                        }</div>
+<div class="line"><a name="l00142"></a><span class="lineno">  142</span>&#160;<span class="preprocessor">#               endif//GLM_CONFIG_SWIZZLE == GLM_SWIZZLE_OPERATOR</span></div>
+<div class="line"><a name="l00143"></a><span class="lineno">  143</span>&#160; </div>
+<div class="line"><a name="l00144"></a><span class="lineno">  144</span>&#160;                <span class="comment">// -- Unary arithmetic operators --</span></div>
+<div class="line"><a name="l00145"></a><span class="lineno">  145</span>&#160; </div>
+<div class="line"><a name="l00146"></a><span class="lineno">  146</span>&#160;                GLM_DEFAULTED_FUNC_DECL GLM_CONSTEXPR vec&lt;2, T, Q&gt; &amp; operator=(vec <span class="keyword">const</span>&amp; v) GLM_DEFAULT;</div>
+<div class="line"><a name="l00147"></a><span class="lineno">  147</span>&#160; </div>
+<div class="line"><a name="l00148"></a><span class="lineno">  148</span>&#160;                <span class="keyword">template</span>&lt;<span class="keyword">typename</span> U&gt;</div>
+<div class="line"><a name="l00149"></a><span class="lineno">  149</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR vec&lt;2, T, Q&gt; &amp; operator=(vec&lt;2, U, Q&gt; <span class="keyword">const</span>&amp; v);</div>
+<div class="line"><a name="l00150"></a><span class="lineno">  150</span>&#160;                <span class="keyword">template</span>&lt;<span class="keyword">typename</span> U&gt;</div>
+<div class="line"><a name="l00151"></a><span class="lineno">  151</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR vec&lt;2, T, Q&gt; &amp; operator+=(U scalar);</div>
+<div class="line"><a name="l00152"></a><span class="lineno">  152</span>&#160;                <span class="keyword">template</span>&lt;<span class="keyword">typename</span> U&gt;</div>
+<div class="line"><a name="l00153"></a><span class="lineno">  153</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR vec&lt;2, T, Q&gt; &amp; operator+=(vec&lt;1, U, Q&gt; <span class="keyword">const</span>&amp; v);</div>
+<div class="line"><a name="l00154"></a><span class="lineno">  154</span>&#160;                <span class="keyword">template</span>&lt;<span class="keyword">typename</span> U&gt;</div>
+<div class="line"><a name="l00155"></a><span class="lineno">  155</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR vec&lt;2, T, Q&gt; &amp; operator+=(vec&lt;2, U, Q&gt; <span class="keyword">const</span>&amp; v);</div>
+<div class="line"><a name="l00156"></a><span class="lineno">  156</span>&#160;                <span class="keyword">template</span>&lt;<span class="keyword">typename</span> U&gt;</div>
+<div class="line"><a name="l00157"></a><span class="lineno">  157</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR vec&lt;2, T, Q&gt; &amp; operator-=(U scalar);</div>
+<div class="line"><a name="l00158"></a><span class="lineno">  158</span>&#160;                <span class="keyword">template</span>&lt;<span class="keyword">typename</span> U&gt;</div>
+<div class="line"><a name="l00159"></a><span class="lineno">  159</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR vec&lt;2, T, Q&gt; &amp; operator-=(vec&lt;1, U, Q&gt; <span class="keyword">const</span>&amp; v);</div>
+<div class="line"><a name="l00160"></a><span class="lineno">  160</span>&#160;                <span class="keyword">template</span>&lt;<span class="keyword">typename</span> U&gt;</div>
+<div class="line"><a name="l00161"></a><span class="lineno">  161</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR vec&lt;2, T, Q&gt; &amp; operator-=(vec&lt;2, U, Q&gt; <span class="keyword">const</span>&amp; v);</div>
+<div class="line"><a name="l00162"></a><span class="lineno">  162</span>&#160;                <span class="keyword">template</span>&lt;<span class="keyword">typename</span> U&gt;</div>
+<div class="line"><a name="l00163"></a><span class="lineno">  163</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR vec&lt;2, T, Q&gt; &amp; operator*=(U scalar);</div>
+<div class="line"><a name="l00164"></a><span class="lineno">  164</span>&#160;                <span class="keyword">template</span>&lt;<span class="keyword">typename</span> U&gt;</div>
+<div class="line"><a name="l00165"></a><span class="lineno">  165</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR vec&lt;2, T, Q&gt; &amp; operator*=(vec&lt;1, U, Q&gt; <span class="keyword">const</span>&amp; v);</div>
+<div class="line"><a name="l00166"></a><span class="lineno">  166</span>&#160;                <span class="keyword">template</span>&lt;<span class="keyword">typename</span> U&gt;</div>
+<div class="line"><a name="l00167"></a><span class="lineno">  167</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR vec&lt;2, T, Q&gt; &amp; operator*=(vec&lt;2, U, Q&gt; <span class="keyword">const</span>&amp; v);</div>
+<div class="line"><a name="l00168"></a><span class="lineno">  168</span>&#160;                <span class="keyword">template</span>&lt;<span class="keyword">typename</span> U&gt;</div>
+<div class="line"><a name="l00169"></a><span class="lineno">  169</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR vec&lt;2, T, Q&gt; &amp; operator/=(U scalar);</div>
+<div class="line"><a name="l00170"></a><span class="lineno">  170</span>&#160;                <span class="keyword">template</span>&lt;<span class="keyword">typename</span> U&gt;</div>
+<div class="line"><a name="l00171"></a><span class="lineno">  171</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR vec&lt;2, T, Q&gt; &amp; operator/=(vec&lt;1, U, Q&gt; <span class="keyword">const</span>&amp; v);</div>
+<div class="line"><a name="l00172"></a><span class="lineno">  172</span>&#160;                <span class="keyword">template</span>&lt;<span class="keyword">typename</span> U&gt;</div>
+<div class="line"><a name="l00173"></a><span class="lineno">  173</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR vec&lt;2, T, Q&gt; &amp; operator/=(vec&lt;2, U, Q&gt; <span class="keyword">const</span>&amp; v);</div>
+<div class="line"><a name="l00174"></a><span class="lineno">  174</span>&#160; </div>
+<div class="line"><a name="l00175"></a><span class="lineno">  175</span>&#160;                <span class="comment">// -- Increment and decrement operators --</span></div>
+<div class="line"><a name="l00176"></a><span class="lineno">  176</span>&#160; </div>
+<div class="line"><a name="l00177"></a><span class="lineno">  177</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR vec&lt;2, T, Q&gt; &amp; operator++();</div>
+<div class="line"><a name="l00178"></a><span class="lineno">  178</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR vec&lt;2, T, Q&gt; &amp; operator--();</div>
+<div class="line"><a name="l00179"></a><span class="lineno">  179</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR vec&lt;2, T, Q&gt; operator++(<span class="keywordtype">int</span>);</div>
+<div class="line"><a name="l00180"></a><span class="lineno">  180</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR vec&lt;2, T, Q&gt; operator--(<span class="keywordtype">int</span>);</div>
+<div class="line"><a name="l00181"></a><span class="lineno">  181</span>&#160; </div>
+<div class="line"><a name="l00182"></a><span class="lineno">  182</span>&#160;                <span class="comment">// -- Unary bit operators --</span></div>
+<div class="line"><a name="l00183"></a><span class="lineno">  183</span>&#160; </div>
+<div class="line"><a name="l00184"></a><span class="lineno">  184</span>&#160;                <span class="keyword">template</span>&lt;<span class="keyword">typename</span> U&gt;</div>
+<div class="line"><a name="l00185"></a><span class="lineno">  185</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR vec&lt;2, T, Q&gt; &amp; operator%=(U scalar);</div>
+<div class="line"><a name="l00186"></a><span class="lineno">  186</span>&#160;                <span class="keyword">template</span>&lt;<span class="keyword">typename</span> U&gt;</div>
+<div class="line"><a name="l00187"></a><span class="lineno">  187</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR vec&lt;2, T, Q&gt; &amp; operator%=(vec&lt;1, U, Q&gt; <span class="keyword">const</span>&amp; v);</div>
+<div class="line"><a name="l00188"></a><span class="lineno">  188</span>&#160;                <span class="keyword">template</span>&lt;<span class="keyword">typename</span> U&gt;</div>
+<div class="line"><a name="l00189"></a><span class="lineno">  189</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR vec&lt;2, T, Q&gt; &amp; operator%=(vec&lt;2, U, Q&gt; <span class="keyword">const</span>&amp; v);</div>
+<div class="line"><a name="l00190"></a><span class="lineno">  190</span>&#160;                <span class="keyword">template</span>&lt;<span class="keyword">typename</span> U&gt;</div>
+<div class="line"><a name="l00191"></a><span class="lineno">  191</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR vec&lt;2, T, Q&gt; &amp; operator&amp;=(U scalar);</div>
+<div class="line"><a name="l00192"></a><span class="lineno">  192</span>&#160;                <span class="keyword">template</span>&lt;<span class="keyword">typename</span> U&gt;</div>
+<div class="line"><a name="l00193"></a><span class="lineno">  193</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR vec&lt;2, T, Q&gt; &amp; operator&amp;=(vec&lt;1, U, Q&gt; <span class="keyword">const</span>&amp; v);</div>
+<div class="line"><a name="l00194"></a><span class="lineno">  194</span>&#160;                <span class="keyword">template</span>&lt;<span class="keyword">typename</span> U&gt;</div>
+<div class="line"><a name="l00195"></a><span class="lineno">  195</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR vec&lt;2, T, Q&gt; &amp; operator&amp;=(vec&lt;2, U, Q&gt; <span class="keyword">const</span>&amp; v);</div>
+<div class="line"><a name="l00196"></a><span class="lineno">  196</span>&#160;                <span class="keyword">template</span>&lt;<span class="keyword">typename</span> U&gt;</div>
+<div class="line"><a name="l00197"></a><span class="lineno">  197</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR vec&lt;2, T, Q&gt; &amp; operator|=(U scalar);</div>
+<div class="line"><a name="l00198"></a><span class="lineno">  198</span>&#160;                <span class="keyword">template</span>&lt;<span class="keyword">typename</span> U&gt;</div>
+<div class="line"><a name="l00199"></a><span class="lineno">  199</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR vec&lt;2, T, Q&gt; &amp; operator|=(vec&lt;1, U, Q&gt; <span class="keyword">const</span>&amp; v);</div>
+<div class="line"><a name="l00200"></a><span class="lineno">  200</span>&#160;                <span class="keyword">template</span>&lt;<span class="keyword">typename</span> U&gt;</div>
+<div class="line"><a name="l00201"></a><span class="lineno">  201</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR vec&lt;2, T, Q&gt; &amp; operator|=(vec&lt;2, U, Q&gt; <span class="keyword">const</span>&amp; v);</div>
+<div class="line"><a name="l00202"></a><span class="lineno">  202</span>&#160;                <span class="keyword">template</span>&lt;<span class="keyword">typename</span> U&gt;</div>
+<div class="line"><a name="l00203"></a><span class="lineno">  203</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR vec&lt;2, T, Q&gt; &amp; operator^=(U scalar);</div>
+<div class="line"><a name="l00204"></a><span class="lineno">  204</span>&#160;                <span class="keyword">template</span>&lt;<span class="keyword">typename</span> U&gt;</div>
+<div class="line"><a name="l00205"></a><span class="lineno">  205</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR vec&lt;2, T, Q&gt; &amp; operator^=(vec&lt;1, U, Q&gt; <span class="keyword">const</span>&amp; v);</div>
+<div class="line"><a name="l00206"></a><span class="lineno">  206</span>&#160;                <span class="keyword">template</span>&lt;<span class="keyword">typename</span> U&gt;</div>
+<div class="line"><a name="l00207"></a><span class="lineno">  207</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR vec&lt;2, T, Q&gt; &amp; operator^=(vec&lt;2, U, Q&gt; <span class="keyword">const</span>&amp; v);</div>
+<div class="line"><a name="l00208"></a><span class="lineno">  208</span>&#160;                <span class="keyword">template</span>&lt;<span class="keyword">typename</span> U&gt;</div>
+<div class="line"><a name="l00209"></a><span class="lineno">  209</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR vec&lt;2, T, Q&gt; &amp; operator&lt;&lt;=(U scalar);</div>
+<div class="line"><a name="l00210"></a><span class="lineno">  210</span>&#160;                <span class="keyword">template</span>&lt;<span class="keyword">typename</span> U&gt;</div>
+<div class="line"><a name="l00211"></a><span class="lineno">  211</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR vec&lt;2, T, Q&gt; &amp; operator&lt;&lt;=(vec&lt;1, U, Q&gt; <span class="keyword">const</span>&amp; v);</div>
+<div class="line"><a name="l00212"></a><span class="lineno">  212</span>&#160;                <span class="keyword">template</span>&lt;<span class="keyword">typename</span> U&gt;</div>
+<div class="line"><a name="l00213"></a><span class="lineno">  213</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR vec&lt;2, T, Q&gt; &amp; operator&lt;&lt;=(vec&lt;2, U, Q&gt; <span class="keyword">const</span>&amp; v);</div>
+<div class="line"><a name="l00214"></a><span class="lineno">  214</span>&#160;                <span class="keyword">template</span>&lt;<span class="keyword">typename</span> U&gt;</div>
+<div class="line"><a name="l00215"></a><span class="lineno">  215</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR vec&lt;2, T, Q&gt; &amp; operator&gt;&gt;=(U scalar);</div>
+<div class="line"><a name="l00216"></a><span class="lineno">  216</span>&#160;                <span class="keyword">template</span>&lt;<span class="keyword">typename</span> U&gt;</div>
+<div class="line"><a name="l00217"></a><span class="lineno">  217</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR vec&lt;2, T, Q&gt; &amp; operator&gt;&gt;=(vec&lt;1, U, Q&gt; <span class="keyword">const</span>&amp; v);</div>
+<div class="line"><a name="l00218"></a><span class="lineno">  218</span>&#160;                <span class="keyword">template</span>&lt;<span class="keyword">typename</span> U&gt;</div>
+<div class="line"><a name="l00219"></a><span class="lineno">  219</span>&#160;                GLM_FUNC_DECL GLM_CONSTEXPR vec&lt;2, T, Q&gt; &amp; operator&gt;&gt;=(vec&lt;2, U, Q&gt; <span class="keyword">const</span>&amp; v);</div>
+<div class="line"><a name="l00220"></a><span class="lineno">  220</span>&#160;        };</div>
+<div class="line"><a name="l00221"></a><span class="lineno">  221</span>&#160; </div>
+<div class="line"><a name="l00222"></a><span class="lineno">  222</span>&#160;        <span class="comment">// -- Unary operators --</span></div>
+<div class="line"><a name="l00223"></a><span class="lineno">  223</span>&#160; </div>
+<div class="line"><a name="l00224"></a><span class="lineno">  224</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T, qualifier Q&gt;</div>
+<div class="line"><a name="l00225"></a><span class="lineno">  225</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR vec&lt;2, T, Q&gt; operator+(vec&lt;2, T, Q&gt; <span class="keyword">const</span>&amp; v);</div>
+<div class="line"><a name="l00226"></a><span class="lineno">  226</span>&#160; </div>
+<div class="line"><a name="l00227"></a><span class="lineno">  227</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T, qualifier Q&gt;</div>
+<div class="line"><a name="l00228"></a><span class="lineno">  228</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR vec&lt;2, T, Q&gt; operator-(vec&lt;2, T, Q&gt; <span class="keyword">const</span>&amp; v);</div>
+<div class="line"><a name="l00229"></a><span class="lineno">  229</span>&#160; </div>
+<div class="line"><a name="l00230"></a><span class="lineno">  230</span>&#160;        <span class="comment">// -- Binary operators --</span></div>
+<div class="line"><a name="l00231"></a><span class="lineno">  231</span>&#160; </div>
+<div class="line"><a name="l00232"></a><span class="lineno">  232</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T, qualifier Q&gt;</div>
+<div class="line"><a name="l00233"></a><span class="lineno">  233</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR vec&lt;2, T, Q&gt; operator+(vec&lt;2, T, Q&gt; <span class="keyword">const</span>&amp; v, T scalar);</div>
+<div class="line"><a name="l00234"></a><span class="lineno">  234</span>&#160; </div>
+<div class="line"><a name="l00235"></a><span class="lineno">  235</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T, qualifier Q&gt;</div>
+<div class="line"><a name="l00236"></a><span class="lineno">  236</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR vec&lt;2, T, Q&gt; operator+(vec&lt;2, T, Q&gt; <span class="keyword">const</span>&amp; v1, vec&lt;1, T, Q&gt; <span class="keyword">const</span>&amp; v2);</div>
+<div class="line"><a name="l00237"></a><span class="lineno">  237</span>&#160; </div>
+<div class="line"><a name="l00238"></a><span class="lineno">  238</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T, qualifier Q&gt;</div>
+<div class="line"><a name="l00239"></a><span class="lineno">  239</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR vec&lt;2, T, Q&gt; operator+(T scalar, vec&lt;2, T, Q&gt; <span class="keyword">const</span>&amp; v);</div>
+<div class="line"><a name="l00240"></a><span class="lineno">  240</span>&#160; </div>
+<div class="line"><a name="l00241"></a><span class="lineno">  241</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T, qualifier Q&gt;</div>
+<div class="line"><a name="l00242"></a><span class="lineno">  242</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR vec&lt;2, T, Q&gt; operator+(vec&lt;1, T, Q&gt; <span class="keyword">const</span>&amp; v1, vec&lt;2, T, Q&gt; <span class="keyword">const</span>&amp; v2);</div>
+<div class="line"><a name="l00243"></a><span class="lineno">  243</span>&#160; </div>
+<div class="line"><a name="l00244"></a><span class="lineno">  244</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T, qualifier Q&gt;</div>
+<div class="line"><a name="l00245"></a><span class="lineno">  245</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR vec&lt;2, T, Q&gt; operator+(vec&lt;2, T, Q&gt; <span class="keyword">const</span>&amp; v1, vec&lt;2, T, Q&gt; <span class="keyword">const</span>&amp; v2);</div>
+<div class="line"><a name="l00246"></a><span class="lineno">  246</span>&#160; </div>
+<div class="line"><a name="l00247"></a><span class="lineno">  247</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T, qualifier Q&gt;</div>
+<div class="line"><a name="l00248"></a><span class="lineno">  248</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR vec&lt;2, T, Q&gt; operator-(vec&lt;2, T, Q&gt; <span class="keyword">const</span>&amp; v, T scalar);</div>
+<div class="line"><a name="l00249"></a><span class="lineno">  249</span>&#160; </div>
+<div class="line"><a name="l00250"></a><span class="lineno">  250</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T, qualifier Q&gt;</div>
+<div class="line"><a name="l00251"></a><span class="lineno">  251</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR vec&lt;2, T, Q&gt; operator-(vec&lt;2, T, Q&gt; <span class="keyword">const</span>&amp; v1, vec&lt;1, T, Q&gt; <span class="keyword">const</span>&amp; v2);</div>
+<div class="line"><a name="l00252"></a><span class="lineno">  252</span>&#160; </div>
+<div class="line"><a name="l00253"></a><span class="lineno">  253</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T, qualifier Q&gt;</div>
+<div class="line"><a name="l00254"></a><span class="lineno">  254</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR vec&lt;2, T, Q&gt; operator-(T scalar, vec&lt;2, T, Q&gt; <span class="keyword">const</span>&amp; v);</div>
+<div class="line"><a name="l00255"></a><span class="lineno">  255</span>&#160; </div>
+<div class="line"><a name="l00256"></a><span class="lineno">  256</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T, qualifier Q&gt;</div>
+<div class="line"><a name="l00257"></a><span class="lineno">  257</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR vec&lt;2, T, Q&gt; operator-(vec&lt;1, T, Q&gt; <span class="keyword">const</span>&amp; v1, vec&lt;2, T, Q&gt; <span class="keyword">const</span>&amp; v2);</div>
+<div class="line"><a name="l00258"></a><span class="lineno">  258</span>&#160; </div>
+<div class="line"><a name="l00259"></a><span class="lineno">  259</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T, qualifier Q&gt;</div>
+<div class="line"><a name="l00260"></a><span class="lineno">  260</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR vec&lt;2, T, Q&gt; operator-(vec&lt;2, T, Q&gt; <span class="keyword">const</span>&amp; v1, vec&lt;2, T, Q&gt; <span class="keyword">const</span>&amp; v2);</div>
+<div class="line"><a name="l00261"></a><span class="lineno">  261</span>&#160; </div>
+<div class="line"><a name="l00262"></a><span class="lineno">  262</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T, qualifier Q&gt;</div>
+<div class="line"><a name="l00263"></a><span class="lineno">  263</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR vec&lt;2, T, Q&gt; operator*(vec&lt;2, T, Q&gt; <span class="keyword">const</span>&amp; v, T scalar);</div>
+<div class="line"><a name="l00264"></a><span class="lineno">  264</span>&#160; </div>
+<div class="line"><a name="l00265"></a><span class="lineno">  265</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T, qualifier Q&gt;</div>
+<div class="line"><a name="l00266"></a><span class="lineno">  266</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR vec&lt;2, T, Q&gt; operator*(vec&lt;2, T, Q&gt; <span class="keyword">const</span>&amp; v1, vec&lt;1, T, Q&gt; <span class="keyword">const</span>&amp; v2);</div>
+<div class="line"><a name="l00267"></a><span class="lineno">  267</span>&#160; </div>
+<div class="line"><a name="l00268"></a><span class="lineno">  268</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T, qualifier Q&gt;</div>
+<div class="line"><a name="l00269"></a><span class="lineno">  269</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR vec&lt;2, T, Q&gt; operator*(T scalar, vec&lt;2, T, Q&gt; <span class="keyword">const</span>&amp; v);</div>
+<div class="line"><a name="l00270"></a><span class="lineno">  270</span>&#160; </div>
+<div class="line"><a name="l00271"></a><span class="lineno">  271</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T, qualifier Q&gt;</div>
+<div class="line"><a name="l00272"></a><span class="lineno">  272</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR vec&lt;2, T, Q&gt; operator*(vec&lt;1, T, Q&gt; <span class="keyword">const</span>&amp; v1, vec&lt;2, T, Q&gt; <span class="keyword">const</span>&amp; v2);</div>
+<div class="line"><a name="l00273"></a><span class="lineno">  273</span>&#160; </div>
+<div class="line"><a name="l00274"></a><span class="lineno">  274</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T, qualifier Q&gt;</div>
+<div class="line"><a name="l00275"></a><span class="lineno">  275</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR vec&lt;2, T, Q&gt; operator*(vec&lt;2, T, Q&gt; <span class="keyword">const</span>&amp; v1, vec&lt;2, T, Q&gt; <span class="keyword">const</span>&amp; v2);</div>
+<div class="line"><a name="l00276"></a><span class="lineno">  276</span>&#160; </div>
+<div class="line"><a name="l00277"></a><span class="lineno">  277</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T, qualifier Q&gt;</div>
+<div class="line"><a name="l00278"></a><span class="lineno">  278</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR vec&lt;2, T, Q&gt; operator/(vec&lt;2, T, Q&gt; <span class="keyword">const</span>&amp; v, T scalar);</div>
+<div class="line"><a name="l00279"></a><span class="lineno">  279</span>&#160; </div>
+<div class="line"><a name="l00280"></a><span class="lineno">  280</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T, qualifier Q&gt;</div>
+<div class="line"><a name="l00281"></a><span class="lineno">  281</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR vec&lt;2, T, Q&gt; operator/(vec&lt;2, T, Q&gt; <span class="keyword">const</span>&amp; v1, vec&lt;1, T, Q&gt; <span class="keyword">const</span>&amp; v2);</div>
+<div class="line"><a name="l00282"></a><span class="lineno">  282</span>&#160; </div>
+<div class="line"><a name="l00283"></a><span class="lineno">  283</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T, qualifier Q&gt;</div>
+<div class="line"><a name="l00284"></a><span class="lineno">  284</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR vec&lt;2, T, Q&gt; operator/(T scalar, vec&lt;2, T, Q&gt; <span class="keyword">const</span>&amp; v);</div>
+<div class="line"><a name="l00285"></a><span class="lineno">  285</span>&#160; </div>
+<div class="line"><a name="l00286"></a><span class="lineno">  286</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T, qualifier Q&gt;</div>
+<div class="line"><a name="l00287"></a><span class="lineno">  287</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR vec&lt;2, T, Q&gt; operator/(vec&lt;1, T, Q&gt; <span class="keyword">const</span>&amp; v1, vec&lt;2, T, Q&gt; <span class="keyword">const</span>&amp; v2);</div>
+<div class="line"><a name="l00288"></a><span class="lineno">  288</span>&#160; </div>
+<div class="line"><a name="l00289"></a><span class="lineno">  289</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T, qualifier Q&gt;</div>
+<div class="line"><a name="l00290"></a><span class="lineno">  290</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR vec&lt;2, T, Q&gt; operator/(vec&lt;2, T, Q&gt; <span class="keyword">const</span>&amp; v1, vec&lt;2, T, Q&gt; <span class="keyword">const</span>&amp; v2);</div>
+<div class="line"><a name="l00291"></a><span class="lineno">  291</span>&#160; </div>
+<div class="line"><a name="l00292"></a><span class="lineno">  292</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T, qualifier Q&gt;</div>
+<div class="line"><a name="l00293"></a><span class="lineno">  293</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR vec&lt;2, T, Q&gt; operator%(vec&lt;2, T, Q&gt; <span class="keyword">const</span>&amp; v, T scalar);</div>
+<div class="line"><a name="l00294"></a><span class="lineno">  294</span>&#160; </div>
+<div class="line"><a name="l00295"></a><span class="lineno">  295</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T, qualifier Q&gt;</div>
+<div class="line"><a name="l00296"></a><span class="lineno">  296</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR vec&lt;2, T, Q&gt; operator%(vec&lt;2, T, Q&gt; <span class="keyword">const</span>&amp; v1, vec&lt;1, T, Q&gt; <span class="keyword">const</span>&amp; v2);</div>
+<div class="line"><a name="l00297"></a><span class="lineno">  297</span>&#160; </div>
+<div class="line"><a name="l00298"></a><span class="lineno">  298</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T, qualifier Q&gt;</div>
+<div class="line"><a name="l00299"></a><span class="lineno">  299</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR vec&lt;2, T, Q&gt; operator%(T scalar, vec&lt;2, T, Q&gt; <span class="keyword">const</span>&amp; v);</div>
+<div class="line"><a name="l00300"></a><span class="lineno">  300</span>&#160; </div>
+<div class="line"><a name="l00301"></a><span class="lineno">  301</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T, qualifier Q&gt;</div>
+<div class="line"><a name="l00302"></a><span class="lineno">  302</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR vec&lt;2, T, Q&gt; operator%(vec&lt;1, T, Q&gt; <span class="keyword">const</span>&amp; v1, vec&lt;2, T, Q&gt; <span class="keyword">const</span>&amp; v2);</div>
+<div class="line"><a name="l00303"></a><span class="lineno">  303</span>&#160; </div>
+<div class="line"><a name="l00304"></a><span class="lineno">  304</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T, qualifier Q&gt;</div>
+<div class="line"><a name="l00305"></a><span class="lineno">  305</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR vec&lt;2, T, Q&gt; operator%(vec&lt;2, T, Q&gt; <span class="keyword">const</span>&amp; v1, vec&lt;2, T, Q&gt; <span class="keyword">const</span>&amp; v2);</div>
+<div class="line"><a name="l00306"></a><span class="lineno">  306</span>&#160; </div>
+<div class="line"><a name="l00307"></a><span class="lineno">  307</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T, qualifier Q&gt;</div>
+<div class="line"><a name="l00308"></a><span class="lineno">  308</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR vec&lt;2, T, Q&gt; operator&amp;(vec&lt;2, T, Q&gt; <span class="keyword">const</span>&amp; v, T scalar);</div>
+<div class="line"><a name="l00309"></a><span class="lineno">  309</span>&#160; </div>
+<div class="line"><a name="l00310"></a><span class="lineno">  310</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T, qualifier Q&gt;</div>
+<div class="line"><a name="l00311"></a><span class="lineno">  311</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR vec&lt;2, T, Q&gt; operator&amp;(vec&lt;2, T, Q&gt; <span class="keyword">const</span>&amp; v1, vec&lt;1, T, Q&gt; <span class="keyword">const</span>&amp; v2);</div>
+<div class="line"><a name="l00312"></a><span class="lineno">  312</span>&#160; </div>
+<div class="line"><a name="l00313"></a><span class="lineno">  313</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T, qualifier Q&gt;</div>
+<div class="line"><a name="l00314"></a><span class="lineno">  314</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR vec&lt;2, T, Q&gt; operator&amp;(T scalar, vec&lt;2, T, Q&gt; <span class="keyword">const</span>&amp; v);</div>
+<div class="line"><a name="l00315"></a><span class="lineno">  315</span>&#160; </div>
+<div class="line"><a name="l00316"></a><span class="lineno">  316</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T, qualifier Q&gt;</div>
+<div class="line"><a name="l00317"></a><span class="lineno">  317</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR vec&lt;2, T, Q&gt; operator&amp;(vec&lt;1, T, Q&gt; <span class="keyword">const</span>&amp; v1, vec&lt;2, T, Q&gt; <span class="keyword">const</span>&amp; v2);</div>
+<div class="line"><a name="l00318"></a><span class="lineno">  318</span>&#160; </div>
+<div class="line"><a name="l00319"></a><span class="lineno">  319</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T, qualifier Q&gt;</div>
+<div class="line"><a name="l00320"></a><span class="lineno">  320</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR vec&lt;2, T, Q&gt; operator&amp;(vec&lt;2, T, Q&gt; <span class="keyword">const</span>&amp; v1, vec&lt;2, T, Q&gt; <span class="keyword">const</span>&amp; v2);</div>
+<div class="line"><a name="l00321"></a><span class="lineno">  321</span>&#160; </div>
+<div class="line"><a name="l00322"></a><span class="lineno">  322</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T, qualifier Q&gt;</div>
+<div class="line"><a name="l00323"></a><span class="lineno">  323</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR vec&lt;2, T, Q&gt; operator|(vec&lt;2, T, Q&gt; <span class="keyword">const</span>&amp; v, T scalar);</div>
+<div class="line"><a name="l00324"></a><span class="lineno">  324</span>&#160; </div>
+<div class="line"><a name="l00325"></a><span class="lineno">  325</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T, qualifier Q&gt;</div>
+<div class="line"><a name="l00326"></a><span class="lineno">  326</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR vec&lt;2, T, Q&gt; operator|(vec&lt;2, T, Q&gt; <span class="keyword">const</span>&amp; v1, vec&lt;1, T, Q&gt; <span class="keyword">const</span>&amp; v2);</div>
+<div class="line"><a name="l00327"></a><span class="lineno">  327</span>&#160; </div>
+<div class="line"><a name="l00328"></a><span class="lineno">  328</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T, qualifier Q&gt;</div>
+<div class="line"><a name="l00329"></a><span class="lineno">  329</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR vec&lt;2, T, Q&gt; operator|(T scalar, vec&lt;2, T, Q&gt; <span class="keyword">const</span>&amp; v);</div>
+<div class="line"><a name="l00330"></a><span class="lineno">  330</span>&#160; </div>
+<div class="line"><a name="l00331"></a><span class="lineno">  331</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T, qualifier Q&gt;</div>
+<div class="line"><a name="l00332"></a><span class="lineno">  332</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR vec&lt;2, T, Q&gt; operator|(vec&lt;1, T, Q&gt; <span class="keyword">const</span>&amp; v1, vec&lt;2, T, Q&gt; <span class="keyword">const</span>&amp; v2);</div>
+<div class="line"><a name="l00333"></a><span class="lineno">  333</span>&#160; </div>
+<div class="line"><a name="l00334"></a><span class="lineno">  334</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T, qualifier Q&gt;</div>
+<div class="line"><a name="l00335"></a><span class="lineno">  335</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR vec&lt;2, T, Q&gt; operator|(vec&lt;2, T, Q&gt; <span class="keyword">const</span>&amp; v1, vec&lt;2, T, Q&gt; <span class="keyword">const</span>&amp; v2);</div>
+<div class="line"><a name="l00336"></a><span class="lineno">  336</span>&#160; </div>
+<div class="line"><a name="l00337"></a><span class="lineno">  337</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T, qualifier Q&gt;</div>
+<div class="line"><a name="l00338"></a><span class="lineno">  338</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR vec&lt;2, T, Q&gt; operator^(vec&lt;2, T, Q&gt; <span class="keyword">const</span>&amp; v, T scalar);</div>
+<div class="line"><a name="l00339"></a><span class="lineno">  339</span>&#160; </div>
+<div class="line"><a name="l00340"></a><span class="lineno">  340</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T, qualifier Q&gt;</div>
+<div class="line"><a name="l00341"></a><span class="lineno">  341</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR vec&lt;2, T, Q&gt; operator^(vec&lt;2, T, Q&gt; <span class="keyword">const</span>&amp; v1, vec&lt;1, T, Q&gt; <span class="keyword">const</span>&amp; v2);</div>
+<div class="line"><a name="l00342"></a><span class="lineno">  342</span>&#160; </div>
+<div class="line"><a name="l00343"></a><span class="lineno">  343</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T, qualifier Q&gt;</div>
+<div class="line"><a name="l00344"></a><span class="lineno">  344</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR vec&lt;2, T, Q&gt; operator^(T scalar, vec&lt;2, T, Q&gt; <span class="keyword">const</span>&amp; v);</div>
+<div class="line"><a name="l00345"></a><span class="lineno">  345</span>&#160; </div>
+<div class="line"><a name="l00346"></a><span class="lineno">  346</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T, qualifier Q&gt;</div>
+<div class="line"><a name="l00347"></a><span class="lineno">  347</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR vec&lt;2, T, Q&gt; operator^(vec&lt;1, T, Q&gt; <span class="keyword">const</span>&amp; v1, vec&lt;2, T, Q&gt; <span class="keyword">const</span>&amp; v2);</div>
+<div class="line"><a name="l00348"></a><span class="lineno">  348</span>&#160; </div>
+<div class="line"><a name="l00349"></a><span class="lineno">  349</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T, qualifier Q&gt;</div>
+<div class="line"><a name="l00350"></a><span class="lineno">  350</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR vec&lt;2, T, Q&gt; operator^(vec&lt;2, T, Q&gt; <span class="keyword">const</span>&amp; v1, vec&lt;2, T, Q&gt; <span class="keyword">const</span>&amp; v2);</div>
+<div class="line"><a name="l00351"></a><span class="lineno">  351</span>&#160; </div>
+<div class="line"><a name="l00352"></a><span class="lineno">  352</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T, qualifier Q&gt;</div>
+<div class="line"><a name="l00353"></a><span class="lineno">  353</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR vec&lt;2, T, Q&gt; operator&lt;&lt;(vec&lt;2, T, Q&gt; <span class="keyword">const</span>&amp; v, T scalar);</div>
+<div class="line"><a name="l00354"></a><span class="lineno">  354</span>&#160; </div>
+<div class="line"><a name="l00355"></a><span class="lineno">  355</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T, qualifier Q&gt;</div>
+<div class="line"><a name="l00356"></a><span class="lineno">  356</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR vec&lt;2, T, Q&gt; operator&lt;&lt;(vec&lt;2, T, Q&gt; <span class="keyword">const</span>&amp; v1, vec&lt;1, T, Q&gt; <span class="keyword">const</span>&amp; v2);</div>
+<div class="line"><a name="l00357"></a><span class="lineno">  357</span>&#160; </div>
+<div class="line"><a name="l00358"></a><span class="lineno">  358</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T, qualifier Q&gt;</div>
+<div class="line"><a name="l00359"></a><span class="lineno">  359</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR vec&lt;2, T, Q&gt; operator&lt;&lt;(T scalar, vec&lt;2, T, Q&gt; <span class="keyword">const</span>&amp; v);</div>
+<div class="line"><a name="l00360"></a><span class="lineno">  360</span>&#160; </div>
+<div class="line"><a name="l00361"></a><span class="lineno">  361</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T, qualifier Q&gt;</div>
+<div class="line"><a name="l00362"></a><span class="lineno">  362</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR vec&lt;2, T, Q&gt; operator&lt;&lt;(vec&lt;1, T, Q&gt; <span class="keyword">const</span>&amp; v1, vec&lt;2, T, Q&gt; <span class="keyword">const</span>&amp; v2);</div>
+<div class="line"><a name="l00363"></a><span class="lineno">  363</span>&#160; </div>
+<div class="line"><a name="l00364"></a><span class="lineno">  364</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T, qualifier Q&gt;</div>
+<div class="line"><a name="l00365"></a><span class="lineno">  365</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR vec&lt;2, T, Q&gt; operator&lt;&lt;(vec&lt;2, T, Q&gt; <span class="keyword">const</span>&amp; v1, vec&lt;2, T, Q&gt; <span class="keyword">const</span>&amp; v2);</div>
+<div class="line"><a name="l00366"></a><span class="lineno">  366</span>&#160; </div>
+<div class="line"><a name="l00367"></a><span class="lineno">  367</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T, qualifier Q&gt;</div>
+<div class="line"><a name="l00368"></a><span class="lineno">  368</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR vec&lt;2, T, Q&gt; operator&gt;&gt;(vec&lt;2, T, Q&gt; <span class="keyword">const</span>&amp; v, T scalar);</div>
+<div class="line"><a name="l00369"></a><span class="lineno">  369</span>&#160; </div>
+<div class="line"><a name="l00370"></a><span class="lineno">  370</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T, qualifier Q&gt;</div>
+<div class="line"><a name="l00371"></a><span class="lineno">  371</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR vec&lt;2, T, Q&gt; operator&gt;&gt;(vec&lt;2, T, Q&gt; <span class="keyword">const</span>&amp; v1, vec&lt;1, T, Q&gt; <span class="keyword">const</span>&amp; v2);</div>
+<div class="line"><a name="l00372"></a><span class="lineno">  372</span>&#160; </div>
+<div class="line"><a name="l00373"></a><span class="lineno">  373</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T, qualifier Q&gt;</div>
+<div class="line"><a name="l00374"></a><span class="lineno">  374</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR vec&lt;2, T, Q&gt; operator&gt;&gt;(T scalar, vec&lt;2, T, Q&gt; <span class="keyword">const</span>&amp; v);</div>
+<div class="line"><a name="l00375"></a><span class="lineno">  375</span>&#160; </div>
+<div class="line"><a name="l00376"></a><span class="lineno">  376</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T, qualifier Q&gt;</div>
+<div class="line"><a name="l00377"></a><span class="lineno">  377</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR vec&lt;2, T, Q&gt; operator&gt;&gt;(vec&lt;1, T, Q&gt; <span class="keyword">const</span>&amp; v1, vec&lt;2, T, Q&gt; <span class="keyword">const</span>&amp; v2);</div>
+<div class="line"><a name="l00378"></a><span class="lineno">  378</span>&#160; </div>
+<div class="line"><a name="l00379"></a><span class="lineno">  379</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T, qualifier Q&gt;</div>
+<div class="line"><a name="l00380"></a><span class="lineno">  380</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR vec&lt;2, T, Q&gt; operator&gt;&gt;(vec&lt;2, T, Q&gt; <span class="keyword">const</span>&amp; v1, vec&lt;2, T, Q&gt; <span class="keyword">const</span>&amp; v2);</div>
+<div class="line"><a name="l00381"></a><span class="lineno">  381</span>&#160; </div>
+<div class="line"><a name="l00382"></a><span class="lineno">  382</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T, qualifier Q&gt;</div>
+<div class="line"><a name="l00383"></a><span class="lineno">  383</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR vec&lt;2, T, Q&gt; operator~(vec&lt;2, T, Q&gt; <span class="keyword">const</span>&amp; v);</div>
+<div class="line"><a name="l00384"></a><span class="lineno">  384</span>&#160; </div>
+<div class="line"><a name="l00385"></a><span class="lineno">  385</span>&#160;        <span class="comment">// -- Boolean operators --</span></div>
+<div class="line"><a name="l00386"></a><span class="lineno">  386</span>&#160; </div>
+<div class="line"><a name="l00387"></a><span class="lineno">  387</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T, qualifier Q&gt;</div>
+<div class="line"><a name="l00388"></a><span class="lineno">  388</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR <span class="keywordtype">bool</span> operator==(vec&lt;2, T, Q&gt; <span class="keyword">const</span>&amp; v1, vec&lt;2, T, Q&gt; <span class="keyword">const</span>&amp; v2);</div>
+<div class="line"><a name="l00389"></a><span class="lineno">  389</span>&#160; </div>
+<div class="line"><a name="l00390"></a><span class="lineno">  390</span>&#160;        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T, qualifier Q&gt;</div>
+<div class="line"><a name="l00391"></a><span class="lineno">  391</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR <span class="keywordtype">bool</span> operator!=(vec&lt;2, T, Q&gt; <span class="keyword">const</span>&amp; v1, vec&lt;2, T, Q&gt; <span class="keyword">const</span>&amp; v2);</div>
+<div class="line"><a name="l00392"></a><span class="lineno">  392</span>&#160; </div>
+<div class="line"><a name="l00393"></a><span class="lineno">  393</span>&#160;        <span class="keyword">template</span>&lt;qualifier Q&gt;</div>
+<div class="line"><a name="l00394"></a><span class="lineno">  394</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR vec&lt;2, bool, Q&gt; operator&amp;&amp;(vec&lt;2, bool, Q&gt; <span class="keyword">const</span>&amp; v1, vec&lt;2, bool, Q&gt; <span class="keyword">const</span>&amp; v2);</div>
+<div class="line"><a name="l00395"></a><span class="lineno">  395</span>&#160; </div>
+<div class="line"><a name="l00396"></a><span class="lineno">  396</span>&#160;        <span class="keyword">template</span>&lt;qualifier Q&gt;</div>
+<div class="line"><a name="l00397"></a><span class="lineno">  397</span>&#160;        GLM_FUNC_DECL GLM_CONSTEXPR vec&lt;2, bool, Q&gt; operator||(vec&lt;2, bool, Q&gt; <span class="keyword">const</span>&amp; v1, vec&lt;2, bool, Q&gt; <span class="keyword">const</span>&amp; v2);</div>
+<div class="line"><a name="l00398"></a><span class="lineno">  398</span>&#160;}<span class="comment">//namespace glm</span></div>
+<div class="line"><a name="l00399"></a><span class="lineno">  399</span>&#160; </div>
+<div class="line"><a name="l00400"></a><span class="lineno">  400</span>&#160;<span class="preprocessor">#ifndef GLM_EXTERNAL_TEMPLATE</span></div>
+<div class="line"><a name="l00401"></a><span class="lineno">  401</span>&#160;<span class="preprocessor">#include &quot;type_vec2.inl&quot;</span></div>
+<div class="line"><a name="l00402"></a><span class="lineno">  402</span>&#160;<span class="preprocessor">#endif//GLM_EXTERNAL_TEMPLATE</span></div>
 </div><!-- fragment --></div><!-- contents -->
+<div class="ttc" id="aa00853_html_gab703732449be6c7199369b3f9a91ed38"><div class="ttname"><a href="a00853.html#gab703732449be6c7199369b3f9a91ed38">glm::length</a></div><div class="ttdeci">GLM_FUNC_DECL T length(qua&lt; T, Q &gt; const &amp;q)</div><div class="ttdoc">Returns the norm of a quaternions.</div></div>
 <!-- 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.10
+</a> 1.8.18
 </small></address>
 </body>
 </html>

Энэ ялгаанд хэт олон файл өөрчлөгдсөн тул зарим файлыг харуулаагүй болно