aboutsummaryrefslogtreecommitdiff
path: root/Ryujinx.Input/HLE/InputManager.cs
diff options
context:
space:
mode:
Diffstat (limited to 'Ryujinx.Input/HLE/InputManager.cs')
-rw-r--r--Ryujinx.Input/HLE/InputManager.cs35
1 files changed, 35 insertions, 0 deletions
diff --git a/Ryujinx.Input/HLE/InputManager.cs b/Ryujinx.Input/HLE/InputManager.cs
new file mode 100644
index 00000000..277e8ec2
--- /dev/null
+++ b/Ryujinx.Input/HLE/InputManager.cs
@@ -0,0 +1,35 @@
+using System;
+
+namespace Ryujinx.Input.HLE
+{
+ public class InputManager : IDisposable
+ {
+ public IGamepadDriver KeyboardDriver { get; private set; }
+ public IGamepadDriver GamepadDriver { get; private set; }
+
+ public InputManager(IGamepadDriver keyboardDriver, IGamepadDriver gamepadDriver)
+ {
+ KeyboardDriver = keyboardDriver;
+ GamepadDriver = gamepadDriver;
+ }
+
+ public NpadManager CreateNpadManager()
+ {
+ return new NpadManager(KeyboardDriver, GamepadDriver);
+ }
+
+ protected virtual void Dispose(bool disposing)
+ {
+ if (disposing)
+ {
+ KeyboardDriver?.Dispose();
+ GamepadDriver?.Dispose();
+ }
+ }
+
+ public void Dispose()
+ {
+ Dispose(true);
+ }
+ }
+}