InputManager.cs 866 B

1234567891011121314151617181920212223242526272829303132333435
  1. using System;
  2. namespace Ryujinx.Input.HLE
  3. {
  4. public class InputManager : IDisposable
  5. {
  6. public IGamepadDriver KeyboardDriver { get; private set; }
  7. public IGamepadDriver GamepadDriver { get; private set; }
  8. public InputManager(IGamepadDriver keyboardDriver, IGamepadDriver gamepadDriver)
  9. {
  10. KeyboardDriver = keyboardDriver;
  11. GamepadDriver = gamepadDriver;
  12. }
  13. public NpadManager CreateNpadManager()
  14. {
  15. return new NpadManager(KeyboardDriver, GamepadDriver);
  16. }
  17. protected virtual void Dispose(bool disposing)
  18. {
  19. if (disposing)
  20. {
  21. KeyboardDriver?.Dispose();
  22. GamepadDriver?.Dispose();
  23. }
  24. }
  25. public void Dispose()
  26. {
  27. Dispose(true);
  28. }
  29. }
  30. }