1 <!DOCTYPE html PUBLIC '-//W3C//DTD XHTML
1.0 Strict//EN'
2 'http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd'
>
3 <html xmlns='http://www.w3.org/
1999/xhtml' xml:lang='en' lang='en'
>
5 <meta http-equiv='Content-Type' content='text/html; charset=utf-
8'
/>
6 <title>Synopsis
</title>
7 <link href='reno.css' type='text/css' rel='stylesheet'
/>
14 <h1>QVM: Quaternions, Vectors, Matrices
</h1>
16 <!-- Copyright (c) 2008-2016 Emil Dotchevski and Reverge Studios, Inc. -->
17 <!-- Distributed under the Boost Software License, Version 1.0. (See accompanying -->
18 <!-- file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) -->
19 <div class=
"RenoIncludeDIV"><div class=
"RenoAutoDIV"><h3>Synopsis
</h3>
21 <p><span class=
"RenoEscape">#<!--<wiki>`#</wiki>--></span>include
<<span class=
"RenoLink"><a href=
"boost_qvm_all_hpp.html">boost/qvm/all.hpp
</a></span>></p>
24 namespace
<span class=
"RenoLink"><a href=
"qvm.html">qvm
</a></span>
26 <span class=
"RenoIncludeSPAN"> //*** Type traits ***
28 <span class=
"RenoIncludeSPAN"><span class=
"RenoIncludeSPAN">template
<class T
>
29 struct
<span class=
"RenoLink"><a href=
"is_quat.html">is_quat
</a></span>
31 static bool const value=/*unspecified*/;
34 <span class=
"RenoIncludeSPAN">template
<class Q
>
35 struct
<span class=
"RenoLink"><a href=
"quat_traits.html">quat_traits
</a></span>
37 /*main template members unspecified*/
41 User-defined (possibly partial) specializations:
44 struct
<span class=
"RenoLink"><a href=
"quat_traits.html">quat_traits
</a></span><Q
>
46 <span class=
"RenoIncludeSPAN"> typedef /*user-defined*/
<span class=
"RenoLink"><a href=
"quat_traits_Q_scalar_type.html">scalar_type
</a></span>;
</span>
48 <span class=
"RenoIncludeSPAN"> template
<int I
> static inline
<span class=
"RenoLink"><a href=
"quat_traits_Q_scalar_type.html">scalar_type
</a></span> <span class=
"RenoLink"><a href=
"quat_traits_Q_read_element.html">read_element
</a></span>( Quaternion const
& q );
</span>
49 <span class=
"RenoIncludeSPAN"> template
<int I
> static inline
<span class=
"RenoLink"><a href=
"quat_traits_Q_scalar_type.html">scalar_type
</a></span> & <span class=
"RenoLink"><a href=
"quat_traits_Q_write_element.html">write_element
</a></span>( Quaternion
& q );
</span>
53 <span class=
"RenoIncludeSPAN"><span class=
"RenoIncludeSPAN">template
<class T
>
54 struct
<span class=
"RenoLink"><a href=
"is_vec.html">is_vec
</a></span>
56 static bool const value=/*unspecified*/;
59 <span class=
"RenoIncludeSPAN">template
<class V
>
60 struct
<span class=
"RenoLink"><a href=
"vec_traits.html">vec_traits
</a></span>
62 /*main template members unspecified*/
66 User-defined (possibly partial) specializations:
69 struct
<span class=
"RenoLink"><a href=
"vec_traits.html">vec_traits
</a></span><V
>
71 <span class=
"RenoIncludeSPAN"> static int const
<span class=
"RenoLink"><a href=
"vec_traits_Vector_dim.html">dim
</a></span> = /*user-defined*/;
</span>
72 <span class=
"RenoIncludeSPAN"> typedef /*user-defined*/
<span class=
"RenoLink"><a href=
"vec_traits_V_scalar_type.html">scalar_type
</a></span>;
</span>
74 <span class=
"RenoIncludeSPAN"> template
<int I
> static inline
<span class=
"RenoLink"><a href=
"vec_traits_V_scalar_type.html">scalar_type
</a></span> <span class=
"RenoLink"><a href=
"vec_traits_V_read_element.html">read_element
</a></span>( Vector const
& v );
</span>
75 <span class=
"RenoIncludeSPAN"> template
<int I
> static inline
<span class=
"RenoLink"><a href=
"vec_traits_V_scalar_type.html">scalar_type
</a></span> & <span class=
"RenoLink"><a href=
"vec_traits_V_write_element.html">write_element
</a></span>( Vector
& v );
</span>
77 <span class=
"RenoIncludeSPAN"> static inline
<span class=
"RenoLink"><a href=
"vec_traits_V_scalar_type.html">scalar_type
</a></span> <span class=
"RenoLink"><a href=
"vec_traits_V_read_element_idx.html">read_element_idx
</a></span>( int i, Vector const
& v );
</span>
78 <span class=
"RenoIncludeSPAN"> static inline
<span class=
"RenoLink"><a href=
"vec_traits_V_scalar_type.html">scalar_type
</a></span> & <span class=
"RenoLink"><a href=
"vec_traits_V_write_element_idx.html">write_element_idx
</a></span>( int i, Vector
& v );
</span>
82 <span class=
"RenoIncludeSPAN"><span class=
"RenoIncludeSPAN">template
<class T
>
83 struct
<span class=
"RenoLink"><a href=
"is_mat.html">is_mat
</a></span>
85 static bool const value=/*unspecified*/;
88 <span class=
"RenoIncludeSPAN">template
<class M
>
89 struct
<span class=
"RenoLink"><a href=
"mat_traits.html">mat_traits
</a></span>
91 /*main template members unspecified*/
95 User-defined (possibly partial) specializations:
98 struct
<span class=
"RenoLink"><a href=
"mat_traits.html">mat_traits
</a></span><M
>
100 <span class=
"RenoIncludeSPAN"> static int const
<span class=
"RenoLink"><a href=
"mat_traits_Matrix_rows.html">rows
</a></span> = /*user-defined*/;
</span>
101 <span class=
"RenoIncludeSPAN"> static int const
<span class=
"RenoLink"><a href=
"mat_traits_Matrix_cols.html">cols
</a></span> = /*user-defined*/;
</span>
102 <span class=
"RenoIncludeSPAN"> typedef /*user-defined*/
<span class=
"RenoLink"><a href=
"mat_traits_M_scalar_type.html">scalar_type
</a></span>;
</span>
104 <span class=
"RenoIncludeSPAN"> template
<int R,int C
> static inline
<span class=
"RenoLink"><a href=
"mat_traits_M_scalar_type.html">scalar_type
</a></span> <span class=
"RenoLink"><a href=
"mat_traits_M_read_element.html">read_element
</a></span>( Matrix const
& m );
</span>
105 <span class=
"RenoIncludeSPAN"> template
<int R,int C
> static inline
<span class=
"RenoLink"><a href=
"mat_traits_M_scalar_type.html">scalar_type
</a></span> & <span class=
"RenoLink"><a href=
"mat_traits_M_write_element.html">write_element
</a></span>( Matrix
& m );
</span>
107 <span class=
"RenoIncludeSPAN"> static inline
<span class=
"RenoLink"><a href=
"mat_traits_M_scalar_type.html">scalar_type
</a></span> <span class=
"RenoLink"><a href=
"mat_traits_M_read_element_idx.html">read_element_idx
</a></span>( int r, int c, Matrix const
& m );
</span>
108 <span class=
"RenoIncludeSPAN"> static inline
<span class=
"RenoLink"><a href=
"mat_traits_M_scalar_type.html">scalar_type
</a></span> & <span class=
"RenoLink"><a href=
"mat_traits_M_write_element_idx.html">write_element_idx
</a></span>( int r, int c, Matrix
& m );
</span>
110 */
</span></span></span>
114 <span class=
"RenoIncludeSPAN"> //*** Quaternion, vector and matrix types ***
116 <span class=
"RenoIncludeSPAN"><span class=
"RenoIncludeSPAN">template
<class T
>
117 struct
<span class=
"RenoLink"><a href=
"quat.html">quat
</a></span>
121 template
<class R
>
125 <span class=
"RenoLink"><a href=
"assign_quat_quat_.html">assign
</a></span>(r,*this);
130 template
<class Quaternion
>
131 struct
<span class=
"RenoLink"><a href=
"quat_traits.html">quat_traits
</a></span>;
133 template
<class T
>
134 struct
<span class=
"RenoLink"><a href=
"quat_traits.html">quat_traits
</a></span>< <span class=
"RenoLink"><a href=
"quat.html">quat
</a></span><T
> >
136 typedef T scalar_type;
138 template
<int I
> static scalar_type
<span class=
"RenoLink"><a href=
"quat_traits_Q_read_element.html">read_element
</a></span>(
<span class=
"RenoLink"><a href=
"quat.html">quat
</a></span><T
> const
& x ) { return x.a[I]; }
139 template
<int I
> static scalar_type
& <span class=
"RenoLink"><a href=
"quat_traits_Q_write_element.html">write_element
</a></span>(
<span class=
"RenoLink"><a href=
"quat.html">quat
</a></span><T
> & x ) { return x.a[I]; }
142 <span class=
"RenoIncludeSPAN"><span class=
"RenoIncludeSPAN">template
<class T,int Dim
>
143 struct
<span class=
"RenoLink"><a href=
"vec.html">vec
</a></span>
147 template
<class R
>
151 <span class=
"RenoLink"><a href=
"assign_vec_vec_.html">assign
</a></span>(r,*this);
156 template
<class Vector
>
157 struct
<span class=
"RenoLink"><a href=
"vec_traits.html">vec_traits
</a></span>;
159 template
<class T,int Dim
>
160 struct
<span class=
"RenoLink"><a href=
"vec_traits.html">vec_traits
</a></span>< <span class=
"RenoLink"><a href=
"vec.html">vec
</a></span><T,Dim
> >
162 typedef T scalar_type;
163 static int const dim=Dim;
165 template
<int I
> static scalar_type
<span class=
"RenoLink"><a href=
"vec_traits_V_read_element.html">read_element
</a></span>(
<span class=
"RenoLink"><a href=
"vec.html">vec
</a></span><T,Dim
> const
& x ) { return x.a[I]; }
166 template
<int I
> static scalar_type
& <span class=
"RenoLink"><a href=
"vec_traits_V_write_element.html">write_element
</a></span>(
<span class=
"RenoLink"><a href=
"vec.html">vec
</a></span><T,Dim
> & x ) { return x.a[I]; }
168 static scalar_type
<span class=
"RenoLink"><a href=
"vec_traits_V_read_element_idx.html">read_element_idx
</a></span>( int i,
<span class=
"RenoLink"><a href=
"vec.html">vec
</a></span><T,Dim
> const
& x ) { return x.a[i]; }
169 static scalar_type
& <span class=
"RenoLink"><a href=
"vec_traits_V_write_element_idx.html">write_element_idx
</a></span>( int i,
<span class=
"RenoLink"><a href=
"vec.html">vec
</a></span><T,Dim
> & x ) { return x.a[i]; }
172 <span class=
"RenoIncludeSPAN"><span class=
"RenoIncludeSPAN">template
<class T,int Rows,int Cols
>
173 struct
<span class=
"RenoLink"><a href=
"mat.html">mat
</a></span>
177 template
<class R
>
181 <span class=
"RenoLink"><a href=
"assign_mat_mat_.html">assign
</a></span>(r,*this);
186 template
<class Matrix
>
187 struct
<span class=
"RenoLink"><a href=
"mat_traits.html">mat_traits
</a></span>;
189 template
<class T,int Rows,int Cols
>
190 struct
<span class=
"RenoLink"><a href=
"mat_traits.html">mat_traits
</a></span>< <span class=
"RenoLink"><a href=
"mat.html">mat
</a></span><T,Rows,Cols
> >
192 typedef T scalar_type;
193 static int const rows=Rows;
194 static int const cols=Cols;
196 template
<int Row,int Col
> static scalar_type
<span class=
"RenoLink"><a href=
"mat_traits_M_read_element.html">read_element
</a></span>(
<span class=
"RenoLink"><a href=
"mat.html">mat
</a></span><T,Rows,Cols
> const
& x ) { return x.a[Row][Col]; }
197 template
<int Row,int Col
> static scalar_type
& <span class=
"RenoLink"><a href=
"mat_traits_M_write_element.html">write_element
</a></span>(
<span class=
"RenoLink"><a href=
"mat.html">mat
</a></span><T,Rows,Cols
> & x ) { return x.a[Row][Col]; }
199 static scalar_type
<span class=
"RenoLink"><a href=
"mat_traits_M_read_element_idx.html">read_element_idx
</a></span>( int row, int col,
<span class=
"RenoLink"><a href=
"mat.html">mat
</a></span><T,Rows,Cols
> const
& x ) { return x.a[row][col]; }
200 static scalar_type
& <span class=
"RenoLink"><a href=
"mat_traits_M_write_element_idx.html">write_element_idx
</a></span>( int row, int col,
<span class=
"RenoLink"><a href=
"mat.html">mat
</a></span><T,Rows,Cols
> & x ) { return x.a[row][col]; }
201 };
</span></span></span>
205 <span class=
"RenoIncludeSPAN"> //*** Accessing quaternion elements ***
207 <span class=
"RenoIncludeSPAN">//Only
<span class=
"RenoLink"><a href=
"SFINAE_enable_if.html">enabled if
</a></span>:
208 //
<span class=
"RenoLink"><a href=
"is_quat.html">is_quat
</a></span><Q
>::value
210 template
<class Q
> -unspecified-return-type-
<span class=
"RenoLink"><a href=
"accessing_quaternion_elements.html">S
</a></span>( Q
& q );
211 template
<class Q
> -unspecified-return-type-
<span class=
"RenoLink"><a href=
"accessing_quaternion_elements.html">V
</a></span>( Q
& q );
212 template
<class Q
> -unspecified-return-type-
<span class=
"RenoLink"><a href=
"accessing_quaternion_elements.html">X
</a></span>( Q
& q );
213 template
<class Q
> -unspecified-return-type-
<span class=
"RenoLink"><a href=
"accessing_quaternion_elements.html">Y
</a></span>( Q
& q );
214 template
<class Q
> -unspecified-return-type-
<span class=
"RenoLink"><a href=
"accessing_quaternion_elements.html">Z
</a></span>( Q
& q );
</span></span>
218 <span class=
"RenoIncludeSPAN"> //*** Accessing vector elements ***
220 <span class=
"RenoIncludeSPAN"><span class=
"RenoIncludeSPAN">//Only
<span class=
"RenoLink"><a href=
"SFINAE_enable_if.html">enabled if
</a></span>:
221 //
<span class=
"RenoLink"><a href=
"is_vec.html">is_vec
</a></span><V
>::value
223 template
<int I,class V
> -unspecified-return-type-
<span class=
"RenoLink"><a href=
"accessing_vector_elements.html">A
</a></span>( V
& v );
224 template
<class V
> -unspecified-return-type- A0( V
& v );
225 template
<class V
> -unspecified-return-type- A1( V
& v );
227 template
<class V
> -unspecified-return-type- A9( V
& v );
229 template
<class V
> -unspecified-return-type- X( V
& v );
230 template
<class V
> -unspecified-return-type- Y( V
& v );
231 template
<class V
> -unspecified-return-type- Z( V
& v );
232 template
<class V
> -unspecified-return-type- W( V
& v );
</span></span></span>
236 <span class=
"RenoIncludeSPAN"> //*** Accessing vector elements by swizzling ***
238 <span class=
"RenoIncludeSPAN">//
2D
<span class=
"RenoLink"><a href=
"view_proxy.html">view proxies
</a></span>, only
<span class=
"RenoLink"><a href=
"SFINAE_enable_if.html">enabled if
</a></span>:
239 //
<span class=
"RenoLink"><a href=
"is_vec.html">is_vec
</a></span><V
>::value
240 template
<class V
> -unspecified-
2D-vector-type- XX( V
& v );
241 template
<class V
> -unspecified-
2D-vector-type- XY( V
& v );
242 template
<class V
> -unspecified-
2D-vector-type- XZ( V
& v );
243 template
<class V
> -unspecified-
2D-vector-type- XW( V
& v );
244 template
<class V
> -unspecified-
2D-vector-type- X0( V
& v );
245 template
<class V
> -unspecified-
2D-vector-type- X1( V
& v );
246 template
<class V
> -unspecified-
2D-vector-type- YX( V
& v );
247 template
<class V
> -unspecified-
2D-vector-type- YY( V
& v );
248 template
<class V
> -unspecified-
2D-vector-type- YZ( V
& v );
249 template
<class V
> -unspecified-
2D-vector-type- YW( V
& v );
250 template
<class V
> -unspecified-
2D-vector-type- Y0( V
& v );
251 template
<class V
> -unspecified-
2D-vector-type- Y1( V
& v );
252 template
<class V
> -unspecified-
2D-vector-type- ZX( V
& v );
253 template
<class V
> -unspecified-
2D-vector-type- ZY( V
& v );
254 template
<class V
> -unspecified-
2D-vector-type- ZZ( V
& v );
255 template
<class V
> -unspecified-
2D-vector-type- ZW( V
& v );
256 template
<class V
> -unspecified-
2D-vector-type- Z0( V
& v );
257 template
<class V
> -unspecified-
2D-vector-type- Z1( V
& v );
258 template
<class V
> -unspecified-
2D-vector-type- WX( V
& v );
259 template
<class V
> -unspecified-
2D-vector-type- WY( V
& v );
260 template
<class V
> -unspecified-
2D-vector-type- WZ( V
& v );
261 template
<class V
> -unspecified-
2D-vector-type- WW( V
& v );
262 template
<class V
> -unspecified-
2D-vector-type- W0( V
& v );
263 template
<class V
> -unspecified-
2D-vector-type- W1( V
& v );
265 -unspecified-
2D-vector-type- _00();
266 -unspecified-
2D-vector-type- _01();
267 -unspecified-
2D-vector-type- _10();
268 -unspecified-
2D-vector-type- _11();
270 //
3D
<span class=
"RenoLink"><a href=
"view_proxy.html">view proxies
</a></span>, only
<span class=
"RenoLink"><a href=
"SFINAE_enable_if.html">enabled if
</a></span>:
271 //
<span class=
"RenoLink"><a href=
"is_vec.html">is_vec
</a></span><V
>::value
272 template
<class V
> -unspecified-
3D-vector-type- XXX( V
& v );
274 template
<class V
> -unspecified-
3D-vector-type- XXW( V
& v );
275 template
<class V
> -unspecified-
3D-vector-type- XX0( V
& v );
276 template
<class V
> -unspecified-
3D-vector-type- XX1( V
& v );
277 template
<class V
> -unspecified-
3D-vector-type- XYX( V
& v );
279 template
<class V
> -unspecified-
3D-vector-type- XY1( V
& v );
281 template
<class V
> -unspecified-
3D-vector-type- WW1( V
& v );
283 -unspecified-
3D-vector-type- _000();
284 -unspecified-
3D-vector-type- _001();
285 -unspecified-
3D-vector-type- _010();
287 -unspecified-
3D-vector-type- _111();
289 //
4D
<span class=
"RenoLink"><a href=
"view_proxy.html">view proxies
</a></span>, only
<span class=
"RenoLink"><a href=
"SFINAE_enable_if.html">enabled if
</a></span>:
290 //
<span class=
"RenoLink"><a href=
"is_vec.html">is_vec
</a></span><V
>::value
291 template
<class V
> -unspecified-
4D-vector-type- XXXX( V
& v );
293 template
<class V
> -unspecified-
4D-vector-type- XXXW( V
& v );
294 template
<class V
> -unspecified-
4D-vector-type- XXX0( V
& v );
295 template
<class V
> -unspecified-
4D-vector-type- XXX1( V
& v );
296 template
<class V
> -unspecified-
4D-vector-type- XXYX( V
& v );
298 template
<class V
> -unspecified-
4D-vector-type- XXY1( V
& v );
300 template
<class V
> -unspecified-
4D-vector-type- WWW1( V
& v );
302 -unspecified-
4D-vector-type- _0000();
303 -unspecified-
4D-vector-type- _0001();
304 -unspecified-
4D-vector-type- _0010();
306 -unspecified-
4D-vector-type- _1111();
</span> </span>
310 <span class=
"RenoIncludeSPAN"> //*** Indexing vector elements ***
312 <span class=
"RenoIncludeSPAN"><span class=
"RenoIncludeSPAN">//Only
<span class=
"RenoLink"><a href=
"SFINAE_enable_if.html">enabled if
</a></span>:
313 //
<span class=
"RenoLink"><a href=
"is_vec.html">is_vec
</a></span><A
>::value
314 template
<class A
>
315 typename
<span class=
"RenoLink"><a href=
"vec_traits.html">vec_traits
</a></span><A
>::
<span class=
"RenoLink"><a href=
"vec_traits_V_scalar_type.html">scalar_type
</a></span>
316 <span class=
"RenoLink"><a href=
"vec_index_read.html">vec_index_read
</a></span>( A const
& a, int i );
</span>
318 <span class=
"RenoIncludeSPAN">//Only
<span class=
"RenoLink"><a href=
"SFINAE_enable_if.html">enabled if
</a></span>:
319 //
<span class=
"RenoLink"><a href=
"is_vec.html">is_vec
</a></span><A
>::value
320 template
<class A
>
321 typename
<span class=
"RenoLink"><a href=
"vec_traits.html">vec_traits
</a></span><A
>::
<span class=
"RenoLink"><a href=
"vec_traits_V_scalar_type.html">scalar_type
</a></span> &
322 <span class=
"RenoLink"><a href=
"vec_index_write.html">vec_index_write
</a></span>( A
& a, int i );
</span></span></span>
326 <span class=
"RenoIncludeSPAN"> //*** Accessing matrix elements ***
328 <span class=
"RenoIncludeSPAN">//Only
<span class=
"RenoLink"><a href=
"SFINAE_enable_if.html">enabled if
</a></span>:
329 //
<span class=
"RenoLink"><a href=
"is_quat.html">is_quat
</a></span><Q
>::value
331 template
<int R,int C,class M
> -unspecified-return-type-
<span class=
"RenoLink"><a href=
"accessing_matrix_elements.html">A
</a></span>( M
& m );
333 template
<class M
> -unspecified-return-type- A00( M
& m );
334 template
<class M
> -unspecified-return-type- A01( M
& m );
336 template
<class M
> -unspecified-return-type- A09( M
& m );
337 template
<class M
> -unspecified-return-type- A10( M
& m );
339 template
<class M
> -unspecified-return-type- A99( M
& m );
</span> </span>
343 <span class=
"RenoIncludeSPAN"> //*** Indexing matrix elements ***
345 <span class=
"RenoIncludeSPAN"><span class=
"RenoIncludeSPAN">//Only
<span class=
"RenoLink"><a href=
"SFINAE_enable_if.html">enabled if
</a></span>:
346 //
<span class=
"RenoLink"><a href=
"is_mat.html">is_mat
</a></span><A
>::value
347 template
<class A
>
348 typename
<span class=
"RenoLink"><a href=
"mat_traits.html">mat_traits
</a></span><A
>::
<span class=
"RenoLink"><a href=
"mat_traits_M_scalar_type.html">scalar_type
</a></span>
349 <span class=
"RenoLink"><a href=
"mat_index_read.html">mat_index_read
</a></span>( A const
& a, int r, int c );
</span>
351 <span class=
"RenoIncludeSPAN">//Only
<span class=
"RenoLink"><a href=
"SFINAE_enable_if.html">enabled if
</a></span>:
352 //
<span class=
"RenoLink"><a href=
"is_mat.html">is_mat
</a></span><A
>::value
353 template
<class A
>
354 typename
<span class=
"RenoLink"><a href=
"mat_traits.html">mat_traits
</a></span><A
>::
<span class=
"RenoLink"><a href=
"mat_traits_M_scalar_type.html">scalar_type
</a></span> &
355 <span class=
"RenoLink"><a href=
"mat_index_write.html">mat_index_write
</a></span>( A
& a, int r, int c );
</span></span></span>
359 <span class=
"RenoIncludeSPAN"> //*** Quaternion operations ***
361 <span class=
"RenoIncludeSPAN"><span class=
"RenoIncludeSPAN">//Only
<span class=
"RenoLink"><a href=
"SFINAE_enable_if.html">enabled if
</a></span>:
362 //
<span class=
"RenoLink"><a href=
"is_quat.html">is_quat
</a></span><A
>::value
&& <span class=
"RenoLink"><a href=
"is_quat.html">is_quat
</a></span><B
>::value
363 template
<class A,class B
>
364 A
& <span class=
"RenoLink"><a href=
"assign_quat_quat_.html">assign
</a></span>( A
& a, B const
& b );
</span>
366 <span class=
"RenoIncludeSPAN">//Only
<span class=
"RenoLink"><a href=
"SFINAE_enable_if.html">enabled if
</a></span>:
367 //
<span class=
"RenoLink"><a href=
"is_quat.html">is_quat
</a></span><R
>::value
&& <span class=
"RenoLink"><a href=
"is_quat.html">is_quat
</a></span><A
>::value
368 template
<class R,class A
>
369 R
<span class=
"RenoLink"><a href=
"convert_to_quat_.html">convert_to
</a></span>( A const
& a );
371 //Only
<span class=
"RenoLink"><a href=
"SFINAE_enable_if.html">enabled if
</a></span>:
372 //
<span class=
"RenoLink"><a href=
"is_quat.html">is_quat
</a></span><R
>::value
&& <span class=
"RenoLink"><a href=
"is_mat.html">is_mat
</a></span><A
>::value
&&
373 //
<span class=
"RenoLink"><a href=
"mat_traits.html">mat_traits
</a></span><A
>::
<span class=
"RenoLink"><a href=
"mat_traits_Matrix_rows.html">rows
</a></span>==
3 && <span class=
"RenoLink"><a href=
"mat_traits.html">mat_traits
</a></span><A
>::
<span class=
"RenoLink"><a href=
"mat_traits_Matrix_cols.html">cols
</a></span>==
3
374 template
<class R,class A
>
375 R
<span class=
"RenoLink"><a href=
"convert_to_quat_.html">convert_to
</a></span>( A const
& m );
</span>
377 <span class=
"RenoIncludeSPAN">//Only
<span class=
"RenoLink"><a href=
"SFINAE_enable_if.html">enabled if
</a></span>:
378 //
<span class=
"RenoLink"><a href=
"is_quat.html">is_quat
</a></span><A
>::value
&& <span class=
"RenoLink"><a href=
"is_quat.html">is_quat
</a></span><B
>::value
379 template
<class A,class B
>
380 A
& <span class=
"RenoLink"><a href=
"operator_sub_eq_quat_quat_.html">operator-=
</a></span>( A
& a, B const
& b );
</span>
382 <span class=
"RenoIncludeSPAN">//Only
<span class=
"RenoLink"><a href=
"SFINAE_enable_if.html">enabled if
</a></span>:
<span class=
"RenoLink"><a href=
"is_quat.html">is_quat
</a></span><A
>::value
383 template
<class A
>
384 typename
<span class=
"RenoLink"><a href=
"deduce_quat.html">deduce_quat
</a></span><A
>::type
385 <span class=
"RenoLink"><a href=
"operator_minus_quat_.html">operator-
</a></span>( A const
& a );
</span>
387 <span class=
"RenoIncludeSPAN">//Only
<span class=
"RenoLink"><a href=
"SFINAE_enable_if.html">enabled if
</a></span>:
388 //
<span class=
"RenoLink"><a href=
"is_quat.html">is_quat
</a></span><A
>::value
&& <span class=
"RenoLink"><a href=
"is_quat.html">is_quat
</a></span><B
>::value
&&
389 template
<class A,class B
>
390 typename
<span class=
"RenoLink"><a href=
"deduce_quat2.html">deduce_quat2
</a></span><A,B
>::type
391 <span class=
"RenoLink"><a href=
"operator_minus_quat_quat_.html">operator-
</a></span>( A const
& a, B const
& b );
</span>
393 <span class=
"RenoIncludeSPAN">//Only
<span class=
"RenoLink"><a href=
"SFINAE_enable_if.html">enabled if
</a></span>:
394 //
<span class=
"RenoLink"><a href=
"is_quat.html">is_quat
</a></span><A
>::value
&& <span class=
"RenoLink"><a href=
"is_quat.html">is_quat
</a></span><B
>::value
395 template
<class A,class B
>
396 A
& <span class=
"RenoLink"><a href=
"operator_add_quat_quat_.html">operator+=
</a></span>( A
& a, B const
& b );
</span>
398 <span class=
"RenoIncludeSPAN">//Only
<span class=
"RenoLink"><a href=
"SFINAE_enable_if.html">enabled if
</a></span>:
399 //
<span class=
"RenoLink"><a href=
"is_quat.html">is_quat
</a></span><A
>::value
&& <span class=
"RenoLink"><a href=
"is_quat.html">is_quat
</a></span><B
>::value
&&
400 template
<class A,class B
>
401 typename
<span class=
"RenoLink"><a href=
"deduce_quat2.html">deduce_quat2
</a></span><A,B
>::type
402 <span class=
"RenoLink"><a href=
"operator_plus_quat_quat_.html">operator+
</a></span>( A const
& a, B const
& b );
</span>
404 <span class=
"RenoIncludeSPAN">//Only
<span class=
"RenoLink"><a href=
"SFINAE_enable_if.html">enabled if
</a></span>:
<span class=
"RenoLink"><a href=
"is_quat.html">is_quat
</a></span><A
>::value
&& <span class=
"RenoLink"><a href=
"is_quat.html">is_quat
</a></span><B
>::value
405 template
<class A,class B
>
406 A
& <span class=
"RenoLink"><a href=
"operator_div_eq_quat_scalar_.html">operator/=
</a></span>( A
& a, B b );
</span>
408 <span class=
"RenoIncludeSPAN">//Only
<span class=
"RenoLink"><a href=
"SFINAE_enable_if.html">enabled if
</a></span>:
<span class=
"RenoLink"><a href=
"is_quat.html">is_quat
</a></span><A
>::value
&& <span class=
"RenoLink"><a href=
"is_quat.html">is_quat
</a></span><B
>::value
409 template
<class A,class B
>
410 typename
<span class=
"RenoLink"><a href=
"deduce_quat.html">deduce_quat
</a></span><A
>::type
411 <span class=
"RenoLink"><a href=
"operator_over_quat_scalar_.html">operator/
</a></span>( A const
& a, B b );
</span>
413 <span class=
"RenoIncludeSPAN">//Only
<span class=
"RenoLink"><a href=
"SFINAE_enable_if.html">enabled if
</a></span>:
414 //
<span class=
"RenoLink"><a href=
"is_quat.html">is_quat
</a></span><A
>::value
&& <span class=
"RenoLink"><a href=
"is_quat.html">is_quat
</a></span><B
>::value
415 template
<class A,class B
>
416 A
& <span class=
"RenoLink"><a href=
"operator_mul_eq_quat_quat_.html">operator*=
</a></span>( A
& a, B const
& b );
</span>
418 <span class=
"RenoIncludeSPAN">//Only
<span class=
"RenoLink"><a href=
"SFINAE_enable_if.html">enabled if
</a></span>:
<span class=
"RenoLink"><a href=
"is_quat.html">is_quat
</a></span><A
>::value
&& <span class=
"RenoLink"><a href=
"is_quat.html">is_quat
</a></span><B
>::value
419 template
<class A,class B
>
420 A
& <span class=
"RenoLink"><a href=
"operator_mul_eq_quat_scalar_.html">operator*=
</a></span>( A
& a, B b );
</span>
422 <span class=
"RenoIncludeSPAN">//Only
<span class=
"RenoLink"><a href=
"SFINAE_enable_if.html">enabled if
</a></span>:
423 //
<span class=
"RenoLink"><a href=
"is_quat.html">is_quat
</a></span><A
>::value
&& <span class=
"RenoLink"><a href=
"is_quat.html">is_quat
</a></span><B
>::value
424 template
<class A,class B
>
425 typename
<span class=
"RenoLink"><a href=
"deduce_quat2.html">deduce_quat2
</a></span><A,B
>::type
426 <span class=
"RenoLink"><a href=
"operator_times_quat_quat_.html">operator*
</a></span>( A const
& a, B const
& b );
</span>
428 <span class=
"RenoIncludeSPAN">//Only
<span class=
"RenoLink"><a href=
"SFINAE_enable_if.html">enabled if
</a></span>:
<span class=
"RenoLink"><a href=
"is_quat.html">is_quat
</a></span><A
>::value
&& <span class=
"RenoLink"><a href=
"is_quat.html">is_quat
</a></span><B
>::value
429 template
<class A,class B
>
430 typename
<span class=
"RenoLink"><a href=
"deduce_quat.html">deduce_quat
</a></span><A
>::type
431 <span class=
"RenoLink"><a href=
"operator_times_quat_scalar_.html">operator*
</a></span>( A const
& a, B b );
</span>
433 <span class=
"RenoIncludeSPAN">//Only
<span class=
"RenoLink"><a href=
"SFINAE_enable_if.html">enabled if
</a></span>:
434 //
<span class=
"RenoLink"><a href=
"is_quat.html">is_quat
</a></span><A
>::value
&& <span class=
"RenoLink"><a href=
"is_quat.html">is_quat
</a></span><B
>::value
435 template
<class A,class B
>
436 bool
<span class=
"RenoLink"><a href=
"operator_eq_quat_quat_.html">operator==
</a></span>( A const
& a, B const
& b );
</span>
438 <span class=
"RenoIncludeSPAN">//Only
<span class=
"RenoLink"><a href=
"SFINAE_enable_if.html">enabled if
</a></span>:
439 //
<span class=
"RenoLink"><a href=
"is_quat.html">is_quat
</a></span><A
>::value
&& <span class=
"RenoLink"><a href=
"is_quat.html">is_quat
</a></span><B
>::value
440 template
<class A,class B
>
441 bool
<span class=
"RenoLink"><a href=
"operator_not_eq_quat_quat_.html">operator!=
</a></span>( A const
& a, B const
& b );
</span>
443 <span class=
"RenoIncludeSPAN">//Only
<span class=
"RenoLink"><a href=
"SFINAE_enable_if.html">enabled if
</a></span>:
444 //
<span class=
"RenoLink"><a href=
"is_quat.html">is_quat
</a></span><A
>::value
&& <span class=
"RenoLink"><a href=
"is_quat.html">is_quat
</a></span><B
>::value
445 template
<class A,class B,class Cmp
>
446 bool
<span class=
"RenoLink"><a href=
"cmp_quat_quat_.html">cmp
</a></span>( A const
& a, B const
& b, Cmp pred );
</span>
448 <span class=
"RenoIncludeSPAN">//Only
<span class=
"RenoLink"><a href=
"SFINAE_enable_if.html">enabled if
</a></span>:
<span class=
"RenoLink"><a href=
"is_quat.html">is_quat
</a></span><A
>::value
449 template
<class A
>
450 typename
<span class=
"RenoLink"><a href=
"quat_traits.html">quat_traits
</a></span><A
>::
<span class=
"RenoLink"><a href=
"quat_traits_Q_scalar_type.html">scalar_type
</a></span>
451 <span class=
"RenoLink"><a href=
"mag_sqr_quat_.html">mag_sqr
</a></span>( A const
& a );
</span>
453 <span class=
"RenoIncludeSPAN">//Only
<span class=
"RenoLink"><a href=
"SFINAE_enable_if.html">enabled if
</a></span>:
<span class=
"RenoLink"><a href=
"is_quat.html">is_quat
</a></span><A
>::value
454 template
<class A
>
455 typename
<span class=
"RenoLink"><a href=
"quat_traits.html">quat_traits
</a></span><A
>::
<span class=
"RenoLink"><a href=
"quat_traits_Q_scalar_type.html">scalar_type
</a></span>
456 <span class=
"RenoLink"><a href=
"mag_quat_.html">mag
</a></span>( A const
& a );
</span>
458 <span class=
"RenoIncludeSPAN">//Only
<span class=
"RenoLink"><a href=
"SFINAE_enable_if.html">enabled if
</a></span>:
<span class=
"RenoLink"><a href=
"is_quat.html">is_quat
</a></span><A
>::value
459 template
<class A
>
460 typename
<span class=
"RenoLink"><a href=
"deduce_quat.html">deduce_quat
</a></span><A
>::type
461 <span class=
"RenoLink"><a href=
"normalized_quat_.html">normalized
</a></span>( A const
& a );
</span>
463 <span class=
"RenoIncludeSPAN">//Only
<span class=
"RenoLink"><a href=
"SFINAE_enable_if.html">enabled if
</a></span>:
<span class=
"RenoLink"><a href=
"is_quat.html">is_quat
</a></span><A
>::value
464 template
<class A
>
465 void
<span class=
"RenoLink"><a href=
"normalize_quat_.html">normalize
</a></span>( A
& a );
</span>
467 <span class=
"RenoIncludeSPAN">//Only
<span class=
"RenoLink"><a href=
"SFINAE_enable_if.html">enabled if
</a></span>:
468 //
<span class=
"RenoLink"><a href=
"is_quat.html">is_quat
</a></span><A
>::value
&& <span class=
"RenoLink"><a href=
"is_quat.html">is_quat
</a></span><B
>::value
469 template
<class A,class B
>
470 typename
<span class=
"RenoLink"><a href=
"deduce_scalar.html">deduce_scalar
</a></span><A,B
>::type
471 <span class=
"RenoLink"><a href=
"dot_quat_quat_.html">dot
</a></span>( A const
& a, B const
& b );
</span>
473 <span class=
"RenoIncludeSPAN">//Only
<span class=
"RenoLink"><a href=
"SFINAE_enable_if.html">enabled if
</a></span>:
<span class=
"RenoLink"><a href=
"is_quat.html">is_quat
</a></span><A
>::value
474 template
<class A
>
475 typename
<span class=
"RenoLink"><a href=
"deduce_quat.html">deduce_quat
</a></span><A
>::type
476 <span class=
"RenoLink"><a href=
"conjugate.html">conjugate
</a></span>( A const
& a );
</span>
478 <span class=
"RenoIncludeSPAN">//Only
<span class=
"RenoLink"><a href=
"SFINAE_enable_if.html">enabled if
</a></span>:
<span class=
"RenoLink"><a href=
"is_quat.html">is_quat
</a></span><A
>::value
479 template
<class A
>
480 typename
<span class=
"RenoLink"><a href=
"deduce_quat.html">deduce_quat
</a></span><A
>::type
481 <span class=
"RenoLink"><a href=
"inverse_quat_.html">inverse
</a></span>( A const
& a );
</span>
483 <span class=
"RenoIncludeSPAN">//Only
<span class=
"RenoLink"><a href=
"SFINAE_enable_if.html">enabled if
</a></span>:
484 //
<span class=
"RenoLink"><a href=
"is_quat.html">is_quat
</a></span><A
>::value
&& <span class=
"RenoLink"><a href=
"is_quat.html">is_quat
</a></span><B
>::value
&& <span class=
"RenoLink"><a href=
"is_scalar.html">is_scalar
</a></span><C
>
485 template
<class A,class B,class C
>
486 typename
<span class=
"RenoLink"><a href=
"deduce_quat2.html">deduce_quat2
</a></span><A,B
> >::type
487 <span class=
"RenoLink"><a href=
"slerp.html">slerp
</a></span>( A const
& a, B const
& b, C c );
</span>
489 <span class=
"RenoIncludeSPAN">template
<class T
>
490 -unspecified-return-type-
<span class=
"RenoLink"><a href=
"zero_quat.html">zero_quat
</a></span>();
</span>
492 <span class=
"RenoIncludeSPAN">//Only
<span class=
"RenoLink"><a href=
"SFINAE_enable_if.html">enabled if
</a></span>:
<span class=
"RenoLink"><a href=
"is_quat.html">is_quat
</a></span><A
>::value
493 template
<class A
>
494 void
<span class=
"RenoLink"><a href=
"set_zero_quat_.html">set_zero
</a></span>( A
& a );
</span>
496 <span class=
"RenoIncludeSPAN">template
<class S
>
497 -unspecified-return-type-
<span class=
"RenoLink"><a href=
"identity_quat.html">identity_quat
</a></span>();
</span>
499 <span class=
"RenoIncludeSPAN">//Only
<span class=
"RenoLink"><a href=
"SFINAE_enable_if.html">enabled if
</a></span>:
<span class=
"RenoLink"><a href=
"is_quat.html">is_quat
</a></span><A
>::value
500 template
<class A
>
501 void
<span class=
"RenoLink"><a href=
"set_identity_quat_.html">set_identity
</a></span>( A
& a );
</span>
503 <span class=
"RenoIncludeSPAN">//Only
<span class=
"RenoLink"><a href=
"SFINAE_enable_if.html">enabled if
</a></span>:
504 //
<span class=
"RenoLink"><a href=
"is_vec.html">is_vec
</a></span><A
>::value
&& <span class=
"RenoLink"><a href=
"vec_traits.html">vec_traits
</a></span><A
>::
<span class=
"RenoLink"><a href=
"vec_traits_Vector_dim.html">dim
</a></span>==
3
505 template
<class A
>
506 -unspecified-return-type-
<span class=
"RenoLink"><a href=
"rot_quat.html">rot_quat
</a></span>( A const
& axis, typename
<span class=
"RenoLink"><a href=
"vec_traits.html">vec_traits
</a></span><A
>::
<span class=
"RenoLink"><a href=
"vec_traits_V_scalar_type.html">scalar_type
</a></span> angle );
</span>
508 <span class=
"RenoIncludeSPAN">//Only
<span class=
"RenoLink"><a href=
"SFINAE_enable_if.html">enabled if
</a></span>:
509 //
<span class=
"RenoLink"><a href=
"is_quat.html">is_quat
</a></span><A
>::value
&&
510 //
<span class=
"RenoLink"><a href=
"is_vec.html">is_vec
</a></span><B
>::value
&& <span class=
"RenoLink"><a href=
"vec_traits.html">vec_traits
</a></span><B
>::
<span class=
"RenoLink"><a href=
"vec_traits_Vector_dim.html">dim
</a></span>==
3
511 template
<class A
>
512 void
<span class=
"RenoLink"><a href=
"set_rot_quat_vec_scalar_.html">set_rot
</a></span>( A
& a, B const
& axis, typename
<span class=
"RenoLink"><a href=
"vec_traits.html">vec_traits
</a></span><B
>::
<span class=
"RenoLink"><a href=
"vec_traits_V_scalar_type.html">scalar_type
</a></span> angle );
</span>
514 <span class=
"RenoIncludeSPAN">//Only
<span class=
"RenoLink"><a href=
"SFINAE_enable_if.html">enabled if
</a></span>:
515 //
<span class=
"RenoLink"><a href=
"is_quat.html">is_quat
</a></span><A
>::value
&&
516 //
<span class=
"RenoLink"><a href=
"is_vec.html">is_vec
</a></span><B
>::value
&& <span class=
"RenoLink"><a href=
"vec_traits.html">vec_traits
</a></span><B
>::
<span class=
"RenoLink"><a href=
"vec_traits_Vector_dim.html">dim
</a></span>==
3
517 template
<class A,class B
>
518 void
<span class=
"RenoLink"><a href=
"rotate_quat_vec_scalar_.html">rotate
</a></span>( A
& a, B const
& axis, typename
<span class=
"RenoLink"><a href=
"quat_traits.html">quat_traits
</a></span><A
>::
<span class=
"RenoLink"><a href=
"quat_traits_Q_scalar_type.html">scalar_type
</a></span> angle );
</span>
520 <span class=
"RenoIncludeSPAN">template
<class Angle
>
521 -unspecified-return-type-
<span class=
"RenoLink"><a href=
"rotx_quat_scalar_.html">rotx_quat
</a></span>( Angle const
& angle );
</span>
523 <span class=
"RenoIncludeSPAN">//Only
<span class=
"RenoLink"><a href=
"SFINAE_enable_if.html">enabled if
</a></span>:
<span class=
"RenoLink"><a href=
"is_quat.html">is_quat
</a></span><A
>::value
524 template
<class A
>
525 void
<span class=
"RenoLink"><a href=
"set_rotx_quat_scalar_.html">set_rotx
</a></span>( A
& a, typename
<span class=
"RenoLink"><a href=
"quat_traits.html">quat_traits
</a></span><A
>::
<span class=
"RenoLink"><a href=
"quat_traits_Q_scalar_type.html">scalar_type
</a></span> angle );
</span>
527 <span class=
"RenoIncludeSPAN">//Only
<span class=
"RenoLink"><a href=
"SFINAE_enable_if.html">enabled if
</a></span>:
<span class=
"RenoLink"><a href=
"is_quat.html">is_quat
</a></span><A
>::value
528 template
<class A
>
529 void
<span class=
"RenoLink"><a href=
"rotate_x_quat_scalar_.html">rotate_x
</a></span>( A
& a, typename
<span class=
"RenoLink"><a href=
"quat_traits.html">quat_traits
</a></span><A
>::
<span class=
"RenoLink"><a href=
"quat_traits_Q_scalar_type.html">scalar_type
</a></span> angle );
</span>
531 <span class=
"RenoIncludeSPAN">template
<class Angle
>
532 -unspecified-return-type-
<span class=
"RenoLink"><a href=
"roty_quat_scalar_.html">roty_quat
</a></span>( Angle const
& angle );
</span>
534 <span class=
"RenoIncludeSPAN">//Only
<span class=
"RenoLink"><a href=
"SFINAE_enable_if.html">enabled if
</a></span>:
<span class=
"RenoLink"><a href=
"is_quat.html">is_quat
</a></span><A
>::value
535 template
<class A
>
536 void
<span class=
"RenoLink"><a href=
"set_rotz_quat_scalar_.html">set_rotz
</a></span>( A
& a, typename
<span class=
"RenoLink"><a href=
"quat_traits.html">quat_traits
</a></span><A
>::
<span class=
"RenoLink"><a href=
"quat_traits_Q_scalar_type.html">scalar_type
</a></span> angle );
</span>
538 <span class=
"RenoIncludeSPAN">//Only
<span class=
"RenoLink"><a href=
"SFINAE_enable_if.html">enabled if
</a></span>:
<span class=
"RenoLink"><a href=
"is_quat.html">is_quat
</a></span><A
>::value
539 template
<class A
>
540 void
<span class=
"RenoLink"><a href=
"rotate_y_quat_scalar_.html">rotate_y
</a></span>( A
& a, typename
<span class=
"RenoLink"><a href=
"quat_traits.html">quat_traits
</a></span><A
>::
<span class=
"RenoLink"><a href=
"quat_traits_Q_scalar_type.html">scalar_type
</a></span> angle );
</span>
542 <span class=
"RenoIncludeSPAN">template
<class Angle
>
543 -unspecified-return-type-
<span class=
"RenoLink"><a href=
"rotz_quat_scalar_.html">rotz_quat
</a></span>( Angle const
& angle );
</span>
545 <span class=
"RenoIncludeSPAN">//Only
<span class=
"RenoLink"><a href=
"SFINAE_enable_if.html">enabled if
</a></span>:
<span class=
"RenoLink"><a href=
"is_quat.html">is_quat
</a></span><A
>::value
546 template
<class A
>
547 void
<span class=
"RenoLink"><a href=
"set_rotz_quat_scalar_.html">set_rotz
</a></span>( A
& a, typename
<span class=
"RenoLink"><a href=
"quat_traits.html">quat_traits
</a></span><A
>::
<span class=
"RenoLink"><a href=
"quat_traits_Q_scalar_type.html">scalar_type
</a></span> angle );
</span>
549 <span class=
"RenoIncludeSPAN">//Only
<span class=
"RenoLink"><a href=
"SFINAE_enable_if.html">enabled if
</a></span>:
<span class=
"RenoLink"><a href=
"is_quat.html">is_quat
</a></span><A
>::value
550 template
<class A
>
551 void
<span class=
"RenoLink"><a href=
"rotate_z_quat_scalar_.html">rotate_z
</a></span>( A
& a, typename
<span class=
"RenoLink"><a href=
"quat_traits.html">quat_traits
</a></span><A
>::
<span class=
"RenoLink"><a href=
"quat_traits_Q_scalar_type.html">scalar_type
</a></span> angle );
</span>
553 <span class=
"RenoIncludeSPAN">//Only
<span class=
"RenoLink"><a href=
"SFINAE_enable_if.html">enabled if
</a></span>:
<span class=
"RenoLink"><a href=
"is_quat.html">is_quat
</a></span><A
>::value
554 template
<class Scalar,class A
>
555 -unspecified-return_type-
<span class=
"RenoLink"><a href=
"scalar_cast_quat_.html">scalar_cast
</a></span>( A const
& a );
</span>
557 <span class=
"RenoIncludeSPAN">//Only
<span class=
"RenoLink"><a href=
"SFINAE_enable_if.html">enabled if
</a></span>:
<span class=
"RenoLink"><a href=
"is_quat.html">is_quat
</a></span><A
>::value
558 template
<class A
>
559 -unspecified-return-type-
<span class=
"RenoLink"><a href=
"qref.html">qref
</a></span>( A
& a );
</span></span></span>
563 <span class=
"RenoIncludeSPAN"> //*** Vector operations ***
565 <span class=
"RenoIncludeSPAN"><span class=
"RenoIncludeSPAN">//Only
<span class=
"RenoLink"><a href=
"SFINAE_enable_if.html">enabled if
</a></span>:
566 //
<span class=
"RenoLink"><a href=
"is_vec.html">is_vec
</a></span><A
>::value
&& <span class=
"RenoLink"><a href=
"is_vec.html">is_vec
</a></span><B
>::value
&&
567 //
<span class=
"RenoLink"><a href=
"vec_traits.html">vec_traits
</a></span><A
>::
<span class=
"RenoLink"><a href=
"vec_traits_Vector_dim.html">dim
</a></span>==
<span class=
"RenoLink"><a href=
"vec_traits.html">vec_traits
</a></span><B
>::
<span class=
"RenoLink"><a href=
"vec_traits_Vector_dim.html">dim
</a></span>
568 template
<class A,class B
>
569 A
& <span class=
"RenoLink"><a href=
"assign_vec_vec_.html">assign
</a></span>( A
& a, B const
& b );
</span>
571 <span class=
"RenoIncludeSPAN">//Only
<span class=
"RenoLink"><a href=
"SFINAE_enable_if.html">enabled if
</a></span>:
572 //
<span class=
"RenoLink"><a href=
"is_vec.html">is_vec
</a></span><R
>::value
&& <span class=
"RenoLink"><a href=
"is_vec.html">is_vec
</a></span><A
>::value
&&
573 //
<span class=
"RenoLink"><a href=
"vec_traits.html">vec_traits
</a></span><R
>::
<span class=
"RenoLink"><a href=
"vec_traits_Vector_dim.html">dim
</a></span>==
<span class=
"RenoLink"><a href=
"vec_traits.html">vec_traits
</a></span><A
>::
<span class=
"RenoLink"><a href=
"vec_traits_Vector_dim.html">dim
</a></span>
574 template
<class R,class A
>
575 R
<span class=
"RenoLink"><a href=
"convert_to_vec_.html">convert_to
</a></span>( A const
& a );
</span>
577 <span class=
"RenoIncludeSPAN">//Only
<span class=
"RenoLink"><a href=
"SFINAE_enable_if.html">enabled if
</a></span>:
578 //
<span class=
"RenoLink"><a href=
"is_vec.html">is_vec
</a></span><A
>::value
&& <span class=
"RenoLink"><a href=
"is_vec.html">is_vec
</a></span><B
>::value
&&
579 //
<span class=
"RenoLink"><a href=
"vec_traits.html">vec_traits
</a></span><A
>::
<span class=
"RenoLink"><a href=
"vec_traits_Vector_dim.html">dim
</a></span>==
<span class=
"RenoLink"><a href=
"vec_traits.html">vec_traits
</a></span><B
>::
<span class=
"RenoLink"><a href=
"vec_traits_Vector_dim.html">dim
</a></span>
580 template
<class A,class B
>
581 A
& <span class=
"RenoLink"><a href=
"operator_sub_eq_vec_vec_.html">operator-=
</a></span>( A
& a, B const
& b );
</span>
583 <span class=
"RenoIncludeSPAN">//Only
<span class=
"RenoLink"><a href=
"SFINAE_enable_if.html">enabled if
</a></span>:
<span class=
"RenoLink"><a href=
"is_vec.html">is_vec
</a></span><A
>::value
584 template
<class A
>
585 typename
<span class=
"RenoLink"><a href=
"deduce_vec.html">deduce_vec
</a></span><A
>::type
586 <span class=
"RenoLink"><a href=
"operator_minus_vec_.html">operator-
</a></span>( A const
& a );
</span>
588 <span class=
"RenoIncludeSPAN">//Only
<span class=
"RenoLink"><a href=
"SFINAE_enable_if.html">enabled if
</a></span>:
589 //
<span class=
"RenoLink"><a href=
"is_vec.html">is_vec
</a></span><A
>::value
&& <span class=
"RenoLink"><a href=
"is_vec.html">is_vec
</a></span><B
>::value
&&
590 //
<span class=
"RenoLink"><a href=
"vec_traits.html">vec_traits
</a></span><A
>::
<span class=
"RenoLink"><a href=
"vec_traits_Vector_dim.html">dim
</a></span>==
<span class=
"RenoLink"><a href=
"vec_traits.html">vec_traits
</a></span><B
>::
<span class=
"RenoLink"><a href=
"vec_traits_Vector_dim.html">dim
</a></span>
591 template
<class A,class B
>
592 typename
<span class=
"RenoLink"><a href=
"deduce_vec2.html">deduce_vec2
</a></span><A,B,
<span class=
"RenoLink"><a href=
"vec_traits.html">vec_traits
</a></span><A
>::
<span class=
"RenoLink"><a href=
"vec_traits_Vector_dim.html">dim
</a></span>>::type
593 <span class=
"RenoLink"><a href=
"operator_minus_vec_vec_.html">operator-
</a></span>( A const
& a, B const
& b );
</span>
595 <span class=
"RenoIncludeSPAN">//Only
<span class=
"RenoLink"><a href=
"SFINAE_enable_if.html">enabled if
</a></span>:
596 //
<span class=
"RenoLink"><a href=
"is_vec.html">is_vec
</a></span><A
>::value
&& <span class=
"RenoLink"><a href=
"is_vec.html">is_vec
</a></span><B
>::value
&&
597 //
<span class=
"RenoLink"><a href=
"vec_traits.html">vec_traits
</a></span><A
>::
<span class=
"RenoLink"><a href=
"vec_traits_Vector_dim.html">dim
</a></span>==
<span class=
"RenoLink"><a href=
"vec_traits.html">vec_traits
</a></span><B
>::
<span class=
"RenoLink"><a href=
"vec_traits_Vector_dim.html">dim
</a></span>
598 template
<class A,class B
>
599 A
& <span class=
"RenoLink"><a href=
"operator_add_vec_vec_.html">operator+=
</a></span>( A
& a, B const
& b );
</span>
601 <span class=
"RenoIncludeSPAN">//Only
<span class=
"RenoLink"><a href=
"SFINAE_enable_if.html">enabled if
</a></span>:
602 //
<span class=
"RenoLink"><a href=
"is_vec.html">is_vec
</a></span><A
>::value
&& <span class=
"RenoLink"><a href=
"is_vec.html">is_vec
</a></span><B
>::value
&&
603 //
<span class=
"RenoLink"><a href=
"vec_traits.html">vec_traits
</a></span><A
>::
<span class=
"RenoLink"><a href=
"vec_traits_Vector_dim.html">dim
</a></span>==
<span class=
"RenoLink"><a href=
"vec_traits.html">vec_traits
</a></span><B
>::
<span class=
"RenoLink"><a href=
"vec_traits_Vector_dim.html">dim
</a></span>
604 template
<class A,class B
>
605 typename
<span class=
"RenoLink"><a href=
"deduce_vec2.html">deduce_vec2
</a></span><A,B,
<span class=
"RenoLink"><a href=
"vec_traits.html">vec_traits
</a></span><A
>::
<span class=
"RenoLink"><a href=
"vec_traits_Vector_dim.html">dim
</a></span>>::type
606 <span class=
"RenoLink"><a href=
"operator_plus_vec_vec_.html">operator+
</a></span>( A const
& a, B const
& b );
</span>
608 <span class=
"RenoIncludeSPAN">//Only
<span class=
"RenoLink"><a href=
"SFINAE_enable_if.html">enabled if
</a></span>:
<span class=
"RenoLink"><a href=
"is_vec.html">is_vec
</a></span><A
>::value
&& <span class=
"RenoLink"><a href=
"is_scalar.html">is_scalar
</a></span><B
>::value
609 template
<class A,class B
>
610 A
& <span class=
"RenoLink"><a href=
"operator_div_eq_vec_scalar_.html">operator/=
</a></span>( A
& a, B b );
</span>
612 <span class=
"RenoIncludeSPAN">//Only
<span class=
"RenoLink"><a href=
"SFINAE_enable_if.html">enabled if
</a></span>:
<span class=
"RenoLink"><a href=
"is_vec.html">is_vec
</a></span><A
>::value
&& <span class=
"RenoLink"><a href=
"is_scalar.html">is_scalar
</a></span><B
>::value
613 template
<class A,class B
>
614 typename
<span class=
"RenoLink"><a href=
"deduce_vec.html">deduce_vec
</a></span><A
>::type
615 <span class=
"RenoLink"><a href=
"operator_over_vec_scalar_.html">operator/
</a></span>( A const
& a, B b );
</span>
617 <span class=
"RenoIncludeSPAN">//Only
<span class=
"RenoLink"><a href=
"SFINAE_enable_if.html">enabled if
</a></span>:
<span class=
"RenoLink"><a href=
"is_vec.html">is_vec
</a></span><A
>::value
&& <span class=
"RenoLink"><a href=
"is_scalar.html">is_scalar
</a></span><B
>::value
618 template
<class A,class B
>
619 A
& <span class=
"RenoLink"><a href=
"operator_mul_eq_vec_scalar_.html">operator*=
</a></span>( A
& a, B b );
</span>
621 <span class=
"RenoIncludeSPAN">//Only
<span class=
"RenoLink"><a href=
"SFINAE_enable_if.html">enabled if
</a></span>:
<span class=
"RenoLink"><a href=
"is_vec.html">is_vec
</a></span><A
>::value
&& <span class=
"RenoLink"><a href=
"is_scalar.html">is_scalar
</a></span><B
>::value
622 template
<class A
>
623 typename
<span class=
"RenoLink"><a href=
"deduce_vec.html">deduce_vec
</a></span><A
>::type
624 <span class=
"RenoLink"><a href=
"operator_times_vec_scalar_.html">operator*
</a></span>( A const
& a, B b );
</span>
626 <span class=
"RenoIncludeSPAN">//Only
<span class=
"RenoLink"><a href=
"SFINAE_enable_if.html">enabled if
</a></span>:
627 //
<span class=
"RenoLink"><a href=
"is_vec.html">is_vec
</a></span><A
>::value
&& <span class=
"RenoLink"><a href=
"is_vec.html">is_vec
</a></span><B
>::value
&&
628 //
<span class=
"RenoLink"><a href=
"vec_traits.html">vec_traits
</a></span><A
>::
<span class=
"RenoLink"><a href=
"vec_traits_Vector_dim.html">dim
</a></span>==
<span class=
"RenoLink"><a href=
"vec_traits.html">vec_traits
</a></span><B
>::
<span class=
"RenoLink"><a href=
"vec_traits_Vector_dim.html">dim
</a></span>
629 template
<class A,class B
>
630 bool
<span class=
"RenoLink"><a href=
"operator_eq_vec_vec_.html">operator==
</a></span>( A const
& a, B const
& b );
</span>
632 <span class=
"RenoIncludeSPAN">//Only
<span class=
"RenoLink"><a href=
"SFINAE_enable_if.html">enabled if
</a></span>:
633 //
<span class=
"RenoLink"><a href=
"is_vec.html">is_vec
</a></span><A
>::value
&& <span class=
"RenoLink"><a href=
"is_vec.html">is_vec
</a></span><B
>::value
&&
634 //
<span class=
"RenoLink"><a href=
"vec_traits.html">vec_traits
</a></span><A
>::
<span class=
"RenoLink"><a href=
"vec_traits_Vector_dim.html">dim
</a></span>==
<span class=
"RenoLink"><a href=
"vec_traits.html">vec_traits
</a></span><B
>::
<span class=
"RenoLink"><a href=
"vec_traits_Vector_dim.html">dim
</a></span>
635 template
<class A,class B
>
636 bool
<span class=
"RenoLink"><a href=
"operator_not_eq_vec_vec_.html">operator!=
</a></span>( A const
& a, B const
& b );
</span>
638 <span class=
"RenoIncludeSPAN">//Only
<span class=
"RenoLink"><a href=
"SFINAE_enable_if.html">enabled if
</a></span>:
639 //
<span class=
"RenoLink"><a href=
"is_vec.html">is_vec
</a></span><A
>::value
&& <span class=
"RenoLink"><a href=
"is_vec.html">is_vec
</a></span><B
>::value
&&
640 //
<span class=
"RenoLink"><a href=
"vec_traits.html">vec_traits
</a></span><A
>::
<span class=
"RenoLink"><a href=
"vec_traits_Vector_dim.html">dim
</a></span>==
<span class=
"RenoLink"><a href=
"vec_traits.html">vec_traits
</a></span><B
>::
<span class=
"RenoLink"><a href=
"vec_traits_Vector_dim.html">dim
</a></span>
641 template
<class A,class B,class Cmp
>
642 bool
<span class=
"RenoLink"><a href=
"cmp_mat_mat_.html">cmp
</a></span>( A const
& a, B const
& b, Cmp pred );
</span>
644 <span class=
"RenoIncludeSPAN">//Only
<span class=
"RenoLink"><a href=
"SFINAE_enable_if.html">enabled if
</a></span>:
645 //
<span class=
"RenoLink"><a href=
"is_vec.html">is_vec
</a></span><A
>::value
646 template
<class A
>
647 typename
<span class=
"RenoLink"><a href=
"vec_traits.html">vec_traits
</a></span><A
>::
<span class=
"RenoLink"><a href=
"vec_traits_V_scalar_type.html">scalar_type
</a></span>
648 <span class=
"RenoLink"><a href=
"mag_sqr_vec_.html">mag_sqr
</a></span>( A const
& a );
</span>
650 <span class=
"RenoIncludeSPAN">//Only
<span class=
"RenoLink"><a href=
"SFINAE_enable_if.html">enabled if
</a></span>:
651 //
<span class=
"RenoLink"><a href=
"is_vec.html">is_vec
</a></span><A
>::value
652 template
<class A
>
653 typename
<span class=
"RenoLink"><a href=
"vec_traits.html">vec_traits
</a></span><A
>::
<span class=
"RenoLink"><a href=
"vec_traits_V_scalar_type.html">scalar_type
</a></span>
654 <span class=
"RenoLink"><a href=
"mag_vec_.html">mag
</a></span>( A const
& a );
</span>
656 <span class=
"RenoIncludeSPAN">//Only
<span class=
"RenoLink"><a href=
"SFINAE_enable_if.html">enabled if
</a></span>:
657 //
<span class=
"RenoLink"><a href=
"is_vec.html">is_vec
</a></span><A
>::value
658 template
<class A
>
659 typename
<span class=
"RenoLink"><a href=
"deduce_vec.html">deduce_vec
</a></span><A
>::type
660 <span class=
"RenoLink"><a href=
"normalized_vec_.html">normalized
</a></span>( A const
& a );
</span>
662 <span class=
"RenoIncludeSPAN">//Only
<span class=
"RenoLink"><a href=
"SFINAE_enable_if.html">enabled if
</a></span>:
663 //
<span class=
"RenoLink"><a href=
"is_vec.html">is_vec
</a></span><A
>::value
664 template
<class A
>
665 void
<span class=
"RenoLink"><a href=
"normalize_vec_.html">normalize
</a></span>( A
& a );
</span>
667 <span class=
"RenoIncludeSPAN">//Only
<span class=
"RenoLink"><a href=
"SFINAE_enable_if.html">enabled if
</a></span>:
668 //
<span class=
"RenoLink"><a href=
"is_vec.html">is_vec
</a></span><A
>::value
&& <span class=
"RenoLink"><a href=
"is_vec.html">is_vec
</a></span><B
>::value
&&
669 //
<span class=
"RenoLink"><a href=
"vec_traits.html">vec_traits
</a></span><A
>::
<span class=
"RenoLink"><a href=
"vec_traits_Vector_dim.html">dim
</a></span>==
<span class=
"RenoLink"><a href=
"vec_traits.html">vec_traits
</a></span><B
>::
<span class=
"RenoLink"><a href=
"vec_traits_Vector_dim.html">dim
</a></span>
670 template
<class A,class B
>
671 typename
<span class=
"RenoLink"><a href=
"deduce_scalar.html">deduce_scalar
</a></span><A,B
>::type
672 <span class=
"RenoLink"><a href=
"dot_vec_vec_.html">dot
</a></span>( A const
& a, B const
& b );
</span>
674 <span class=
"RenoIncludeSPAN">//Only
<span class=
"RenoLink"><a href=
"SFINAE_enable_if.html">enabled if
</a></span>:
675 //
<span class=
"RenoLink"><a href=
"is_vec.html">is_vec
</a></span><A
>::value
&& <span class=
"RenoLink"><a href=
"is_vec.html">is_vec
</a></span><B
>::value
&&
676 //
<span class=
"RenoLink"><a href=
"vec_traits.html">vec_traits
</a></span><A
>::
<span class=
"RenoLink"><a href=
"vec_traits_Vector_dim.html">dim
</a></span>==
3 && <span class=
"RenoLink"><a href=
"vec_traits.html">vec_traits
</a></span><B
>::
<span class=
"RenoLink"><a href=
"vec_traits_Vector_dim.html">dim
</a></span>==
3
677 template
<class A,class B
>
678 typename
<span class=
"RenoLink"><a href=
"deduce_vec2.html">deduce_vec2
</a></span><A,B,
3>::type
679 <span class=
"RenoLink"><a href=
"cross.html">cross
</a></span>( A const
& a, B const
& b );
</span>
681 <span class=
"RenoIncludeSPAN">template
<class T,int S
>
682 -unspecified-return-type-
<span class=
"RenoLink"><a href=
"zero_vec.html">zero_vec
</a></span>();
</span>
684 <span class=
"RenoIncludeSPAN">//Only
<span class=
"RenoLink"><a href=
"SFINAE_enable_if.html">enabled if
</a></span>:
685 //
<span class=
"RenoLink"><a href=
"is_vec.html">is_vec
</a></span><A
>::value
686 template
<class A
>
687 void
<span class=
"RenoLink"><a href=
"set_zero_vec_.html">set_zero
</a></span>( A
& a );
</span>
689 <span class=
"RenoIncludeSPAN">//Only
<span class=
"RenoLink"><a href=
"SFINAE_enable_if.html">enabled if
</a></span>:
<span class=
"RenoLink"><a href=
"is_vec.html">is_vec
</a></span><A
>::value
690 template
<class A
>
691 -unspecified-return-type-
<span class=
"RenoLink"><a href=
"vref.html">vref
</a></span>( A
& a );
</span>
693 <span class=
"RenoIncludeSPAN">//Only
<span class=
"RenoLink"><a href=
"SFINAE_enable_if.html">enabled if
</a></span>:
<span class=
"RenoLink"><a href=
"is_vec.html">is_vec
</a></span><A
>::value
694 template
<class Scalar,class A
>
695 -unspecified-return_type-
<span class=
"RenoLink"><a href=
"scalar_cast_vec_.html">scalar_cast
</a></span>( A const
& a );
</span></span></span>
699 <span class=
"RenoIncludeSPAN"> //*** Matrix operations ***
701 <span class=
"RenoIncludeSPAN"><span class=
"RenoIncludeSPAN">//Only
<span class=
"RenoLink"><a href=
"SFINAE_enable_if.html">enabled if
</a></span>:
702 //
<span class=
"RenoLink"><a href=
"is_mat.html">is_mat
</a></span><A
>::value
&& <span class=
"RenoLink"><a href=
"is_mat.html">is_mat
</a></span><B
>::value
&&
703 //
<span class=
"RenoLink"><a href=
"mat_traits.html">mat_traits
</a></span><A
>::
<span class=
"RenoLink"><a href=
"mat_traits_Matrix_rows.html">rows
</a></span>==
<span class=
"RenoLink"><a href=
"mat_traits.html">mat_traits
</a></span><B
>::
<span class=
"RenoLink"><a href=
"mat_traits_Matrix_rows.html">rows
</a></span> &&
704 //
<span class=
"RenoLink"><a href=
"mat_traits.html">mat_traits
</a></span><A
>::
<span class=
"RenoLink"><a href=
"mat_traits_Matrix_cols.html">cols
</a></span>==
<span class=
"RenoLink"><a href=
"mat_traits.html">mat_traits
</a></span><B
>::
<span class=
"RenoLink"><a href=
"mat_traits_Matrix_cols.html">cols
</a></span>
705 template
<class A,class B
>
706 A
& <span class=
"RenoLink"><a href=
"assign_mat_mat_.html">assign
</a></span>( A
& a, B const
& b );
</span>
708 <span class=
"RenoIncludeSPAN">//Only
<span class=
"RenoLink"><a href=
"SFINAE_enable_if.html">enabled if
</a></span>:
709 //
<span class=
"RenoLink"><a href=
"is_mat.html">is_mat
</a></span><R
>::value
&& <span class=
"RenoLink"><a href=
"is_mat.html">is_mat
</a></span><A
>::value
&&
710 //
<span class=
"RenoLink"><a href=
"mat_traits.html">mat_traits
</a></span><R
>::
<span class=
"RenoLink"><a href=
"mat_traits_Matrix_rows.html">rows
</a></span>==
<span class=
"RenoLink"><a href=
"mat_traits.html">mat_traits
</a></span><A
>::
<span class=
"RenoLink"><a href=
"mat_traits_Matrix_rows.html">rows
</a></span> &&
711 //
<span class=
"RenoLink"><a href=
"mat_traits.html">mat_traits
</a></span><R
>::
<span class=
"RenoLink"><a href=
"mat_traits_Matrix_cols.html">cols
</a></span>==
<span class=
"RenoLink"><a href=
"mat_traits.html">mat_traits
</a></span><A
>::
<span class=
"RenoLink"><a href=
"mat_traits_Matrix_cols.html">cols
</a></span>
712 template
<class R,class A
>
713 R
<span class=
"RenoLink"><a href=
"convert_to_mat_.html">convert_to
</a></span>( A const
& a );
</span>
715 <span class=
"RenoIncludeSPAN">//Only
<span class=
"RenoLink"><a href=
"SFINAE_enable_if.html">enabled if
</a></span>:
716 //
<span class=
"RenoLink"><a href=
"is_mat.html">is_mat
</a></span><A
>::value
&& <span class=
"RenoLink"><a href=
"is_mat.html">is_mat
</a></span><B
>::value
&&
717 //
<span class=
"RenoLink"><a href=
"mat_traits.html">mat_traits
</a></span><A
>::
<span class=
"RenoLink"><a href=
"mat_traits_Matrix_rows.html">rows
</a></span>==
<span class=
"RenoLink"><a href=
"mat_traits.html">mat_traits
</a></span><B
>::
<span class=
"RenoLink"><a href=
"mat_traits_Matrix_rows.html">rows
</a></span> &&
718 //
<span class=
"RenoLink"><a href=
"mat_traits.html">mat_traits
</a></span><A
>::
<span class=
"RenoLink"><a href=
"mat_traits_Matrix_cols.html">cols
</a></span>==
<span class=
"RenoLink"><a href=
"mat_traits.html">mat_traits
</a></span><B
>::
<span class=
"RenoLink"><a href=
"mat_traits_Matrix_cols.html">cols
</a></span>
719 template
<class A,class B
>
720 A
& <span class=
"RenoLink"><a href=
"operator_sub_eq_mat_mat_.html">operator-=
</a></span>( A
& a, B const
& b );
</span>
722 <span class=
"RenoIncludeSPAN">//Only
<span class=
"RenoLink"><a href=
"SFINAE_enable_if.html">enabled if
</a></span>:
<span class=
"RenoLink"><a href=
"is_mat.html">is_mat
</a></span><A
>::value
723 template
<class A
>
724 typename
<span class=
"RenoLink"><a href=
"deduce_mat.html">deduce_mat
</a></span><A
>::type
725 <span class=
"RenoLink"><a href=
"operator_minus_mat_.html">operator-
</a></span>( A const
& a );
</span>
727 <span class=
"RenoIncludeSPAN">//Only
<span class=
"RenoLink"><a href=
"SFINAE_enable_if.html">enabled if
</a></span>:
728 //
<span class=
"RenoLink"><a href=
"is_mat.html">is_mat
</a></span><A
>::value
&& <span class=
"RenoLink"><a href=
"is_mat.html">is_mat
</a></span><B
>::value
&&
729 //
<span class=
"RenoLink"><a href=
"mat_traits.html">mat_traits
</a></span><A
>::
<span class=
"RenoLink"><a href=
"mat_traits_Matrix_rows.html">rows
</a></span>==
<span class=
"RenoLink"><a href=
"mat_traits.html">mat_traits
</a></span><B
>::
<span class=
"RenoLink"><a href=
"mat_traits_Matrix_rows.html">rows
</a></span> &&
730 //
<span class=
"RenoLink"><a href=
"mat_traits.html">mat_traits
</a></span><A
>::
<span class=
"RenoLink"><a href=
"mat_traits_Matrix_cols.html">cols
</a></span>==
<span class=
"RenoLink"><a href=
"mat_traits.html">mat_traits
</a></span><B
>::
<span class=
"RenoLink"><a href=
"mat_traits_Matrix_cols.html">cols
</a></span>
731 template
<class A,class B
>
732 typename
<span class=
"RenoLink"><a href=
"deduce_mat2.html">deduce_mat2
</a></span><A,B,
<span class=
"RenoLink"><a href=
"mat_traits.html">mat_traits
</a></span><A
>::
<span class=
"RenoLink"><a href=
"mat_traits_Matrix_rows.html">rows
</a></span>,
<span class=
"RenoLink"><a href=
"mat_traits.html">mat_traits
</a></span><A
>::
<span class=
"RenoLink"><a href=
"mat_traits_Matrix_cols.html">cols
</a></span>>::type
733 <span class=
"RenoLink"><a href=
"operator_minus_mat_mat_.html">operator-
</a></span>( A const
& a, B const
& b );
</span>
735 <span class=
"RenoIncludeSPAN">//Only
<span class=
"RenoLink"><a href=
"SFINAE_enable_if.html">enabled if
</a></span>:
736 //
<span class=
"RenoLink"><a href=
"is_mat.html">is_mat
</a></span><A
>::value
&& <span class=
"RenoLink"><a href=
"is_mat.html">is_mat
</a></span><B
>::value
&&
737 //
<span class=
"RenoLink"><a href=
"mat_traits.html">mat_traits
</a></span><A
>::
<span class=
"RenoLink"><a href=
"mat_traits_Matrix_rows.html">rows
</a></span>==
<span class=
"RenoLink"><a href=
"mat_traits.html">mat_traits
</a></span><B
>::
<span class=
"RenoLink"><a href=
"mat_traits_Matrix_rows.html">rows
</a></span> &&
738 //
<span class=
"RenoLink"><a href=
"mat_traits.html">mat_traits
</a></span><A
>::
<span class=
"RenoLink"><a href=
"mat_traits_Matrix_cols.html">cols
</a></span>==
<span class=
"RenoLink"><a href=
"mat_traits.html">mat_traits
</a></span><B
>::
<span class=
"RenoLink"><a href=
"mat_traits_Matrix_cols.html">cols
</a></span>
739 template
<class A,class B
>
740 A
& <span class=
"RenoLink"><a href=
"operator_add_mat_mat_.html">operator+=
</a></span>( A
& a, B const
& b );
</span>
742 <span class=
"RenoIncludeSPAN">//Only
<span class=
"RenoLink"><a href=
"SFINAE_enable_if.html">enabled if
</a></span>:
743 //
<span class=
"RenoLink"><a href=
"is_mat.html">is_mat
</a></span><A
>::value
&& <span class=
"RenoLink"><a href=
"is_mat.html">is_mat
</a></span><B
>::value
&&
744 //
<span class=
"RenoLink"><a href=
"mat_traits.html">mat_traits
</a></span><A
>::
<span class=
"RenoLink"><a href=
"mat_traits_Matrix_rows.html">rows
</a></span>==
<span class=
"RenoLink"><a href=
"mat_traits.html">mat_traits
</a></span><B
>::
<span class=
"RenoLink"><a href=
"mat_traits_Matrix_rows.html">rows
</a></span> &&
745 //
<span class=
"RenoLink"><a href=
"mat_traits.html">mat_traits
</a></span><A
>::
<span class=
"RenoLink"><a href=
"mat_traits_Matrix_cols.html">cols
</a></span>==
<span class=
"RenoLink"><a href=
"mat_traits.html">mat_traits
</a></span><B
>::
<span class=
"RenoLink"><a href=
"mat_traits_Matrix_cols.html">cols
</a></span>
746 template
<class A,class B
>
747 typename
<span class=
"RenoLink"><a href=
"deduce_mat2.html">deduce_mat2
</a></span><A,B,
<span class=
"RenoLink"><a href=
"mat_traits.html">mat_traits
</a></span><A
>::
<span class=
"RenoLink"><a href=
"mat_traits_Matrix_rows.html">rows
</a></span>,
<span class=
"RenoLink"><a href=
"mat_traits.html">mat_traits
</a></span><A
>::
<span class=
"RenoLink"><a href=
"mat_traits_Matrix_cols.html">cols
</a></span>>::type
748 <span class=
"RenoLink"><a href=
"operator_plus_mat_mat_.html">operator+
</a></span>( A const
& a, B const
& b );
</span>
750 <span class=
"RenoIncludeSPAN">//Only
<span class=
"RenoLink"><a href=
"SFINAE_enable_if.html">enabled if
</a></span>:
<span class=
"RenoLink"><a href=
"is_mat.html">is_mat
</a></span><A
>::value
&& <span class=
"RenoLink"><a href=
"is_scalar.html">is_scalar
</a></span><B
>::value
751 template
<class A,class B
>
752 A
& <span class=
"RenoLink"><a href=
"operator_div_eq_mat_scalar_.html">operator/=
</a></span>( A
& a, B b );
</span>
754 <span class=
"RenoIncludeSPAN">//Only
<span class=
"RenoLink"><a href=
"SFINAE_enable_if.html">enabled if
</a></span>:
<span class=
"RenoLink"><a href=
"is_mat.html">is_mat
</a></span><A
>::value
&& <span class=
"RenoLink"><a href=
"is_scalar.html">is_scalar
</a></span><B
>::value
755 template
<class A,class B
>
756 typename
<span class=
"RenoLink"><a href=
"deduce_mat.html">deduce_mat
</a></span><A
>::type
757 <span class=
"RenoLink"><a href=
"operator_over_mat_scalar_.html">operator/
</a></span>( A const
& a, B b );
</span>
759 <span class=
"RenoIncludeSPAN">//Only
<span class=
"RenoLink"><a href=
"SFINAE_enable_if.html">enabled if
</a></span>:
760 //
<span class=
"RenoLink"><a href=
"is_mat.html">is_mat
</a></span><A
>::value
&& <span class=
"RenoLink"><a href=
"is_mat.html">is_mat
</a></span><B
>::value
&&
761 //
<span class=
"RenoLink"><a href=
"mat_traits.html">mat_traits
</a></span><A
>::
<span class=
"RenoLink"><a href=
"mat_traits_Matrix_rows.html">rows
</a></span>==
<span class=
"RenoLink"><a href=
"mat_traits.html">mat_traits
</a></span><A
>::
<span class=
"RenoLink"><a href=
"mat_traits_Matrix_cols.html">cols
</a></span> &&
762 //
<span class=
"RenoLink"><a href=
"mat_traits.html">mat_traits
</a></span><A
>::
<span class=
"RenoLink"><a href=
"mat_traits_Matrix_rows.html">rows
</a></span>==
<span class=
"RenoLink"><a href=
"mat_traits.html">mat_traits
</a></span><B
>::
<span class=
"RenoLink"><a href=
"mat_traits_Matrix_rows.html">rows
</a></span> &&
763 //
<span class=
"RenoLink"><a href=
"mat_traits.html">mat_traits
</a></span><A
>::
<span class=
"RenoLink"><a href=
"mat_traits_Matrix_cols.html">cols
</a></span>==
<span class=
"RenoLink"><a href=
"mat_traits.html">mat_traits
</a></span><B
>::
<span class=
"RenoLink"><a href=
"mat_traits_Matrix_cols.html">cols
</a></span>
764 template
<class A,class B
>
765 A
& <span class=
"RenoLink"><a href=
"operator_mul_eq_mat_mat_.html">operator*=
</a></span>( A
& a, B const
& b );
</span>
767 <span class=
"RenoIncludeSPAN">//Only
<span class=
"RenoLink"><a href=
"SFINAE_enable_if.html">enabled if
</a></span>:
<span class=
"RenoLink"><a href=
"is_mat.html">is_mat
</a></span><A
>::value
&& <span class=
"RenoLink"><a href=
"is_scalar.html">is_scalar
</a></span><B
>::value
768 template
<class A,class B
>
769 A
& <span class=
"RenoLink"><a href=
"operator_mul_eq_mat_scalar_.html">operator*=
</a></span>( A
& a, B b );
</span>
771 <span class=
"RenoIncludeSPAN">//Only
<span class=
"RenoLink"><a href=
"SFINAE_enable_if.html">enabled if
</a></span>:
772 //
<span class=
"RenoLink"><a href=
"is_mat.html">is_mat
</a></span><A
>::value
&& <span class=
"RenoLink"><a href=
"is_mat.html">is_mat
</a></span><B
>::value
&&
773 //
<span class=
"RenoLink"><a href=
"mat_traits.html">mat_traits
</a></span><A
>::
<span class=
"RenoLink"><a href=
"mat_traits_Matrix_cols.html">cols
</a></span>==
<span class=
"RenoLink"><a href=
"mat_traits.html">mat_traits
</a></span><B
>::
<span class=
"RenoLink"><a href=
"mat_traits_Matrix_rows.html">rows
</a></span>
774 template
<class A,class B
>
775 typename
<span class=
"RenoLink"><a href=
"deduce_mat2.html">deduce_mat2
</a></span><A,B,
<span class=
"RenoLink"><a href=
"mat_traits.html">mat_traits
</a></span><A
>::
<span class=
"RenoLink"><a href=
"mat_traits_Matrix_rows.html">rows
</a></span>,
<span class=
"RenoLink"><a href=
"mat_traits.html">mat_traits
</a></span><B
>::
<span class=
"RenoLink"><a href=
"mat_traits_Matrix_cols.html">cols
</a></span>>::type
776 <span class=
"RenoLink"><a href=
"operator_times_mat_mat_.html">operator*
</a></span>( A const
& a, B const
& b );
</span>
778 <span class=
"RenoIncludeSPAN">//Only
<span class=
"RenoLink"><a href=
"SFINAE_enable_if.html">enabled if
</a></span>:
<span class=
"RenoLink"><a href=
"is_mat.html">is_mat
</a></span><A
>::value
&& <span class=
"RenoLink"><a href=
"is_scalar.html">is_scalar
</a></span><B
>::value
779 template
<class A,class B
>
780 typename
<span class=
"RenoLink"><a href=
"deduce_mat.html">deduce_mat
</a></span><A
>::type
781 <span class=
"RenoLink"><a href=
"operator_times_mat_scalar_.html">operator*
</a></span>( A const
& a, B b );
</span>
783 <span class=
"RenoIncludeSPAN">//Only
<span class=
"RenoLink"><a href=
"SFINAE_enable_if.html">enabled if
</a></span>:
784 //
<span class=
"RenoLink"><a href=
"is_mat.html">is_mat
</a></span><A
>::value
&& <span class=
"RenoLink"><a href=
"is_mat.html">is_mat
</a></span><B
>::value
&&
785 //
<span class=
"RenoLink"><a href=
"mat_traits.html">mat_traits
</a></span><A
>::
<span class=
"RenoLink"><a href=
"mat_traits_Matrix_rows.html">rows
</a></span>==
<span class=
"RenoLink"><a href=
"mat_traits.html">mat_traits
</a></span><B
>::
<span class=
"RenoLink"><a href=
"mat_traits_Matrix_rows.html">rows
</a></span> &&
786 //
<span class=
"RenoLink"><a href=
"mat_traits.html">mat_traits
</a></span><A
>::
<span class=
"RenoLink"><a href=
"mat_traits_Matrix_cols.html">cols
</a></span>==
<span class=
"RenoLink"><a href=
"mat_traits.html">mat_traits
</a></span><B
>::
<span class=
"RenoLink"><a href=
"mat_traits_Matrix_cols.html">cols
</a></span>
787 template
<class A,class B
>
788 bool
<span class=
"RenoLink"><a href=
"operator_eq_mat_mat_.html">operator==
</a></span>( A const
& a, B const
& b );
</span>
790 <span class=
"RenoIncludeSPAN">//Only
<span class=
"RenoLink"><a href=
"SFINAE_enable_if.html">enabled if
</a></span>:
791 //
<span class=
"RenoLink"><a href=
"is_mat.html">is_mat
</a></span><A
>::value
&& <span class=
"RenoLink"><a href=
"is_mat.html">is_mat
</a></span><B
>::value
&&
792 //
<span class=
"RenoLink"><a href=
"mat_traits.html">mat_traits
</a></span><A
>::
<span class=
"RenoLink"><a href=
"mat_traits_Matrix_rows.html">rows
</a></span>==
<span class=
"RenoLink"><a href=
"mat_traits.html">mat_traits
</a></span><B
>::
<span class=
"RenoLink"><a href=
"mat_traits_Matrix_rows.html">rows
</a></span> &&
793 //
<span class=
"RenoLink"><a href=
"mat_traits.html">mat_traits
</a></span><A
>::
<span class=
"RenoLink"><a href=
"mat_traits_Matrix_cols.html">cols
</a></span>==
<span class=
"RenoLink"><a href=
"mat_traits.html">mat_traits
</a></span><B
>::
<span class=
"RenoLink"><a href=
"mat_traits_Matrix_cols.html">cols
</a></span>
794 template
<class A,class B
>
795 bool
<span class=
"RenoLink"><a href=
"operator_not_eq_mat_mat_.html">operator!=
</a></span>( A const
& a, B const
& b );
</span>
797 <span class=
"RenoIncludeSPAN">//Only
<span class=
"RenoLink"><a href=
"SFINAE_enable_if.html">enabled if
</a></span>:
798 //
<span class=
"RenoLink"><a href=
"is_mat.html">is_mat
</a></span><A
>::value
&& <span class=
"RenoLink"><a href=
"is_mat.html">is_mat
</a></span><B
>::value
&&
799 //
<span class=
"RenoLink"><a href=
"mat_traits.html">mat_traits
</a></span><A
>::
<span class=
"RenoLink"><a href=
"mat_traits_Matrix_rows.html">rows
</a></span>==
<span class=
"RenoLink"><a href=
"mat_traits.html">mat_traits
</a></span><B
>::
<span class=
"RenoLink"><a href=
"mat_traits_Matrix_rows.html">rows
</a></span> &&
800 //
<span class=
"RenoLink"><a href=
"mat_traits.html">mat_traits
</a></span><A
>::
<span class=
"RenoLink"><a href=
"mat_traits_Matrix_cols.html">cols
</a></span>==
<span class=
"RenoLink"><a href=
"mat_traits.html">mat_traits
</a></span><B
>::
<span class=
"RenoLink"><a href=
"mat_traits_Matrix_cols.html">cols
</a></span>
801 template
<class A,class B,class Cmp
>
802 bool
<span class=
"RenoLink"><a href=
"cmp_mat_mat_.html">cmp
</a></span>( A const
& a, B const
& b, Cmp pred );
</span>
804 <span class=
"RenoIncludeSPAN">//Only
<span class=
"RenoLink"><a href=
"SFINAE_enable_if.html">enabled if
</a></span>:
805 //
<span class=
"RenoLink"><a href=
"is_mat.html">is_mat
</a></span><A
>::value
&& <span class=
"RenoLink"><a href=
"is_scalar.html">is_scalar
</a></span><B
>::value
806 //
<span class=
"RenoLink"><a href=
"mat_traits.html">mat_traits
</a></span><A
>::
<span class=
"RenoLink"><a href=
"mat_traits_Matrix_rows.html">rows
</a></span>==
<span class=
"RenoLink"><a href=
"mat_traits.html">mat_traits
</a></span><A
>::
<span class=
"RenoLink"><a href=
"mat_traits_Matrix_cols.html">cols
</a></span>
808 template
<class A,class B
>
809 typename
<span class=
"RenoLink"><a href=
"deduce_mat.html">deduce_mat
</a></span><A
>::type
810 <span class=
"RenoLink"><a href=
"inverse_mat_.html">inverse
</a></span>( A const
& a, B det );
812 template
<class A
>
813 typename
<span class=
"RenoLink"><a href=
"deduce_mat.html">deduce_mat
</a></span><A
>::type
814 <span class=
"RenoLink"><a href=
"inverse_mat_.html">inverse
</a></span>( A const
& a );
</span>
816 <span class=
"RenoIncludeSPAN">template
<class T,int D
>
817 -unspecified-return-type-
<span class=
"RenoLink"><a href=
"zero_mat.html">zero_mat
</a></span>();
819 template
<class T,int R,int C
>
820 -unspecified-return-type-
<span class=
"RenoLink"><a href=
"zero_mat.html">zero_mat
</a></span>();
</span>
822 <span class=
"RenoIncludeSPAN">//Only
<span class=
"RenoLink"><a href=
"SFINAE_enable_if.html">enabled if
</a></span>:
823 //
<span class=
"RenoLink"><a href=
"is_mat.html">is_mat
</a></span><A
>::value
824 template
<class A
>
825 void
<span class=
"RenoLink"><a href=
"set_zero_mat_.html">set_zero
</a></span>( A
& a );
</span>
827 <span class=
"RenoIncludeSPAN">template
<class S,int D
>
828 -unspecified-return-type-
<span class=
"RenoLink"><a href=
"identity_mat.html">identity_mat
</a></span>();
</span>
830 <span class=
"RenoIncludeSPAN">//Only
<span class=
"RenoLink"><a href=
"SFINAE_enable_if.html">enabled if
</a></span>:
831 //
<span class=
"RenoLink"><a href=
"is_mat.html">is_mat
</a></span><A
>::value
&&
832 //
<span class=
"RenoLink"><a href=
"mat_traits.html">mat_traits
</a></span><A
>::
<span class=
"RenoLink"><a href=
"mat_traits_Matrix_cols.html">cols
</a></span>==
<span class=
"RenoLink"><a href=
"mat_traits.html">mat_traits
</a></span><A
>::
<span class=
"RenoLink"><a href=
"mat_traits_Matrix_rows.html">rows
</a></span>
833 template
<class A
>
834 void
<span class=
"RenoLink"><a href=
"set_identity_mat_.html">set_identity
</a></span>( A
& a );
</span>
836 <span class=
"RenoIncludeSPAN">//Only
<span class=
"RenoLink"><a href=
"SFINAE_enable_if.html">enabled if
</a></span>:
837 //
<span class=
"RenoLink"><a href=
"is_vec.html">is_vec
</a></span><A
>::value
&& <span class=
"RenoLink"><a href=
"vec_traits.html">vec_traits
</a></span><A
>::
<span class=
"RenoLink"><a href=
"vec_traits_Vector_dim.html">dim
</a></span>==
3
838 template
<int Dim,class A,class Angle
>
839 -unspecified-return-type
840 <span class=
"RenoLink"><a href=
"rot_mat.html">rot_mat
</a></span>( A const
& axis, Angle angle );
</span>
842 <span class=
"RenoIncludeSPAN">//Only
<span class=
"RenoLink"><a href=
"SFINAE_enable_if.html">enabled if
</a></span>:
843 //
<span class=
"RenoLink"><a href=
"is_mat.html">is_mat
</a></span><A
>::value
&& <span class=
"RenoLink"><a href=
"mat_traits.html">mat_traits
</a></span><A
>::
<span class=
"RenoLink"><a href=
"mat_traits_Matrix_rows.html">rows
</a></span>>=
3 &&
844 //
<span class=
"RenoLink"><a href=
"mat_traits.html">mat_traits
</a></span><A
>::
<span class=
"RenoLink"><a href=
"mat_traits_Matrix_rows.html">rows
</a></span>==
<span class=
"RenoLink"><a href=
"mat_traits.html">mat_traits
</a></span><A
>::
<span class=
"RenoLink"><a href=
"mat_traits_Matrix_cols.html">cols
</a></span> &&
845 //
<span class=
"RenoLink"><a href=
"is_vec.html">is_vec
</a></span><B
>::value
&& <span class=
"RenoLink"><a href=
"vec_traits.html">vec_traits
</a></span><B
>::
<span class=
"RenoLink"><a href=
"vec_traits_Vector_dim.html">dim
</a></span>==
3
846 template
<class A
>
847 void
<span class=
"RenoLink"><a href=
"set_rot_mat_vec_scalar_.html">set_rot
</a></span>( A
& a, B const
& axis, typename
<span class=
"RenoLink"><a href=
"vec_traits.html">vec_traits
</a></span><B
>::
<span class=
"RenoLink"><a href=
"vec_traits_V_scalar_type.html">scalar_type
</a></span> angle );
</span>
849 <span class=
"RenoIncludeSPAN">//Only
<span class=
"RenoLink"><a href=
"SFINAE_enable_if.html">enabled if
</a></span>:
850 //
<span class=
"RenoLink"><a href=
"is_mat.html">is_mat
</a></span><A
>::value
&& <span class=
"RenoLink"><a href=
"mat_traits.html">mat_traits
</a></span><A
>::
<span class=
"RenoLink"><a href=
"mat_traits_Matrix_rows.html">rows
</a></span>>=
3 &&
851 //
<span class=
"RenoLink"><a href=
"mat_traits.html">mat_traits
</a></span><A
>::
<span class=
"RenoLink"><a href=
"mat_traits_Matrix_rows.html">rows
</a></span>==
<span class=
"RenoLink"><a href=
"mat_traits.html">mat_traits
</a></span><A
>::
<span class=
"RenoLink"><a href=
"mat_traits_Matrix_cols.html">cols
</a></span> &&
852 //
<span class=
"RenoLink"><a href=
"is_vec.html">is_vec
</a></span><B
>::value
&& <span class=
"RenoLink"><a href=
"vec_traits.html">vec_traits
</a></span><B
>::
<span class=
"RenoLink"><a href=
"vec_traits_Vector_dim.html">dim
</a></span>==
3
853 template
<class A,class B
>
854 void
<span class=
"RenoLink"><a href=
"rotate_mat_vec_scalar_.html">rotate
</a></span>( A
& a, B const
& axis, typename
<span class=
"RenoLink"><a href=
"mat_traits.html">mat_traits
</a></span><A
>::
<span class=
"RenoLink"><a href=
"mat_traits_M_scalar_type.html">scalar_type
</a></span> angle );
</span>
856 <span class=
"RenoIncludeSPAN">template
<int Dim,class Angle
>
857 -unspecified-return-type-
<span class=
"RenoLink"><a href=
"rotx_mat_scalar_.html">rotx_mat
</a></span>( Angle const
& angle );
</span>
859 <span class=
"RenoIncludeSPAN">//Only
<span class=
"RenoLink"><a href=
"SFINAE_enable_if.html">enabled if
</a></span>:
860 //
<span class=
"RenoLink"><a href=
"is_mat.html">is_mat
</a></span><A
>::value
&& <span class=
"RenoLink"><a href=
"mat_traits.html">mat_traits
</a></span><A
>::
<span class=
"RenoLink"><a href=
"mat_traits_Matrix_rows.html">rows
</a></span>>=
3 &&
861 //
<span class=
"RenoLink"><a href=
"mat_traits.html">mat_traits
</a></span><A
>::
<span class=
"RenoLink"><a href=
"mat_traits_Matrix_rows.html">rows
</a></span>==
<span class=
"RenoLink"><a href=
"mat_traits.html">mat_traits
</a></span><A
>::
<span class=
"RenoLink"><a href=
"mat_traits_Matrix_cols.html">cols
</a></span>
862 template
<class A
>
863 void
<span class=
"RenoLink"><a href=
"set_rotx_mat_scalar_.html">set_rotx
</a></span>( A
& a, typename
<span class=
"RenoLink"><a href=
"mat_traits.html">mat_traits
</a></span><A
>::
<span class=
"RenoLink"><a href=
"mat_traits_M_scalar_type.html">scalar_type
</a></span> angle );
</span>
865 <span class=
"RenoIncludeSPAN">//Only
<span class=
"RenoLink"><a href=
"SFINAE_enable_if.html">enabled if
</a></span>:
866 //
<span class=
"RenoLink"><a href=
"is_mat.html">is_mat
</a></span><A
>::value
&& <span class=
"RenoLink"><a href=
"mat_traits.html">mat_traits
</a></span><A
>::
<span class=
"RenoLink"><a href=
"mat_traits_Matrix_rows.html">rows
</a></span>>=
3 &&
867 //
<span class=
"RenoLink"><a href=
"mat_traits.html">mat_traits
</a></span><A
>::
<span class=
"RenoLink"><a href=
"mat_traits_Matrix_rows.html">rows
</a></span>==
<span class=
"RenoLink"><a href=
"mat_traits.html">mat_traits
</a></span><A
>::
<span class=
"RenoLink"><a href=
"mat_traits_Matrix_cols.html">cols
</a></span>
868 template
<class A
>
869 void
<span class=
"RenoLink"><a href=
"rotate_x_mat_scalar_.html">rotate_x
</a></span>( A
& a, typename
<span class=
"RenoLink"><a href=
"mat_traits.html">mat_traits
</a></span><A
>::
<span class=
"RenoLink"><a href=
"mat_traits_M_scalar_type.html">scalar_type
</a></span> angle );
</span>
871 <span class=
"RenoIncludeSPAN">template
<int Dim,class Angle
>
872 -unspecified-return-type-
<span class=
"RenoLink"><a href=
"roty_mat_scalar_.html">roty_mat
</a></span>( Angle const
& angle );
</span>
874 <span class=
"RenoIncludeSPAN">//Only
<span class=
"RenoLink"><a href=
"SFINAE_enable_if.html">enabled if
</a></span>:
875 //
<span class=
"RenoLink"><a href=
"is_mat.html">is_mat
</a></span><A
>::value
&& <span class=
"RenoLink"><a href=
"mat_traits.html">mat_traits
</a></span><A
>::
<span class=
"RenoLink"><a href=
"mat_traits_Matrix_rows.html">rows
</a></span>>=
3 &&
876 //
<span class=
"RenoLink"><a href=
"mat_traits.html">mat_traits
</a></span><A
>::
<span class=
"RenoLink"><a href=
"mat_traits_Matrix_rows.html">rows
</a></span>==
<span class=
"RenoLink"><a href=
"mat_traits.html">mat_traits
</a></span><A
>::
<span class=
"RenoLink"><a href=
"mat_traits_Matrix_cols.html">cols
</a></span>
877 template
<class A
>
878 void
<span class=
"RenoLink"><a href=
"set_roty_mat_scalar_.html">set_roty
</a></span>( A
& a, typename
<span class=
"RenoLink"><a href=
"mat_traits.html">mat_traits
</a></span><A
>::
<span class=
"RenoLink"><a href=
"mat_traits_M_scalar_type.html">scalar_type
</a></span> angle );
</span>
880 <span class=
"RenoIncludeSPAN">//Only
<span class=
"RenoLink"><a href=
"SFINAE_enable_if.html">enabled if
</a></span>:
881 //
<span class=
"RenoLink"><a href=
"is_mat.html">is_mat
</a></span><A
>::value
&& <span class=
"RenoLink"><a href=
"mat_traits.html">mat_traits
</a></span><A
>::
<span class=
"RenoLink"><a href=
"mat_traits_Matrix_rows.html">rows
</a></span>>=
3 &&
882 //
<span class=
"RenoLink"><a href=
"mat_traits.html">mat_traits
</a></span><A
>::
<span class=
"RenoLink"><a href=
"mat_traits_Matrix_rows.html">rows
</a></span>==
<span class=
"RenoLink"><a href=
"mat_traits.html">mat_traits
</a></span><A
>::
<span class=
"RenoLink"><a href=
"mat_traits_Matrix_cols.html">cols
</a></span>
883 template
<class A
>
884 void
<span class=
"RenoLink"><a href=
"rotate_y_mat_scalar_.html">rotate_y
</a></span>( A
& a, typename
<span class=
"RenoLink"><a href=
"mat_traits.html">mat_traits
</a></span><A
>::
<span class=
"RenoLink"><a href=
"mat_traits_M_scalar_type.html">scalar_type
</a></span> angle );
</span>
886 <span class=
"RenoIncludeSPAN">template
<int Dim,class Angle
>
887 -unspecified-return-type-
<span class=
"RenoLink"><a href=
"rotz_mat_scalar_.html">rotz_mat
</a></span>( Angle const
& angle );
</span>
889 <span class=
"RenoIncludeSPAN">//Only
<span class=
"RenoLink"><a href=
"SFINAE_enable_if.html">enabled if
</a></span>:
890 //
<span class=
"RenoLink"><a href=
"is_mat.html">is_mat
</a></span><A
>::value
&& <span class=
"RenoLink"><a href=
"mat_traits.html">mat_traits
</a></span><A
>::
<span class=
"RenoLink"><a href=
"mat_traits_Matrix_rows.html">rows
</a></span>>=
3 &&
891 //
<span class=
"RenoLink"><a href=
"mat_traits.html">mat_traits
</a></span><A
>::
<span class=
"RenoLink"><a href=
"mat_traits_Matrix_rows.html">rows
</a></span>==
<span class=
"RenoLink"><a href=
"mat_traits.html">mat_traits
</a></span><A
>::
<span class=
"RenoLink"><a href=
"mat_traits_Matrix_cols.html">cols
</a></span>
892 template
<class A
>
893 void
<span class=
"RenoLink"><a href=
"set_rotz_mat_scalar_.html">set_rotz
</a></span>( A
& a, typename
<span class=
"RenoLink"><a href=
"mat_traits.html">mat_traits
</a></span><A
>::
<span class=
"RenoLink"><a href=
"mat_traits_M_scalar_type.html">scalar_type
</a></span> angle );
</span>
895 <span class=
"RenoIncludeSPAN">//Only
<span class=
"RenoLink"><a href=
"SFINAE_enable_if.html">enabled if
</a></span>:
896 //
<span class=
"RenoLink"><a href=
"is_mat.html">is_mat
</a></span><A
>::value
&& <span class=
"RenoLink"><a href=
"mat_traits.html">mat_traits
</a></span><A
>::
<span class=
"RenoLink"><a href=
"mat_traits_Matrix_rows.html">rows
</a></span>>=
3 &&
897 //
<span class=
"RenoLink"><a href=
"mat_traits.html">mat_traits
</a></span><A
>::
<span class=
"RenoLink"><a href=
"mat_traits_Matrix_rows.html">rows
</a></span>==
<span class=
"RenoLink"><a href=
"mat_traits.html">mat_traits
</a></span><A
>::
<span class=
"RenoLink"><a href=
"mat_traits_Matrix_cols.html">cols
</a></span>
898 template
<class A
>
899 void
<span class=
"RenoLink"><a href=
"rotate_z_mat_scalar_.html">rotate_z
</a></span>( A
& a, typename
<span class=
"RenoLink"><a href=
"mat_traits.html">mat_traits
</a></span><A
>::
<span class=
"RenoLink"><a href=
"mat_traits_M_scalar_type.html">scalar_type
</a></span> angle );
</span>
901 <span class=
"RenoIncludeSPAN">//Only
<span class=
"RenoLink"><a href=
"SFINAE_enable_if.html">enabled if
</a></span>:
902 //
<span class=
"RenoLink"><a href=
"is_mat.html">is_mat
</a></span><A
>::value
&& <span class=
"RenoLink"><a href=
"mat_traits.html">mat_traits
</a></span><A
>::
<span class=
"RenoLink"><a href=
"mat_traits_Matrix_rows.html">rows
</a></span>==
<span class=
"RenoLink"><a href=
"mat_traits.html">mat_traits
</a></span><A
>::
<span class=
"RenoLink"><a href=
"mat_traits_Matrix_cols.html">cols
</a></span>
903 template
<class A
>
904 <span class=
"RenoLink"><a href=
"mat_traits.html">mat_traits
</a></span><A
>::
<span class=
"RenoLink"><a href=
"mat_traits_M_scalar_type.html">scalar_type
</a></span>
905 <span class=
"RenoLink"><a href=
"determinant.html">determinant
</a></span>( A const
& a );
</span>
907 <span class=
"RenoIncludeSPAN">template
<class T
>
908 -unspecified-return-type
909 <span class=
"RenoLink"><a href=
"perspective_lh.html">perspective_lh
</a></span>( T fov_y, T aspect, T zn, T zf );
</span>
911 <span class=
"RenoIncludeSPAN">template
<class T
>
912 -unspecified-return-type
913 <span class=
"RenoLink"><a href=
"perspective_rh.html">perspective_rh
</a></span>( T fov_y, T aspect, T zn, T zf );
</span>
915 <span class=
"RenoIncludeSPAN">//Only
<span class=
"RenoLink"><a href=
"SFINAE_enable_if.html">enabled if
</a></span>:
<span class=
"RenoLink"><a href=
"is_mat.html">is_mat
</a></span><A
>::value
916 template
<class A
>
917 -unspecified-return-type-
<span class=
"RenoLink"><a href=
"mref.html">mref
</a></span>( A
& a );
</span>
919 <span class=
"RenoIncludeSPAN">//Only
<span class=
"RenoLink"><a href=
"SFINAE_enable_if.html">enabled if
</a></span>:
<span class=
"RenoLink"><a href=
"is_mat.html">is_mat
</a></span><A
>::value
920 template
<class Scalar,class A
>
921 -unspecified-return_type-
<span class=
"RenoLink"><a href=
"scalar_cast_mat_.html">scalar_cast
</a></span>( A const
& a );
</span></span></span>
925 <span class=
"RenoIncludeSPAN"> //*** Quaternion-Vector operations ***
927 <span class=
"RenoIncludeSPAN"><span class=
"RenoIncludeSPAN">//Only
<span class=
"RenoLink"><a href=
"SFINAE_enable_if.html">enabled if
</a></span>:
928 //
<span class=
"RenoLink"><a href=
"is_quat.html">is_quat
</a></span><A
>::value
&&
929 //
<span class=
"RenoLink"><a href=
"is_vec.html">is_vec
</a></span><B
>::value
&& <span class=
"RenoLink"><a href=
"vec_traits.html">vec_traits
</a></span><B
>::
<span class=
"RenoLink"><a href=
"vec_traits_Vector_dim.html">dim
</a></span>==
3
930 template
<class A,class B
>
931 typename
<span class=
"RenoLink"><a href=
"deduce_vec2.html">deduce_vec2
</a></span><A,B,
3>::type
932 <span class=
"RenoLink"><a href=
"operator_times_mat_vec_.html">operator*
</a></span>( A const
& a, B const
& b );
</span></span></span>
936 <span class=
"RenoIncludeSPAN"> //*** Vector-Matrix operations ***
938 <span class=
"RenoIncludeSPAN"><span class=
"RenoIncludeSPAN">//Only
<span class=
"RenoLink"><a href=
"SFINAE_enable_if.html">enabled if
</a></span>:
939 //
<span class=
"RenoLink"><a href=
"is_mat.html">is_mat
</a></span><A
>::value
&& <span class=
"RenoLink"><a href=
"is_vec.html">is_vec
</a></span><B
>::value
&&
940 //
<span class=
"RenoLink"><a href=
"mat_traits.html">mat_traits
</a></span><A
>::
<span class=
"RenoLink"><a href=
"mat_traits_Matrix_cols.html">cols
</a></span>==
<span class=
"RenoLink"><a href=
"vec_traits.html">vec_traits
</a></span><B
>::
<span class=
"RenoLink"><a href=
"vec_traits_Vector_dim.html">dim
</a></span>
941 template
<class A,class B
>
942 typename
<span class=
"RenoLink"><a href=
"deduce_vec2.html">deduce_vec2
</a></span><A,B,
<span class=
"RenoLink"><a href=
"mat_traits.html">mat_traits
</a></span><A
>::
<span class=
"RenoLink"><a href=
"mat_traits_Matrix_rows.html">rows
</a></span>>::type
943 <span class=
"RenoLink"><a href=
"operator_times_mat_vec_.html">operator*
</a></span>( A const
& a, B const
& b );
</span>
945 <span class=
"RenoIncludeSPAN">//Only
<span class=
"RenoLink"><a href=
"SFINAE_enable_if.html">enabled if
</a></span>:
946 //
<span class=
"RenoLink"><a href=
"is_mat.html">is_mat
</a></span><A
>::value
&& <span class=
"RenoLink"><a href=
"is_vec.html">is_vec
</a></span><B
>::value
&&
947 //
<span class=
"RenoLink"><a href=
"mat_traits.html">mat_traits
</a></span><A
>::
<span class=
"RenoLink"><a href=
"mat_traits_Matrix_rows.html">rows
</a></span>==
4 && <span class=
"RenoLink"><a href=
"mat_traits.html">mat_traits
</a></span><A
>::
<span class=
"RenoLink"><a href=
"mat_traits_Matrix_cols.html">cols
</a></span>==
4 &&
948 //
<span class=
"RenoLink"><a href=
"vec_traits.html">vec_traits
</a></span><B
>::
<span class=
"RenoLink"><a href=
"vec_traits_Vector_dim.html">dim
</a></span>==
3
949 template
<class A,class B
>
950 <span class=
"RenoLink"><a href=
"deduce_vec2.html">deduce_vec2
</a></span><A,B,
3> >::type
951 <span class=
"RenoLink"><a href=
"transform_vector.html">transform_vector
</a></span>( A const
& a, B const
& b );
</span>
953 <span class=
"RenoIncludeSPAN">//Only
<span class=
"RenoLink"><a href=
"SFINAE_enable_if.html">enabled if
</a></span>:
954 //
<span class=
"RenoLink"><a href=
"is_mat.html">is_mat
</a></span><A
>::value
&& <span class=
"RenoLink"><a href=
"is_vec.html">is_vec
</a></span><B
>::value
&&
955 //
<span class=
"RenoLink"><a href=
"mat_traits.html">mat_traits
</a></span><A
>::
<span class=
"RenoLink"><a href=
"mat_traits_Matrix_rows.html">rows
</a></span>==
4 && <span class=
"RenoLink"><a href=
"mat_traits.html">mat_traits
</a></span><A
>::
<span class=
"RenoLink"><a href=
"mat_traits_Matrix_cols.html">cols
</a></span>==
4 &&
956 //
<span class=
"RenoLink"><a href=
"vec_traits.html">vec_traits
</a></span><B
>::
<span class=
"RenoLink"><a href=
"vec_traits_Vector_dim.html">dim
</a></span>==
3
957 template
<class A,class B
>
958 <span class=
"RenoLink"><a href=
"deduce_vec2.html">deduce_vec2
</a></span><A,B,
3> >::type
959 <span class=
"RenoLink"><a href=
"transform_point.html">transform_point
</a></span>( A const
& a, B const
& b );
</span></span></span>
963 <span class=
"RenoIncludeSPAN"> //*** Matrix-to-matrix view proxies ***
965 <span class=
"RenoIncludeSPAN"><span class=
"RenoIncludeSPAN">template
<int R
>
966 -unspecified-return-type-
<span class=
"RenoLink"><a href=
"del_row.html">del_row
</a></span>();
</span>
968 <span class=
"RenoIncludeSPAN">template
<int C
>
969 -unspecified-return-type-
<span class=
"RenoLink"><a href=
"del_col.html">del_col
</a></span>();
</span>
971 <span class=
"RenoIncludeSPAN">template
<int R,int C
>
972 -unspecified-return-type-
<span class=
"RenoLink"><a href=
"del_row_col.html">del_row_col
</a></span>();
</span>
974 <span class=
"RenoIncludeSPAN">template
<int R
>
975 -unspecified-return-type-
<span class=
"RenoLink"><a href=
"neg_row.html">neg_row
</a></span>();
</span>
977 <span class=
"RenoIncludeSPAN">template
<int C
>
978 -unspecified-return-type-
<span class=
"RenoLink"><a href=
"neg_col.html">neg_col
</a></span>();
</span>
980 <span class=
"RenoIncludeSPAN">template
<int R1,int R2
>
981 -unspecified-return-type-
<span class=
"RenoLink"><a href=
"swap_rows.html">swap_rows
</a></span>();
</span>
983 <span class=
"RenoIncludeSPAN">template
<int C1,int C2
>
984 -unspecified-return-type-
<span class=
"RenoLink"><a href=
"swap_cols.html">swap_cols
</a></span>();
</span>
986 <span class=
"RenoIncludeSPAN">-unspecified-return-type-
<span class=
"RenoLink"><a href=
"transposed.html">transposed
</a></span>();
</span></span></span>
990 <span class=
"RenoIncludeSPAN"> //*** Vector-to-matrix view proxies ***
992 <span class=
"RenoIncludeSPAN"><span class=
"RenoIncludeSPAN">//Only
<span class=
"RenoLink"><a href=
"SFINAE_enable_if.html">enabled if
</a></span>:
<span class=
"RenoLink"><a href=
"is_vec.html">is_vec
</a></span><A
>::value
993 template
<iclass A
>
994 -unspecified-return-type-
<span class=
"RenoLink"><a href=
"col_mat.html">col_mat
</a></span>( A
& a );
</span>
996 <span class=
"RenoIncludeSPAN">//Only
<span class=
"RenoLink"><a href=
"SFINAE_enable_if.html">enabled if
</a></span>:
<span class=
"RenoLink"><a href=
"is_vec.html">is_vec
</a></span><A
>::value
997 template
<iclass A
>
998 -unspecified-return-type-
<span class=
"RenoLink"><a href=
"row_mat.html">row_mat
</a></span>( A
& a );
</span>
1000 <span class=
"RenoIncludeSPAN">//Only
<span class=
"RenoLink"><a href=
"SFINAE_enable_if.html">enabled if
</a></span>:
<span class=
"RenoLink"><a href=
"is_vec.html">is_vec
</a></span><A
>::value
1001 template
<iclass A
>
1002 -unspecified-return-type-
<span class=
"RenoLink"><a href=
"translation_mat.html">translation_mat
</a></span>( A
& a );
</span>
1004 <span class=
"RenoIncludeSPAN">//Only
<span class=
"RenoLink"><a href=
"SFINAE_enable_if.html">enabled if
</a></span>:
<span class=
"RenoLink"><a href=
"is_vec.html">is_vec
</a></span><A
>::value
1005 template
<iclass A
>
1006 -unspecified-return-type-
<span class=
"RenoLink"><a href=
"diag_mat.html">diag_mat
</a></span>( A
& a );
</span></span></span>
1010 <span class=
"RenoIncludeSPAN"> //*** Matrix-to-vector view proxies ***
1012 <span class=
"RenoIncludeSPAN"><span class=
"RenoIncludeSPAN">//Only
<span class=
"RenoLink"><a href=
"SFINAE_enable_if.html">enabled if
</a></span>:
<span class=
"RenoLink"><a href=
"is_mat.html">is_mat
</a></span><A
>::value
1013 template
<int C,class A
>
1014 -unspecified-return-type-
<span class=
"RenoLink"><a href=
"col.html">col
</a></span>( A
& a );
</span>
1016 <span class=
"RenoIncludeSPAN">//Only
<span class=
"RenoLink"><a href=
"SFINAE_enable_if.html">enabled if
</a></span>:
<span class=
"RenoLink"><a href=
"is_mat.html">is_mat
</a></span><A
>::value
1017 template
<int C,class A
>
1018 -unspecified-return-type-
<span class=
"RenoLink"><a href=
"row.html">row
</a></span>( A
& a );
</span>
1020 <span class=
"RenoIncludeSPAN">//Only
<span class=
"RenoLink"><a href=
"SFINAE_enable_if.html">enabled if
</a></span>:
<span class=
"RenoLink"><a href=
"is_mat.html">is_mat
</a></span><A
>::value
1021 template
<class A
>
1022 -unspecified-return-type-
<span class=
"RenoLink"><a href=
"diag.html">diag
</a></span>( A
& a );
</span>
1024 <span class=
"RenoIncludeSPAN">//Only
<span class=
"RenoLink"><a href=
"SFINAE_enable_if.html">enabled if
</a></span>:
1025 //
<span class=
"RenoLink"><a href=
"is_mat.html">is_mat
</a></span><A
>::value
&&
1026 //
<span class=
"RenoLink"><a href=
"mat_traits.html">mat_traits
</a></span><A
>::
<span class=
"RenoLink"><a href=
"mat_traits_Matrix_rows.html">rows
</a></span>==
<span class=
"RenoLink"><a href=
"mat_traits.html">mat_traits
</a></span><A
>::
<span class=
"RenoLink"><a href=
"mat_traits_Matrix_cols.html">cols
</a></span> && <span class=
"RenoLink"><a href=
"mat_traits.html">mat_traits
</a></span><A
>::
<span class=
"RenoLink"><a href=
"mat_traits_Matrix_rows.html">rows
</a></span>>=
3
1027 template
<class A
>
1028 -unspecified-return-type-
<span class=
"RenoLink"><a href=
"translation.html">translation
</a></span>( A
& a );
</span></span></span>
1032 <span class=
"RenoIncludeSPAN"> //*** Generic programming utilities ***
1034 <span class=
"RenoIncludeSPAN"><span class=
"RenoIncludeSPAN">template
<class Q
>
1035 struct
<span class=
"RenoLink"><a href=
"deduce_quat.html">deduce_quat
</a></span>
1040 <span class=
"RenoIncludeSPAN">template
<class A,class B
>
1041 struct
<span class=
"RenoLink"><a href=
"deduce_quat2.html">deduce_quat2
</a></span>
1043 typedef /*unspecified*/ type;
1046 <span class=
"RenoIncludeSPAN"><span class=
"RenoIncludeSPAN">template
<
1048 int Dim=
<span class=
"RenoLink"><a href=
"vec_traits_Vector_dim.html">vec_traits
<Vector
>::dim
</a></span>>
1049 struct
<span class=
"RenoLink"><a href=
"deduce_vec.html">deduce_vec
</a></span>
1051 typedef /*unspecified*/ type;
1054 <span class=
"RenoIncludeSPAN">template
<class A,class B,int Dim
>
1055 struct
<span class=
"RenoLink"><a href=
"deduce_vec2.html">deduce_vec2
</a></span>
1057 typedef /*unspecified*/ type;
1060 <span class=
"RenoIncludeSPAN"><span class=
"RenoIncludeSPAN">template
<
1062 int Rows=
<span class=
"RenoLink"><a href=
"mat_traits_Matrix_rows.html">mat_traits
<Matrix
>::rows
</a></span>,
1063 int Cols=
<span class=
"RenoLink"><a href=
"mat_traits_Matrix_cols.html">mat_traits
<Matrix
>::cols
</a></span>>
1064 struct
<span class=
"RenoLink"><a href=
"deduce_mat.html">deduce_mat
</a></span>
1066 typedef /*unspecified*/ type;
1069 <span class=
"RenoIncludeSPAN">template
<class A,class B,int Rows,int Cols
>
1070 struct
<span class=
"RenoLink"><a href=
"deduce_mat2.html">deduce_mat2
</a></span>
1072 typedef /*unspecified*/ type;
1075 <span class=
"RenoIncludeSPAN"><span class=
"RenoIncludeSPAN">template
<class A,class B
>
1076 struct
<span class=
"RenoLink"><a href=
"deduce_scalar.html">deduce_scalar
</a></span>
1078 typedef typename impl
<A,B
>::type type;
1081 <span class=
"RenoIncludeSPAN"><span class=
"RenoIncludeSPAN">template
<class Scalar
>
1082 struct
<span class=
"RenoLink"><a href=
"scalar_traits.html">scalar_traits
</a></span>
1084 <span class=
"RenoLink"><a href=
"BOOST_QVM_INLINE_CRITICAL.html">BOOST_QVM_INLINE_CRITICAL
</a></span>
1085 static Scalar value( int v )
1091 <span class=
"RenoIncludeSPAN">template
<class T
>
1092 struct
<span class=
"RenoLink"><a href=
"scalar.html">scalar
</a></span>
1094 typedef /*exact definition unspecified*/ type;
1095 };
</span></span></span>
1099 <span class=
"RenoIncludeSPAN"> //*** Exception types ***
1101 <span class=
"RenoIncludeSPAN"><span class=
"RenoIncludeSPAN">struct
<span class=
"RenoLink"><a href=
"error.html">error
</a></span>:
1102 virtual boost::exception,
1103 virtual std::exception
1107 <span class=
"RenoIncludeSPAN">struct
<span class=
"RenoLink"><a href=
"zero_determinant_error.html">zero_determinant_error
</a></span>: virtual
<span class=
"RenoLink"><a href=
"error.html">error
</a></span> { };
</span>
1108 <span class=
"RenoIncludeSPAN">struct
<span class=
"RenoLink"><a href=
"zero_magnitude_error.html">zero_magnitude_error
</a></span>: virtual
<span class=
"RenoLink"><a href=
"error.html">error
</a></span> { };
</span></span></span>
1113 <span class=
"RenoIncludeSPAN">//*** Macros ***
1115 <span class=
"RenoIncludeSPAN"><span class=
"RenoIncludeSPAN">#ifndef
<span class=
"RenoLink"><a href=
"BOOST_QVM_FORCE_INLINE.html">BOOST_QVM_FORCE_INLINE
</a></span>
1116 #define
<span class=
"RenoLink"><a href=
"BOOST_QVM_FORCE_INLINE.html">BOOST_QVM_FORCE_INLINE
</a></span> /*platform-specific*/
1119 <span class=
"RenoIncludeSPAN">#ifndef
<span class=
"RenoLink"><a href=
"BOOST_QVM_INLINE.html">BOOST_QVM_INLINE
</a></span>
1120 #define
<span class=
"RenoLink"><a href=
"BOOST_QVM_INLINE.html">BOOST_QVM_INLINE
</a></span> inline
1123 <span class=
"RenoIncludeSPAN">#ifndef
<span class=
"RenoLink"><a href=
"BOOST_QVM_INLINE_TRIVIAL.html">BOOST_QVM_INLINE_TRIVIAL
</a></span>
1124 #define
<span class=
"RenoLink"><a href=
"BOOST_QVM_INLINE_TRIVIAL.html">BOOST_QVM_INLINE_TRIVIAL
</a></span> <span class=
"RenoLink"><a href=
"BOOST_QVM_FORCE_INLINE.html">BOOST_QVM_FORCE_INLINE
</a></span>
1127 <span class=
"RenoIncludeSPAN">#ifndef
<span class=
"RenoLink"><a href=
"BOOST_QVM_INLINE_CRITICAL.html">BOOST_QVM_INLINE_CRITICAL
</a></span>
1128 #define
<span class=
"RenoLink"><a href=
"BOOST_QVM_INLINE_CRITICAL.html">BOOST_QVM_INLINE_CRITICAL
</a></span> <span class=
"RenoLink"><a href=
"BOOST_QVM_FORCE_INLINE.html">BOOST_QVM_FORCE_INLINE
</a></span>
1131 <span class=
"RenoIncludeSPAN">#ifndef
<span class=
"RenoLink"><a href=
"BOOST_QVM_INLINE_OPERATIONS.html">BOOST_QVM_INLINE_OPERATIONS
</a></span>
1132 #define
<span class=
"RenoLink"><a href=
"BOOST_QVM_INLINE_OPERATIONS.html">BOOST_QVM_INLINE_OPERATIONS
</a></span> <span class=
"RenoLink"><a href=
"BOOST_QVM_INLINE.html">BOOST_QVM_INLINE
</a></span>
1135 <span class=
"RenoIncludeSPAN">#ifndef
<span class=
"RenoLink"><a href=
"BOOST_QVM_INLINE_RECURSION.html">BOOST_QVM_INLINE_RECURSION
</a></span>
1136 #define
<span class=
"RenoLink"><a href=
"BOOST_QVM_INLINE_RECURSION.html">BOOST_QVM_INLINE_RECURSION
</a></span> <span class=
"RenoLink"><a href=
"BOOST_QVM_INLINE_OPERATIONS.html">BOOST_QVM_INLINE_OPERATIONS
</a></span>
1137 #endif
</span></span>
1139 <span class=
"RenoIncludeSPAN"><span class=
"RenoIncludeSPAN">#ifndef
<span class=
"RenoLink"><a href=
"BOOST_QVM_ASSERT.html">BOOST_QVM_ASSERT
</a></span>
1140 #include
<boost/assert.hpp
>
1141 #define
<span class=
"RenoLink"><a href=
"BOOST_QVM_ASSERT.html">BOOST_QVM_ASSERT
</a></span> BOOST_ASSERT
1142 #endif
</span></span>
1144 <span class=
"RenoIncludeSPAN"><span class=
"RenoIncludeSPAN">#ifndef
<span class=
"RenoLink"><a href=
"BOOST_QVM_STATIC_ASSERT.html">BOOST_QVM_STATIC_ASSERT
</a></span>
1145 #include
<boost/static_assert.hpp
>
1146 #define
<span class=
"RenoLink"><a href=
"BOOST_QVM_STATIC_ASSERT.html">BOOST_QVM_STATIC_ASSERT
</a></span> BOOST_STATIC_ASSERT
1147 #endif
</span></span>
1149 <span class=
"RenoIncludeSPAN"><span class=
"RenoIncludeSPAN">#ifndef
<span class=
"RenoLink"><a href=
"BOOST_QVM_THROW_EXCEPTION.html">BOOST_QVM_THROW_EXCEPTION
</a></span>
1150 #include
<span class=
"RenoLink"><a href=
"www.boost.org/doc/libs/release/libs/exception/doc/boost_throw_exception_hpp.html"><boost/throw_exception.hpp
></a></span>
1151 #define
<span class=
"RenoLink"><a href=
"BOOST_QVM_THROW_EXCEPTION.html">BOOST_QVM_THROW_EXCEPTION
</a></span> <span class=
"RenoLink"><a href=
"http://www.boost.org/doc/libs/release/libs/exception/doc/BOOST_THROW_EXCEPTION.html">BOOST_THROW_EXCEPTION
</a></span>
1152 #endif
</span></span></span>
1154 </div><div class=
"RenoAutoDIV"><div class=
"RenoHR"><hr/></div>
1155 See also:
<span class=
"RenoPageList"><a href=
"index.html">Boost QVM
</a></span>
1157 <!-- Copyright (c) 2008-2016 Emil Dotchevski and Reverge Studios, Inc. -->
1158 <!-- Distributed under the Boost Software License, Version 1.0. (See accompanying -->
1159 <!-- file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) -->
1162 <a class=
"logo" href=
"http://jigsaw.w3.org/css-validator/check/referer"><img class=
"logo_pic" src=
"valid-css.png" alt=
"Valid CSS" height=
"31" width=
"88"/></a>
1163 <a class=
"logo" href=
"http://validator.w3.org/check?uri=referer"><img class=
"logo_pic" src=
"valid-xhtml.png" alt=
"Valid XHTML 1.0" height=
"31" width=
"88"/></a>
1164 <small>Copyright (c)
2008-
2016 by Emil Dotchevski and Reverge Studios, Inc.
<br/>
1165 Distributed under the
<a href=
"http://www.boost.org/LICENSE_1_0.txt">Boost Software License, Version
1.0</a>.
</small>