Enum
VkDriverId
Khronos driver IDs
Khronos driver IDs which may be returned in
VkPhysicalDeviceDriverProperties::driverID are:
typedef enum VkDriverId {
// Driver IDs are now represented as enums instead of the old
<driverids> tag, allowing them to be included in the
API headers.
VK_DRIVER_ID_AMD_PROPRIETARY = 1,
VK_DRIVER_ID_AMD_OPEN_SOURCE = 2,
VK_DRIVER_ID_MESA_RADV = 3,
VK_DRIVER_ID_NVIDIA_PROPRIETARY = 4,
VK_DRIVER_ID_INTEL_PROPRIETARY_WINDOWS = 5,
VK_DRIVER_ID_INTEL_OPEN_SOURCE_MESA = 6,
VK_DRIVER_ID_IMAGINATION_PROPRIETARY = 7,
VK_DRIVER_ID_QUALCOMM_PROPRIETARY = 8,
VK_DRIVER_ID_ARM_PROPRIETARY = 9,
VK_DRIVER_ID_GOOGLE_SWIFTSHADER = 10,
VK_DRIVER_ID_GGP_PROPRIETARY = 11,
VK_DRIVER_ID_BROADCOM_PROPRIETARY = 12,
VK_DRIVER_ID_MESA_LLVMPIPE = 13,
VK_DRIVER_ID_MOLTENVK = 14,
VK_DRIVER_ID_COREAVI_PROPRIETARY = 15,
VK_DRIVER_ID_JUICE_PROPRIETARY = 16,
VK_DRIVER_ID_VERISILICON_PROPRIETARY = 17,
VK_DRIVER_ID_MESA_TURNIP = 18,
VK_DRIVER_ID_MESA_V3DV = 19,
VK_DRIVER_ID_MESA_PANVK = 20,
VK_DRIVER_ID_SAMSUNG_PROPRIETARY = 21,
VK_DRIVER_ID_MESA_VENUS = 22,
VK_DRIVER_ID_MESA_DOZEN = 23,
VK_DRIVER_ID_MESA_NVK = 24,
VK_DRIVER_ID_IMAGINATION_OPEN_SOURCE_MESA = 25,
VK_DRIVER_ID_MESA_HONEYKRISP = 26,
VK_DRIVER_ID_VULKAN_SC_EMULATION_ON_VULKAN = 27,
VK_DRIVER_ID_MESA_KOSMICKRISP = 28,
} VkDriverId;
pub struct DriverId(u32);
impl DriverId {
// Driver IDs are now represented as enums instead of the old
<driverids> tag, allowing them to be included in the
API headers.
pub const AMD_PROPRIETARY: Self = 1;
pub const AMD_OPEN_SOURCE: Self = 2;
pub const MESA_RADV: Self = 3;
pub const NVIDIA_PROPRIETARY: Self = 4;
pub const INTEL_PROPRIETARY_WINDOWS: Self = 5;
pub const INTEL_OPEN_SOURCE_MESA: Self = 6;
pub const IMAGINATION_PROPRIETARY: Self = 7;
pub const QUALCOMM_PROPRIETARY: Self = 8;
pub const ARM_PROPRIETARY: Self = 9;
pub const GOOGLE_SWIFTSHADER: Self = 10;
pub const GGP_PROPRIETARY: Self = 11;
pub const BROADCOM_PROPRIETARY: Self = 12;
pub const MESA_LLVMPIPE: Self = 13;
pub const MOLTENVK: Self = 14;
pub const COREAVI_PROPRIETARY: Self = 15;
pub const JUICE_PROPRIETARY: Self = 16;
pub const VERISILICON_PROPRIETARY: Self = 17;
pub const MESA_TURNIP: Self = 18;
pub const MESA_V3DV: Self = 19;
pub const MESA_PANVK: Self = 20;
pub const SAMSUNG_PROPRIETARY: Self = 21;
pub const MESA_VENUS: Self = 22;
pub const MESA_DOZEN: Self = 23;
pub const MESA_NVK: Self = 24;
pub const IMAGINATION_OPEN_SOURCE_MESA: Self = 25;
pub const MESA_HONEYKRISP: Self = 26;
pub const VULKAN_SC_EMULATION_ON_VULKAN: Self = 27;
pub const MESA_KOSMICKRISP: Self = 28;
}
#define VkDriverIdKHR VkDriverId
const DriverIdKHR: _ = vk::DriverId;
Khronos driver IDs may be allocated by vendors at any time.
There may be multiple driver IDs for the same vendor, representing different
drivers (for e.g. different platforms, proprietary or open source, etc.).
Only the latest canonical versions of this Specification, of the
corresponding
vk.xml API Registry, and of the corresponding
vulkan_core.h header file must contain all reserved Khronos driver IDs.Only driver IDs registered with Khronos are given symbolic names.
There may be unregistered driver IDs returned.Parent
VK_VERSION_1_2Type
Enum