EHS/include/ehs/io/hid/Input.h
karutoh 1a4a1ecd9c
Some checks failed
Build & Release / Linux-x86_64-Build (push) Successful in 40s
Build & Release / Linux-AARCH64-Build (push) Has been cancelled
First commit.
2024-01-31 22:28:19 -08:00

47 lines
719 B
C++

#pragma once
#include "ehs/Array.h"
#include "ehs/Serializer.h"
#include "InputHandler.h"
namespace ehs
{
class Input
{
private:
Array<InputHandler*> handlers;
bool initalized;
public:
~Input();
Input();
Input(Input&& input) noexcept;
Input(const Input& input);
Input& operator=(Input&& input) noexcept;
Input& operator=(const Input& input);
void Initialize();
void Release();
void Poll();
bool HasHandler(const UInt_64 hashId) const;
bool HasHandler(const Str_8& id) const;
bool AddHandler(InputHandler* handler);
const InputHandler* GetHandler(const UInt_64 hashId) const;
const InputHandler* GetHandler(const Str_8& id) const;
bool IsInitialized() const;
};
}