diff --git a/rpcs3/Emu/Event.h b/rpcs3/Emu/Event.h new file mode 100644 index 0000000000..bc01aaf162 --- /dev/null +++ b/rpcs3/Emu/Event.h @@ -0,0 +1,17 @@ +#pragma once +#include "Emu/SysCalls/lv2/sys_event.h" + +class EventManager +{ + std::mutex m_lock; + std::unordered_map key_map; + +public: + void Init(); + void Clear(); + bool CheckKey(u64 key); + bool RegisterKey(EventQueue* data, u64 key); + bool GetEventQueue(u64 key, EventQueue*& data); + bool UnregisterKey(u64 key); + bool SendEvent(u64 key, u64 source, u64 d1, u64 d2, u64 d3); +}; diff --git a/rpcs3/emucore.vcxproj b/rpcs3/emucore.vcxproj index f14bade857..37ce298aca 100644 --- a/rpcs3/emucore.vcxproj +++ b/rpcs3/emucore.vcxproj @@ -271,7 +271,7 @@ - + diff --git a/rpcs3/emucore.vcxproj.filters b/rpcs3/emucore.vcxproj.filters index 0a1d6e9701..b5828b0a70 100644 --- a/rpcs3/emucore.vcxproj.filters +++ b/rpcs3/emucore.vcxproj.filters @@ -967,7 +967,7 @@ Emu\Io\XInput - + Emu\SysCalls