@@ -19,6 +19,8 @@ extern "C" {
1919
2020typedef struct umf_ipc_data_t * umf_ipc_handle_t ;
2121
22+ typedef void * umf_ipc_handler_handle_t ;
23+
2224///
2325/// @brief Returns the size of IPC handles for the specified pool.
2426/// @param hPool [in] Pool handle
@@ -44,11 +46,11 @@ umf_result_t umfPutIPCHandle(umf_ipc_handle_t ipcHandle);
4446
4547///
4648/// @brief Open IPC handle retrieved by umfGetIPCHandle.
47- /// @param hPool [in] Pool handle where to open the the IPC handle.
49+ /// @param hIPCHandler [in] IPC Handler handle used to open the IPC handle.
4850/// @param ipcHandle [in] IPC handle.
4951/// @param ptr [out] pointer to the memory in the current process.
5052/// @return UMF_RESULT_SUCCESS on success or appropriate error code on failure.
51- umf_result_t umfOpenIPCHandle (umf_memory_pool_handle_t hPool ,
53+ umf_result_t umfOpenIPCHandle (umf_ipc_handler_handle_t hIPCHandler ,
5254 umf_ipc_handle_t ipcHandle , void * * ptr );
5355
5456///
@@ -57,6 +59,13 @@ umf_result_t umfOpenIPCHandle(umf_memory_pool_handle_t hPool,
5759/// @return UMF_RESULT_SUCCESS on success or appropriate error code on failure.
5860umf_result_t umfCloseIPCHandle (void * ptr );
5961
62+ /// @brief Get handle to the IPC handler from existing pool.
63+ /// @param hPool [in] Pool handle
64+ /// @param hIPCHandler [out] handle to the IPC handler
65+ /// @return UMF_RESULT_SUCCESS on success or appropriate error code on failure.
66+ umf_result_t umfPoolGetIPCHandler (umf_memory_pool_handle_t hPool ,
67+ umf_ipc_handler_handle_t * hIPCHandler );
68+
6069#ifdef __cplusplus
6170}
6271#endif
0 commit comments