38 lines
872 B
C++
38 lines
872 B
C++
#include "Archimedes.h"
|
|
#include "utils/Window/Window.h"
|
|
#include "utils/Renderer/Renderer.h"
|
|
|
|
class WindowModule : public Archimedes::Module {
|
|
|
|
public:
|
|
WindowModule(void*, Archimedes::App*);
|
|
|
|
~WindowModule();
|
|
|
|
void run();
|
|
|
|
void onLoad();
|
|
|
|
//interface for other modules
|
|
std::list<Archimedes::Renderer::renderCmd*>::iterator addRenderCmd(Archimedes::Renderer::renderCmd* cmd) {
|
|
renderer->addRenderCmd(cmd);
|
|
}
|
|
|
|
void removeRenderCmd(std::list<Archimedes::Renderer::renderCmd*>::iterator cmd) {
|
|
renderer->removeRenderCmd(cmd);
|
|
}
|
|
|
|
auto getWindowImpl() { return window->getWindowImpl(); }
|
|
|
|
private:
|
|
|
|
Archimedes::Window* window;
|
|
Archimedes::Renderer* renderer;
|
|
};
|
|
|
|
|
|
#ifndef WINDOW_STATIC
|
|
#define MODULE_TYPE WindowModule
|
|
#include "endModule.h"
|
|
#endif
|