Files
OpenVulkano/openVulkanoCpp/Host/GLFW/InputDeviceGLFW.hpp
2020-08-06 20:48:17 +02:00

53 lines
1.4 KiB
C++

/*
* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at https://mozilla.org/MPL/2.0/.
*/
#pragma once
#include "../../Base/ITickable.hpp"
#include "../../Input/InputDeviceKeyboard.hpp"
#include "../../Input/InputDeviceMouse.hpp"
#include "../../Input/InputDeviceController.hpp"
namespace openVulkanoCpp::GLFW
{
class KeyboardGLFW final : public Input::InputDeviceKeyboard
{
public:
KeyboardGLFW() = default;
~KeyboardGLFW() override = default;
using Input::InputDeviceKeyboard::Init;
using Input::InputDeviceKeyboard::PreTick;
using Input::InputDeviceKeyboard::UpdateKey;
using Input::InputDeviceKeyboard::UpdateActiveWindow;
};
class MouseGLFW final : public Input::InputDeviceMouse
{
public:
MouseGLFW() = default;
~MouseGLFW() override = default;
using Input::InputDeviceMouse::Init;
using Input::InputDeviceMouse::ClearAxes;
using Input::InputDeviceMouse::UpdateButtons;
using Input::InputDeviceMouse::UpdatePosition;
using Input::InputDeviceMouse::UpdateWheel;
using Input::InputDeviceMouse::UpdateActiveWindow;
};
class ControllerGLFW final : public Input::InputDeviceController, public ITickable
{
bool gamepad = false;;
public:
ControllerGLFW() = default;
~ControllerGLFW() override = default;
void Init(int joystickId);
void Tick() override;
};
}