Package ai.onnxruntime
Class OrtProviderOptions
- java.lang.Object
-
- ai.onnxruntime.OrtProviderOptions
-
- All Implemented Interfaces:
java.lang.AutoCloseable
- Direct Known Subclasses:
OrtCUDAProviderOptions
,OrtTensorRTProviderOptions
public abstract class OrtProviderOptions extends java.lang.Object implements java.lang.AutoCloseable
An abstract base class for execution provider options classes.
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static interface
OrtProviderOptions.OrtProviderSupplier
Functional interface mirroring a Java supplier, but can throw OrtException.
-
Field Summary
Fields Modifier and Type Field Description protected boolean
closed
Is the native object closed?protected long
nativeHandle
The native pointer.
-
Constructor Summary
Constructors Modifier Constructor Description protected
OrtProviderOptions(long nativeHandle)
Constructs a OrtProviderOptions wrapped around a native pointer.
-
Method Summary
All Methods Static Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description protected abstract void
applyToNative()
Applies the Java side configuration to the native side object.protected void
checkClosed()
Checks if the OrtProviderOptions is closed, if so throwsIllegalStateException
.void
close()
protected abstract void
close(long apiHandle, long nativeHandle)
Native close method.protected static long
getApiHandle()
Allow access to the api handle pointer for subclasses.abstract OrtProvider
getProvider()
Gets the provider enum for this options instance.boolean
isClosed()
Is the native object closed?protected static long
loadLibraryAndCreate(OrtProvider provider, OrtProviderOptions.OrtProviderSupplier createFunction)
Loads the provider's shared library (if necessary) and calls the create provider function.
-
-
-
Method Detail
-
getApiHandle
protected static long getApiHandle()
Allow access to the api handle pointer for subclasses.- Returns:
- The api handle.
-
getProvider
public abstract OrtProvider getProvider()
Gets the provider enum for this options instance.- Returns:
- The provider enum.
-
applyToNative
protected abstract void applyToNative() throws OrtException
Applies the Java side configuration to the native side object.- Throws:
OrtException
- If the native call failed.
-
isClosed
public boolean isClosed()
Is the native object closed?- Returns:
- True if the native object has been released.
-
close
public void close()
- Specified by:
close
in interfacejava.lang.AutoCloseable
-
checkClosed
protected void checkClosed()
Checks if the OrtProviderOptions is closed, if so throwsIllegalStateException
.
-
close
protected abstract void close(long apiHandle, long nativeHandle)
Native close method.- Parameters:
apiHandle
- The api pointer.nativeHandle
- The native options pointer.
-
loadLibraryAndCreate
protected static long loadLibraryAndCreate(OrtProvider provider, OrtProviderOptions.OrtProviderSupplier createFunction) throws OrtException
Loads the provider's shared library (if necessary) and calls the create provider function.- Parameters:
provider
- The OrtProvider for this options.createFunction
- The create function.- Returns:
- The pointer to the native provider options object.
- Throws:
OrtException
- If either the library load or provider options create call failed.
-
-