X-Git-Url: http://git.tdb.fi/?a=blobdiff_plain;f=source%2Fprogrambuilder.h;h=a6eb3fde8522dc097b19032c972cab399c078685;hb=5ba1446b314ddc914693cb9cbb9a7b54a4d30a45;hp=30f1ef15738b3ab969c288442fe354c0ae7b7843;hpb=9034e81679eeeaa3d1d5d643d3f924d9edb45a68;p=libs%2Fgl.git diff --git a/source/programbuilder.h b/source/programbuilder.h index 30f1ef15..a6eb3fde 100644 --- a/source/programbuilder.h +++ b/source/programbuilder.h @@ -30,6 +30,7 @@ public: bool shadow; bool reflection; bool transform; + bool colorify; StandardFeatures(); @@ -64,6 +65,8 @@ private: std::string resolved_space; std::list referenced_vars; std::list referenced_by; + bool inlined; + bool inline_parens; ShaderVariable(const std::string &); @@ -72,6 +75,7 @@ private: void resolve_space(const std::string &); void add_reference(ShaderVariable &); void update_reference(ShaderVariable &, ShaderVariable &); + void check_inline(); bool is_referenced_from(VariableScope) const; std::string get_expression() const; }; @@ -85,12 +89,14 @@ private: StandardFeatures features; std::string feature_flags; + bool optimize; static const StandardVariable standard_variables[]; public: ProgramBuilder(const StandardFeatures &); + void set_optimize(bool); Program *create_program() const; void add_shaders(Program &) const; private: