]> git.tdb.fi Git - libs/gl.git/blobdiff - source/technique.h
Copy the material slot of RenderPass
[libs/gl.git] / source / technique.h
index 141fa9c80a2b3f42cbfd2a87c1b218253993bce6..f80e2f6144e0f59d32bade49829c721df5b15d27 100644 (file)
@@ -1,5 +1,5 @@
-#ifndef TECHNIQUE_H_
-#define TECHNIQUE_H_
+#ifndef MSP_GL_TECHNIQUE_H_
+#define MSP_GL_TECHNIQUE_H_
 
 #include "renderpass.h"
 #include "tag.h"
@@ -35,7 +35,9 @@ private:
                InheritLoader(Technique &, Collection &);
 
        private:
+               void material(const std::string &, const std::string &);
                void texture(const std::string &, const std::string &);
+               void uniforms();
        };
 
 public:
@@ -45,10 +47,13 @@ private:
        PassMap passes;
 
 public:
-       RenderPass &add_pass(const GL::Tag &);
-       bool has_pass(const GL::Tag &) const;
-       const RenderPass &get_pass(const GL::Tag &) const;
+       RenderPass &add_pass(const Tag &);
+       bool has_pass(const Tag &) const;
+       const RenderPass &get_pass(const Tag &) const;
        const PassMap &get_passes() const { return passes; }
+       bool replace_texture(const std::string &, const Texture &);
+       bool replace_material(const std::string &, const Material &);
+       bool replace_uniforms(const ProgramData &);
        bool has_shaders() const;
 };