[][src]Struct vulkano::instance::QueueFamily

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

Represents a queue family in a physical device.

A queue family is group of one or multiple queues. All queues of one family have the same characteristics.

Implementations

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

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

Returns the physical device associated to this queue family.

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

Returns the identifier of this queue family within the physical device.

pub fn queues_count(&self) -> usize[src]

Returns the number of queues that belong to this family.

Guaranteed to be at least 1 (or else that family wouldn't exist).

pub fn timestamp_valid_bits(&self) -> Option<u32>[src]

If timestamps are supported, returns the number of bits supported by timestamp operations. The returned value will be in the range 36..64. If timestamps are not supported, returns None.

pub fn min_image_transfer_granularity(&self) -> [u32; 3][src]

Returns the minimum granularity supported for image transfers in terms of [width, height, depth]

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

Returns true if queues of this family can execute graphics operations.

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

Returns true if queues of this family can execute compute operations.

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

Returns true if queues of this family can execute transfer operations.

Note: While all queues that can perform graphics or compute operations can implicitly perform transfer operations, graphics & compute queues only optionally indicate support for tranfers. Many discrete cards will have one queue family that exclusively sets the VK_QUEUE_TRANSFER_BIT to indicate a special relationship with the DMA module and more efficient transfers.

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

Returns true if queues of this family can execute sparse resources binding operations.

Trait Implementations

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

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

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

impl<'a> Eq for QueueFamily<'a>[src]

impl<'a> PartialEq<QueueFamily<'a>> for QueueFamily<'a>[src]

Auto Trait Implementations

impl<'a> RefUnwindSafe for QueueFamily<'a>

impl<'a> Send for QueueFamily<'a>

impl<'a> Sync for QueueFamily<'a>

impl<'a> Unpin for QueueFamily<'a>

impl<'a> UnwindSafe for QueueFamily<'a>

Blanket Implementations

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

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> Content for T[src]

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

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T> ToOwned for T where
    T: Clone
[src]

type Owned = T

The resulting type after obtaining ownership.

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

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

The type returned in the event of a conversion error.