pub struct DataResidency { /* private fields */ }Expand description
Where an operation’s inputs live and where its outputs are wanted.
Kept as a pair because they genuinely differ: a GPU broad phase may consume device-resident geometry and still have to deliver host-readable results.
Implementations§
Source§impl DataResidency
impl DataResidency
Sourcepub const HOST: DataResidency
pub const HOST: DataResidency
Both inputs and outputs in host memory. The portable default.
Sourcepub const fn new(input: Residency, output: Residency) -> DataResidency
pub const fn new(input: Residency, output: Residency) -> DataResidency
Construct an explicit input/output residency plan.
Sourcepub fn is_transfer_free_on(self, backend: BackendId) -> bool
pub fn is_transfer_free_on(self, backend: BackendId) -> bool
Whether running on backend needs no host/device transfer either way.
Trait Implementations§
Source§impl Clone for DataResidency
impl Clone for DataResidency
Source§fn clone(&self) -> DataResidency
fn clone(&self) -> DataResidency
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 DataResidency
impl Debug for DataResidency
Source§impl Hash for DataResidency
impl Hash for DataResidency
Source§impl PartialEq for DataResidency
impl PartialEq for DataResidency
impl Copy for DataResidency
impl Eq for DataResidency
impl StructuralPartialEq for DataResidency
Auto Trait Implementations§
impl Freeze for DataResidency
impl RefUnwindSafe for DataResidency
impl Send for DataResidency
impl Sync for DataResidency
impl Unpin for DataResidency
impl UnwindSafe for DataResidency
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§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more