Files
Archimedes/modules/WindowModule/src/WindowModule.cpp
2025-04-02 11:50:32 -05:00

39 lines
820 B
C++

#include "WindowModule.h"
WindowModule::~WindowModule() {
if(window)
delete window;
if(renderer)
delete renderer;
}
void WindowModule::onLoad() {
window = new Archimedes::Window();
//renderer = new Archimedes::Renderer();
//window->setRenderer(renderer);
renderer = window->getRenderer();
if(!renderer->init()) {
std::cout << "Renderer init failed!\n";
std::abort();
}
data["window"] = window->getWindowImpl().getWindow();
data["renderCmdList"] = &renderer->getCmdList();
std::cout << "WindowModule GLFWwindow*: " << std::any_cast<decltype(window->getWindowImpl().getWindow())>(data["window"]) << std::endl;
}
void WindowModule::run() {
if(window->shouldClose()) {
app->end();
}
window->doFrame();
}