#include "cve_window.hpp" #include namespace cve { CveWindow::CveWindow(int w, int h, std::string name) : width{w}, height{h}, windowName{name} { initWindow(); } CveWindow::~CveWindow() { glfwDestroyWindow(window); glfwTerminate(); } void CveWindow::initWindow() { glfwInit(); glfwWindowHint(GLFW_CLIENT_API, GLFW_NO_API); glfwWindowHint(GLFW_RESIZABLE, GLFW_FALSE); window = glfwCreateWindow(width, height, windowName.c_str(), nullptr, nullptr); } void CveWindow::createWindowSurface(VkInstance instance, VkSurfaceKHR *surface) { if (glfwCreateWindowSurface(instance, window, nullptr, surface) != VK_SUCCESS) { throw std::runtime_error("Failed to create window surface"); } } }