Interface OnnxValue

All Superinterfaces:
AutoCloseable
All Known Implementing Classes:
OnnxMap, OnnxSequence, OnnxSparseTensor, OnnxTensor, OnnxTensorLike

public interface OnnxValue extends AutoCloseable
Top interface for input and output values from ONNX models. Currently implemented by OnnxTensor, OnnxSparseTensor, OnnxSequence and OnnxMap. Will be sealed to these types one day.
  • Nested Class Summary

    Nested Classes
    Modifier and Type
    Interface
    Description
    static enum 
    The type of the OnnxValue, mirroring the id in the C API.
  • Method Summary

    Modifier and Type
    Method
    Description
    void
    Closes the OnnxValue, freeing its native memory.
    static void
    close(Iterable<? extends OnnxValue> itr)
    Calls close on each element of the iterable.
    static void
    close(Map<String,? extends OnnxValue> map)
    Calls close on each OnnxValue in the map.
    Gets the type info object associated with this OnnxValue.
    Gets the type of this OnnxValue.
    Returns the value as a Java object copying it out of the native heap.
    boolean
    Checks if this value is closed (i.e., the native object has been released).
  • Method Details

    • getType

      Gets the type of this OnnxValue.
      Returns:
      The value type.
    • getValue

      Object getValue() throws OrtException
      Returns the value as a Java object copying it out of the native heap. This operation can be quite slow for high dimensional tensors, where you should prefer OnnxTensor.getByteBuffer() etc.

      Overridden by the subclasses with a more specific type if available.

      Returns:
      The value.
      Throws:
      OrtException - If an error occurred reading the value.
    • getInfo

      ValueInfo getInfo()
      Gets the type info object associated with this OnnxValue.
      Returns:
      The type information.
    • isClosed

      boolean isClosed()
      Checks if this value is closed (i.e., the native object has been released).
      Returns:
      True if the value is closed and the native object has been released.
    • close

      void close()
      Closes the OnnxValue, freeing its native memory.
      Specified by:
      close in interface AutoCloseable
    • close

      static void close(Iterable<? extends OnnxValue> itr)
      Calls close on each element of the iterable.
      Parameters:
      itr - An iterable of closeable OnnxValues.
    • close

      static void close(Map<String,? extends OnnxValue> map)
      Calls close on each OnnxValue in the map.
      Parameters:
      map - A map of OnnxValues.