Added namespaces to the core engine, improved premake setup, added a buildsolution batch script, removed tinygltf submodule
31 lines
862 B
C++
31 lines
862 B
C++
#pragma once
|
|
#include <vector>
|
|
#include <iostream>
|
|
|
|
#include "spdlog/spdlog.h"
|
|
#include "../EventSystem/EventEmitter.h"
|
|
#include "../EventSystem/EventListener.h"
|
|
#include "../Platform/Window.h"
|
|
|
|
namespace YoggieEngine {
|
|
|
|
class InputManager : EventEmitter {
|
|
public:
|
|
InputManager();
|
|
|
|
void PollEvents();
|
|
void attach(BarinkWindow* window);
|
|
|
|
// GLFW Handlers
|
|
static void KeyCallback(GLFWwindow* window, int key, int scancode, int action, int mods);
|
|
static void CursorPositionCallback(GLFWwindow* window, double x, double y);
|
|
static void CursorEnterCallback(GLFWwindow* window, int entered);
|
|
static void MouseButtonCallback(GLFWwindow* window, int button, int action, int mods);
|
|
static void ScrollCallback(GLFWwindow* window, double xoffset, double yoffset);
|
|
private:
|
|
std::vector<BarinkWindow*> windows;
|
|
|
|
};
|
|
extern InputManager InputSystem;
|
|
}
|