6#ifndef INCLUDE_VULKANENGINE_GLFWWINDOW_H_
7#define INCLUDE_VULKANENGINE_GLFWWINDOW_H_
9#define GLFW_INCLUDE_VULKAN
10#include <GLFW/glfw3.h>
11#include <VulkanEngine/Window.h>
26 GLFWWindow(
int _width,
int _height,
const std::string& _title,
35 virtual bool initialize(
bool invisible =
false);
49 virtual void setWidth(uint32_t _width);
57 virtual void setTitle(
const std::string& new_title);
65 GLFWwindow* glfw_window;
68 VkSurfaceKHR vk_surface;
74 static void errorCallback(
int error,
const char* description);
80 static void windowResizeCallback(GLFWwindow* _glfw_window,
int _width,
87 static void framebufferResizeCallback(GLFWwindow* _glfw_window,
int _width,
94 static void cursorPositionCallback(GLFWwindow* _glfw_window,
double xpos,
101 static void scrollCallback(GLFWwindow* _glfw_window,
double xoffset,
109 static void mouseButtonCallback(GLFWwindow* _glfw_window,
int button,
110 int action,
int mods);
118 static void keyCallback(GLFWwindow* _glfw_window,
int key,
int scancode,
119 int action,
int mods);
An implementation of VulkanEngine::Window which uses the GLFW library.
Definition: GLFWWindow.h:19
virtual void update()
Do anything needed to update the window.
Definition: GLFWWindow.cpp:47
virtual const std::vector< const char * > getRequiredVulkanInstanceExtensions() const
Definition: GLFWWindow.cpp:99
virtual ~GLFWWindow()
Desctructor.
Definition: GLFWWindow.cpp:37
virtual void setTitle(const std::string &new_title)
Definition: GLFWWindow.cpp:130
virtual void setHeight(uint32_t _height)
Definition: GLFWWindow.cpp:122
virtual bool shouldClose()
Definition: GLFWWindow.cpp:110
virtual void setWidth(uint32_t _width)
Definition: GLFWWindow.cpp:114
virtual bool initialize(bool invisible=false)
Definition: GLFWWindow.cpp:53
virtual vk::SurfaceKHR getVkSurface()
Definition: GLFWWindow.cpp:240
Provides an abstract interface for window implementations.
Definition: Window.h:20
TODO development of this class is in progress.
Definition: Attribute.h:13