CreateExternalResourceImporterForDevice property
\brief Create an OrtExternalResourceImporterImpl for external resource import.
This is used to create an external resource importer that enables zero-copy import of external GPU memory (e.g., D3D12 shared resources) and synchronization primitives (e.g., D3D12 timeline fences).
EPs that support external resource import (via CUDA, HIP, Vulkan, or D3D12 APIs) can implement this to allow applications to share GPU resources without copies.
\paramin this_ptr The OrtEpFactory instance.
\paramin ep_device The OrtEpDevice to create the external resource importer for.
\paramout out_importer The created OrtExternalResourceImporterImpl instance.
Set to nullptr if external resource import is not supported.
\snippet{doc} snippets.dox OrtStatus Return Value
\note Implementation of this function is optional. An EP factory should only implement this if it supports external resource import. If not implemented or not supported, return ORT_NOT_IMPLEMENTED or set out_importer to nullptr.
\since Version 1.24.
Implementation
external ffi.Pointer<
ffi.NativeFunction<
OrtStatusPtr Function(
ffi.Pointer<OrtEpFactory> this_ptr,
ffi.Pointer<OrtEpDevice> ep_device,
ffi.Pointer<ffi.Pointer<OrtExternalResourceImporterImpl>> out_importer,
)
>
>
CreateExternalResourceImporterForDevice;