#define INCLUDED_IRENDER_H
#include "generic/constant.h"
-#include "generic/callbackfwd.h"
+#include "generic/callback.h"
// Rendering states to sort by.
};
class Renderable;
-typedef Callback1<const Renderable&> RenderableCallback;
+typedef Callback<void(const Renderable&)> RenderableCallback;
-typedef Callback1<const RendererLight&> RendererLightCallback;
+typedef Callback<void(const RendererLight&)> RendererLightCallback;
class LightList
{
class OpenGLRenderable
{
public:
+virtual ~OpenGLRenderable() = default;
virtual void render( RenderStateFlags state ) const = 0;
};
class Shader
{
public:
+virtual ~Shader() = default;
virtual void addRenderable( const OpenGLRenderable& renderable, const Matrix4& modelview, const LightList* lights = 0 ) = 0;
virtual void incrementUsed() = 0;
virtual void decrementUsed() = 0;