matrix_integer.hpp
00001 
00002 // OpenGL Mathematics Copyright (c) 2005 - 2011 G-Truc Creation (www.g-truc.net)
00004 // Created : 2011-01-20
00005 // Updated : 2011-01-20
00006 // Licence : This source is under MIT License
00007 // File    : glm/gtc/matrix_integer.hpp
00009 // Dependency:
00010 // - GLM core
00012 
00013 #ifndef glm_gtc_matrix_integer
00014 #define glm_gtc_matrix_integer
00015 
00016 // Dependency:
00017 #include "../glm.hpp"
00018 
00019 #if(defined(GLM_MESSAGES) && !defined(glm_ext))
00020 #       pragma message("GLM: GLM_GTC_matrix_integer extension included")
00021 #endif
00022 
00023 namespace glm{
00024 namespace gtc{
00025 namespace matrix_integer 
00026 {
00029 
00030         typedef detail::tmat2x2<highp_int>                              highp_imat2;    
00031         typedef detail::tmat3x3<highp_int>                              highp_imat3;    
00032         typedef detail::tmat4x4<highp_int>                              highp_imat4;    
00033 
00034         typedef detail::tmat2x2<highp_int>                              highp_imat2x2; 
00035         typedef detail::tmat2x3<highp_int>                              highp_imat2x3; 
00036         typedef detail::tmat2x4<highp_int>                              highp_imat2x4; 
00037         typedef detail::tmat3x2<highp_int>                              highp_imat3x2; 
00038         typedef detail::tmat3x3<highp_int>                              highp_imat3x3; 
00039         typedef detail::tmat3x4<highp_int>                              highp_imat3x4; 
00040         typedef detail::tmat4x2<highp_int>                              highp_imat4x2; 
00041         typedef detail::tmat4x3<highp_int>                              highp_imat4x3; 
00042         typedef detail::tmat4x4<highp_int>                              highp_imat4x4; 
00043 
00044         typedef detail::tmat2x2<mediump_int>                    mediump_imat2;  
00045         typedef detail::tmat3x3<mediump_int>                    mediump_imat3;  
00046         typedef detail::tmat4x4<mediump_int>                    mediump_imat4;  
00047 
00048         typedef detail::tmat2x2<mediump_int>                    mediump_imat2x2; 
00049         typedef detail::tmat2x3<mediump_int>                    mediump_imat2x3; 
00050         typedef detail::tmat2x4<mediump_int>                    mediump_imat2x4; 
00051         typedef detail::tmat3x2<mediump_int>                    mediump_imat3x2; 
00052         typedef detail::tmat3x3<mediump_int>                    mediump_imat3x3; 
00053         typedef detail::tmat3x4<mediump_int>                    mediump_imat3x4; 
00054         typedef detail::tmat4x2<mediump_int>                    mediump_imat4x2; 
00055         typedef detail::tmat4x3<mediump_int>                    mediump_imat4x3; 
00056         typedef detail::tmat4x4<mediump_int>                    mediump_imat4x4; 
00057 
00058         typedef detail::tmat2x2<lowp_int>                               lowp_imat2;     
00059         typedef detail::tmat3x3<lowp_int>                               lowp_imat3;     
00060         typedef detail::tmat4x4<lowp_int>                               lowp_imat4;     
00061 
00062         typedef detail::tmat2x2<lowp_int>                               lowp_imat2x2; 
00063         typedef detail::tmat2x3<lowp_int>                               lowp_imat2x3; 
00064         typedef detail::tmat2x4<lowp_int>                               lowp_imat2x4; 
00065         typedef detail::tmat3x2<lowp_int>                               lowp_imat3x2; 
00066         typedef detail::tmat3x3<lowp_int>                               lowp_imat3x3; 
00067         typedef detail::tmat3x4<lowp_int>                               lowp_imat3x4; 
00068         typedef detail::tmat4x2<lowp_int>                               lowp_imat4x2; 
00069         typedef detail::tmat4x3<lowp_int>                               lowp_imat4x3; 
00070         typedef detail::tmat4x4<lowp_int>                               lowp_imat4x4; 
00071 
00072         typedef detail::tmat2x2<highp_uint>                             highp_umat2; 
00073         typedef detail::tmat3x3<highp_uint>                             highp_umat3; 
00074         typedef detail::tmat4x4<highp_uint>                             highp_umat4; 
00075 
00076         typedef detail::tmat2x2<highp_uint>                             highp_umat2x2; 
00077         typedef detail::tmat2x3<highp_uint>                             highp_umat2x3; 
00078         typedef detail::tmat2x4<highp_uint>                             highp_umat2x4; 
00079         typedef detail::tmat3x2<highp_uint>                             highp_umat3x2; 
00080         typedef detail::tmat3x3<highp_uint>                             highp_umat3x3; 
00081         typedef detail::tmat3x4<highp_uint>                             highp_umat3x4; 
00082         typedef detail::tmat4x2<highp_uint>                             highp_umat4x2; 
00083         typedef detail::tmat4x3<highp_uint>                             highp_umat4x3; 
00084         typedef detail::tmat4x4<highp_uint>                             highp_umat4x4; 
00085 
00086         typedef detail::tmat2x2<mediump_uint>                   mediump_umat2; 
00087         typedef detail::tmat3x3<mediump_uint>                   mediump_umat3; 
00088         typedef detail::tmat4x4<mediump_uint>                   mediump_umat4; 
00089 
00090         typedef detail::tmat2x2<mediump_uint>                   mediump_umat2x2; 
00091         typedef detail::tmat2x3<mediump_uint>                   mediump_umat2x3; 
00092         typedef detail::tmat2x4<mediump_uint>                   mediump_umat2x4; 
00093         typedef detail::tmat3x2<mediump_uint>                   mediump_umat3x2; 
00094         typedef detail::tmat3x3<mediump_uint>                   mediump_umat3x3; 
00095         typedef detail::tmat3x4<mediump_uint>                   mediump_umat3x4; 
00096         typedef detail::tmat4x2<mediump_uint>                   mediump_umat4x2; 
00097         typedef detail::tmat4x3<mediump_uint>                   mediump_umat4x3; 
00098         typedef detail::tmat4x4<mediump_uint>                   mediump_umat4x4; 
00099 
00100         typedef detail::tmat2x2<lowp_uint>                              lowp_umat2;     
00101         typedef detail::tmat3x3<lowp_uint>                              lowp_umat3;     
00102         typedef detail::tmat4x4<lowp_uint>                              lowp_umat4;     
00103 
00104         typedef detail::tmat2x2<lowp_uint>                              lowp_umat2x2; 
00105         typedef detail::tmat2x3<lowp_uint>                              lowp_umat2x3; 
00106         typedef detail::tmat2x4<lowp_uint>                              lowp_umat2x4; 
00107         typedef detail::tmat3x2<lowp_uint>                              lowp_umat3x2; 
00108         typedef detail::tmat3x3<lowp_uint>                              lowp_umat3x3; 
00109         typedef detail::tmat3x4<lowp_uint>                              lowp_umat3x4; 
00110         typedef detail::tmat4x2<lowp_uint>                              lowp_umat4x2; 
00111         typedef detail::tmat4x3<lowp_uint>                              lowp_umat4x3; 
00112         typedef detail::tmat4x4<lowp_uint>                              lowp_umat4x4; 
00113 
00114 #if(defined(GLM_PRECISION_HIGHP_INT))
00115         typedef highp_imat2                                                             imat2; 
00116         typedef highp_imat3                                                             imat3; 
00117         typedef highp_imat4                                                             imat4; 
00118         typedef highp_imat2x2                                                   imat2x2; 
00119         typedef highp_imat2x3                                                   imat2x3; 
00120         typedef highp_imat2x4                                                   imat2x4; 
00121         typedef highp_imat3x2                                                   imat3x2; 
00122         typedef highp_imat3x3                                                   imat3x3; 
00123         typedef highp_imat3x4                                                   imat3x4; 
00124         typedef highp_imat4x2                                                   imat4x2; 
00125         typedef highp_imat4x3                                                   imat4x3; 
00126         typedef highp_imat4x4                                                   imat4x4; 
00127 #elif(defined(GLM_PRECISION_LOWP_INT))
00128         typedef lowp_imat2                                                              imat2; 
00129         typedef lowp_imat3                                                              imat3; 
00130         typedef lowp_imat4                                                              imat4; 
00131         typedef lowp_imat2x2                                                    imat2x2; 
00132         typedef lowp_imat2x3                                                    imat2x3; 
00133         typedef lowp_imat2x4                                                    imat2x4; 
00134         typedef lowp_imat3x2                                                    imat3x2; 
00135         typedef lowp_imat3x3                                                    imat3x3; 
00136         typedef lowp_imat3x4                                                    imat3x4; 
00137         typedef lowp_imat4x2                                                    imat4x2; 
00138         typedef lowp_imat4x3                                                    imat4x3; 
00139         typedef lowp_imat4x4                                                    imat4x4; 
00140 #else //if(defined(GLM_PRECISION_MEDIUMP_INT))
00141         typedef mediump_imat2                                                   imat2; 
00142         typedef mediump_imat3                                                   imat3; 
00143         typedef mediump_imat4                                                   imat4; 
00144         typedef mediump_imat2x2                                                 imat2x2; 
00145         typedef mediump_imat2x3                                                 imat2x3; 
00146         typedef mediump_imat2x4                                                 imat2x4; 
00147         typedef mediump_imat3x2                                                 imat3x2; 
00148         typedef mediump_imat3x3                                                 imat3x3; 
00149         typedef mediump_imat3x4                                                 imat3x4; 
00150         typedef mediump_imat4x2                                                 imat4x2; 
00151         typedef mediump_imat4x3                                                 imat4x3; 
00152         typedef mediump_imat4x4                                                 imat4x4; 
00153 #endif//GLM_PRECISION
00154 
00155 #if(defined(GLM_PRECISION_HIGHP_UINT))
00156         typedef highp_umat2                                                             umat2; 
00157         typedef highp_umat3                                                             umat3; 
00158         typedef highp_umat4                                                             umat4; 
00159         typedef highp_umat2x2                                                   umat2x2; 
00160         typedef highp_umat2x3                                                   umat2x3; 
00161         typedef highp_umat2x4                                                   umat2x4; 
00162         typedef highp_umat3x2                                                   umat3x2; 
00163         typedef highp_umat3x3                                                   umat3x3; 
00164         typedef highp_umat3x4                                                   umat3x4; 
00165         typedef highp_umat4x2                                                   umat4x2; 
00166         typedef highp_umat4x3                                                   umat4x3; 
00167         typedef highp_umat4x4                                                   umat4x4; 
00168 #elif(defined(GLM_PRECISION_LOWP_UINT))
00169         typedef lowp_umat2                                                              umat2; 
00170         typedef lowp_umat3                                                              umat3; 
00171         typedef lowp_umat4                                                              umat4; 
00172         typedef lowp_umat2x2                                                    umat2x2; 
00173         typedef lowp_umat2x3                                                    umat2x3; 
00174         typedef lowp_umat2x4                                                    umat2x4; 
00175         typedef lowp_umat3x2                                                    umat3x2; 
00176         typedef lowp_umat3x3                                                    umat3x3; 
00177         typedef lowp_umat3x4                                                    umat3x4; 
00178         typedef lowp_umat4x2                                                    umat4x2; 
00179         typedef lowp_umat4x3                                                    umat4x3; 
00180         typedef lowp_umat4x4                                                    umat4x4; 
00181 #else //if(defined(GLM_PRECISION_MEDIUMP_UINT))
00182         typedef mediump_umat2                                                   umat2; 
00183         typedef mediump_umat3                                                   umat3; 
00184         typedef mediump_umat4                                                   umat4; 
00185         typedef mediump_umat2x2                                                 umat2x2; 
00186         typedef mediump_umat2x3                                                 umat2x3; 
00187         typedef mediump_umat2x4                                                 umat2x4; 
00188         typedef mediump_umat3x2                                                 umat3x2; 
00189         typedef mediump_umat3x3                                                 umat3x3; 
00190         typedef mediump_umat3x4                                                 umat3x4; 
00191         typedef mediump_umat4x2                                                 umat4x2; 
00192         typedef mediump_umat4x3                                                 umat4x3; 
00193         typedef mediump_umat4x4                                                 umat4x4; 
00194 #endif//GLM_PRECISION
00195 
00197 
00198 }//namespace matrix_integer
00199 }//namespace gtc
00200 }//namespace glm
00201 
00202 namespace glm{using namespace gtc::matrix_integer;}
00203 
00204 #endif//glm_gtc_matrix_integer