Struct vulkano::device::Device [] [src]

pub struct Device { /* fields omitted */ }

Represents a Vulkan context.

Methods

impl Device
[src]

[src]

Builds a new Vulkan device for the given physical device.

You must pass two things when creating a logical device:

  • A list of optional Vulkan features that must be enabled on the device. Note that if a feature is not enabled at device creation, you can't use it later even it it's supported by the physical device.

  • An iterator to a list of queues to create. Each element of the iterator must indicate the family whose queue belongs to and a priority between 0.0 and 1.0 to assign to it. A queue with a higher value indicates that the commands will execute faster than on a queue with a lower value. Note however that no guarantee can be made on the way the priority value is handled by the implementation.

Panic

  • Panics if one of the queue families doesn't belong to the given device.

[src]

Waits until all work on this device has finished. You should never need to call this function, but it can be useful for debugging or benchmarking purposes.

Note: This is the Vulkan equivalent of OpenGL's glFinish.

Safety

This function is not thread-safe. You must not submit anything to any of the queue of the device (either explicitely or implicitely, for example with a future's destructor) while this function is waiting.

[src]

Returns the instance used to create this device.

[src]

Returns the physical device that was used to create this device.

[src]

Returns an iterator to the list of queues families that this device uses.

Note: Will return -> impl ExactSizeIterator<Item = QueueFamily> in the future.

[src]

Returns the features that are enabled in the device.

[src]

Returns the list of extensions that have been loaded.

[src]

Returns the standard memory pool used by default if you don't provide any other pool.

[src]

Returns the standard descriptor pool used by default if you don't provide any other pool.

[src]

Returns the standard command buffer pool used by default if you don't provide any other pool.

Panic

  • Panics if the device and the queue family don't belong to the same physical device.

Trait Implementations

impl Send for Device
[src]

impl Sync for Device
[src]

impl Debug for Device
[src]

[src]

Formats the value using the given formatter.

impl VulkanObject for Device
[src]

The type of the object.

[src]

Returns a reference to the object.

impl Drop for Device
[src]

[src]

Executes the destructor for this type. Read more