]> git.tdb.fi Git - libs/gl.git/blobdiff - source/render/occludedscene.h
Use C++11 features with containers
[libs/gl.git] / source / render / occludedscene.h
index 000673ddfbb3740f76f9cf511c4606d7a5ec8d0e..056acb2e0d12b2e14f74fcbffcde37cee09f7674 100644 (file)
@@ -16,6 +16,9 @@ entirely occluded by others.
 */
 class OccludedScene: public Scene
 {
+public:
+       using Scene::Loader;
+
 private:
        struct OccludedRenderable
        {
@@ -28,18 +31,15 @@ private:
                OccludedRenderable();
        };
 
-       typedef std::set<Renderable *> RenderableSet;
-       typedef std::vector<OccludedRenderable> OccludedArray;
-
        const Mesh &bounding_mesh;
        const Program &bounding_shader;
-       RenderableSet renderables;
+       std::set<Renderable *> renderables;
        float occluder_min_size;
-       mutable OccludedArray occluded_cache;
+       mutable std::vector<OccludedRenderable> occluded_cache;
        mutable bool cache_dirty;
 
 public:
-       OccludedScene(Resources &);
+       OccludedScene();
        ~OccludedScene();
 
        virtual void add(Renderable &);
@@ -52,7 +52,7 @@ public:
        virtual void setup_frame(Renderer &);
        virtual void finish_frame();
 
-       virtual void render(Renderer &, const Tag & = Tag()) const;
+       virtual void render(Renderer &, Tag = Tag()) const;
 };
 
 } // namespace GL