CreateHardwareDevice property

Pointer<NativeFunction<OrtStatusPtr Function(UnsignedInt type, Uint32 vendor_id, Uint32 device_id, Pointer<Char> vendor_name, Pointer<OrtKeyValuePairs> metadata, Pointer<Pointer<OrtHardwareDevice>> hardware_device)>> CreateHardwareDevice
getter/setter pair

\brief Create an OrtHardwareDevice.

\note Called within OrtEpFactory::GetSupportedDevices to create a new hardware device (e.g., virtual).

\paramin type The hardware device type. \paramin vendor_id The hardware device's vendor identifier. \paramin device_id The hardware device's identifier. \paramin vendor_name The hardware device's vendor name as a null-terminated string. Copied by ORT. \paramin metadata Optional OrtKeyValuePairs instance for hardware device metadata that may be queried by applications via OrtApi::GetEpDevices(). Refer to onnxruntime_ep_device_ep_metadata_keys.h for common OrtHardwareDevice metadata keys. \paramout hardware_device Output parameter set to the new OrtHardwareDevice instance that is created. Must be release with ReleaseHardwareDevice().

\snippet{doc} snippets.dox OrtStatus Return Value

\since Version 1.24.

Implementation

external ffi.Pointer<
  ffi.NativeFunction<
    OrtStatusPtr Function(
      ffi.UnsignedInt type,
      ffi.Uint32 vendor_id,
      ffi.Uint32 device_id,
      ffi.Pointer<ffi.Char> vendor_name,
      ffi.Pointer<OrtKeyValuePairs> metadata,
      ffi.Pointer<ffi.Pointer<OrtHardwareDevice>> hardware_device,
    )
  >
>
CreateHardwareDevice;