rpcsx/rpcs3/Emu/Io/Keyboard.h

29 lines
970 B
C
Raw Normal View History

#pragma once
#include "KeyboardHandler.h"
2014-08-24 19:42:19 +02:00
class KeyboardManager
{
2015-02-22 15:52:20 +01:00
bool m_inited = false;
std::unique_ptr<KeyboardHandlerBase> m_keyboard_handler;
public:
KeyboardManager();
~KeyboardManager();
void Init(const u32 max_connect);
void Close();
std::vector<Keyboard>& GetKeyboards() { return m_keyboard_handler->GetKeyboards(); }
KbInfo& GetInfo() { return m_keyboard_handler->GetInfo(); }
std::vector<KbButton>& GetButtons(const u32 keyboard) { return m_keyboard_handler->GetButtons(keyboard); }
KbData& GetData(const u32 keyboard) { return m_keyboard_handler->GetData(keyboard); }
KbConfig& GetConfig(const u32 keyboard) { return m_keyboard_handler->GetConfig(keyboard); }
2014-03-24 13:47:30 +01:00
bool IsInited() const { return m_inited; }
2014-08-24 19:42:19 +02:00
};
2014-08-24 19:42:19 +02:00
typedef int(*GetKeyboardHandlerCountCb)();
typedef KeyboardHandlerBase*(*GetKeyboardHandlerCb)(int i);
void SetGetKeyboardHandlerCountCallback(GetKeyboardHandlerCountCb cb);
void SetGetKeyboardHandlerCallback(GetKeyboardHandlerCb cb);