various cleanup

This commit is contained in:
Erris
2026-02-10 09:42:59 +01:00
parent a53150d228
commit 86392e0790
13 changed files with 181 additions and 155 deletions

View File

@@ -14,52 +14,25 @@ namespace OpenEngine {
class Input
{
public:
virtual ~Input() = default;
Input(const Input&) = delete;
Input& operator=(const Input&) = delete;
static bool IsKeyPressed(KeyCode keycode);
inline static bool IsKeyPressed(KeyCode keycode) { return instance->IsKeyPressedImpl(keycode); };
static bool IsMouseButtonPressed(MouseCode button);
inline static bool IsMouseButtonPressed(MouseCode button) { return instance->IsMouseButtonPressedImpl(button); };
static std::pair<float, float> GetMousePosition();
static float GetMouseX();
static float GetMouseY();
inline static std::pair<float, float> GetMousePosition() { return instance->GetMousePositionImpl(); };
inline static bool GetMouseX() { return instance->GetMouseXImpl(); };
inline static bool GetMouseY() { return instance->GetMouseYImpl(); };
static bool JoystickExists(unsigned int joystick);
static std::map<unsigned int, std::string> GetJoystickList();
inline static bool JoystickExists(unsigned int joystick) { return instance->JoystickExistsImpl(joystick); };
inline static std::map<unsigned int, std::string> GetJoystickList() { return instance->GetJoystickListImpl(); };
static float GetJoystickAxis(unsigned int joystick, unsigned int axis);
static const float* GetJoystickAxes(unsigned int joystick);
static unsigned int GetJoystickAxesCount(unsigned int joystick);
inline static float GetJoystickAxis(unsigned int joystick, unsigned int axis) { return instance->GetJoystickAxisImpl(joystick, axis); };
inline static const float* GetJoystickAxes(unsigned int joystick) { return instance->GetJoystickAxesImpl(joystick); };
inline static unsigned int GetJoystickAxesCount(unsigned int joystick) { return instance->GetJoystickAxesCountImpl(joystick); };
inline static bool IsJoystickButtonPressed(unsigned int joystick, unsigned int button) { return instance->IsJoystickButtonPressedImpl(joystick, button); };
protected:
Input() = default;
virtual bool IsKeyPressedImpl(KeyCode keycode) = 0;
virtual bool IsMouseButtonPressedImpl(MouseCode button) = 0;
virtual std::pair<float, float> GetMousePositionImpl() = 0;
virtual float GetMouseXImpl() = 0;
virtual float GetMouseYImpl() = 0;
virtual bool JoystickExistsImpl(unsigned int joystick) = 0;
virtual std::map<unsigned int, std::string> GetJoystickListImpl() = 0;
virtual const std::string GetJoystickNameImpl(unsigned int joystick) = 0;
virtual float GetJoystickAxisImpl(unsigned int joystick, unsigned int axis) = 0;
virtual const float* GetJoystickAxesImpl(unsigned int joystick) = 0;
virtual unsigned int GetJoystickAxesCountImpl(unsigned int joystick) = 0;
virtual bool IsJoystickButtonPressedImpl(unsigned int joystick, unsigned int button) = 0;
static bool IsJoystickButtonPressed(unsigned int joystick, unsigned int button);
private:
inline static const std::string GetJoystickName(unsigned int joystick) { return instance->GetJoystickNameImpl(joystick); };
static Scope<Input> instance;
static const std::string GetJoystickName(unsigned int joystick);
};
}

View File

@@ -1,32 +0,0 @@
#ifndef LINUX_INPUT_HPP
#define LINUX_INPUT_HPP
#include "open_engine/input/input_system.hpp"
#include "open_engine/input/keycodes.hpp"
namespace OpenEngine {
class LinuxInput : public Input
{
protected:
virtual bool IsKeyPressedImpl(KeyCode keycode) override;
virtual bool IsMouseButtonPressedImpl(MouseCode button) override;
virtual std::pair<float, float> GetMousePositionImpl() override;
virtual float GetMouseXImpl() override;
virtual float GetMouseYImpl() override;
virtual bool JoystickExistsImpl(unsigned int joystick) override;
virtual float GetJoystickAxisImpl(unsigned int joystick, unsigned int axis) override;
virtual const std::string GetJoystickNameImpl(unsigned int joystick) override;
virtual std::map<unsigned int, std::string> GetJoystickListImpl() override;
virtual const float* GetJoystickAxesImpl(unsigned int joystick) override;
virtual unsigned int GetJoystickAxesCountImpl(unsigned int joystick) override;
virtual bool IsJoystickButtonPressedImpl(unsigned int joystick, unsigned int button) override;
};
}
#endif // LINUX_INPUT_HPP