44 lines
823 B
C++
44 lines
823 B
C++
#ifndef WINDOW_H
|
|
#define WINDOW_H
|
|
|
|
|
|
#include "utils/Renderer/Renderer.h"
|
|
#include "WindowGLFW/WindowGLFW.h"
|
|
|
|
namespace Archimedes {
|
|
|
|
class Window {
|
|
|
|
public:
|
|
|
|
Window() { renderer = new Renderer(); }
|
|
|
|
~Window() { delete renderer; }
|
|
|
|
bool shouldClose() { return window.shouldClose(); }
|
|
|
|
void doFrame() {
|
|
|
|
window.pollEvents();
|
|
|
|
window.getSize(renderer->w, renderer->h);
|
|
|
|
renderer->render();
|
|
|
|
window.doFrame();
|
|
}
|
|
|
|
Renderer* getRenderer() { return renderer; }
|
|
//void setRenderer(Renderer* r) { renderer = r; }
|
|
|
|
WindowImpl& getWindowImpl() { return window; }
|
|
|
|
private:
|
|
Renderer* renderer;
|
|
|
|
WindowImpl window;
|
|
};
|
|
}
|
|
|
|
#endif
|