Struct screen_13::driver::Device

source ·
pub struct Device {
    pub accel_struct_properties: Option<PhysicalDeviceAccelerationStructureProperties>,
    pub depth_stencil_resolve_properties: PhysicalDeviceDepthStencilResolveProperties,
    pub descriptor_indexing_features: PhysicalDeviceDescriptorIndexingFeatures,
    pub instance: Arc<Instance>,
    pub physical_device: PhysicalDevice,
    pub ray_tracing_pipeline_properties: Option<PhysicalDeviceRayTracePipelineProperties>,
    /* private fields */
}
Expand description

Opaque handle to a device object.

Fields§

§accel_struct_properties: Option<PhysicalDeviceAccelerationStructureProperties>

Describes the properties of the device which relate to acceleration structures, if available.

§depth_stencil_resolve_properties: PhysicalDeviceDepthStencilResolveProperties

Describes the properties of the device which relate to depth/stencil resolve operations.

§descriptor_indexing_features: PhysicalDeviceDescriptorIndexingFeatures

Describes the features of the device which relate to descriptor indexing.

§instance: Arc<Instance>

Vulkan instance pointer, which includes useful functions.

§physical_device: PhysicalDevice

The physical device, which contains useful property and limit data.

§ray_tracing_pipeline_properties: Option<PhysicalDeviceRayTracePipelineProperties>

Describes the properties of the device which relate to ray tracing, if available.

Implementations§

Constructs a new device using the given configuration.

Returns the count of available queues created by the device.

See [DriverConfig.desired_queue_count].

Methods from Deref<Target = Device>§

Retrieve the number of elements to pass to get_device_image_sparse_memory_requirements()

https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/vkGetDeviceImageSparseMemoryRequirements.html

Call get_device_image_sparse_memory_requirements_len() to query the number of elements to pass to out. Be sure to Default::default()-initialize these elements and optionally set their p_next pointer.

Retrieve the number of elements to pass to get_image_sparse_memory_requirements2()

https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/vkGetImageSparseMemoryRequirements2.html

Call get_image_sparse_memory_requirements2_len() to query the number of elements to pass to out. Be sure to Default::default()-initialize these elements and optionally set their p_next pointer.

Returns true if the event was set, and false if the event was reset, otherwise it will return the error code. https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/vkGetEventStatus.html

Trait Implementations§

Formats the value using the given formatter. Read more
The resulting type after dereferencing.
Dereferences the value.
Executes the destructor for this type. Read more

Auto Trait Implementations§

Blanket Implementations§

Gets the TypeId of self. Read more
Immutably borrows from an owned value. Read more
Mutably borrows from an owned value. Read more

Returns the argument unchanged.

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

The type returned in the event of a conversion error.
Performs the conversion.
The type returned in the event of a conversion error.
Performs the conversion.