Struct halide_runtime::runtime::halide_device_interface_t
source · [−]#[repr(C)]pub struct halide_device_interface_t {Show 16 fields
pub device_malloc: Option<unsafe extern "C" fn(user_context: *mut c_void, buf: *mut halide_buffer_t, device_interface: *const halide_device_interface_t) -> c_int>,
pub device_free: Option<unsafe extern "C" fn(user_context: *mut c_void, buf: *mut halide_buffer_t) -> c_int>,
pub device_sync: Option<unsafe extern "C" fn(user_context: *mut c_void, buf: *mut halide_buffer_t) -> c_int>,
pub device_release: Option<unsafe extern "C" fn(user_context: *mut c_void, device_interface: *const halide_device_interface_t)>,
pub copy_to_host: Option<unsafe extern "C" fn(user_context: *mut c_void, buf: *mut halide_buffer_t) -> c_int>,
pub copy_to_device: Option<unsafe extern "C" fn(user_context: *mut c_void, buf: *mut halide_buffer_t, device_interface: *const halide_device_interface_t) -> c_int>,
pub device_and_host_malloc: Option<unsafe extern "C" fn(user_context: *mut c_void, buf: *mut halide_buffer_t, device_interface: *const halide_device_interface_t) -> c_int>,
pub device_and_host_free: Option<unsafe extern "C" fn(user_context: *mut c_void, buf: *mut halide_buffer_t) -> c_int>,
pub buffer_copy: Option<unsafe extern "C" fn(user_context: *mut c_void, src: *mut halide_buffer_t, dst_device_interface: *const halide_device_interface_t, dst: *mut halide_buffer_t) -> c_int>,
pub device_crop: Option<unsafe extern "C" fn(user_context: *mut c_void, src: *const halide_buffer_t, dst: *mut halide_buffer_t) -> c_int>,
pub device_slice: Option<unsafe extern "C" fn(user_context: *mut c_void, src: *const halide_buffer_t, slice_dim: c_int, slice_pos: c_int, dst: *mut halide_buffer_t) -> c_int>,
pub device_release_crop: Option<unsafe extern "C" fn(user_context: *mut c_void, buf: *mut halide_buffer_t) -> c_int>,
pub wrap_native: Option<unsafe extern "C" fn(user_context: *mut c_void, buf: *mut halide_buffer_t, handle: u64, device_interface: *const halide_device_interface_t) -> c_int>,
pub detach_native: Option<unsafe extern "C" fn(user_context: *mut c_void, buf: *mut halide_buffer_t) -> c_int>,
pub compute_capability: Option<unsafe extern "C" fn(user_context: *mut c_void, major: *mut c_int, minor: *mut c_int) -> c_int>,
pub impl_: *const halide_device_interface_impl_t,
}Fields
device_malloc: Option<unsafe extern "C" fn(user_context: *mut c_void, buf: *mut halide_buffer_t, device_interface: *const halide_device_interface_t) -> c_int>device_free: Option<unsafe extern "C" fn(user_context: *mut c_void, buf: *mut halide_buffer_t) -> c_int>device_sync: Option<unsafe extern "C" fn(user_context: *mut c_void, buf: *mut halide_buffer_t) -> c_int>device_release: Option<unsafe extern "C" fn(user_context: *mut c_void, device_interface: *const halide_device_interface_t)>copy_to_host: Option<unsafe extern "C" fn(user_context: *mut c_void, buf: *mut halide_buffer_t) -> c_int>copy_to_device: Option<unsafe extern "C" fn(user_context: *mut c_void, buf: *mut halide_buffer_t, device_interface: *const halide_device_interface_t) -> c_int>device_and_host_malloc: Option<unsafe extern "C" fn(user_context: *mut c_void, buf: *mut halide_buffer_t, device_interface: *const halide_device_interface_t) -> c_int>device_and_host_free: Option<unsafe extern "C" fn(user_context: *mut c_void, buf: *mut halide_buffer_t) -> c_int>buffer_copy: Option<unsafe extern "C" fn(user_context: *mut c_void, src: *mut halide_buffer_t, dst_device_interface: *const halide_device_interface_t, dst: *mut halide_buffer_t) -> c_int>device_crop: Option<unsafe extern "C" fn(user_context: *mut c_void, src: *const halide_buffer_t, dst: *mut halide_buffer_t) -> c_int>device_slice: Option<unsafe extern "C" fn(user_context: *mut c_void, src: *const halide_buffer_t, slice_dim: c_int, slice_pos: c_int, dst: *mut halide_buffer_t) -> c_int>device_release_crop: Option<unsafe extern "C" fn(user_context: *mut c_void, buf: *mut halide_buffer_t) -> c_int>wrap_native: Option<unsafe extern "C" fn(user_context: *mut c_void, buf: *mut halide_buffer_t, handle: u64, device_interface: *const halide_device_interface_t) -> c_int>detach_native: Option<unsafe extern "C" fn(user_context: *mut c_void, buf: *mut halide_buffer_t) -> c_int>compute_capability: Option<unsafe extern "C" fn(user_context: *mut c_void, major: *mut c_int, minor: *mut c_int) -> c_int>impl_: *const halide_device_interface_impl_tTrait Implementations
sourceimpl Clone for halide_device_interface_t
impl Clone for halide_device_interface_t
sourcefn clone(&self) -> halide_device_interface_t
fn clone(&self) -> halide_device_interface_t
Returns a copy of the value. Read more
1.0.0 · sourcefn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from source. Read more
sourceimpl Debug for halide_device_interface_t
impl Debug for halide_device_interface_t
impl Copy for halide_device_interface_t
Auto Trait Implementations
impl RefUnwindSafe for halide_device_interface_t
impl !Send for halide_device_interface_t
impl !Sync for halide_device_interface_t
impl Unpin for halide_device_interface_t
impl UnwindSafe for halide_device_interface_t
Blanket Implementations
sourceimpl<T> BorrowMut<T> for T where
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
const: unstable · sourcefn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
sourceimpl<T> ToOwned for T where
T: Clone,
impl<T> ToOwned for T where
T: Clone,
type Owned = T
type Owned = T
The resulting type after obtaining ownership.
sourcefn clone_into(&self, target: &mut T)
fn clone_into(&self, target: &mut T)
🔬 This is a nightly-only experimental API. (
toowned_clone_into)Uses borrowed data to replace owned data, usually by cloning. Read more