]> git.tdb.fi Git - libs/gl.git/blob - source/glsl/features.h
ca74d38abd3d2a2927420589f21af83ac21ea5b6
[libs/gl.git] / source / glsl / features.h
1 #ifndef MSP_GL_SL_FEATURES_H_
2 #define MSP_GL_SL_FEATURES_H_
3
4 #include <msp/gl/backend.h>
5
6 namespace Msp {
7 namespace GL {
8 namespace SL {
9
10 struct Features
11 {
12         GraphicsApi target_api;
13         Version glsl_version;
14         bool arb_enhanced_layouts;
15         bool arb_explicit_attrib_location;
16         bool arb_explicit_uniform_location;
17         bool arb_gpu_shader5;
18         bool arb_separate_shader_objects;
19         bool arb_uniform_buffer_object;
20         bool ext_gpu_shader4;
21         bool ext_texture_array;
22         unsigned constant_id_range;
23         unsigned uniform_binding_range;
24         unsigned texture_binding_range;
25
26         Features();
27
28         static Features from_version(const Version &);
29         static Features latest();
30 };
31
32 } // namespace SL
33 } // namespace GL
34 } // namespace Msp
35
36 #endif