X-Git-Url: http://git.tdb.fi/?p=libs%2Fgl.git;a=blobdiff_plain;f=source%2Fglsl%2Fcompatibility.h;h=fdbd3d07fb304c0c79202445f4df04befaef9a58;hp=732f3477db5f9b401550ff999bde3d6f50af0718;hb=0ca367ce305ae6f2025739b3b199a7f75d4132db;hpb=47d9d5d10469340af44909de9c8ab9fd4f1a19a1 diff --git a/source/glsl/compatibility.h b/source/glsl/compatibility.h index 732f3477..fdbd3d07 100644 --- a/source/glsl/compatibility.h +++ b/source/glsl/compatibility.h @@ -8,7 +8,7 @@ namespace Msp { namespace GL { namespace SL { -class DefaultPrecisionGenerator: public BlockModifier +class DefaultPrecisionGenerator: private BlockModifier { private: Stage::Type stage_type; @@ -20,23 +20,25 @@ public: void apply(Stage &); - using BlockModifier::visit; +private: virtual void visit(Block &); virtual void visit(Precision &); virtual void visit(VariableDeclaration &); + using BlockModifier::visit; }; -class PrecisionRemover: public BlockModifier +class PrecisionRemover: private BlockModifier { public: void apply(Stage &s) { visit(s.content); } - using BlockModifier::visit; +private: virtual void visit(Precision &); virtual void visit(VariableDeclaration &); + using BlockModifier::visit; }; -class LegacyConverter: public BlockModifier +class LegacyConverter: private BlockModifier { private: Stage *stage; @@ -49,13 +51,11 @@ public: LegacyConverter(); LegacyConverter(const Version &); + virtual void apply(Stage &); + private: bool check_version(const Version &) const; bool check_extension(const Extension &) const; -public: - using BlockModifier::visit; - virtual void apply(Stage &); -private: bool supports_unified_interface_syntax() const; virtual void visit(VariableReference &); virtual void visit(Assignment &); @@ -67,6 +67,7 @@ private: virtual void visit(VariableDeclaration &); bool supports_interface_blocks(const std::string &) const; virtual void visit(InterfaceBlock &); + using BlockModifier::visit; }; } // namespace SL