]> git.tdb.fi Git - libs/gl.git/blobdiff - source/technique.h
Fix some incorrect whitespace
[libs/gl.git] / source / technique.h
index cc81b53120d3d9c408964902d8727d5bc0edd012..d1fab38f7ad9649f45d7c2be6b9fd4f805a1e3d0 100644 (file)
@@ -1,20 +1,13 @@
-/* $Id$
-
-This file is part of libmspgl
-Copyright © 2007  Mikko Rasa, Mikkosoft Productions
-Distributed under the LGPL
-*/
-
 #ifndef TECHNIQUE_H_
 #define TECHNIQUE_H_
 
-#include "objectpass.h"
+#include "renderpass.h"
+#include "tag.h"
 
 namespace Msp {
 namespace GL {
 
 class Material;
-class Tag;
 class Texture;
 
 /**
@@ -25,9 +18,11 @@ public:
        class Loader: public Msp::DataFile::CollectionObjectLoader<Technique>
        {
        public:
+               Loader(Technique &);
                Loader(Technique &, Collection &);
 
        private:
+               void init();
                void inherit(const std::string &);
                void pass(const std::string &);
        };
@@ -37,19 +32,23 @@ private:
        {
        public:
                InheritLoader(Technique &, Collection &);
-       
+
        private:
                void texture(const std::string &, const std::string &);
        };
 
+public:
        typedef std::map<Tag, RenderPass> PassMap;
 
+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;
        const PassMap &get_passes() const { return passes; }
+       bool has_shaders() const;
 };
 
 } // namespace GL