matrix_major_storage.hpp
Go to the documentation of this file.
00001 
00002 
00003 
00004 
00005 
00006 
00007 
00008 
00009 
00010 
00011 
00012 
00013 
00014 
00015 
00016 
00017 
00018 
00019 
00020 
00021 
00022 
00023 
00024 
00025 
00026 
00027 
00028 
00029 
00030 
00031 
00032 
00033 
00034 
00035 
00036 
00037 
00038 
00039 #ifndef GLM_GTX_matrix_major_storage
00040 #define GLM_GTX_matrix_major_storage GLM_VERSION
00041 
00042 // Dependency:
00043 #include "../glm.hpp"
00044 
00045 #if(defined(GLM_MESSAGES) && !defined(glm_ext))
00046 #       pragma message("GLM: GLM_GTX_matrix_major_storage extension included")
00047 #endif
00048 
00049 namespace glm
00050 {
00053 
00056         template <typename T> 
00057         detail::tmat2x2<T> rowMajor2(
00058                 detail::tvec2<T> const & v1, 
00059                 detail::tvec2<T> const & v2);
00060                 
00063         template <typename T> 
00064         detail::tmat2x2<T> rowMajor2(
00065                 detail::tmat2x2<T> const & m);
00066 
00069         template <typename T> 
00070         detail::tmat3x3<T> rowMajor3(
00071                 detail::tvec3<T> const & v1, 
00072                 detail::tvec3<T> const & v2, 
00073                 detail::tvec3<T> const & v3);
00074 
00077         template <typename T> 
00078         detail::tmat3x3<T> rowMajor3(
00079                 detail::tmat3x3<T> const & m);
00080 
00083         template <typename T> 
00084         detail::tmat4x4<T> rowMajor4(
00085                 detail::tvec4<T> const & v1, 
00086                 detail::tvec4<T> const & v2,
00087                 detail::tvec4<T> const & v3, 
00088                 detail::tvec4<T> const & v4);
00089 
00092         template <typename T> 
00093         detail::tmat4x4<T> rowMajor4(
00094                 detail::tmat4x4<T> const & m);
00095 
00098         template <typename T> 
00099         detail::tmat2x2<T> colMajor2(
00100                 detail::tvec2<T> const & v1, 
00101                 detail::tvec2<T> const & v2);
00102                 
00105         template <typename T> 
00106         detail::tmat2x2<T> colMajor2(
00107                 detail::tmat2x2<T> const & m);
00108 
00111         template <typename T> 
00112         detail::tmat3x3<T> colMajor3(
00113                 detail::tvec3<T> const & v1, 
00114                 detail::tvec3<T> const & v2, 
00115                 detail::tvec3<T> const & v3);
00116                 
00119         template <typename T> 
00120         detail::tmat3x3<T> colMajor3(
00121                 detail::tmat3x3<T> const & m);
00122                 
00125         template <typename T> 
00126         detail::tmat4x4<T> colMajor4(
00127                 detail::tvec4<T> const & v1, 
00128                 detail::tvec4<T> const & v2, 
00129                 detail::tvec4<T> const & v3, 
00130                 detail::tvec4<T> const & v4);
00131                                 
00134         template <typename T> 
00135         detail::tmat4x4<T> colMajor4(
00136                 detail::tmat4x4<T> const & m);
00137 
00139 }//namespace glm
00140 
00141 #include "matrix_major_storage.inl"
00142 
00143 #endif//GLM_GTX_matrix_major_storage