]> git.tdb.fi Git - libs/gl.git/blobdiff - source/technique.h
Remove dynamic allocation from VertexFormat
[libs/gl.git] / source / technique.h
index 7c384f469bb0084770191484e4bcea315691efc6..41157f0ae58e963bc817036f5802b74cd407f934 100644 (file)
@@ -1,12 +1,5 @@
-/* $Id$
-
-This file is part of libmspgl
-Copyright © 2008-2011  Mikko Rasa, Mikkosoft Productions
-Distributed under the LGPL
-*/
-
-#ifndef TECHNIQUE_H_
-#define TECHNIQUE_H_
+#ifndef MSP_GL_TECHNIQUE_H_
+#define MSP_GL_TECHNIQUE_H_
 
 #include "renderpass.h"
 #include "tag.h"
@@ -18,6 +11,7 @@ class Material;
 class Texture;
 
 /**
+Ties multiple tagged render passes together.
 */
 class Technique
 {
@@ -39,13 +33,16 @@ private:
        {
        public:
                InheritLoader(Technique &, Collection &);
-       
+
        private:
+               void material(const std::string &, const std::string &);
                void texture(const std::string &, const std::string &);
        };
 
+public:
        typedef std::map<Tag, RenderPass> PassMap;
 
+private:
        PassMap passes;
 
 public:
@@ -53,6 +50,8 @@ public:
        bool has_pass(const GL::Tag &) const;
        const RenderPass &get_pass(const GL::Tag &) const;
        const PassMap &get_passes() const { return passes; }
+       void replace_texture(const std::string &, const Texture &);
+       bool has_shaders() const;
 };
 
 } // namespace GL