diff options
author | Liam <byteslice@airmail.cc> | 2024-02-14 17:39:42 +0100 |
---|---|---|
committer | Liam <byteslice@airmail.cc> | 2024-02-18 00:01:41 +0100 |
commit | ee8eccc5fa473f2ce210eb4e242e8eca40594db7 (patch) | |
tree | 5c38fc738e52be88eddd7733e0fdeb248ef4783f /src/core/hle/service/vi/application_display_service.h | |
parent | am: unify display layer management (diff) | |
download | yuzu-ee8eccc5fa473f2ce210eb4e242e8eca40594db7.tar yuzu-ee8eccc5fa473f2ce210eb4e242e8eca40594db7.tar.gz yuzu-ee8eccc5fa473f2ce210eb4e242e8eca40594db7.tar.bz2 yuzu-ee8eccc5fa473f2ce210eb4e242e8eca40594db7.tar.lz yuzu-ee8eccc5fa473f2ce210eb4e242e8eca40594db7.tar.xz yuzu-ee8eccc5fa473f2ce210eb4e242e8eca40594db7.tar.zst yuzu-ee8eccc5fa473f2ce210eb4e242e8eca40594db7.zip |
Diffstat (limited to '')
-rw-r--r-- | src/core/hle/service/vi/application_display_service.h | 18 |
1 files changed, 11 insertions, 7 deletions
diff --git a/src/core/hle/service/vi/application_display_service.h b/src/core/hle/service/vi/application_display_service.h index 5dff4bb31..e56490f9f 100644 --- a/src/core/hle/service/vi/application_display_service.h +++ b/src/core/hle/service/vi/application_display_service.h @@ -9,26 +9,30 @@ namespace Kernel { class KReadableEvent; } +namespace Service::Nvnflinger { +class Nvnflinger; +class IHOSBinderDriver; +} // namespace Service::Nvnflinger + namespace Service::VI { -class IHOSBinderDriver; class IManagerDisplayService; class ISystemDisplayService; class IApplicationDisplayService final : public ServiceFramework<IApplicationDisplayService> { public: - IApplicationDisplayService(Core::System& system_, Nvnflinger::Nvnflinger& nvnflinger, - Nvnflinger::HosBinderDriverServer& hos_binder_driver_server); + IApplicationDisplayService(Core::System& system_, + std::shared_ptr<Nvnflinger::IHOSBinderDriver> binder_service); ~IApplicationDisplayService() override; private: - Result GetRelayService(Out<SharedPointer<IHOSBinderDriver>> out_relay_service); + Result GetRelayService(Out<SharedPointer<Nvnflinger::IHOSBinderDriver>> out_relay_service); Result GetSystemDisplayService( Out<SharedPointer<ISystemDisplayService>> out_system_display_service); Result GetManagerDisplayService( Out<SharedPointer<IManagerDisplayService>> out_manager_display_service); Result GetIndirectDisplayTransactionService( - Out<SharedPointer<IHOSBinderDriver>> out_indirect_display_transaction_service); + Out<SharedPointer<Nvnflinger::IHOSBinderDriver>> out_indirect_display_transaction_service); Result OpenDisplay(Out<u64> out_display_id, DisplayName display_name); Result OpenDefaultDisplay(Out<u64> out_display_id); Result CloseDisplay(u64 display_id); @@ -56,8 +60,8 @@ private: s64 width, s64 height); private: - Nvnflinger::Nvnflinger& m_nvnflinger; - Nvnflinger::HosBinderDriverServer& m_hos_binder_driver_server; + const std::shared_ptr<Nvnflinger::IHOSBinderDriver> m_binder_service; + const std::shared_ptr<Nvnflinger::Nvnflinger> m_surface_flinger; std::vector<u64> m_stray_layer_ids; bool m_vsync_event_fetched{false}; }; |