]> git.tdb.fi Git - libs/gl.git/blobdiff - source/renderer.h
Check the flat qualifier from the correct member
[libs/gl.git] / source / renderer.h
diff --git a/source/renderer.h b/source/renderer.h
deleted file mode 100644 (file)
index ef17b3e..0000000
+++ /dev/null
@@ -1,113 +0,0 @@
-/* $Id$
-
-This file is part of libmspgl
-Copyright © 2011  Mikko Rasa, Mikkosoft Productions
-Distributed under the LGPL
-*/
-
-#ifndef MSP_GL_RENDERER_H_
-#define MSP_GL_RENDERER_H_
-
-#include <vector>
-#include "matrix.h"
-
-namespace Msp {
-namespace GL {
-
-class Batch;
-class Buffer;
-class Camera;
-class Material;
-class Program;
-class ProgramData;
-class Texture;
-class Texturing;
-class VertexArray;
-class WindingTest;
-
-/**
-A class for supervising the rendering process.  While many Renderables (in
-particular, Objects and Scenes) can by rendered without a Renderer, using one
-will often be more efficient.  This is especially true for ObjectInstances.
-
-The Renderer works by deferring GL state changes until something is actually
-being drawn.  This avoids many unnecessary GL calls. */
-class Renderer
-{
-public:
-       class Push
-       {
-       private:
-               Renderer &renderer;
-
-       public:
-               Push(Renderer &r): renderer(r) { renderer.push_state(); }
-               ~Push() { renderer.pop_state(); }
-       };
-
-private:
-       struct State
-       {
-               const Texture *texture;
-               const Texturing *texturing;
-               const Material *material;
-               const Program *shprog;
-               std::vector<const ProgramData *> shdata;
-               const WindingTest *winding_test;
-
-               State();
-       };
-
-       class MtxStack: public MatrixStack
-       {
-       private:
-               Renderer &renderer;
-
-       public:
-               MtxStack(Renderer &);
-       private:        
-               virtual void update();
-       };
-
-       MtxStack mtx_stack;
-       bool mtx_changed;
-       const Camera *camera;
-       std::list<State> state_stack;
-       State *state;
-       const VertexArray *vertex_array;
-       bool vertex_array_changed;
-       const Buffer *element_buffer;
-
-public:
-       Renderer(const Camera *);
-       ~Renderer();
-
-       MatrixStack &matrix_stack() { return mtx_stack; }
-
-       const Camera *get_camera() const { return camera; }
-
-       void set_texture(const Texture *);
-       void set_texturing(const Texturing *);
-       void set_material(const Material *);
-       void set_shader(const Program *, const ProgramData *);
-       void add_shader_data(const ProgramData *);
-       void set_vertex_array(const VertexArray *);
-       void set_element_buffer(const Buffer *);
-       void set_winding_test(const WindingTest *);
-
-       void push_state();
-       void pop_state();
-
-       /** Prepares for temporarily bypassing the Renderer. */
-       void escape();
-
-       void draw(const Batch &);
-
-private:
-       void apply_state();
-};
-
-} // namespace GL
-} // namespace Msp
-
-#endif