Struct simics_api_sys::bindings::direct_memory_interface
source · #[repr(C)]pub struct direct_memory_interface {
pub get_handle: Option<unsafe extern "C" fn(obj: *mut conf_object_t, requester: *mut conf_object_t, subsystem: uint64, offs: uint64, size: c_uint) -> direct_memory_handle_t>,
pub request: Option<unsafe extern "C" fn(obj: *mut conf_object_t, handle: direct_memory_handle_t, permission: access_t, inhibit: access_t) -> direct_memory_t>,
pub revoke: Option<unsafe extern "C" fn(obj: *mut conf_object_t, access: access_t, permission: access_t, inhibit: access_t)>,
pub get_user_data: Option<unsafe extern "C" fn(obj: *mut conf_object_t, handle: direct_memory_handle_t) -> *mut c_void>,
pub set_user_data: Option<unsafe extern "C" fn(obj: *mut conf_object_t, handle: direct_memory_handle_t, user_data: *mut c_void)>,
pub release: Option<unsafe extern "C" fn(obj: *mut conf_object_t, handle: direct_memory_handle_t)>,
pub ack: Option<unsafe extern "C" fn(obj: *mut conf_object_t, id: direct_memory_ack_id_t)>,
}
Fields§
§get_handle: Option<unsafe extern "C" fn(obj: *mut conf_object_t, requester: *mut conf_object_t, subsystem: uint64, offs: uint64, size: c_uint) -> direct_memory_handle_t>
§request: Option<unsafe extern "C" fn(obj: *mut conf_object_t, handle: direct_memory_handle_t, permission: access_t, inhibit: access_t) -> direct_memory_t>
§revoke: Option<unsafe extern "C" fn(obj: *mut conf_object_t, access: access_t, permission: access_t, inhibit: access_t)>
§get_user_data: Option<unsafe extern "C" fn(obj: *mut conf_object_t, handle: direct_memory_handle_t) -> *mut c_void>
§set_user_data: Option<unsafe extern "C" fn(obj: *mut conf_object_t, handle: direct_memory_handle_t, user_data: *mut c_void)>
§release: Option<unsafe extern "C" fn(obj: *mut conf_object_t, handle: direct_memory_handle_t)>
§ack: Option<unsafe extern "C" fn(obj: *mut conf_object_t, id: direct_memory_ack_id_t)>
Trait Implementations§
source§impl Clone for direct_memory_interface
impl Clone for direct_memory_interface
source§fn clone(&self) -> direct_memory_interface
fn clone(&self) -> direct_memory_interface
Returns a copy of the value. Read more
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source
. Read moresource§impl Debug for direct_memory_interface
impl Debug for direct_memory_interface
source§impl Default for direct_memory_interface
impl Default for direct_memory_interface
source§fn default() -> direct_memory_interface
fn default() -> direct_memory_interface
Returns the “default value” for a type. Read more
source§impl Hash for direct_memory_interface
impl Hash for direct_memory_interface
source§impl Ord for direct_memory_interface
impl Ord for direct_memory_interface
source§fn cmp(&self, other: &direct_memory_interface) -> Ordering
fn cmp(&self, other: &direct_memory_interface) -> Ordering
1.21.0 · source§fn max(self, other: Self) -> Selfwhere
Self: Sized,
fn max(self, other: Self) -> Selfwhere
Self: Sized,
Compares and returns the maximum of two values. Read more
source§impl PartialEq for direct_memory_interface
impl PartialEq for direct_memory_interface
source§impl PartialOrd for direct_memory_interface
impl PartialOrd for direct_memory_interface
impl Copy for direct_memory_interface
impl Eq for direct_memory_interface
impl StructuralPartialEq for direct_memory_interface
Auto Trait Implementations§
impl Freeze for direct_memory_interface
impl RefUnwindSafe for direct_memory_interface
impl Send for direct_memory_interface
impl Sync for direct_memory_interface
impl Unpin for direct_memory_interface
impl UnwindSafe for direct_memory_interface
Blanket Implementations§
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
source§unsafe fn clone_to_uninit(&self, dst: *mut T)
unsafe fn clone_to_uninit(&self, dst: *mut T)
🔬This is a nightly-only experimental API. (
clone_to_uninit
)