summaryrefslogtreecommitdiffstats
path: root/src/core/hle/service/am/applets/applets.h
diff options
context:
space:
mode:
authorZach Hilman <zachhilman@gmail.com>2018-11-12 02:16:38 +0100
committerZach Hilman <zachhilman@gmail.com>2018-11-18 16:53:47 +0100
commit7cfb29de23836aa1873bbb108e3d25a0e9dcfa6d (patch)
tree6ed63f8c93a0d9b4e0cb6ac8d41e0a94aa149e99 /src/core/hle/service/am/applets/applets.h
parentam: Implement ILibraryAppletAccessor IsCompleted and GetResult (diff)
downloadyuzu-7cfb29de23836aa1873bbb108e3d25a0e9dcfa6d.tar
yuzu-7cfb29de23836aa1873bbb108e3d25a0e9dcfa6d.tar.gz
yuzu-7cfb29de23836aa1873bbb108e3d25a0e9dcfa6d.tar.bz2
yuzu-7cfb29de23836aa1873bbb108e3d25a0e9dcfa6d.tar.lz
yuzu-7cfb29de23836aa1873bbb108e3d25a0e9dcfa6d.tar.xz
yuzu-7cfb29de23836aa1873bbb108e3d25a0e9dcfa6d.tar.zst
yuzu-7cfb29de23836aa1873bbb108e3d25a0e9dcfa6d.zip
Diffstat (limited to '')
-rw-r--r--src/core/hle/service/am/applets/applets.h6
1 files changed, 5 insertions, 1 deletions
diff --git a/src/core/hle/service/am/applets/applets.h b/src/core/hle/service/am/applets/applets.h
index 6d90eb608..7fbaaf2f3 100644
--- a/src/core/hle/service/am/applets/applets.h
+++ b/src/core/hle/service/am/applets/applets.h
@@ -4,6 +4,7 @@
#pragma once
+#include <functional>
#include <memory>
#include <vector>
#include "common/swap.h"
@@ -20,6 +21,8 @@ class IStorage;
namespace Applets {
+using AppletStorageProxyFunction = std::function<void(IStorage)>;
+
class Applet {
public:
Applet();
@@ -30,7 +33,8 @@ public:
virtual bool TransactionComplete() const = 0;
virtual ResultCode GetStatus() const = 0;
virtual void ReceiveInteractiveData(std::shared_ptr<IStorage> storage) = 0;
- virtual IStorage Execute() = 0;
+ virtual void Execute(AppletStorageProxyFunction out_data,
+ AppletStorageProxyFunction out_interactive_data) = 0;
bool IsInitialized() const {
return initialized;