CreateEp property

Pointer<NativeFunction<OrtStatusPtr Function(Pointer<OrtEpFactory> this_ptr, Pointer<Pointer<OrtHardwareDevice>> devices, Pointer<Pointer<OrtKeyValuePairs>> ep_metadata_pairs, Size num_devices, Pointer<OrtSessionOptions> session_options, Pointer<OrtLogger> logger, Pointer<Pointer<OrtEp>> ep)>> CreateEp
getter/setter pair

\brief Function to create an OrtEp instance for use in a Session.

ORT will call ReleaseEp to release the instance when it is no longer needed.

\paramin this_ptr The OrtEpFactory instance. \paramin devices The OrtHardwareDevice instances that the execution provider was selected to use. May be a subset of the OrtHardwareDevice instances that the execution provider's factory set as supported in the call to OrtEpFactory::GetSupportedDevices. \paramin ep_metadata_pairs Execution provider metadata that was provided to OrtEpApi::CreateEpDevice, for each device. \paramin num_devices The number of devices the execution provider was selected for. \paramin session_options The OrtSessionOptions instance that contains the configuration options for the session. This will include ep_options from GetSupportedDevices as well as any user provided overrides. Execution provider options will have been added with a prefix of 'ep.ep name.'. The OrtSessionOptions instance will NOT be valid after this call and should not be stored for later use. \paramin logger The OrtLogger instance for the session that the execution provider should use for logging. \paramout ep The OrtEp instance created by the factory.

\snippet{doc} snippets.dox OrtStatus Return Value

\since Version 1.22.

Implementation

external ffi.Pointer<
  ffi.NativeFunction<
    OrtStatusPtr Function(
      ffi.Pointer<OrtEpFactory> this_ptr,
      ffi.Pointer<ffi.Pointer<OrtHardwareDevice>> devices,
      ffi.Pointer<ffi.Pointer<OrtKeyValuePairs>> ep_metadata_pairs,
      ffi.Size num_devices,
      ffi.Pointer<OrtSessionOptions> session_options,
      ffi.Pointer<OrtLogger> logger,
      ffi.Pointer<ffi.Pointer<OrtEp>> ep,
    )
  >
>
CreateEp;