aboutsummaryrefslogtreecommitdiffhomepage
path: root/include/vulkan/vulkan.hpp
diff options
context:
space:
mode:
Diffstat (limited to 'include/vulkan/vulkan.hpp')
-rw-r--r--include/vulkan/vulkan.hpp496
1 files changed, 484 insertions, 12 deletions
diff --git a/include/vulkan/vulkan.hpp b/include/vulkan/vulkan.hpp
index c38e7e4..e1c079d 100644
--- a/include/vulkan/vulkan.hpp
+++ b/include/vulkan/vulkan.hpp
@@ -56,7 +56,7 @@
# define VULKAN_HPP_ASSERT assert
#endif
-static_assert( VK_HEADER_VERSION == 113 , "Wrong VK_HEADER_VERSION!" );
+static_assert( VK_HEADER_VERSION == 114 , "Wrong VK_HEADER_VERSION!" );
// 32-bit vulkan is not typesafe for handles, so don't allow copy constructors on this platform by default.
// To enable this feature on 32-bit platforms please define VULKAN_HPP_TYPESAFE_CONVERSION
@@ -5147,6 +5147,10 @@ namespace VULKAN_HPP_NAMESPACE
ePhysicalDeviceDepthClipEnableFeaturesEXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_CLIP_ENABLE_FEATURES_EXT,
ePipelineRasterizationDepthClipStateCreateInfoEXT = VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_DEPTH_CLIP_STATE_CREATE_INFO_EXT,
eHdrMetadataEXT = VK_STRUCTURE_TYPE_HDR_METADATA_EXT,
+ ePhysicalDeviceImagelessFramebufferFeaturesKHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGELESS_FRAMEBUFFER_FEATURES_KHR,
+ eFramebufferAttachmentsCreateInfoKHR = VK_STRUCTURE_TYPE_FRAMEBUFFER_ATTACHMENTS_CREATE_INFO_KHR,
+ eFramebufferAttachmentImageInfoKHR = VK_STRUCTURE_TYPE_FRAMEBUFFER_ATTACHMENT_IMAGE_INFO_KHR,
+ eRenderPassAttachmentBeginInfoKHR = VK_STRUCTURE_TYPE_RENDER_PASS_ATTACHMENT_BEGIN_INFO_KHR,
eAttachmentDescription2KHR = VK_STRUCTURE_TYPE_ATTACHMENT_DESCRIPTION_2_KHR,
eAttachmentReference2KHR = VK_STRUCTURE_TYPE_ATTACHMENT_REFERENCE_2_KHR,
eSubpassDescription2KHR = VK_STRUCTURE_TYPE_SUBPASS_DESCRIPTION_2_KHR,
@@ -5569,6 +5573,10 @@ namespace VULKAN_HPP_NAMESPACE
case StructureType::ePhysicalDeviceDepthClipEnableFeaturesEXT : return "PhysicalDeviceDepthClipEnableFeaturesEXT";
case StructureType::ePipelineRasterizationDepthClipStateCreateInfoEXT : return "PipelineRasterizationDepthClipStateCreateInfoEXT";
case StructureType::eHdrMetadataEXT : return "HdrMetadataEXT";
+ case StructureType::ePhysicalDeviceImagelessFramebufferFeaturesKHR : return "PhysicalDeviceImagelessFramebufferFeaturesKHR";
+ case StructureType::eFramebufferAttachmentsCreateInfoKHR : return "FramebufferAttachmentsCreateInfoKHR";
+ case StructureType::eFramebufferAttachmentImageInfoKHR : return "FramebufferAttachmentImageInfoKHR";
+ case StructureType::eRenderPassAttachmentBeginInfoKHR : return "RenderPassAttachmentBeginInfoKHR";
case StructureType::eAttachmentDescription2KHR : return "AttachmentDescription2KHR";
case StructureType::eAttachmentReference2KHR : return "AttachmentReference2KHR";
case StructureType::eSubpassDescription2KHR : return "SubpassDescription2KHR";
@@ -6723,10 +6731,8 @@ namespace VULKAN_HPP_NAMESPACE
if ( !value ) return "{}";
std::string result;
- if ( value & CullModeFlagBits::eNone ) result += "None | ";
if ( value & CullModeFlagBits::eFront ) result += "Front | ";
if ( value & CullModeFlagBits::eBack ) result += "Back | ";
- if ( value & CullModeFlagBits::eFrontAndBack ) result += "FrontAndBack | ";
return "{ " + result.substr(0, result.size() - 3) + " }";
}
@@ -8022,18 +8028,46 @@ namespace VULKAN_HPP_NAMESPACE
}
enum class FramebufferCreateFlagBits
- {};
+ {
+ eImagelessKHR = VK_FRAMEBUFFER_CREATE_IMAGELESS_BIT_KHR
+ };
- VULKAN_HPP_INLINE std::string to_string( FramebufferCreateFlagBits )
+ VULKAN_HPP_INLINE std::string to_string( FramebufferCreateFlagBits value )
{
- return "(void)";
+ switch ( value )
+ {
+ case FramebufferCreateFlagBits::eImagelessKHR : return "ImagelessKHR";
+ default: return "invalid";
+ }
}
using FramebufferCreateFlags = Flags<FramebufferCreateFlagBits, VkFramebufferCreateFlags>;
- VULKAN_HPP_INLINE std::string to_string( FramebufferCreateFlags )
+ VULKAN_HPP_INLINE FramebufferCreateFlags operator|( FramebufferCreateFlagBits bit0, FramebufferCreateFlagBits bit1 )
{
- return "{}";
+ return FramebufferCreateFlags( bit0 ) | bit1;
+ }
+
+ VULKAN_HPP_INLINE FramebufferCreateFlags operator~( FramebufferCreateFlagBits bits )
+ {
+ return ~( FramebufferCreateFlags( bits ) );
+ }
+
+ template <> struct FlagTraits<FramebufferCreateFlagBits>
+ {
+ enum
+ {
+ allFlags = VkFlags(FramebufferCreateFlagBits::eImagelessKHR)
+ };
+ };
+
+ VULKAN_HPP_INLINE std::string to_string( FramebufferCreateFlags value )
+ {
+ if ( !value ) return "{}";
+ std::string result;
+
+ if ( value & FramebufferCreateFlagBits::eImagelessKHR ) result += "ImagelessKHR | ";
+ return "{ " + result.substr(0, result.size() - 3) + " }";
}
enum class GeometryFlagBitsNV
@@ -9661,7 +9695,6 @@ namespace VULKAN_HPP_NAMESPACE
if ( !value ) return "{}";
std::string result;
- if ( value & ResolveModeFlagBitsKHR::eNone ) result += "None | ";
if ( value & ResolveModeFlagBitsKHR::eSampleZero ) result += "SampleZero | ";
if ( value & ResolveModeFlagBitsKHR::eAverage ) result += "Average | ";
if ( value & ResolveModeFlagBitsKHR::eMin ) result += "Min | ";
@@ -9927,8 +9960,6 @@ namespace VULKAN_HPP_NAMESPACE
if ( value & ShaderStageFlagBits::eGeometry ) result += "Geometry | ";
if ( value & ShaderStageFlagBits::eFragment ) result += "Fragment | ";
if ( value & ShaderStageFlagBits::eCompute ) result += "Compute | ";
- if ( value & ShaderStageFlagBits::eAllGraphics ) result += "AllGraphics | ";
- if ( value & ShaderStageFlagBits::eAll ) result += "All | ";
if ( value & ShaderStageFlagBits::eRaygenNV ) result += "RaygenNV | ";
if ( value & ShaderStageFlagBits::eAnyHitNV ) result += "AnyHitNV | ";
if ( value & ShaderStageFlagBits::eClosestHitNV ) result += "ClosestHitNV | ";
@@ -10077,7 +10108,6 @@ namespace VULKAN_HPP_NAMESPACE
if ( value & StencilFaceFlagBits::eFront ) result += "Front | ";
if ( value & StencilFaceFlagBits::eBack ) result += "Back | ";
- if ( value & StencilFaceFlagBits::eVkStencilFrontAndBack ) result += "VkStencilFrontAndBack | ";
return "{ " + result.substr(0, result.size() - 3) + " }";
}
@@ -11125,6 +11155,8 @@ namespace VULKAN_HPP_NAMESPACE
struct FormatProperties;
struct FormatProperties2;
using FormatProperties2KHR = FormatProperties2;
+ struct FramebufferAttachmentImageInfoKHR;
+ struct FramebufferAttachmentsCreateInfoKHR;
struct FramebufferCreateInfo;
struct FramebufferMixedSamplesCombinationNV;
struct GeometryAABBNV;
@@ -11295,6 +11327,7 @@ namespace VULKAN_HPP_NAMESPACE
struct PhysicalDeviceImageFormatInfo2;
using PhysicalDeviceImageFormatInfo2KHR = PhysicalDeviceImageFormatInfo2;
struct PhysicalDeviceImageViewImageFormatInfoEXT;
+ struct PhysicalDeviceImagelessFramebufferFeaturesKHR;
struct PhysicalDeviceInlineUniformBlockFeaturesEXT;
struct PhysicalDeviceInlineUniformBlockPropertiesEXT;
struct PhysicalDeviceLimits;
@@ -11412,6 +11445,7 @@ namespace VULKAN_HPP_NAMESPACE
struct Rect2D;
struct RectLayerKHR;
struct RefreshCycleDurationGOOGLE;
+ struct RenderPassAttachmentBeginInfoKHR;
struct RenderPassBeginInfo;
struct RenderPassCreateInfo;
struct RenderPassCreateInfo2KHR;
@@ -11526,6 +11560,9 @@ namespace VULKAN_HPP_NAMESPACE
class SurfaceKHR
{
public:
+ using CType = VkSurfaceKHR;
+
+ public:
VULKAN_HPP_CONSTEXPR SurfaceKHR()
: m_surfaceKHR(VK_NULL_HANDLE)
{}
@@ -11590,6 +11627,9 @@ namespace VULKAN_HPP_NAMESPACE
class DebugReportCallbackEXT
{
public:
+ using CType = VkDebugReportCallbackEXT;
+
+ public:
VULKAN_HPP_CONSTEXPR DebugReportCallbackEXT()
: m_debugReportCallbackEXT(VK_NULL_HANDLE)
{}
@@ -11654,6 +11694,9 @@ namespace VULKAN_HPP_NAMESPACE
class DebugUtilsMessengerEXT
{
public:
+ using CType = VkDebugUtilsMessengerEXT;
+
+ public:
VULKAN_HPP_CONSTEXPR DebugUtilsMessengerEXT()
: m_debugUtilsMessengerEXT(VK_NULL_HANDLE)
{}
@@ -11718,6 +11761,9 @@ namespace VULKAN_HPP_NAMESPACE
class DisplayKHR
{
public:
+ using CType = VkDisplayKHR;
+
+ public:
VULKAN_HPP_CONSTEXPR DisplayKHR()
: m_displayKHR(VK_NULL_HANDLE)
{}
@@ -11782,6 +11828,9 @@ namespace VULKAN_HPP_NAMESPACE
class SwapchainKHR
{
public:
+ using CType = VkSwapchainKHR;
+
+ public:
VULKAN_HPP_CONSTEXPR SwapchainKHR()
: m_swapchainKHR(VK_NULL_HANDLE)
{}
@@ -11846,6 +11895,9 @@ namespace VULKAN_HPP_NAMESPACE
class Semaphore
{
public:
+ using CType = VkSemaphore;
+
+ public:
VULKAN_HPP_CONSTEXPR Semaphore()
: m_semaphore(VK_NULL_HANDLE)
{}
@@ -11910,6 +11962,9 @@ namespace VULKAN_HPP_NAMESPACE
class Fence
{
public:
+ using CType = VkFence;
+
+ public:
VULKAN_HPP_CONSTEXPR Fence()
: m_fence(VK_NULL_HANDLE)
{}
@@ -11974,6 +12029,9 @@ namespace VULKAN_HPP_NAMESPACE
class PerformanceConfigurationINTEL
{
public:
+ using CType = VkPerformanceConfigurationINTEL;
+
+ public:
VULKAN_HPP_CONSTEXPR PerformanceConfigurationINTEL()
: m_performanceConfigurationINTEL(VK_NULL_HANDLE)
{}
@@ -12038,6 +12096,9 @@ namespace VULKAN_HPP_NAMESPACE
class QueryPool
{
public:
+ using CType = VkQueryPool;
+
+ public:
VULKAN_HPP_CONSTEXPR QueryPool()
: m_queryPool(VK_NULL_HANDLE)
{}
@@ -12102,6 +12163,9 @@ namespace VULKAN_HPP_NAMESPACE
class Buffer
{
public:
+ using CType = VkBuffer;
+
+ public:
VULKAN_HPP_CONSTEXPR Buffer()
: m_buffer(VK_NULL_HANDLE)
{}
@@ -12166,6 +12230,9 @@ namespace VULKAN_HPP_NAMESPACE
class PipelineLayout
{
public:
+ using CType = VkPipelineLayout;
+
+ public:
VULKAN_HPP_CONSTEXPR PipelineLayout()
: m_pipelineLayout(VK_NULL_HANDLE)
{}
@@ -12230,6 +12297,9 @@ namespace VULKAN_HPP_NAMESPACE
class DescriptorSet
{
public:
+ using CType = VkDescriptorSet;
+
+ public:
VULKAN_HPP_CONSTEXPR DescriptorSet()
: m_descriptorSet(VK_NULL_HANDLE)
{}
@@ -12294,6 +12364,9 @@ namespace VULKAN_HPP_NAMESPACE
class Pipeline
{
public:
+ using CType = VkPipeline;
+
+ public:
VULKAN_HPP_CONSTEXPR Pipeline()
: m_pipeline(VK_NULL_HANDLE)
{}
@@ -12358,6 +12431,9 @@ namespace VULKAN_HPP_NAMESPACE
class ImageView
{
public:
+ using CType = VkImageView;
+
+ public:
VULKAN_HPP_CONSTEXPR ImageView()
: m_imageView(VK_NULL_HANDLE)
{}
@@ -12422,6 +12498,9 @@ namespace VULKAN_HPP_NAMESPACE
class Image
{
public:
+ using CType = VkImage;
+
+ public:
VULKAN_HPP_CONSTEXPR Image()
: m_image(VK_NULL_HANDLE)
{}
@@ -12486,6 +12565,9 @@ namespace VULKAN_HPP_NAMESPACE
class AccelerationStructureNV
{
public:
+ using CType = VkAccelerationStructureNV;
+
+ public:
VULKAN_HPP_CONSTEXPR AccelerationStructureNV()
: m_accelerationStructureNV(VK_NULL_HANDLE)
{}
@@ -12550,6 +12632,9 @@ namespace VULKAN_HPP_NAMESPACE
class DescriptorUpdateTemplate
{
public:
+ using CType = VkDescriptorUpdateTemplate;
+
+ public:
VULKAN_HPP_CONSTEXPR DescriptorUpdateTemplate()
: m_descriptorUpdateTemplate(VK_NULL_HANDLE)
{}
@@ -12615,6 +12700,9 @@ namespace VULKAN_HPP_NAMESPACE
class Event
{
public:
+ using CType = VkEvent;
+
+ public:
VULKAN_HPP_CONSTEXPR Event()
: m_event(VK_NULL_HANDLE)
{}
@@ -12679,6 +12767,9 @@ namespace VULKAN_HPP_NAMESPACE
class CommandBuffer
{
public:
+ using CType = VkCommandBuffer;
+
+ public:
VULKAN_HPP_CONSTEXPR CommandBuffer()
: m_commandBuffer(VK_NULL_HANDLE)
{}
@@ -13218,6 +13309,9 @@ namespace VULKAN_HPP_NAMESPACE
class DeviceMemory
{
public:
+ using CType = VkDeviceMemory;
+
+ public:
VULKAN_HPP_CONSTEXPR DeviceMemory()
: m_deviceMemory(VK_NULL_HANDLE)
{}
@@ -13282,6 +13376,9 @@ namespace VULKAN_HPP_NAMESPACE
class BufferView
{
public:
+ using CType = VkBufferView;
+
+ public:
VULKAN_HPP_CONSTEXPR BufferView()
: m_bufferView(VK_NULL_HANDLE)
{}
@@ -13346,6 +13443,9 @@ namespace VULKAN_HPP_NAMESPACE
class CommandPool
{
public:
+ using CType = VkCommandPool;
+
+ public:
VULKAN_HPP_CONSTEXPR CommandPool()
: m_commandPool(VK_NULL_HANDLE)
{}
@@ -13410,6 +13510,9 @@ namespace VULKAN_HPP_NAMESPACE
class PipelineCache
{
public:
+ using CType = VkPipelineCache;
+
+ public:
VULKAN_HPP_CONSTEXPR PipelineCache()
: m_pipelineCache(VK_NULL_HANDLE)
{}
@@ -13474,6 +13577,9 @@ namespace VULKAN_HPP_NAMESPACE
class DescriptorPool
{
public:
+ using CType = VkDescriptorPool;
+
+ public:
VULKAN_HPP_CONSTEXPR DescriptorPool()
: m_descriptorPool(VK_NULL_HANDLE)
{}
@@ -13538,6 +13644,9 @@ namespace VULKAN_HPP_NAMESPACE
class DescriptorSetLayout
{
public:
+ using CType = VkDescriptorSetLayout;
+
+ public:
VULKAN_HPP_CONSTEXPR DescriptorSetLayout()
: m_descriptorSetLayout(VK_NULL_HANDLE)
{}
@@ -13602,6 +13711,9 @@ namespace VULKAN_HPP_NAMESPACE
class Framebuffer
{
public:
+ using CType = VkFramebuffer;
+
+ public:
VULKAN_HPP_CONSTEXPR Framebuffer()
: m_framebuffer(VK_NULL_HANDLE)
{}
@@ -13666,6 +13778,9 @@ namespace VULKAN_HPP_NAMESPACE
class IndirectCommandsLayoutNVX
{
public:
+ using CType = VkIndirectCommandsLayoutNVX;
+
+ public:
VULKAN_HPP_CONSTEXPR IndirectCommandsLayoutNVX()
: m_indirectCommandsLayoutNVX(VK_NULL_HANDLE)
{}
@@ -13730,6 +13845,9 @@ namespace VULKAN_HPP_NAMESPACE
class ObjectTableNVX
{
public:
+ using CType = VkObjectTableNVX;
+
+ public:
VULKAN_HPP_CONSTEXPR ObjectTableNVX()
: m_objectTableNVX(VK_NULL_HANDLE)
{}
@@ -13794,6 +13912,9 @@ namespace VULKAN_HPP_NAMESPACE
class RenderPass
{
public:
+ using CType = VkRenderPass;
+
+ public:
VULKAN_HPP_CONSTEXPR RenderPass()
: m_renderPass(VK_NULL_HANDLE)
{}
@@ -13858,6 +13979,9 @@ namespace VULKAN_HPP_NAMESPACE
class Sampler
{
public:
+ using CType = VkSampler;
+
+ public:
VULKAN_HPP_CONSTEXPR Sampler()
: m_sampler(VK_NULL_HANDLE)
{}
@@ -13922,6 +14046,9 @@ namespace VULKAN_HPP_NAMESPACE
class SamplerYcbcrConversion
{
public:
+ using CType = VkSamplerYcbcrConversion;
+
+ public:
VULKAN_HPP_CONSTEXPR SamplerYcbcrConversion()
: m_samplerYcbcrConversion(VK_NULL_HANDLE)
{}
@@ -13987,6 +14114,9 @@ namespace VULKAN_HPP_NAMESPACE
class ShaderModule
{
public:
+ using CType = VkShaderModule;
+
+ public:
VULKAN_HPP_CONSTEXPR ShaderModule()
: m_shaderModule(VK_NULL_HANDLE)
{}
@@ -14051,6 +14181,9 @@ namespace VULKAN_HPP_NAMESPACE
class ValidationCacheEXT
{
public:
+ using CType = VkValidationCacheEXT;
+
+ public:
VULKAN_HPP_CONSTEXPR ValidationCacheEXT()
: m_validationCacheEXT(VK_NULL_HANDLE)
{}
@@ -14115,6 +14248,9 @@ namespace VULKAN_HPP_NAMESPACE
class Queue
{
public:
+ using CType = VkQueue;
+
+ public:
VULKAN_HPP_CONSTEXPR Queue()
: m_queue(VK_NULL_HANDLE)
{}
@@ -14302,6 +14438,9 @@ namespace VULKAN_HPP_NAMESPACE
class Device
{
public:
+ using CType = VkDevice;
+
+ public:
VULKAN_HPP_CONSTEXPR Device()
: m_device(VK_NULL_HANDLE)
{}
@@ -15937,6 +16076,9 @@ namespace VULKAN_HPP_NAMESPACE
class DisplayModeKHR
{
public:
+ using CType = VkDisplayModeKHR;
+
+ public:
VULKAN_HPP_CONSTEXPR DisplayModeKHR()
: m_displayModeKHR(VK_NULL_HANDLE)
{}
@@ -16006,6 +16148,9 @@ namespace VULKAN_HPP_NAMESPACE
class PhysicalDevice
{
public:
+ using CType = VkPhysicalDevice;
+
+ public:
VULKAN_HPP_CONSTEXPR PhysicalDevice()
: m_physicalDevice(VK_NULL_HANDLE)
{}
@@ -16605,6 +16750,9 @@ namespace VULKAN_HPP_NAMESPACE
class Instance
{
public:
+ using CType = VkInstance;
+
+ public:
VULKAN_HPP_CONSTEXPR Instance()
: m_instance(VK_NULL_HANDLE)
{}
@@ -29592,6 +29740,196 @@ namespace VULKAN_HPP_NAMESPACE
};
static_assert( sizeof( FormatProperties2 ) == sizeof( VkFormatProperties2 ), "struct and wrapper have different size!" );
+ struct FramebufferAttachmentImageInfoKHR
+ {
+ FramebufferAttachmentImageInfoKHR( ImageCreateFlags flags_ = ImageCreateFlags(),
+ ImageUsageFlags usage_ = ImageUsageFlags(),
+ uint32_t width_ = 0,
+ uint32_t height_ = 0,
+ uint32_t layerCount_ = 0,
+ uint32_t viewFormatCount_ = 0,
+ const Format* pViewFormats_ = nullptr )
+ : flags( flags_ )
+ , usage( usage_ )
+ , width( width_ )
+ , height( height_ )
+ , layerCount( layerCount_ )
+ , viewFormatCount( viewFormatCount_ )
+ , pViewFormats( pViewFormats_ )
+ {}
+
+ FramebufferAttachmentImageInfoKHR( VkFramebufferAttachmentImageInfoKHR const & rhs )
+ {
+ *reinterpret_cast<VkFramebufferAttachmentImageInfoKHR*>(this) = rhs;
+ }
+
+ FramebufferAttachmentImageInfoKHR& operator=( VkFramebufferAttachmentImageInfoKHR const & rhs )
+ {
+ *reinterpret_cast<VkFramebufferAttachmentImageInfoKHR*>(this) = rhs;
+ return *this;
+ }
+
+ FramebufferAttachmentImageInfoKHR & setPNext( const void* pNext_ )
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ FramebufferAttachmentImageInfoKHR & setFlags( ImageCreateFlags flags_ )
+ {
+ flags = flags_;
+ return *this;
+ }
+
+ FramebufferAttachmentImageInfoKHR & setUsage( ImageUsageFlags usage_ )
+ {
+ usage = usage_;
+ return *this;
+ }
+
+ FramebufferAttachmentImageInfoKHR & setWidth( uint32_t width_ )
+ {
+ width = width_;
+ return *this;
+ }
+
+ FramebufferAttachmentImageInfoKHR & setHeight( uint32_t height_ )
+ {
+ height = height_;
+ return *this;
+ }
+
+ FramebufferAttachmentImageInfoKHR & setLayerCount( uint32_t layerCount_ )
+ {
+ layerCount = layerCount_;
+ return *this;
+ }
+
+ FramebufferAttachmentImageInfoKHR & setViewFormatCount( uint32_t viewFormatCount_ )
+ {
+ viewFormatCount = viewFormatCount_;
+ return *this;
+ }
+
+ FramebufferAttachmentImageInfoKHR & setPViewFormats( const Format* pViewFormats_ )
+ {
+ pViewFormats = pViewFormats_;
+ return *this;
+ }
+
+ operator VkFramebufferAttachmentImageInfoKHR const&() const
+ {
+ return *reinterpret_cast<const VkFramebufferAttachmentImageInfoKHR*>( this );
+ }
+
+ operator VkFramebufferAttachmentImageInfoKHR &()
+ {
+ return *reinterpret_cast<VkFramebufferAttachmentImageInfoKHR*>( this );
+ }
+
+ bool operator==( FramebufferAttachmentImageInfoKHR const& rhs ) const
+ {
+ return ( sType == rhs.sType )
+ && ( pNext == rhs.pNext )
+ && ( flags == rhs.flags )
+ && ( usage == rhs.usage )
+ && ( width == rhs.width )
+ && ( height == rhs.height )
+ && ( layerCount == rhs.layerCount )
+ && ( viewFormatCount == rhs.viewFormatCount )
+ && ( pViewFormats == rhs.pViewFormats );
+ }
+
+ bool operator!=( FramebufferAttachmentImageInfoKHR const& rhs ) const
+ {
+ return !operator==( rhs );
+ }
+
+ private:
+ StructureType sType = StructureType::eFramebufferAttachmentImageInfoKHR;
+
+ public:
+ const void* pNext = nullptr;
+ ImageCreateFlags flags;
+ ImageUsageFlags usage;
+ uint32_t width;
+ uint32_t height;
+ uint32_t layerCount;
+ uint32_t viewFormatCount;
+ const Format* pViewFormats;
+ };
+ static_assert( sizeof( FramebufferAttachmentImageInfoKHR ) == sizeof( VkFramebufferAttachmentImageInfoKHR ), "struct and wrapper have different size!" );
+
+ struct FramebufferAttachmentsCreateInfoKHR
+ {
+ FramebufferAttachmentsCreateInfoKHR( uint32_t attachmentImageInfoCount_ = 0,
+ const FramebufferAttachmentImageInfoKHR* pAttachmentImageInfos_ = nullptr )
+ : attachmentImageInfoCount( attachmentImageInfoCount_ )
+ , pAttachmentImageInfos( pAttachmentImageInfos_ )
+ {}
+
+ FramebufferAttachmentsCreateInfoKHR( VkFramebufferAttachmentsCreateInfoKHR const & rhs )
+ {
+ *reinterpret_cast<VkFramebufferAttachmentsCreateInfoKHR*>(this) = rhs;
+ }
+
+ FramebufferAttachmentsCreateInfoKHR& operator=( VkFramebufferAttachmentsCreateInfoKHR const & rhs )
+ {
+ *reinterpret_cast<VkFramebufferAttachmentsCreateInfoKHR*>(this) = rhs;
+ return *this;
+ }
+
+ FramebufferAttachmentsCreateInfoKHR & setPNext( const void* pNext_ )
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ FramebufferAttachmentsCreateInfoKHR & setAttachmentImageInfoCount( uint32_t attachmentImageInfoCount_ )
+ {
+ attachmentImageInfoCount = attachmentImageInfoCount_;
+ return *this;
+ }
+
+ FramebufferAttachmentsCreateInfoKHR & setPAttachmentImageInfos( const FramebufferAttachmentImageInfoKHR* pAttachmentImageInfos_ )
+ {
+ pAttachmentImageInfos = pAttachmentImageInfos_;
+ return *this;
+ }
+
+ operator VkFramebufferAttachmentsCreateInfoKHR const&() const
+ {
+ return *reinterpret_cast<const VkFramebufferAttachmentsCreateInfoKHR*>( this );
+ }
+
+ operator VkFramebufferAttachmentsCreateInfoKHR &()
+ {
+ return *reinterpret_cast<VkFramebufferAttachmentsCreateInfoKHR*>( this );
+ }
+
+ bool operator==( FramebufferAttachmentsCreateInfoKHR const& rhs ) const
+ {
+ return ( sType == rhs.sType )
+ && ( pNext == rhs.pNext )
+ && ( attachmentImageInfoCount == rhs.attachmentImageInfoCount )
+ && ( pAttachmentImageInfos == rhs.pAttachmentImageInfos );
+ }
+
+ bool operator!=( FramebufferAttachmentsCreateInfoKHR const& rhs ) const
+ {
+ return !operator==( rhs );
+ }
+
+ private:
+ StructureType sType = StructureType::eFramebufferAttachmentsCreateInfoKHR;
+
+ public:
+ const void* pNext = nullptr;
+ uint32_t attachmentImageInfoCount;
+ const FramebufferAttachmentImageInfoKHR* pAttachmentImageInfos;
+ };
+ static_assert( sizeof( FramebufferAttachmentsCreateInfoKHR ) == sizeof( VkFramebufferAttachmentsCreateInfoKHR ), "struct and wrapper have different size!" );
+
struct FramebufferCreateInfo
{
FramebufferCreateInfo( FramebufferCreateFlags flags_ = FramebufferCreateFlags(),
@@ -39162,6 +39500,66 @@ namespace VULKAN_HPP_NAMESPACE
};
static_assert( sizeof( PhysicalDeviceImageViewImageFormatInfoEXT ) == sizeof( VkPhysicalDeviceImageViewImageFormatInfoEXT ), "struct and wrapper have different size!" );
+ struct PhysicalDeviceImagelessFramebufferFeaturesKHR
+ {
+ PhysicalDeviceImagelessFramebufferFeaturesKHR( Bool32 imagelessFramebuffer_ = 0 )
+ : imagelessFramebuffer( imagelessFramebuffer_ )
+ {}
+
+ PhysicalDeviceImagelessFramebufferFeaturesKHR( VkPhysicalDeviceImagelessFramebufferFeaturesKHR const & rhs )
+ {
+ *reinterpret_cast<VkPhysicalDeviceImagelessFramebufferFeaturesKHR*>(this) = rhs;
+ }
+
+ PhysicalDeviceImagelessFramebufferFeaturesKHR& operator=( VkPhysicalDeviceImagelessFramebufferFeaturesKHR const & rhs )
+ {
+ *reinterpret_cast<VkPhysicalDeviceImagelessFramebufferFeaturesKHR*>(this) = rhs;
+ return *this;
+ }
+
+ PhysicalDeviceImagelessFramebufferFeaturesKHR & setPNext( void* pNext_ )
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ PhysicalDeviceImagelessFramebufferFeaturesKHR & setImagelessFramebuffer( Bool32 imagelessFramebuffer_ )
+ {
+ imagelessFramebuffer = imagelessFramebuffer_;
+ return *this;
+ }
+
+ operator VkPhysicalDeviceImagelessFramebufferFeaturesKHR const&() const
+ {
+ return *reinterpret_cast<const VkPhysicalDeviceImagelessFramebufferFeaturesKHR*>( this );
+ }
+
+ operator VkPhysicalDeviceImagelessFramebufferFeaturesKHR &()
+ {
+ return *reinterpret_cast<VkPhysicalDeviceImagelessFramebufferFeaturesKHR*>( this );
+ }
+
+ bool operator==( PhysicalDeviceImagelessFramebufferFeaturesKHR const& rhs ) const
+ {
+ return ( sType == rhs.sType )
+ && ( pNext == rhs.pNext )
+ && ( imagelessFramebuffer == rhs.imagelessFramebuffer );
+ }
+
+ bool operator!=( PhysicalDeviceImagelessFramebufferFeaturesKHR const& rhs ) const
+ {
+ return !operator==( rhs );
+ }
+
+ private:
+ StructureType sType = StructureType::ePhysicalDeviceImagelessFramebufferFeaturesKHR;
+
+ public:
+ void* pNext = nullptr;
+ Bool32 imagelessFramebuffer;
+ };
+ static_assert( sizeof( PhysicalDeviceImagelessFramebufferFeaturesKHR ) == sizeof( VkPhysicalDeviceImagelessFramebufferFeaturesKHR ), "struct and wrapper have different size!" );
+
struct PhysicalDeviceInlineUniformBlockFeaturesEXT
{
PhysicalDeviceInlineUniformBlockFeaturesEXT( Bool32 inlineUniformBlock_ = 0,
@@ -44979,6 +45377,76 @@ namespace VULKAN_HPP_NAMESPACE
};
static_assert( sizeof( RefreshCycleDurationGOOGLE ) == sizeof( VkRefreshCycleDurationGOOGLE ), "struct and wrapper have different size!" );
+ struct RenderPassAttachmentBeginInfoKHR
+ {
+ RenderPassAttachmentBeginInfoKHR( uint32_t attachmentCount_ = 0,
+ const ImageView* pAttachments_ = nullptr )
+ : attachmentCount( attachmentCount_ )
+ , pAttachments( pAttachments_ )
+ {}
+
+ RenderPassAttachmentBeginInfoKHR( VkRenderPassAttachmentBeginInfoKHR const & rhs )
+ {
+ *reinterpret_cast<VkRenderPassAttachmentBeginInfoKHR*>(this) = rhs;
+ }
+
+ RenderPassAttachmentBeginInfoKHR& operator=( VkRenderPassAttachmentBeginInfoKHR const & rhs )
+ {
+ *reinterpret_cast<VkRenderPassAttachmentBeginInfoKHR*>(this) = rhs;
+ return *this;
+ }
+
+ RenderPassAttachmentBeginInfoKHR & setPNext( const void* pNext_ )
+ {
+ pNext = pNext_;
+ return *this;
+ }
+
+ RenderPassAttachmentBeginInfoKHR & setAttachmentCount( uint32_t attachmentCount_ )
+ {
+ attachmentCount = attachmentCount_;
+ return *this;
+ }
+
+ RenderPassAttachmentBeginInfoKHR & setPAttachments( const ImageView* pAttachments_ )
+ {
+ pAttachments = pAttachments_;
+ return *this;
+ }
+
+ operator VkRenderPassAttachmentBeginInfoKHR const&() const
+ {
+ return *reinterpret_cast<const VkRenderPassAttachmentBeginInfoKHR*>( this );
+ }
+
+ operator VkRenderPassAttachmentBeginInfoKHR &()
+ {
+ return *reinterpret_cast<VkRenderPassAttachmentBeginInfoKHR*>( this );
+ }
+
+ bool operator==( RenderPassAttachmentBeginInfoKHR const& rhs ) const
+ {
+ return ( sType == rhs.sType )
+ && ( pNext == rhs.pNext )
+ && ( attachmentCount == rhs.attachmentCount )
+ && ( pAttachments == rhs.pAttachments );
+ }
+
+ bool operator!=( RenderPassAttachmentBeginInfoKHR const& rhs ) const
+ {
+ return !operator==( rhs );
+ }
+
+ private:
+ StructureType sType = StructureType::eRenderPassAttachmentBeginInfoKHR;
+
+ public:
+ const void* pNext = nullptr;
+ uint32_t attachmentCount;
+ const ImageView* pAttachments;
+ };
+ static_assert( sizeof( RenderPassAttachmentBeginInfoKHR ) == sizeof( VkRenderPassAttachmentBeginInfoKHR ), "struct and wrapper have different size!" );
+
struct RenderPassBeginInfo
{
RenderPassBeginInfo( RenderPass renderPass_ = RenderPass(),
@@ -57619,6 +58087,7 @@ namespace VULKAN_HPP_NAMESPACE
template <> struct isStructureChainValid<ImageCreateInfo, ExternalMemoryImageCreateInfo>{ enum { value = true }; };
template <> struct isStructureChainValid<ImageCreateInfo, ExternalMemoryImageCreateInfoNV>{ enum { value = true }; };
template <> struct isStructureChainValid<ImageFormatProperties2, FilterCubicImageViewImageFormatPropertiesEXT>{ enum { value = true }; };
+ template <> struct isStructureChainValid<FramebufferCreateInfo, FramebufferAttachmentsCreateInfoKHR>{ enum { value = true }; };
template <> struct isStructureChainValid<ImageCreateInfo, ImageDrmFormatModifierExplicitCreateInfoEXT>{ enum { value = true }; };
template <> struct isStructureChainValid<ImageCreateInfo, ImageDrmFormatModifierListCreateInfoEXT>{ enum { value = true }; };
template <> struct isStructureChainValid<ImageCreateInfo, ImageFormatListCreateInfoKHR>{ enum { value = true }; };
@@ -57698,6 +58167,8 @@ namespace VULKAN_HPP_NAMESPACE
template <> struct isStructureChainValid<PhysicalDeviceProperties2, PhysicalDeviceIDProperties>{ enum { value = true }; };
template <> struct isStructureChainValid<PhysicalDeviceImageFormatInfo2, PhysicalDeviceImageDrmFormatModifierInfoEXT>{ enum { value = true }; };
template <> struct isStructureChainValid<PhysicalDeviceImageFormatInfo2, PhysicalDeviceImageViewImageFormatInfoEXT>{ enum { value = true }; };
+ template <> struct isStructureChainValid<PhysicalDeviceFeatures2, PhysicalDeviceImagelessFramebufferFeaturesKHR>{ enum { value = true }; };
+ template <> struct isStructureChainValid<DeviceCreateInfo, PhysicalDeviceImagelessFramebufferFeaturesKHR>{ enum { value = true }; };
template <> struct isStructureChainValid<PhysicalDeviceFeatures2, PhysicalDeviceInlineUniformBlockFeaturesEXT>{ enum { value = true }; };
template <> struct isStructureChainValid<DeviceCreateInfo, PhysicalDeviceInlineUniformBlockFeaturesEXT>{ enum { value = true }; };
template <> struct isStructureChainValid<PhysicalDeviceProperties2, PhysicalDeviceInlineUniformBlockPropertiesEXT>{ enum { value = true }; };
@@ -57790,6 +58261,7 @@ namespace VULKAN_HPP_NAMESPACE
template <> struct isStructureChainValid<PresentInfoKHR, PresentTimesInfoGOOGLE>{ enum { value = true }; };
template <> struct isStructureChainValid<SubmitInfo, ProtectedSubmitInfo>{ enum { value = true }; };
template <> struct isStructureChainValid<QueueFamilyProperties2, QueueFamilyCheckpointPropertiesNV>{ enum { value = true }; };
+ template <> struct isStructureChainValid<RenderPassBeginInfo, RenderPassAttachmentBeginInfoKHR>{ enum { value = true }; };
template <> struct isStructureChainValid<RenderPassCreateInfo, RenderPassFragmentDensityMapCreateInfoEXT>{ enum { value = true }; };
template <> struct isStructureChainValid<RenderPassCreateInfo, RenderPassInputAttachmentAspectCreateInfo>{ enum { value = true }; };
template <> struct isStructureChainValid<RenderPassCreateInfo, RenderPassMultiviewCreateInfo>{ enum { value = true }; };