Skip to main content

vulkan_headers/vulkan/
vulkan_macos.rs

1use crate::prelude::*;
2use super::vulkan_core::*;
3
4#[derive(Clone, Copy)]
5#[repr(C)]
6pub struct VkMacOSSurfaceCreateInfoMVK {
7    pub sType: VkStructureType,
8    pub pNext: *const c_void,
9    pub flags: VkMacOSSurfaceCreateFlagsMVK,
10    pub pView: *const c_void,
11}
12
13pub const VK_MVK_MACOS_SURFACE_EXTENSION_NAME: &CStr = c"VK_MVK_macos_surface";
14pub const VK_MVK_MACOS_SURFACE_SPEC_VERSION: u32 = 3;
15pub const VK_STRUCTURE_TYPE_MACOS_SURFACE_CREATE_INFO_MVK: VkStructureType = 1000123000;
16
17unsafe extern "system" {
18    /// Available if built with `prototypes`.
19    #[cfg(any(doc, feature = "prototypes"))]
20    pub fn vkCreateMacOSSurfaceMVK(instance: VkInstance, pCreateInfo: *const VkMacOSSurfaceCreateInfoMVK, pAllocator: *const VkAllocationCallbacks, pSurface: *mut VkSurfaceKHR) -> VkResult;
21}
22
23pub type NonNullPFN_vkCreateMacOSSurfaceMVK = unsafe extern "system" fn(instance: VkInstance, pCreateInfo: *const VkMacOSSurfaceCreateInfoMVK, pAllocator: *const VkAllocationCallbacks, pSurface: *mut VkSurfaceKHR) -> VkResult;
24pub type PFN_vkCreateMacOSSurfaceMVK = Option<NonNullPFN_vkCreateMacOSSurfaceMVK>;
25pub type VkMacOSSurfaceCreateFlagsMVK = VkFlags;