#include "Application.hpp" #include #include #include Application::~Application() { if (window != nullptr) { glfwDestroyWindow(window); window = nullptr; } glfwTerminate(); } void Application::Init(int width, int height, const std::string& title) { if(window == nullptr) glfwInit(); window = glfwCreateWindow(width, height, title.c_str(), NULL, NULL); if (window == nullptr) { const char* errorbuf; int errorcode = glfwGetError(&errorbuf); glfwTerminate(); std::stringstream errorstream; errorstream << "Failed to create GLFWwindow (" << errorcode << "): \n" << errorbuf << std::endl; throw std::runtime_error(errorstream.str()); } glfwMakeContextCurrent(window); } void Application::Launch() { while (!glfwWindowShouldClose(window)) { glfwPollEvents(); glfwSwapBuffers(window); } }