diff options
Diffstat (limited to 'gfx/angle/checkout/src/common/vulkan/vk_headers.h')
-rw-r--r-- | gfx/angle/checkout/src/common/vulkan/vk_headers.h | 163 |
1 files changed, 163 insertions, 0 deletions
diff --git a/gfx/angle/checkout/src/common/vulkan/vk_headers.h b/gfx/angle/checkout/src/common/vulkan/vk_headers.h new file mode 100644 index 0000000000..a16938a872 --- /dev/null +++ b/gfx/angle/checkout/src/common/vulkan/vk_headers.h @@ -0,0 +1,163 @@ +// +// Copyright 2016 The ANGLE Project Authors. All rights reserved. +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. +// +// vk_headers: +// This file should be included to ensure the vulkan headers are included +// + +#ifndef LIBANGLE_RENDERER_VULKAN_VK_HEADERS_H_ +#define LIBANGLE_RENDERER_VULKAN_VK_HEADERS_H_ + +#if ANGLE_SHARED_LIBVULKAN +# include "third_party/volk/volk.h" +#else +# include <vulkan/vulkan.h> +#endif + +// For the unreleased VK_GOOGLEX_multisampled_render_to_single_sampled +#if !defined(VK_GOOGLEX_multisampled_render_to_single_sampled) +# define VK_GOOGLEX_multisampled_render_to_single_sampled 1 +# define VK_GOOGLEX_MULTISAMPLED_RENDER_TO_SINGLE_SAMPLED_SPEC_VERSION 1 +# define VK_GOOGLEX_MULTISAMPLED_RENDER_TO_SINGLE_SAMPLED_EXTENSION_NAME \ + "VK_GOOGLEX_multisampled_render_to_single_sampled" + +# define VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTISAMPLED_RENDER_TO_SINGLE_SAMPLED_FEATURES_GOOGLEX \ + ((VkStructureType)(1000376000)) +# define VK_STRUCTURE_TYPE_MULTISAMPLED_RENDER_TO_SINGLE_SAMPLED_INFO_GOOGLEX \ + ((VkStructureType)(1000376001)) + +typedef struct VkPhysicalDeviceMultisampledRenderToSingleSampledFeaturesGOOGLEX +{ + VkStructureType sType; + const void *pNext; + VkBool32 multisampledRenderToSingleSampled; +} VkPhysicalDeviceMultisampledRenderToSingleSampledFeaturesGOOGLEX; + +typedef struct VkMultisampledRenderToSingleSampledInfoGOOGLEX +{ + VkStructureType sType; + const void *pNext; + VkBool32 multisampledRenderToSingleSampledEnable; + VkSampleCountFlagBits rasterizationSamples; + VkResolveModeFlagBits depthResolveMode; + VkResolveModeFlagBits stencilResolveMode; +} VkMultisampledRenderToSingleSampledInfoGOOGLEX; +#endif /* VK_GOOGLEX_multisampled_render_to_single_sampled */ + +#if !defined(ANGLE_SHARED_LIBVULKAN) + +namespace rx +{ +// VK_EXT_debug_utils +extern PFN_vkCreateDebugUtilsMessengerEXT vkCreateDebugUtilsMessengerEXT; +extern PFN_vkDestroyDebugUtilsMessengerEXT vkDestroyDebugUtilsMessengerEXT; +extern PFN_vkCmdBeginDebugUtilsLabelEXT vkCmdBeginDebugUtilsLabelEXT; +extern PFN_vkCmdEndDebugUtilsLabelEXT vkCmdEndDebugUtilsLabelEXT; +extern PFN_vkCmdInsertDebugUtilsLabelEXT vkCmdInsertDebugUtilsLabelEXT; +extern PFN_vkSetDebugUtilsObjectNameEXT vkSetDebugUtilsObjectNameEXT; + +// VK_EXT_debug_report +extern PFN_vkCreateDebugReportCallbackEXT vkCreateDebugReportCallbackEXT; +extern PFN_vkDestroyDebugReportCallbackEXT vkDestroyDebugReportCallbackEXT; + +// VK_KHR_get_physical_device_properties2 +extern PFN_vkGetPhysicalDeviceProperties2KHR vkGetPhysicalDeviceProperties2KHR; +extern PFN_vkGetPhysicalDeviceFeatures2KHR vkGetPhysicalDeviceFeatures2KHR; +extern PFN_vkGetPhysicalDeviceMemoryProperties2KHR vkGetPhysicalDeviceMemoryProperties2KHR; + +// VK_KHR_external_semaphore_fd +extern PFN_vkImportSemaphoreFdKHR vkImportSemaphoreFdKHR; + +// VK_EXT_external_memory_host +extern PFN_vkGetMemoryHostPointerPropertiesEXT vkGetMemoryHostPointerPropertiesEXT; + +// VK_EXT_host_query_reset +extern PFN_vkResetQueryPoolEXT vkResetQueryPoolEXT; + +// VK_EXT_transform_feedback +extern PFN_vkCmdBindTransformFeedbackBuffersEXT vkCmdBindTransformFeedbackBuffersEXT; +extern PFN_vkCmdBeginTransformFeedbackEXT vkCmdBeginTransformFeedbackEXT; +extern PFN_vkCmdEndTransformFeedbackEXT vkCmdEndTransformFeedbackEXT; +extern PFN_vkCmdBeginQueryIndexedEXT vkCmdBeginQueryIndexedEXT; +extern PFN_vkCmdEndQueryIndexedEXT vkCmdEndQueryIndexedEXT; +extern PFN_vkCmdDrawIndirectByteCountEXT vkCmdDrawIndirectByteCountEXT; + +// VK_KHR_get_memory_requirements2 +extern PFN_vkGetBufferMemoryRequirements2KHR vkGetBufferMemoryRequirements2KHR; +extern PFN_vkGetImageMemoryRequirements2KHR vkGetImageMemoryRequirements2KHR; + +// VK_KHR_bind_memory2 +extern PFN_vkBindBufferMemory2KHR vkBindBufferMemory2KHR; +extern PFN_vkBindImageMemory2KHR vkBindImageMemory2KHR; + +// VK_KHR_external_fence_capabilities +extern PFN_vkGetPhysicalDeviceExternalFencePropertiesKHR + vkGetPhysicalDeviceExternalFencePropertiesKHR; + +// VK_KHR_external_fence_fd +extern PFN_vkGetFenceFdKHR vkGetFenceFdKHR; +extern PFN_vkImportFenceFdKHR vkImportFenceFdKHR; + +// VK_KHR_external_semaphore_capabilities +extern PFN_vkGetPhysicalDeviceExternalSemaphorePropertiesKHR + vkGetPhysicalDeviceExternalSemaphorePropertiesKHR; + +// VK_KHR_sampler_ycbcr_conversion +extern PFN_vkCreateSamplerYcbcrConversionKHR vkCreateSamplerYcbcrConversionKHR; +extern PFN_vkDestroySamplerYcbcrConversionKHR vkDestroySamplerYcbcrConversionKHR; + +// VK_KHR_create_renderpass2 +extern PFN_vkCreateRenderPass2KHR vkCreateRenderPass2KHR; + +# if defined(ANGLE_PLATFORM_FUCHSIA) +// VK_FUCHSIA_imagepipe_surface +extern PFN_vkCreateImagePipeSurfaceFUCHSIA vkCreateImagePipeSurfaceFUCHSIA; +# endif + +# if defined(ANGLE_PLATFORM_ANDROID) +extern PFN_vkGetAndroidHardwareBufferPropertiesANDROID vkGetAndroidHardwareBufferPropertiesANDROID; +extern PFN_vkGetMemoryAndroidHardwareBufferANDROID vkGetMemoryAndroidHardwareBufferANDROID; +# endif + +# if defined(ANGLE_PLATFORM_GGP) +extern PFN_vkCreateStreamDescriptorSurfaceGGP vkCreateStreamDescriptorSurfaceGGP; +# endif // defined(ANGLE_PLATFORM_GGP) + +// VK_KHR_shared_presentable_image +extern PFN_vkGetSwapchainStatusKHR vkGetSwapchainStatusKHR; + +// VK_EXT_extended_dynamic_state +extern PFN_vkCmdBindVertexBuffers2EXT vkCmdBindVertexBuffers2EXT; +extern PFN_vkCmdSetCullModeEXT vkCmdSetCullModeEXT; +extern PFN_vkCmdSetDepthBoundsTestEnableEXT vkCmdSetDepthBoundsTestEnableEXT; +extern PFN_vkCmdSetDepthCompareOpEXT vkCmdSetDepthCompareOpEXT; +extern PFN_vkCmdSetDepthTestEnableEXT vkCmdSetDepthTestEnableEXT; +extern PFN_vkCmdSetDepthWriteEnableEXT vkCmdSetDepthWriteEnableEXT; +extern PFN_vkCmdSetFrontFaceEXT vkCmdSetFrontFaceEXT; +extern PFN_vkCmdSetPrimitiveTopologyEXT vkCmdSetPrimitiveTopologyEXT; +extern PFN_vkCmdSetScissorWithCountEXT vkCmdSetScissorWithCountEXT; +extern PFN_vkCmdSetStencilOpEXT vkCmdSetStencilOpEXT; +extern PFN_vkCmdSetStencilTestEnableEXT vkCmdSetStencilTestEnableEXT; +extern PFN_vkCmdSetViewportWithCountEXT vkCmdSetViewportWithCountEXT; + +// VK_EXT_extended_dynamic_state2 +extern PFN_vkCmdSetDepthBiasEnableEXT vkCmdSetDepthBiasEnableEXT; +extern PFN_vkCmdSetLogicOpEXT vkCmdSetLogicOpEXT; +extern PFN_vkCmdSetPatchControlPointsEXT vkCmdSetPatchControlPointsEXT; +extern PFN_vkCmdSetPrimitiveRestartEnableEXT vkCmdSetPrimitiveRestartEnableEXT; +extern PFN_vkCmdSetRasterizerDiscardEnableEXT vkCmdSetRasterizerDiscardEnableEXT; + +// VK_KHR_fragment_shading_rate +extern PFN_vkGetPhysicalDeviceFragmentShadingRatesKHR vkGetPhysicalDeviceFragmentShadingRatesKHR; +extern PFN_vkCmdSetFragmentShadingRateKHR vkCmdSetFragmentShadingRateKHR; + +// VK_GOOGLE_display_timing +extern PFN_vkGetPastPresentationTimingGOOGLE vkGetPastPresentationTimingGOOGLE; + +} // namespace rx + +#endif // ANGLE_SHARED_LIBVULKAN + +#endif // LIBANGLE_RENDERER_VULKAN_VK_HEADERS_H_ |