]> git.tdb.fi Git - libs/gl.git/blobdiff - source/programsyntax.h
Automatically backport shaders to earlier GLSL versions if necessary
[libs/gl.git] / source / programsyntax.h
index 9545760c47b31bd8cfa98f61ee59ef626d2d851c..2f9f1fc08a50f47eb3a8fc6f4757217cb39f0b09 100644 (file)
@@ -5,6 +5,7 @@
 #include <map>
 #include <string>
 #include <vector>
+#include "extension.h"
 
 namespace Msp {
 namespace GL {
@@ -52,6 +53,7 @@ public:
 
 struct StructDeclaration;
 struct VariableDeclaration;
+struct FunctionDeclaration;
 
 struct Block: Node
 {
@@ -145,6 +147,7 @@ struct Assignment: BinaryExpression
 struct FunctionCall: Expression
 {
        std::string name;
+       FunctionDeclaration *declaration;
        bool constructor;
        std::vector<NodePtr<Expression> > arguments;
 
@@ -341,6 +344,7 @@ struct Stage
        ProgramSyntax::Block content;
        std::map<std::string, VariableDeclaration *> in_variables;
        std::map<std::string, VariableDeclaration *> out_variables;
+       Version required_version;
 
        Stage(StageType);
 };