]> git.tdb.fi Git - libs/gl.git/blob - source/simplescene.h
35315926460d0727f3d9471e392e3e05744872fa
[libs/gl.git] / source / simplescene.h
1 /* $Id$
2
3 This file is part of libmspgl
4 Copyright © 2010-2011  Mikko Rasa, Mikkosoft Productions
5 Distributed under the LGPL
6 */
7
8 #ifndef MSP_GL_SIMPLESCENE_H_
9 #define MSP_GL_SIMPLESCENE_H_
10
11 #include <set>
12 #include "scene.h"
13
14 namespace Msp {
15 namespace GL {
16
17 /**
18 The simplest possible Scene.  Rendering order is unspecified.
19 */
20 class SimpleScene: public Scene
21 {
22 private:
23         typedef std::set<const Renderable *> RenderableSet;
24
25         RenderableSet renderables;
26
27 public:
28         virtual void add(const Renderable &);
29         virtual void remove(const Renderable &);
30
31         using Scene::render;
32         virtual void render(Renderer &, const Tag & = Tag()) const;
33 };
34
35 } // namespace GL
36 } // namespace Msp
37
38 #endif