Program Listing for File input.hpp¶
↰ Return to documentation for file (inexor/vulkan-renderer/input/input.hpp)
#pragma once
#include "inexor/vulkan-renderer/input/gamepad_data.hpp"
#include "inexor/vulkan-renderer/input/keyboard_mouse_data.hpp"
#include <GLFW/glfw3.h>
namespace inexor::vulkan_renderer::input {
class Input {
private:
GamepadInputData m_gamepad_data;
KeyboardMouseInputData m_kbm_data;
public:
Input() = default;
void cursor_position_callback(GLFWwindow *window, double x_pos, double y_pos);
GamepadInputData &gamepad_data() {
return m_gamepad_data;
}
KeyboardMouseInputData &kbm_data() {
return m_kbm_data;
}
void key_callback(GLFWwindow *window, int key, int scancode, int action, int mods);
void mouse_button_callback(GLFWwindow *window, int button, int action, int mods);
void mouse_scroll_callback(GLFWwindow *window, double x_offset, double y_offset);
void update();
void update_gamepad_data();
};
} // namespace inexor::vulkan_renderer::input