1 #ifndef MSP_GL_REFLECTDATA_H_
2 #define MSP_GL_REFLECTDATA_H_
13 Reflection data for shader programs.
17 typedef unsigned LayoutHash;
18 struct UniformBlockInfo;
23 const UniformBlockInfo *block = 0;
29 unsigned array_size = 0;
30 unsigned array_stride = 0;
31 unsigned matrix_stride = 0;
34 int descriptor_set = 0;
38 struct UniformBlockInfo
41 unsigned data_size = 0;
42 int descriptor_set = 0;
44 std::vector<const UniformInfo *> uniforms;
45 LayoutHash layout_hash = 0;
48 void update_layout_hash();
55 unsigned array_size = 0;
59 std::vector<UniformBlockInfo> uniform_blocks;
60 std::vector<UniformInfo> uniforms;
61 LayoutHash layout_hash = 0;
62 std::vector<AttributeInfo> attributes;
63 unsigned n_clip_distances = 0;
65 void update_layout_hash();