[−][src]Struct gfx_hal::memory::Properties
Memory property flags.
Implementations
impl Properties
[src][−]
pub const DEVICE_LOCAL: Properties
[src][−][−]
Device local memory on the GPU.
pub const CPU_VISIBLE: Properties
[src][−][−]
Host visible memory can be accessed by the CPU.
Backends must provide at least one cpu visible memory.
pub const COHERENT: Properties
[src][−][−]
CPU-GPU coherent.
Non-coherent memory requires explicit flushing.
pub const CPU_CACHED: Properties
[src][−][−]
Cached memory by the CPU
pub const LAZILY_ALLOCATED: Properties
[src][−][−]
Memory that may be lazily allocated as needed on the GPU and must not be visible to the CPU.
pub const fn empty() -> Properties
[src][−]
Returns an empty set of flags
pub const fn all() -> Properties
[src][−]
Returns the set containing all flags.
pub const fn bits(&self) -> u16
[src][−]
Returns the raw value of the flags currently stored.
pub fn from_bits(bits: u16) -> Option<Properties>
[src][−]
Convert from underlying bit representation, unless that representation contains bits that do not correspond to a flag.
pub const fn from_bits_truncate(bits: u16) -> Properties
[src][−]
Convert from underlying bit representation, dropping any bits that do not correspond to flags.
pub const unsafe fn from_bits_unchecked(bits: u16) -> Properties
[src][−]
Convert from underlying bit representation, preserving all bits (even those not corresponding to a defined flag).
pub const fn is_empty(&self) -> bool
[src][−]
Returns true
if no flags are currently stored.
pub const fn is_all(&self) -> bool
[src][−]
Returns true
if all flags are currently set.
pub const fn intersects(&self, other: Properties) -> bool
[src][−]
Returns true
if there are flags common to both self
and other
.
pub const fn contains(&self, other: Properties) -> bool
[src][−]
Returns true
all of the flags in other
are contained within self
.
pub fn insert(&mut self, other: Properties)
[src][−]
Inserts the specified flags in-place.
pub fn remove(&mut self, other: Properties)
[src][−]
Removes the specified flags in-place.
pub fn toggle(&mut self, other: Properties)
[src][−]
Toggles the specified flags in-place.
pub fn set(&mut self, other: Properties, value: bool)
[src][−]
Inserts or removes the specified flags depending on the passed value.
Trait Implementations
impl Binary for Properties
[src][+]
impl BitAnd<Properties> for Properties
[src][+]
impl BitAndAssign<Properties> for Properties
[src][+]
impl BitOr<Properties> for Properties
[src][+]
impl BitOrAssign<Properties> for Properties
[src][+]
impl BitXor<Properties> for Properties
[src][+]
impl BitXorAssign<Properties> for Properties
[src][+]
impl Clone for Properties
[src][+]
impl Copy for Properties
[src]
impl Debug for Properties
[src][+]
impl Eq for Properties
[src]
impl Extend<Properties> for Properties
[src][+]
impl FromIterator<Properties> for Properties
[src][+]
impl Hash for Properties
[src][+]
impl LowerHex for Properties
[src][+]
impl Not for Properties
[src][+]
impl Octal for Properties
[src][+]
impl Ord for Properties
[src][+]
impl PartialEq<Properties> for Properties
[src][+]
impl PartialOrd<Properties> for Properties
[src][+]
impl StructuralEq for Properties
[src]
impl StructuralPartialEq for Properties
[src]
impl Sub<Properties> for Properties
[src][+]
impl SubAssign<Properties> for Properties
[src][+]
impl UpperHex for Properties
[src][+]
Auto Trait Implementations
impl RefUnwindSafe for Properties
impl Send for Properties
impl Sync for Properties
impl Unpin for Properties
impl UnwindSafe for Properties
Blanket Implementations
impl<T> Any for T where
T: 'static + ?Sized,
[src][+]
T: 'static + ?Sized,
impl<T> Borrow<T> for T where
T: ?Sized,
[src][+]
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src][+]
T: ?Sized,
impl<T> From<T> for T
[src][+]
impl<T, U> Into<U> for T where
U: From<T>,
[src][+]
U: From<T>,
impl<T> ToOwned for T where
T: Clone,
[src][+]
T: Clone,
impl<T, U> TryFrom<U> for T where
U: Into<T>,
[src][+]
U: Into<T>,
impl<T, U> TryInto<U> for T where
U: TryFrom<T>,
[src][+]
U: TryFrom<T>,