diff options
Diffstat (limited to 'src/core/hle/service/am/applets/applets.h')
-rw-r--r-- | src/core/hle/service/am/applets/applets.h | 20 |
1 files changed, 14 insertions, 6 deletions
diff --git a/src/core/hle/service/am/applets/applets.h b/src/core/hle/service/am/applets/applets.h index 26b482015..4215d2232 100644 --- a/src/core/hle/service/am/applets/applets.h +++ b/src/core/hle/service/am/applets/applets.h @@ -72,7 +72,7 @@ enum class LibraryAppletMode : u32 { class AppletDataBroker final { public: - explicit AppletDataBroker(Kernel::KernelCore& kernel_); + explicit AppletDataBroker(Core::System& system_, LibraryAppletMode applet_mode_); ~AppletDataBroker(); struct RawChannelData { @@ -102,6 +102,9 @@ public: std::shared_ptr<Kernel::KReadableEvent> GetStateChangedEvent() const; private: + Core::System& system; + LibraryAppletMode applet_mode; + // Queues are named from applet's perspective // PopNormalDataToApplet and PushNormalDataFromGame @@ -127,7 +130,7 @@ private: class Applet { public: - explicit Applet(Kernel::KernelCore& kernel_); + explicit Applet(Core::System& system_, LibraryAppletMode applet_mode_); virtual ~Applet(); virtual void Initialize(); @@ -137,10 +140,6 @@ public: virtual void ExecuteInteractive() = 0; virtual void Execute() = 0; - bool IsInitialized() const { - return initialized; - } - AppletDataBroker& GetBroker() { return broker; } @@ -149,6 +148,14 @@ public: return broker; } + LibraryAppletMode GetLibraryAppletMode() const { + return applet_mode; + } + + bool IsInitialized() const { + return initialized; + } + protected: struct CommonArguments { u32_le arguments_version; @@ -162,6 +169,7 @@ protected: CommonArguments common_args{}; AppletDataBroker broker; + LibraryAppletMode applet_mode; bool initialized = false; }; |