X-Git-Url: http://git.tdb.fi/?a=blobdiff_plain;f=source%2Fcore%2Fprogram.h;h=41c5897dc08ccb54a5461a798c78b425b5315bf9;hb=acaefb4c669f01855252818ef0a2958cbdababc3;hp=6301edbe2c6e23ded094519e38f30db842ebbb55;hpb=b7f46931a9878b2fd7ec863d520dc22ac89c0baf;p=libs%2Fgl.git diff --git a/source/core/program.h b/source/core/program.h index 6301edbe..41c5897d 100644 --- a/source/core/program.h +++ b/source/core/program.h @@ -1,13 +1,12 @@ #ifndef MSP_GL_PROGRAM_H_ #define MSP_GL_PROGRAM_H_ +#include #include #include #include -#include "gl.h" #include "module.h" #include "reflectdata.h" -#include "vertexformat.h" namespace Msp { namespace GL { @@ -63,10 +62,22 @@ private: std::map spec_values; }; + struct UniformCall + { + using FuncPtr = void (*)(unsigned, unsigned, const void *); + + unsigned location; + unsigned size; + FuncPtr func; + + UniformCall(unsigned l, unsigned s, FuncPtr f): location(l), size(s), func(f) { } + }; + unsigned id; unsigned stage_ids[MAX_STAGES]; bool linked; ReflectData reflect_data; + std::vector uniform_calls; std::string debug_name; public: