kernel_helpers.h 651 B

1234567891011121314151617181920212223242526272829303132333435
  1. // Copyright 2021 yuzu emulator team
  2. // Licensed under GPLv2 or any later version
  3. // Refer to the license.txt file included.
  4. #pragma once
  5. #include <string>
  6. namespace Core {
  7. class System;
  8. }
  9. namespace Kernel {
  10. class KernelCore;
  11. class KEvent;
  12. class KProcess;
  13. } // namespace Kernel
  14. namespace Service::KernelHelpers {
  15. class ServiceContext {
  16. public:
  17. ServiceContext(Core::System& system_, std::string name_);
  18. ~ServiceContext();
  19. Kernel::KEvent* CreateEvent(std::string&& name);
  20. void CloseEvent(Kernel::KEvent* event);
  21. private:
  22. Kernel::KernelCore& kernel;
  23. Kernel::KProcess* process{};
  24. };
  25. } // namespace Service::KernelHelpers