X-Git-Url: http://git.tdb.fi/?a=blobdiff_plain;f=source%2Fglsl%2Fcompiler.h;h=1c07f3250d9bc4d964168a7fd868a16346e5cd06;hb=6f06479b765946bdd3174b2c05e7a1dda24c31c2;hp=51b4f00a683059579157297c1ca9803e7aff9994;hpb=cc5483cc709fdf7b6966a3e69dabfcafebaaffa0;p=libs%2Fgl.git diff --git a/source/glsl/compiler.h b/source/glsl/compiler.h index 51b4f00a..1c07f325 100644 --- a/source/glsl/compiler.h +++ b/source/glsl/compiler.h @@ -40,10 +40,10 @@ private: }; Features features; - Module *module; + Module *module = 0; std::vector imported_names; - bool compiled; - bool specialized; + bool compiled = false; + bool specialized = false; std::map spec_values; public: @@ -91,7 +91,7 @@ public: /** Returns a combined SPIR-V binary for all shader stages. The result is suitable for use with OpenGL or Vulkan. */ - std::vector get_combined_spirv() const; + std::vector get_combined_spirv() const; /** Returns a map of vertex attribute locations. If the target GLSL version supports interface layouts, the map is empty (locations are included in the @@ -126,13 +126,13 @@ public: private: /** Appends a module to the target, processing any imports found in it. */ - void append_module(Module &, DataFile::Collection *); + void append_module(const Module &, ModuleCache &); /** Appends a single stage to the matching stage of the target. */ - void append_stage(Stage &); + void append_stage(const Stage &); /// Imports a module by name and appends it to the target. */ - void import(DataFile::Collection *, const std::string &); + void import(ModuleCache &, const std::string &); /** Generates any implicitly defines syntactic structures and resolves variables. */