diff options
Diffstat (limited to 'src/core/hle/ipc_helpers.h')
-rw-r--r-- | src/core/hle/ipc_helpers.h | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/src/core/hle/ipc_helpers.h b/src/core/hle/ipc_helpers.h index 3f87c4297..24605a273 100644 --- a/src/core/hle/ipc_helpers.h +++ b/src/core/hle/ipc_helpers.h @@ -298,6 +298,13 @@ public: template <typename T> Kernel::SharedPtr<T> GetCopyObject(size_t index); + + template <class T> + std::shared_ptr<T> PopIpcInterface() { + ASSERT(context->Session()->IsDomain()); + ASSERT(context->GetDomainMessageHeader()->input_object_count > 0); + return context->GetDomainRequestHandler<T>(Pop<u32>() - 1); + } }; /// Pop /// |