Skip to main content

Delegate

Struct Delegate 

Source
pub struct Delegate { /* private fields */ }
Expand description

An external TFLite delegate for hardware acceleration.

Delegates are loaded from shared libraries that export the standard tflite_plugin_create_delegate / tflite_plugin_destroy_delegate entry points.

§Examples

use edgefirst_tflite::{Delegate, DelegateOptions};

// Load delegate with default options
let delegate = Delegate::load("libvx_delegate.so")?;

// Load delegate with options
let delegate = Delegate::load_with_options(
    "libvx_delegate.so",
    &DelegateOptions::new()
        .option("cache_file_path", "/tmp/vx_cache")
        .option("device_id", "0"),
)?;

Implementations§

Source§

impl Delegate

Source

pub fn load(path: impl AsRef<Path>) -> Result<Self>

Load an external delegate from a shared library with default options.

§Errors

Returns an error if the library cannot be loaded, required symbols are missing, or the delegate returns a null pointer.

Source

pub fn load_with_options( path: impl AsRef<Path>, options: &DelegateOptions, ) -> Result<Self>

Load an external delegate with configuration options.

§Errors

Returns an error if the library cannot be loaded, required symbols are missing, the delegate returns a null pointer, or any option key or value contains an interior NUL byte.

Source

pub fn as_ptr(&self) -> *mut TfLiteDelegate

Returns the raw delegate pointer.

This is an escape hatch for advanced use cases that need direct FFI access to the delegate.

Trait Implementations§

Source§

impl Debug for Delegate

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl Drop for Delegate

Source§

fn drop(&mut self)

Executes the destructor for this type. Read more

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.