- Main Page
- Related Pages
- Modules
- Classes
- Files

- File List

type_precision.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
    00040
    00041
    00042
    00043 #ifndef GLM_GTC_type_precision
    00044 #define GLM_GTC_type_precision GLM_VERSION
    00045
    00046 // Dependency:
    00047 #include "../glm.hpp"
    00048 #include "../gtc/half_float.hpp"
    00049 #include "../gtc/quaternion.hpp"
    00050
    00051 #if(defined(GLM_MESSAGES) && !defined(glm_ext))
    00052 #       pragma message("GLM: GLM_GTC_type_precision extension included")
    00053 #endif
    00054
    00055 namespace glm
    00056 {
    00058         // Signed int vector types
    00059
    00062
    00065         typedef detail::int8 int8;
    00066
    00069         typedef detail::int16 int16;
    00070
    00073         typedef detail::int32 int32;
    00074
    00077         typedef detail::int64 int64;
    00078
    00079
    00082         typedef detail::int8 int8_t;
    00083
    00086         typedef detail::int16 int16_t;
    00087
    00090         typedef detail::int32 int32_t;
    00091
    00094         typedef detail::int64 int64_t;
    00095
    00096
    00099         typedef detail::int8 i8;
    00100
    00103         typedef detail::int16 i16;
    00104
    00107         typedef detail::int32 i32;
    00108
    00111         typedef detail::int64 i64;
    00112
    00113
    00116         typedef detail::tvec1<i8> i8vec1;
    00117
    00120         typedef detail::tvec2<i8> i8vec2;
    00121
    00124         typedef detail::tvec3<i8> i8vec3;
    00125
    00128         typedef detail::tvec4<i8> i8vec4;
    00129
    00130
    00133         typedef detail::tvec1<i16> i16vec1;
    00134
    00137         typedef detail::tvec2<i16> i16vec2;
    00138
    00141         typedef detail::tvec3<i16> i16vec3;
    00142
    00145         typedef detail::tvec4<i16> i16vec4;
    00146
    00147
    00150         typedef detail::tvec1<i32> i32vec1;
    00151
    00154         typedef detail::tvec2<i32> i32vec2;
    00155
    00158         typedef detail::tvec3<i32> i32vec3;
    00159
    00162         typedef detail::tvec4<i32> i32vec4;
    00163
    00164
    00167         typedef detail::tvec1<i64> i64vec1;
    00168
    00171         typedef detail::tvec2<i64> i64vec2;
    00172
    00175         typedef detail::tvec3<i64> i64vec3;
    00176
    00179         typedef detail::tvec4<i64> i64vec4;
    00180
    00181
    00183         // Unsigned int vector types
    00184
    00187         typedef detail::uint8 uint8;
    00188
    00191         typedef detail::uint16 uint16;
    00192
    00195         typedef detail::uint32 uint32;
    00196
    00199         typedef detail::uint64 uint64;
    00200
    00201
    00204         typedef detail::uint8 uint8_t;
    00205
    00208         typedef detail::uint16 uint16_t;
    00209
    00212         typedef detail::uint32 uint32_t;
    00213
    00216         typedef detail::uint64 uint64_t;
    00217
    00218
    00221         typedef detail::uint8 u8;
    00222
    00225         typedef detail::uint16 u16;
    00226
    00229         typedef detail::uint32 u32;
    00230
    00233         typedef detail::uint64 u64;
    00234
    00235
    00238         typedef detail::tvec1<u8> u8vec1;
    00239
    00242         typedef detail::tvec2<u8> u8vec2;
    00243
    00246         typedef detail::tvec3<u8> u8vec3;
    00247
    00250         typedef detail::tvec4<u8> u8vec4;
    00251
    00252
    00255         typedef detail::tvec1<u16> u16vec1;
    00256
    00259         typedef detail::tvec2<u16> u16vec2;
    00260
    00263         typedef detail::tvec3<u16> u16vec3;
    00264
    00267         typedef detail::tvec4<u16> u16vec4;
    00268
    00269
    00272         typedef detail::tvec1<u32> u32vec1;
    00273
    00276         typedef detail::tvec2<u32> u32vec2;
    00277
    00280         typedef detail::tvec3<u32> u32vec3;
    00281
    00284         typedef detail::tvec4<u32> u32vec4;
    00285
    00286
    00289         typedef detail::tvec1<u64> u64vec1;
    00290
    00293         typedef detail::tvec2<u64> u64vec2;
    00294
    00297         typedef detail::tvec3<u64> u64vec3;
    00298
    00301         typedef detail::tvec4<u64> u64vec4;
    00302
    00303
    00305         // Float vector types
    00306
    00309         typedef detail::float16 float16;
    00310
    00313         typedef detail::float32 float32;
    00314
    00317         typedef detail::float64 float64;
    00318
    00319
    00322         typedef detail::float16 float16_t;
    00323
    00326         typedef detail::float32 float32_t;
    00327
    00330         typedef detail::float64 float64_t;
    00331
    00332
    00335         typedef float16 f16;
    00336
    00339         typedef float32 f32;
    00340
    00343         typedef float64 f64;
    00344
    00345
    00348         typedef detail::tvec1<float> fvec1;
    00349
    00352         typedef detail::tvec2<float> fvec2;
    00353
    00356         typedef detail::tvec3<float> fvec3;
    00357
    00360         typedef detail::tvec4<float> fvec4;
    00361
    00362
    00365         typedef detail::tvec1<f16> f16vec1;
    00366
    00369         typedef detail::tvec2<f16> f16vec2;
    00370
    00373         typedef detail::tvec3<f16> f16vec3;
    00374
    00377         typedef detail::tvec4<f16> f16vec4;
    00378
    00379
    00382         typedef detail::tvec1<f32> f32vec1;
    00383
    00386         typedef detail::tvec2<f32> f32vec2;
    00387
    00390         typedef detail::tvec3<f32> f32vec3;
    00391
    00394         typedef detail::tvec4<f32> f32vec4;
    00395
    00396
    00399         typedef detail::tvec1<f64> f64vec1;
    00400
    00403         typedef detail::tvec2<f64> f64vec2;
    00404
    00407         typedef detail::tvec3<f64> f64vec3;
    00408
    00411         typedef detail::tvec4<f64> f64vec4;
    00412
    00413
    00415         // Float matrix types
    00416
    00419         //typedef detail::tmat1x1<f32> fmat1;
    00420
    00423         typedef detail::tmat2x2<f32> fmat2;
    00424
    00427         typedef detail::tmat3x3<f32> fmat3;
    00428
    00431         typedef detail::tmat4x4<f32> fmat4;
    00432
    00433
    00436         //typedef f32 fmat1x1;
    00437
    00440         typedef detail::tmat2x2<f32> fmat2x2;
    00441
    00444         typedef detail::tmat2x3<f32> fmat2x3;
    00445
    00448         typedef detail::tmat2x4<f32> fmat2x4;
    00449
    00452         typedef detail::tmat3x2<f32> fmat3x2;
    00453
    00456         typedef detail::tmat3x3<f32> fmat3x3;
    00457
    00460         typedef detail::tmat3x4<f32> fmat3x4;
    00461
    00464         typedef detail::tmat4x2<f32> fmat4x2;
    00465
    00468         typedef detail::tmat4x3<f32> fmat4x3;
    00469
    00472         typedef detail::tmat4x4<f32> fmat4x4;
    00473
    00474
    00477         //typedef detail::tmat1x1<f16> f16mat1;
    00478
    00481         typedef detail::tmat2x2<f16> f16mat2;
    00482
    00485         typedef detail::tmat3x3<f16> f16mat3;
    00486
    00489         typedef detail::tmat4x4<f16> f16mat4;
    00490
    00491
    00494         //typedef f16 f16mat1x1;
    00495
    00498         typedef detail::tmat2x2<f16> f16mat2x2;
    00499
    00502         typedef detail::tmat2x3<f16> f16mat2x3;
    00503
    00506         typedef detail::tmat2x4<f16> f16mat2x4;
    00507
    00510         typedef detail::tmat3x2<f16> f16mat3x2;
    00511
    00514         typedef detail::tmat3x3<f16> f16mat3x3;
    00515
    00518         typedef detail::tmat3x4<f16> f16mat3x4;
    00519
    00522         typedef detail::tmat4x2<f16> f16mat4x2;
    00523
    00526         typedef detail::tmat4x3<f16> f16mat4x3;
    00527
    00530         typedef detail::tmat4x4<f16> f16mat4x4;
    00531
    00532
    00535         //typedef detail::tmat1x1<f32> f32mat1;
    00536
    00539         typedef detail::tmat2x2<f32> f32mat2;
    00540
    00543         typedef detail::tmat3x3<f32> f32mat3;
    00544
    00547         typedef detail::tmat4x4<f32> f32mat4;
    00548
    00549
    00552         //typedef f32 f32mat1x1;
    00553
    00556         typedef detail::tmat2x2<f32> f32mat2x2;
    00557
    00560         typedef detail::tmat2x3<f32> f32mat2x3;
    00561
    00564         typedef detail::tmat2x4<f32> f32mat2x4;
    00565
    00568         typedef detail::tmat3x2<f32> f32mat3x2;
    00569
    00572         typedef detail::tmat3x3<f32> f32mat3x3;
    00573
    00576         typedef detail::tmat3x4<f32> f32mat3x4;
    00577
    00580         typedef detail::tmat4x2<f32> f32mat4x2;
    00581
    00584         typedef detail::tmat4x3<f32> f32mat4x3;
    00585
    00588         typedef detail::tmat4x4<f32> f32mat4x4;
    00589
    00590
    00593         //typedef detail::tmat1x1<f64> f64mat1;
    00594
    00597         typedef detail::tmat2x2<f64> f64mat2;
    00598
    00601         typedef detail::tmat3x3<f64> f64mat3;
    00602
    00605         typedef detail::tmat4x4<f64> f64mat4;
    00606
    00607
    00610         //typedef f64 f64mat1x1;
    00611
    00614         typedef detail::tmat2x2<f64> f64mat2x2;
    00615
    00618         typedef detail::tmat2x3<f64> f64mat2x3;
    00619
    00622         typedef detail::tmat2x4<f64> f64mat2x4;
    00623
    00626         typedef detail::tmat3x2<f64> f64mat3x2;
    00627
    00630         typedef detail::tmat3x3<f64> f64mat3x3;
    00631
    00634         typedef detail::tmat3x4<f64> f64mat3x4;
    00635
    00638         typedef detail::tmat4x2<f64> f64mat4x2;
    00639
    00642         typedef detail::tmat4x3<f64> f64mat4x3;
    00643
    00646         typedef detail::tmat4x4<f64> f64mat4x4;
    00647
    00648
    00650         // Quaternion types
    00651
    00654         typedef detail::tquat<f16> f16quat;
    00655
    00658         typedef detail::tquat<f32> f32quat;
    00659
    00662         typedef detail::tquat<f64> f64quat;
    00663
    00665 }//namespace glm
    00666
    00667 #include "type_precision.inl"
    00668
    00669 #endif//GLM_GTC_type_precision