#ifndef VULKAN_METAL_H_ | |
#define VULKAN_METAL_H_ 1 | |
/* | |
** Copyright (c) 2015-2019 The Khronos Group Inc. | |
** | |
** Licensed under the Apache License, Version 2.0 (the "License"); | |
** you may not use this file except in compliance with the License. | |
** You may obtain a copy of the License at | |
** | |
** http://www.apache.org/licenses/LICENSE-2.0 | |
** | |
** Unless required by applicable law or agreed to in writing, software | |
** distributed under the License is distributed on an "AS IS" BASIS, | |
** WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. | |
** See the License for the specific language governing permissions and | |
** limitations under the License. | |
*/ | |
/* | |
** This header is generated from the Khronos Vulkan XML API Registry. | |
** | |
*/ | |
#ifdef __cplusplus | |
extern "C" { | |
#endif | |
#define VK_EXT_metal_surface 1 | |
#ifdef __OBJC__ | |
@class CAMetalLayer; | |
#else | |
typedef void CAMetalLayer; | |
#endif | |
#define VK_EXT_METAL_SURFACE_SPEC_VERSION 1 | |
#define VK_EXT_METAL_SURFACE_EXTENSION_NAME "VK_EXT_metal_surface" | |
typedef VkFlags VkMetalSurfaceCreateFlagsEXT; | |
typedef struct VkMetalSurfaceCreateInfoEXT { | |
VkStructureType sType; | |
const void* pNext; | |
VkMetalSurfaceCreateFlagsEXT flags; | |
const CAMetalLayer* pLayer; | |
} VkMetalSurfaceCreateInfoEXT; | |
typedef VkResult (VKAPI_PTR *PFN_vkCreateMetalSurfaceEXT)(VkInstance instance, const VkMetalSurfaceCreateInfoEXT* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkSurfaceKHR* pSurface); | |
#ifndef VK_NO_PROTOTYPES | |
VKAPI_ATTR VkResult VKAPI_CALL vkCreateMetalSurfaceEXT( | |
VkInstance instance, | |
const VkMetalSurfaceCreateInfoEXT* pCreateInfo, | |
const VkAllocationCallbacks* pAllocator, | |
VkSurfaceKHR* pSurface); | |
#endif | |
#ifdef __cplusplus | |
} | |
#endif | |
#endif |