summaryrefslogtreecommitdiff
path: root/src/core/hle/ipc_helpers.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/core/hle/ipc_helpers.h')
-rw-r--r--src/core/hle/ipc_helpers.h12
1 files changed, 12 insertions, 0 deletions
diff --git a/src/core/hle/ipc_helpers.h b/src/core/hle/ipc_helpers.h
index 323158bb5..11a33c8bd 100644
--- a/src/core/hle/ipc_helpers.h
+++ b/src/core/hle/ipc_helpers.h
@@ -27,6 +27,18 @@ public:
27 DEBUG_ASSERT_MSG(index == TotalSize(), "Operations do not match the header (cmd 0x%x)", 27 DEBUG_ASSERT_MSG(index == TotalSize(), "Operations do not match the header (cmd 0x%x)",
28 header.raw); 28 header.raw);
29 } 29 }
30
31 /**
32 * @brief Retrieves the address of a static buffer, used when a buffer is needed for output
33 * @param buffer_id The index of the static buffer
34 * @param data_size If non-null, will store the size of the buffer
35 */
36 VAddr PeekStaticBuffer(u8 buffer_id, size_t* data_size = nullptr) const {
37 u32* static_buffer = cmdbuf + Kernel::kStaticBuffersOffset / 4 + buffer_id * 2;
38 if (data_size)
39 *data_size = StaticBufferDescInfo{static_buffer[0]}.size;
40 return static_buffer[1];
41 }
30}; 42};
31 43
32class RequestBuilder : public RequestHelperBase { 44class RequestBuilder : public RequestHelperBase {