cecd.h 1.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960
  1. // Copyright 2015 Citra Emulator Project
  2. // Licensed under GPLv2 or any later version
  3. // Refer to the license.txt file included.
  4. #pragma once
  5. namespace Service {
  6. class Interface;
  7. namespace CECD {
  8. enum class CecStateAbbreviated {
  9. CEC_STATE_ABBREV_IDLE = 1, ///< Corresponds to CEC_STATE_IDLE
  10. CEC_STATE_ABBREV_NOT_LOCAL = 2, ///< Corresponds to CEC_STATEs *FINISH*, *POST, and OVER_BOSS
  11. CEC_STATE_ABBREV_SCANNING = 3, ///< Corresponds to CEC_STATE_SCANNING
  12. CEC_STATE_ABBREV_WLREADY =
  13. 4, ///< Corresponds to CEC_STATE_WIRELESS_READY when some unknown bool is true
  14. CEC_STATE_ABBREV_OTHER = 5, ///< Corresponds to CEC_STATEs besides *FINISH*, *POST, and
  15. /// OVER_BOSS and those listed here
  16. };
  17. /**
  18. * GetCecStateAbbreviated service function
  19. * Inputs:
  20. * 0: 0x000E0000
  21. * Outputs:
  22. * 1: ResultCode
  23. * 2: CecStateAbbreviated
  24. */
  25. void GetCecStateAbbreviated(Service::Interface* self);
  26. /**
  27. * GetCecInfoEventHandle service function
  28. * Inputs:
  29. * 0: 0x000F0000
  30. * Outputs:
  31. * 1: ResultCode
  32. * 3: Event Handle
  33. */
  34. void GetCecInfoEventHandle(Service::Interface* self);
  35. /**
  36. * GetChangeStateEventHandle service function
  37. * Inputs:
  38. * 0: 0x00100000
  39. * Outputs:
  40. * 1: ResultCode
  41. * 3: Event Handle
  42. */
  43. void GetChangeStateEventHandle(Service::Interface* self);
  44. /// Initialize CECD service(s)
  45. void Init();
  46. /// Shutdown CECD service(s)
  47. void Shutdown();
  48. } // namespace CECD
  49. } // namespace Service