diff options
Diffstat (limited to 'src/core/hle/ipc_helpers.h')
-rw-r--r-- | src/core/hle/ipc_helpers.h | 23 |
1 files changed, 22 insertions, 1 deletions
diff --git a/src/core/hle/ipc_helpers.h b/src/core/hle/ipc_helpers.h index 0a7142ada..90f276ee8 100644 --- a/src/core/hle/ipc_helpers.h +++ b/src/core/hle/ipc_helpers.h @@ -18,7 +18,7 @@ #include "core/hle/kernel/client_session.h" #include "core/hle/kernel/hle_ipc.h" #include "core/hle/kernel/object.h" -#include "core/hle/kernel/server_port.h" +#include "core/hle/kernel/server_session.h" namespace IPC { @@ -217,6 +217,11 @@ private: /// Push /// template <> +inline void ResponseBuilder::Push(s32 value) { + cmdbuf[index++] = static_cast<u32>(value); +} + +template <> inline void ResponseBuilder::Push(u32 value) { cmdbuf[index++] = value; } @@ -235,6 +240,22 @@ inline void ResponseBuilder::Push(ResultCode value) { } template <> +inline void ResponseBuilder::Push(s8 value) { + PushRaw(value); +} + +template <> +inline void ResponseBuilder::Push(s16 value) { + PushRaw(value); +} + +template <> +inline void ResponseBuilder::Push(s64 value) { + Push(static_cast<u32>(value)); + Push(static_cast<u32>(value >> 32)); +} + +template <> inline void ResponseBuilder::Push(u8 value) { PushRaw(value); } |