pub struct MemoryType<'a> { /* private fields */ }
Expand description
Represents a memory type in a physical device.
Implementations
sourceimpl<'a> MemoryType<'a>
impl<'a> MemoryType<'a>
sourcepub fn physical_device(&self) -> PhysicalDevice<'a>
pub fn physical_device(&self) -> PhysicalDevice<'a>
Returns the physical device associated to this memory type.
sourcepub fn heap(&self) -> MemoryHeap<'a>
pub fn heap(&self) -> MemoryHeap<'a>
Returns the heap that corresponds to this memory type.
sourcepub fn is_device_local(&self) -> bool
pub fn is_device_local(&self) -> bool
Returns true if the memory type is located on the device, which means that it’s the most efficient for GPU accesses.
sourcepub fn is_host_visible(&self) -> bool
pub fn is_host_visible(&self) -> bool
Returns true if the memory type can be accessed by the host.
sourcepub fn is_host_coherent(&self) -> bool
pub fn is_host_coherent(&self) -> bool
Returns true if modifications made by the host or the GPU on this memory type are instantaneously visible to the other party. False means that changes have to be flushed.
You don’t need to worry about this, as this library handles that for you.
sourcepub fn is_host_cached(&self) -> bool
pub fn is_host_cached(&self) -> bool
Returns true if memory of this memory type is cached by the host. Host memory accesses to cached memory is faster than for uncached memory. However you are not guaranteed that it is coherent.
sourcepub fn is_lazily_allocated(&self) -> bool
pub fn is_lazily_allocated(&self) -> bool
Returns true if allocations made to this memory type is lazy.
This means that no actual allocation is performed. Instead memory is automatically allocated by the Vulkan implementation.
Memory of this type can only be used on images created with a certain flag. Memory of this type is never host-visible.
sourcepub fn is_protected(&self) -> bool
pub fn is_protected(&self) -> bool
Returns whether the memory type is protected.
Trait Implementations
sourceimpl<'a> Clone for MemoryType<'a>
impl<'a> Clone for MemoryType<'a>
sourcefn clone(&self) -> MemoryType<'a>
fn clone(&self) -> MemoryType<'a>
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<'a> Debug for MemoryType<'a>
impl<'a> Debug for MemoryType<'a>
impl<'a> Copy for MemoryType<'a>
Auto Trait Implementations
impl<'a> RefUnwindSafe for MemoryType<'a>
impl<'a> Send for MemoryType<'a>
impl<'a> Sync for MemoryType<'a>
impl<'a> Unpin for MemoryType<'a>
impl<'a> UnwindSafe for MemoryType<'a>
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)
toowned_clone_into
)Uses borrowed data to replace owned data, usually by cloning. Read more