Files
Archimedes/include/utils/Renderer/Renderer.h
2025-03-31 13:49:00 -05:00

40 lines
793 B
C++

#ifndef RENDERER_H
#define RENDERER_H
#include "pch.hpp"
#include "RendererOpenGL/RendererOpenGL.h"
namespace Archimedes {
class Renderer {
public:
int w, h;
typedef void renderCmd();
~Renderer() {}
void init() { r.init(); }
void render() {
r.render(rc, w, h);
}
std::list<renderCmd*>::iterator addRenderCmd(renderCmd* cmd) {
auto it = rc.end();
rc.push_back(cmd);
return it;
}
void removeRenderCmd(std::list<renderCmd*>::iterator cmd) {
rc.erase(cmd);
}
private:
std::list<renderCmd*> rc;
RendererImpl r;
};
}
#endif