GLM  0.9.5
matrix_major_storage.hpp
Go to the documentation of this file.
1 
39 #ifndef GLM_GTX_matrix_major_storage
40 #define GLM_GTX_matrix_major_storage
41 
42 // Dependency:
43 #include "../glm.hpp"
44 
45 #if(defined(GLM_MESSAGES) && !defined(GLM_EXT_INCLUDED))
46 # pragma message("GLM: GLM_GTX_matrix_major_storage extension included")
47 #endif
48 
49 namespace glm
50 {
53 
56  template <typename T, precision P>
57  detail::tmat2x2<T, P> rowMajor2(
58  detail::tvec2<T, P> const & v1,
59  detail::tvec2<T, P> const & v2);
60 
63  template <typename T, precision P>
64  detail::tmat2x2<T, P> rowMajor2(
65  detail::tmat2x2<T, P> const & m);
66 
69  template <typename T, precision P>
70  detail::tmat3x3<T, P> rowMajor3(
71  detail::tvec3<T, P> const & v1,
72  detail::tvec3<T, P> const & v2,
73  detail::tvec3<T, P> const & v3);
74 
77  template <typename T, precision P>
78  detail::tmat3x3<T, P> rowMajor3(
79  detail::tmat3x3<T, P> const & m);
80 
83  template <typename T, precision P>
84  detail::tmat4x4<T, P> rowMajor4(
85  detail::tvec4<T, P> const & v1,
86  detail::tvec4<T, P> const & v2,
87  detail::tvec4<T, P> const & v3,
88  detail::tvec4<T, P> const & v4);
89 
92  template <typename T, precision P>
93  detail::tmat4x4<T, P> rowMajor4(
94  detail::tmat4x4<T, P> const & m);
95 
98  template <typename T, precision P>
99  detail::tmat2x2<T, P> colMajor2(
100  detail::tvec2<T, P> const & v1,
101  detail::tvec2<T, P> const & v2);
102 
105  template <typename T, precision P>
106  detail::tmat2x2<T, P> colMajor2(
107  detail::tmat2x2<T, P> const & m);
108 
111  template <typename T, precision P>
112  detail::tmat3x3<T, P> colMajor3(
113  detail::tvec3<T, P> const & v1,
114  detail::tvec3<T, P> const & v2,
115  detail::tvec3<T, P> const & v3);
116 
119  template <typename T, precision P>
120  detail::tmat3x3<T, P> colMajor3(
121  detail::tmat3x3<T, P> const & m);
122 
125  template <typename T, precision P>
126  detail::tmat4x4<T, P> colMajor4(
127  detail::tvec4<T, P> const & v1,
128  detail::tvec4<T, P> const & v2,
129  detail::tvec4<T, P> const & v3,
130  detail::tvec4<T, P> const & v4);
131 
134  template <typename T, precision P>
135  detail::tmat4x4<T, P> colMajor4(
136  detail::tmat4x4<T, P> const & m);
137 
139 }//namespace glm
140 
141 #include "matrix_major_storage.inl"
142 
143 #endif//GLM_GTX_matrix_major_storage
detail::tmat4x4< T, P > rowMajor4(detail::tvec4< T, P > const &v1, detail::tvec4< T, P > const &v2, detail::tvec4< T, P > const &v3, detail::tvec4< T, P > const &v4)
Build a row major matrix from row vectors.
detail::tmat2x2< T, P > rowMajor2(detail::tvec2< T, P > const &v1, detail::tvec2< T, P > const &v2)
Build a row major matrix from row vectors.
detail::tmat3x3< T, P > rowMajor3(detail::tvec3< T, P > const &v1, detail::tvec3< T, P > const &v2, detail::tvec3< T, P > const &v3)
Build a row major matrix from row vectors.
detail::tmat2x2< T, P > colMajor2(detail::tvec2< T, P > const &v1, detail::tvec2< T, P > const &v2)
Build a column major matrix from column vectors.
detail::tmat3x3< T, P > colMajor3(detail::tvec3< T, P > const &v1, detail::tvec3< T, P > const &v2, detail::tvec3< T, P > const &v3)
Build a column major matrix from column vectors.
detail::tmat4x4< T, P > colMajor4(detail::tvec4< T, P > const &v1, detail::tvec4< T, P > const &v2, detail::tvec4< T, P > const &v3, detail::tvec4< T, P > const &v4)
Build a column major matrix from column vectors.