]> git.tdb.fi Git - gldbg.git/blob - flavors/gl/source/programstate.h
Basic tracking and inspection of shaders and programs
[gldbg.git] / flavors / gl / source / programstate.h
1 #ifndef PROGRAMSTATE_H_
2 #define PROGRAMSTATE_H_
3
4 #include <string>
5 #include <vector>
6 #include "opengl.h"
7
8 struct ShaderState
9 {
10         unsigned id;
11         GLenum type;
12         std::vector<std::string> source;
13         bool source_changed;
14         bool compile_status;
15         std::string info_log;
16         bool pending_delete;
17
18         ShaderState();
19
20         std::string describe() const;
21 };
22
23 struct ProgramState
24 {
25         unsigned id;
26         std::vector<ShaderState *> shaders;
27         bool shaders_changed;
28         bool link_status;
29         std::string info_log;
30
31         ProgramState();
32
33         std::string describe() const;
34 };
35
36 #endif