pub trait PhysicalDevice<B: Backend>: Any + Send + Sync {
    unsafe fn open(
        &self,
        families: &[(&B::QueueFamily, &[QueuePriority])]
    ) -> Result<Gpu<B>, DeviceCreationError>; fn format_properties(&self, format: Option<Format>) -> Properties; fn image_format_properties(
        &self,
        format: Format,
        dimensions: u8,
        tiling: Tiling,
        usage: Usage,
        view_caps: ViewCapabilities
    ) -> Option<FormatProperties>; fn memory_properties(&self) -> MemoryProperties; fn features(&self) -> Features; fn limits(&self) -> Limits; }
Expand description

Represents a physical device (such as a GPU) capable of supporting the given backend.

Required Methods

Create a new logical device.

Errors
  • Returns TooManyObjects if the implementation can’t create a new logical device.
Examples
use gfx_hal::PhysicalDevice;

let gpu = physical_device.open(&[(&family, &[1.0; 1])]);

Fetch details for a particular format.

Fetch details for a particular image format.

Fetch details for the memory regions provided by the device.

Returns the features of this Device. This usually depends on the graphics API being used.

Returns the resource limits of this Device.

Implementors