[][src]Struct vulkano::instance::MemoryType

pub struct MemoryType<'a> { /* fields omitted */ }

Represents a memory type in a physical device.


impl<'a> MemoryType<'a>[src]

pub fn physical_device(&self) -> PhysicalDevice<'a>[src]

Returns the physical device associated to this memory type.

pub fn id(&self) -> u32[src]

Returns the identifier of this memory type within the physical device.

pub fn heap(&self) -> MemoryHeap<'a>[src]

Returns the heap that corresponds to this memory type.

pub fn is_device_local(&self) -> bool[src]

Returns true if the memory type is located on the device, which means that it's the most efficient for GPU accesses.

pub fn is_host_visible(&self) -> bool[src]

Returns true if the memory type can be accessed by the host.

pub fn is_host_coherent(&self) -> bool[src]

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.

pub fn is_host_cached(&self) -> bool[src]

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.

pub fn is_lazily_allocated(&self) -> bool[src]

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.

Trait Implementations

impl<'a> Clone for MemoryType<'a>[src]

impl<'a> Copy for MemoryType<'a>[src]

impl<'a> Debug for MemoryType<'a>[src]

Auto Trait Implementations

impl<'a> Send for MemoryType<'a>

impl<'a> Sync for MemoryType<'a>

impl<'a> Unpin for MemoryType<'a>

impl<'a> UnwindSafe for MemoryType<'a>

impl<'a> RefUnwindSafe for MemoryType<'a>

Blanket Implementations

impl<T> Content for T[src]

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

impl<T> From<T> for T[src]

impl<T> ToOwned for T where
    T: Clone

type Owned = T

The resulting type after obtaining ownership.

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

type Error = Infallible

The type returned in the event of a conversion error.

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

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

The type returned in the event of a conversion error.

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

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

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