summaryrefslogtreecommitdiffstats
path: root/src/core/hle/service/am/applets/applets.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/core/hle/service/am/applets/applets.h')
-rw-r--r--src/core/hle/service/am/applets/applets.h20
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;
};