service_thread.h 622 B

1234567891011121314151617181920212223242526272829
  1. // SPDX-FileCopyrightText: Copyright 2020 yuzu Emulator Project
  2. // SPDX-License-Identifier: GPL-2.0-or-later
  3. #pragma once
  4. #include <memory>
  5. #include <string>
  6. namespace Kernel {
  7. class HLERequestContext;
  8. class KernelCore;
  9. class KSession;
  10. class SessionRequestManager;
  11. class ServiceThread final {
  12. public:
  13. explicit ServiceThread(KernelCore& kernel, const std::string& name);
  14. ~ServiceThread();
  15. void RegisterServerSession(KServerSession* session,
  16. std::shared_ptr<SessionRequestManager> manager);
  17. private:
  18. class Impl;
  19. std::unique_ptr<Impl> impl;
  20. };
  21. } // namespace Kernel