Update to VK_HEADER_VERSION 160.

This commit is contained in:
asuessenbach 2020-11-09 10:04:02 +01:00
parent 7abf60533a
commit 6b2c310cf8
2 changed files with 453 additions and 2 deletions

@ -1 +1 @@
Subproject commit 87451c55aa8b4f00831fab6ffc4b721d0f148102
Subproject commit 670ffea9d61b9f4b8f68c919dab7caf33dfd9718

View File

@ -93,7 +93,7 @@ extern "C" __declspec( dllimport ) FARPROC __stdcall GetProcAddress( HINSTANCE h
# include <compare>
#endif
static_assert( VK_HEADER_VERSION == 159, "Wrong VK_HEADER_VERSION!" );
static_assert( VK_HEADER_VERSION == 160, "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
@ -2223,6 +2223,14 @@ namespace VULKAN_HPP_NAMESPACE
commandBuffer, firstExclusiveScissor, exclusiveScissorCount, pExclusiveScissors );
}
void vkCmdSetFragmentShadingRateEnumNV( VkCommandBuffer commandBuffer,
VkFragmentShadingRateNV shadingRate,
const VkFragmentShadingRateCombinerOpKHR combinerOps[2] ) const
VULKAN_HPP_NOEXCEPT
{
return ::vkCmdSetFragmentShadingRateEnumNV( commandBuffer, shadingRate, combinerOps );
}
void vkCmdSetFragmentShadingRateKHR( VkCommandBuffer commandBuffer,
const VkExtent2D * pFragmentSize,
const VkFragmentShadingRateCombinerOpKHR combinerOps[2] ) const
@ -7406,6 +7414,58 @@ namespace VULKAN_HPP_NAMESPACE
}
}
enum class FragmentShadingRateNV
{
e1InvocationPerPixel = VK_FRAGMENT_SHADING_RATE_1_INVOCATION_PER_PIXEL_NV,
e1InvocationPer1X2Pixels = VK_FRAGMENT_SHADING_RATE_1_INVOCATION_PER_1X2_PIXELS_NV,
e1InvocationPer2X1Pixels = VK_FRAGMENT_SHADING_RATE_1_INVOCATION_PER_2X1_PIXELS_NV,
e1InvocationPer2X2Pixels = VK_FRAGMENT_SHADING_RATE_1_INVOCATION_PER_2X2_PIXELS_NV,
e1InvocationPer2X4Pixels = VK_FRAGMENT_SHADING_RATE_1_INVOCATION_PER_2X4_PIXELS_NV,
e1InvocationPer4X2Pixels = VK_FRAGMENT_SHADING_RATE_1_INVOCATION_PER_4X2_PIXELS_NV,
e1InvocationPer4X4Pixels = VK_FRAGMENT_SHADING_RATE_1_INVOCATION_PER_4X4_PIXELS_NV,
e2InvocationsPerPixel = VK_FRAGMENT_SHADING_RATE_2_INVOCATIONS_PER_PIXEL_NV,
e4InvocationsPerPixel = VK_FRAGMENT_SHADING_RATE_4_INVOCATIONS_PER_PIXEL_NV,
e8InvocationsPerPixel = VK_FRAGMENT_SHADING_RATE_8_INVOCATIONS_PER_PIXEL_NV,
e16InvocationsPerPixel = VK_FRAGMENT_SHADING_RATE_16_INVOCATIONS_PER_PIXEL_NV,
eNoInvocations = VK_FRAGMENT_SHADING_RATE_NO_INVOCATIONS_NV
};
VULKAN_HPP_INLINE std::string to_string( FragmentShadingRateNV value )
{
switch ( value )
{
case FragmentShadingRateNV::e1InvocationPerPixel: return "1InvocationPerPixel";
case FragmentShadingRateNV::e1InvocationPer1X2Pixels: return "1InvocationPer1X2Pixels";
case FragmentShadingRateNV::e1InvocationPer2X1Pixels: return "1InvocationPer2X1Pixels";
case FragmentShadingRateNV::e1InvocationPer2X2Pixels: return "1InvocationPer2X2Pixels";
case FragmentShadingRateNV::e1InvocationPer2X4Pixels: return "1InvocationPer2X4Pixels";
case FragmentShadingRateNV::e1InvocationPer4X2Pixels: return "1InvocationPer4X2Pixels";
case FragmentShadingRateNV::e1InvocationPer4X4Pixels: return "1InvocationPer4X4Pixels";
case FragmentShadingRateNV::e2InvocationsPerPixel: return "2InvocationsPerPixel";
case FragmentShadingRateNV::e4InvocationsPerPixel: return "4InvocationsPerPixel";
case FragmentShadingRateNV::e8InvocationsPerPixel: return "8InvocationsPerPixel";
case FragmentShadingRateNV::e16InvocationsPerPixel: return "16InvocationsPerPixel";
case FragmentShadingRateNV::eNoInvocations: return "NoInvocations";
default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
}
}
enum class FragmentShadingRateTypeNV
{
eFragmentSize = VK_FRAGMENT_SHADING_RATE_TYPE_FRAGMENT_SIZE_NV,
eEnums = VK_FRAGMENT_SHADING_RATE_TYPE_ENUMS_NV
};
VULKAN_HPP_INLINE std::string to_string( FragmentShadingRateTypeNV value )
{
switch ( value )
{
case FragmentShadingRateTypeNV::eFragmentSize: return "FragmentSize";
case FragmentShadingRateTypeNV::eEnums: return "Enums";
default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
}
}
enum class FramebufferCreateFlagBits : VkFramebufferCreateFlags
{
eImageless = VK_FRAMEBUFFER_CREATE_IMAGELESS_BIT,
@ -9956,6 +10016,12 @@ namespace VULKAN_HPP_NAMESPACE
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_CREATION_CACHE_CONTROL_FEATURES_EXT,
ePhysicalDeviceDiagnosticsConfigFeaturesNV = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DIAGNOSTICS_CONFIG_FEATURES_NV,
eDeviceDiagnosticsConfigCreateInfoNV = VK_STRUCTURE_TYPE_DEVICE_DIAGNOSTICS_CONFIG_CREATE_INFO_NV,
ePhysicalDeviceFragmentShadingRateEnumsPropertiesNV =
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADING_RATE_ENUMS_PROPERTIES_NV,
ePhysicalDeviceFragmentShadingRateEnumsFeaturesNV =
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADING_RATE_ENUMS_FEATURES_NV,
ePipelineFragmentShadingRateEnumStateCreateInfoNV =
VK_STRUCTURE_TYPE_PIPELINE_FRAGMENT_SHADING_RATE_ENUM_STATE_CREATE_INFO_NV,
ePhysicalDeviceFragmentDensityMap2FeaturesEXT =
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_2_FEATURES_EXT,
ePhysicalDeviceFragmentDensityMap2PropertiesEXT =
@ -10675,6 +10741,12 @@ namespace VULKAN_HPP_NAMESPACE
case StructureType::ePhysicalDeviceDiagnosticsConfigFeaturesNV:
return "PhysicalDeviceDiagnosticsConfigFeaturesNV";
case StructureType::eDeviceDiagnosticsConfigCreateInfoNV: return "DeviceDiagnosticsConfigCreateInfoNV";
case StructureType::ePhysicalDeviceFragmentShadingRateEnumsPropertiesNV:
return "PhysicalDeviceFragmentShadingRateEnumsPropertiesNV";
case StructureType::ePhysicalDeviceFragmentShadingRateEnumsFeaturesNV:
return "PhysicalDeviceFragmentShadingRateEnumsFeaturesNV";
case StructureType::ePipelineFragmentShadingRateEnumStateCreateInfoNV:
return "PipelineFragmentShadingRateEnumStateCreateInfoNV";
case StructureType::ePhysicalDeviceFragmentDensityMap2FeaturesEXT:
return "PhysicalDeviceFragmentDensityMap2FeaturesEXT";
case StructureType::ePhysicalDeviceFragmentDensityMap2PropertiesEXT:
@ -39185,6 +39257,12 @@ namespace VULKAN_HPP_NAMESPACE
Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
void setFragmentShadingRateEnumNV( VULKAN_HPP_NAMESPACE::FragmentShadingRateNV shadingRate,
const VULKAN_HPP_NAMESPACE::FragmentShadingRateCombinerOpKHR combinerOps[2],
Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const
VULKAN_HPP_NOEXCEPT;
template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
void setFragmentShadingRateKHR( const VULKAN_HPP_NAMESPACE::Extent2D * pFragmentSize,
const VULKAN_HPP_NAMESPACE::FragmentShadingRateCombinerOpKHR combinerOps[2],
@ -72603,6 +72681,214 @@ namespace VULKAN_HPP_NAMESPACE
using Type = PhysicalDeviceFragmentShaderInterlockFeaturesEXT;
};
struct PhysicalDeviceFragmentShadingRateEnumsFeaturesNV
{
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
StructureType::ePhysicalDeviceFragmentShadingRateEnumsFeaturesNV;
#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
VULKAN_HPP_CONSTEXPR PhysicalDeviceFragmentShadingRateEnumsFeaturesNV(
VULKAN_HPP_NAMESPACE::Bool32 fragmentShadingRateEnums_ = {},
VULKAN_HPP_NAMESPACE::Bool32 supersampleFragmentShadingRates_ = {},
VULKAN_HPP_NAMESPACE::Bool32 noInvocationFragmentShadingRates_ = {} ) VULKAN_HPP_NOEXCEPT
: fragmentShadingRateEnums( fragmentShadingRateEnums_ )
, supersampleFragmentShadingRates( supersampleFragmentShadingRates_ )
, noInvocationFragmentShadingRates( noInvocationFragmentShadingRates_ )
{}
VULKAN_HPP_CONSTEXPR PhysicalDeviceFragmentShadingRateEnumsFeaturesNV(
PhysicalDeviceFragmentShadingRateEnumsFeaturesNV const & rhs ) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceFragmentShadingRateEnumsFeaturesNV( VkPhysicalDeviceFragmentShadingRateEnumsFeaturesNV const & rhs )
VULKAN_HPP_NOEXCEPT
{
*this = rhs;
}
#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
PhysicalDeviceFragmentShadingRateEnumsFeaturesNV &
operator=( VkPhysicalDeviceFragmentShadingRateEnumsFeaturesNV const & rhs ) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceFragmentShadingRateEnumsFeaturesNV const *>( &rhs );
return *this;
}
PhysicalDeviceFragmentShadingRateEnumsFeaturesNV &
operator=( PhysicalDeviceFragmentShadingRateEnumsFeaturesNV const & rhs ) VULKAN_HPP_NOEXCEPT
{
memcpy( static_cast<void *>( this ), &rhs, sizeof( PhysicalDeviceFragmentShadingRateEnumsFeaturesNV ) );
return *this;
}
PhysicalDeviceFragmentShadingRateEnumsFeaturesNV & setPNext( void * pNext_ ) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
PhysicalDeviceFragmentShadingRateEnumsFeaturesNV &
setFragmentShadingRateEnums( VULKAN_HPP_NAMESPACE::Bool32 fragmentShadingRateEnums_ ) VULKAN_HPP_NOEXCEPT
{
fragmentShadingRateEnums = fragmentShadingRateEnums_;
return *this;
}
PhysicalDeviceFragmentShadingRateEnumsFeaturesNV & setSupersampleFragmentShadingRates(
VULKAN_HPP_NAMESPACE::Bool32 supersampleFragmentShadingRates_ ) VULKAN_HPP_NOEXCEPT
{
supersampleFragmentShadingRates = supersampleFragmentShadingRates_;
return *this;
}
PhysicalDeviceFragmentShadingRateEnumsFeaturesNV & setNoInvocationFragmentShadingRates(
VULKAN_HPP_NAMESPACE::Bool32 noInvocationFragmentShadingRates_ ) VULKAN_HPP_NOEXCEPT
{
noInvocationFragmentShadingRates = noInvocationFragmentShadingRates_;
return *this;
}
operator VkPhysicalDeviceFragmentShadingRateEnumsFeaturesNV const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPhysicalDeviceFragmentShadingRateEnumsFeaturesNV *>( this );
}
operator VkPhysicalDeviceFragmentShadingRateEnumsFeaturesNV &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPhysicalDeviceFragmentShadingRateEnumsFeaturesNV *>( this );
}
#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
auto operator<=>( PhysicalDeviceFragmentShadingRateEnumsFeaturesNV const & ) const = default;
#else
bool operator==( PhysicalDeviceFragmentShadingRateEnumsFeaturesNV const & rhs ) const VULKAN_HPP_NOEXCEPT
{
return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) &&
( fragmentShadingRateEnums == rhs.fragmentShadingRateEnums ) &&
( supersampleFragmentShadingRates == rhs.supersampleFragmentShadingRates ) &&
( noInvocationFragmentShadingRates == rhs.noInvocationFragmentShadingRates );
}
bool operator!=( PhysicalDeviceFragmentShadingRateEnumsFeaturesNV const & rhs ) const VULKAN_HPP_NOEXCEPT
{
return !operator==( rhs );
}
#endif
public:
const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceFragmentShadingRateEnumsFeaturesNV;
void * pNext = {};
VULKAN_HPP_NAMESPACE::Bool32 fragmentShadingRateEnums = {};
VULKAN_HPP_NAMESPACE::Bool32 supersampleFragmentShadingRates = {};
VULKAN_HPP_NAMESPACE::Bool32 noInvocationFragmentShadingRates = {};
};
static_assert( sizeof( PhysicalDeviceFragmentShadingRateEnumsFeaturesNV ) ==
sizeof( VkPhysicalDeviceFragmentShadingRateEnumsFeaturesNV ),
"struct and wrapper have different size!" );
static_assert( std::is_standard_layout<PhysicalDeviceFragmentShadingRateEnumsFeaturesNV>::value,
"struct wrapper is not a standard layout!" );
template <>
struct CppType<StructureType, StructureType::ePhysicalDeviceFragmentShadingRateEnumsFeaturesNV>
{
using Type = PhysicalDeviceFragmentShadingRateEnumsFeaturesNV;
};
struct PhysicalDeviceFragmentShadingRateEnumsPropertiesNV
{
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
StructureType::ePhysicalDeviceFragmentShadingRateEnumsPropertiesNV;
#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
VULKAN_HPP_CONSTEXPR PhysicalDeviceFragmentShadingRateEnumsPropertiesNV(
VULKAN_HPP_NAMESPACE::SampleCountFlagBits maxFragmentShadingRateInvocationCount_ =
VULKAN_HPP_NAMESPACE::SampleCountFlagBits::e1 ) VULKAN_HPP_NOEXCEPT
: maxFragmentShadingRateInvocationCount( maxFragmentShadingRateInvocationCount_ )
{}
VULKAN_HPP_CONSTEXPR PhysicalDeviceFragmentShadingRateEnumsPropertiesNV(
PhysicalDeviceFragmentShadingRateEnumsPropertiesNV const & rhs ) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceFragmentShadingRateEnumsPropertiesNV(
VkPhysicalDeviceFragmentShadingRateEnumsPropertiesNV const & rhs ) VULKAN_HPP_NOEXCEPT
{
*this = rhs;
}
#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
PhysicalDeviceFragmentShadingRateEnumsPropertiesNV &
operator=( VkPhysicalDeviceFragmentShadingRateEnumsPropertiesNV const & rhs ) VULKAN_HPP_NOEXCEPT
{
*this =
*reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceFragmentShadingRateEnumsPropertiesNV const *>( &rhs );
return *this;
}
PhysicalDeviceFragmentShadingRateEnumsPropertiesNV &
operator=( PhysicalDeviceFragmentShadingRateEnumsPropertiesNV const & rhs ) VULKAN_HPP_NOEXCEPT
{
memcpy( static_cast<void *>( this ), &rhs, sizeof( PhysicalDeviceFragmentShadingRateEnumsPropertiesNV ) );
return *this;
}
PhysicalDeviceFragmentShadingRateEnumsPropertiesNV & setPNext( void * pNext_ ) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
PhysicalDeviceFragmentShadingRateEnumsPropertiesNV & setMaxFragmentShadingRateInvocationCount(
VULKAN_HPP_NAMESPACE::SampleCountFlagBits maxFragmentShadingRateInvocationCount_ ) VULKAN_HPP_NOEXCEPT
{
maxFragmentShadingRateInvocationCount = maxFragmentShadingRateInvocationCount_;
return *this;
}
operator VkPhysicalDeviceFragmentShadingRateEnumsPropertiesNV const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPhysicalDeviceFragmentShadingRateEnumsPropertiesNV *>( this );
}
operator VkPhysicalDeviceFragmentShadingRateEnumsPropertiesNV &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPhysicalDeviceFragmentShadingRateEnumsPropertiesNV *>( this );
}
#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
auto operator<=>( PhysicalDeviceFragmentShadingRateEnumsPropertiesNV const & ) const = default;
#else
bool operator==( PhysicalDeviceFragmentShadingRateEnumsPropertiesNV const & rhs ) const VULKAN_HPP_NOEXCEPT
{
return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) &&
( maxFragmentShadingRateInvocationCount == rhs.maxFragmentShadingRateInvocationCount );
}
bool operator!=( PhysicalDeviceFragmentShadingRateEnumsPropertiesNV const & rhs ) const VULKAN_HPP_NOEXCEPT
{
return !operator==( rhs );
}
#endif
public:
const VULKAN_HPP_NAMESPACE::StructureType sType =
StructureType::ePhysicalDeviceFragmentShadingRateEnumsPropertiesNV;
void * pNext = {};
VULKAN_HPP_NAMESPACE::SampleCountFlagBits maxFragmentShadingRateInvocationCount =
VULKAN_HPP_NAMESPACE::SampleCountFlagBits::e1;
};
static_assert( sizeof( PhysicalDeviceFragmentShadingRateEnumsPropertiesNV ) ==
sizeof( VkPhysicalDeviceFragmentShadingRateEnumsPropertiesNV ),
"struct and wrapper have different size!" );
static_assert( std::is_standard_layout<PhysicalDeviceFragmentShadingRateEnumsPropertiesNV>::value,
"struct wrapper is not a standard layout!" );
template <>
struct CppType<StructureType, StructureType::ePhysicalDeviceFragmentShadingRateEnumsPropertiesNV>
{
using Type = PhysicalDeviceFragmentShadingRateEnumsPropertiesNV;
};
struct PhysicalDeviceFragmentShadingRateFeaturesKHR
{
static const bool allowDuplicate = false;
@ -82456,6 +82742,123 @@ namespace VULKAN_HPP_NAMESPACE
using Type = PipelineDiscardRectangleStateCreateInfoEXT;
};
struct PipelineFragmentShadingRateEnumStateCreateInfoNV
{
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType =
StructureType::ePipelineFragmentShadingRateEnumStateCreateInfoNV;
#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
VULKAN_HPP_CONSTEXPR_14 PipelineFragmentShadingRateEnumStateCreateInfoNV(
VULKAN_HPP_NAMESPACE::FragmentShadingRateTypeNV shadingRateType_ =
VULKAN_HPP_NAMESPACE::FragmentShadingRateTypeNV::eFragmentSize,
VULKAN_HPP_NAMESPACE::FragmentShadingRateNV shadingRate_ =
VULKAN_HPP_NAMESPACE::FragmentShadingRateNV::e1InvocationPerPixel,
std::array<VULKAN_HPP_NAMESPACE::FragmentShadingRateCombinerOpKHR, 2> const &
combinerOps_ = { { VULKAN_HPP_NAMESPACE::FragmentShadingRateCombinerOpKHR::eKeep,
VULKAN_HPP_NAMESPACE::FragmentShadingRateCombinerOpKHR::eKeep } } ) VULKAN_HPP_NOEXCEPT
: shadingRateType( shadingRateType_ )
, shadingRate( shadingRate_ )
, combinerOps( combinerOps_ )
{}
VULKAN_HPP_CONSTEXPR_14 PipelineFragmentShadingRateEnumStateCreateInfoNV(
PipelineFragmentShadingRateEnumStateCreateInfoNV const & rhs ) VULKAN_HPP_NOEXCEPT = default;
PipelineFragmentShadingRateEnumStateCreateInfoNV( VkPipelineFragmentShadingRateEnumStateCreateInfoNV const & rhs )
VULKAN_HPP_NOEXCEPT
{
*this = rhs;
}
#endif // !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
PipelineFragmentShadingRateEnumStateCreateInfoNV &
operator=( VkPipelineFragmentShadingRateEnumStateCreateInfoNV const & rhs ) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PipelineFragmentShadingRateEnumStateCreateInfoNV const *>( &rhs );
return *this;
}
PipelineFragmentShadingRateEnumStateCreateInfoNV &
operator=( PipelineFragmentShadingRateEnumStateCreateInfoNV const & rhs ) VULKAN_HPP_NOEXCEPT
{
memcpy( static_cast<void *>( this ), &rhs, sizeof( PipelineFragmentShadingRateEnumStateCreateInfoNV ) );
return *this;
}
PipelineFragmentShadingRateEnumStateCreateInfoNV & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
PipelineFragmentShadingRateEnumStateCreateInfoNV &
setShadingRateType( VULKAN_HPP_NAMESPACE::FragmentShadingRateTypeNV shadingRateType_ ) VULKAN_HPP_NOEXCEPT
{
shadingRateType = shadingRateType_;
return *this;
}
PipelineFragmentShadingRateEnumStateCreateInfoNV &
setShadingRate( VULKAN_HPP_NAMESPACE::FragmentShadingRateNV shadingRate_ ) VULKAN_HPP_NOEXCEPT
{
shadingRate = shadingRate_;
return *this;
}
PipelineFragmentShadingRateEnumStateCreateInfoNV & setCombinerOps(
std::array<VULKAN_HPP_NAMESPACE::FragmentShadingRateCombinerOpKHR, 2> combinerOps_ ) VULKAN_HPP_NOEXCEPT
{
combinerOps = combinerOps_;
return *this;
}
operator VkPipelineFragmentShadingRateEnumStateCreateInfoNV const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPipelineFragmentShadingRateEnumStateCreateInfoNV *>( this );
}
operator VkPipelineFragmentShadingRateEnumStateCreateInfoNV &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPipelineFragmentShadingRateEnumStateCreateInfoNV *>( this );
}
#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
auto operator<=>( PipelineFragmentShadingRateEnumStateCreateInfoNV const & ) const = default;
#else
bool operator==( PipelineFragmentShadingRateEnumStateCreateInfoNV const & rhs ) const VULKAN_HPP_NOEXCEPT
{
return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( shadingRateType == rhs.shadingRateType ) &&
( shadingRate == rhs.shadingRate ) && ( combinerOps == rhs.combinerOps );
}
bool operator!=( PipelineFragmentShadingRateEnumStateCreateInfoNV const & rhs ) const VULKAN_HPP_NOEXCEPT
{
return !operator==( rhs );
}
#endif
public:
const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePipelineFragmentShadingRateEnumStateCreateInfoNV;
const void * pNext = {};
VULKAN_HPP_NAMESPACE::FragmentShadingRateTypeNV shadingRateType =
VULKAN_HPP_NAMESPACE::FragmentShadingRateTypeNV::eFragmentSize;
VULKAN_HPP_NAMESPACE::FragmentShadingRateNV shadingRate =
VULKAN_HPP_NAMESPACE::FragmentShadingRateNV::e1InvocationPerPixel;
VULKAN_HPP_NAMESPACE::ArrayWrapper1D<VULKAN_HPP_NAMESPACE::FragmentShadingRateCombinerOpKHR, 2> combinerOps = {};
};
static_assert( sizeof( PipelineFragmentShadingRateEnumStateCreateInfoNV ) ==
sizeof( VkPipelineFragmentShadingRateEnumStateCreateInfoNV ),
"struct and wrapper have different size!" );
static_assert( std::is_standard_layout<PipelineFragmentShadingRateEnumStateCreateInfoNV>::value,
"struct wrapper is not a standard layout!" );
template <>
struct CppType<StructureType, StructureType::ePipelineFragmentShadingRateEnumStateCreateInfoNV>
{
using Type = PipelineFragmentShadingRateEnumStateCreateInfoNV;
};
struct PipelineFragmentShadingRateStateCreateInfoKHR
{
static const bool allowDuplicate = false;
@ -92559,6 +92962,17 @@ namespace VULKAN_HPP_NAMESPACE
}
#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
template <typename Dispatch>
VULKAN_HPP_INLINE void CommandBuffer::setFragmentShadingRateEnumNV(
VULKAN_HPP_NAMESPACE::FragmentShadingRateNV shadingRate,
const VULKAN_HPP_NAMESPACE::FragmentShadingRateCombinerOpKHR combinerOps[2],
Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
{
d.vkCmdSetFragmentShadingRateEnumNV( m_commandBuffer,
static_cast<VkFragmentShadingRateNV>( shadingRate ),
reinterpret_cast<const VkFragmentShadingRateCombinerOpKHR *>( combinerOps ) );
}
template <typename Dispatch>
VULKAN_HPP_INLINE void CommandBuffer::setFragmentShadingRateKHR(
const VULKAN_HPP_NAMESPACE::Extent2D * pFragmentSize,
@ -108154,6 +108568,30 @@ namespace VULKAN_HPP_NAMESPACE
};
};
template <>
struct StructExtends<PhysicalDeviceFragmentShadingRateEnumsFeaturesNV, PhysicalDeviceFeatures2>
{
enum
{
value = true
};
};
template <>
struct StructExtends<PhysicalDeviceFragmentShadingRateEnumsFeaturesNV, DeviceCreateInfo>
{
enum
{
value = true
};
};
template <>
struct StructExtends<PhysicalDeviceFragmentShadingRateEnumsPropertiesNV, PhysicalDeviceProperties2>
{
enum
{
value = true
};
};
template <>
struct StructExtends<PhysicalDeviceFragmentShadingRateFeaturesKHR, PhysicalDeviceFeatures2>
{
enum
@ -109276,6 +109714,14 @@ namespace VULKAN_HPP_NAMESPACE
};
};
template <>
struct StructExtends<PipelineFragmentShadingRateEnumStateCreateInfoNV, GraphicsPipelineCreateInfo>
{
enum
{
value = true
};
};
template <>
struct StructExtends<PipelineFragmentShadingRateStateCreateInfoKHR, GraphicsPipelineCreateInfo>
{
enum
@ -109993,6 +110439,7 @@ namespace VULKAN_HPP_NAMESPACE
PFN_vkCmdSetDiscardRectangleEXT vkCmdSetDiscardRectangleEXT = 0;
PFN_vkCmdSetEvent vkCmdSetEvent = 0;
PFN_vkCmdSetExclusiveScissorNV vkCmdSetExclusiveScissorNV = 0;
PFN_vkCmdSetFragmentShadingRateEnumNV vkCmdSetFragmentShadingRateEnumNV = 0;
PFN_vkCmdSetFragmentShadingRateKHR vkCmdSetFragmentShadingRateKHR = 0;
PFN_vkCmdSetFrontFaceEXT vkCmdSetFrontFaceEXT = 0;
PFN_vkCmdSetLineStippleEXT vkCmdSetLineStippleEXT = 0;
@ -110966,6 +111413,8 @@ namespace VULKAN_HPP_NAMESPACE
vkCmdSetEvent = PFN_vkCmdSetEvent( vkGetInstanceProcAddr( instance, "vkCmdSetEvent" ) );
vkCmdSetExclusiveScissorNV =
PFN_vkCmdSetExclusiveScissorNV( vkGetInstanceProcAddr( instance, "vkCmdSetExclusiveScissorNV" ) );
vkCmdSetFragmentShadingRateEnumNV =
PFN_vkCmdSetFragmentShadingRateEnumNV( vkGetInstanceProcAddr( instance, "vkCmdSetFragmentShadingRateEnumNV" ) );
vkCmdSetFragmentShadingRateKHR =
PFN_vkCmdSetFragmentShadingRateKHR( vkGetInstanceProcAddr( instance, "vkCmdSetFragmentShadingRateKHR" ) );
vkCmdSetFrontFaceEXT = PFN_vkCmdSetFrontFaceEXT( vkGetInstanceProcAddr( instance, "vkCmdSetFrontFaceEXT" ) );
@ -111665,6 +112114,8 @@ namespace VULKAN_HPP_NAMESPACE
vkCmdSetEvent = PFN_vkCmdSetEvent( vkGetDeviceProcAddr( device, "vkCmdSetEvent" ) );
vkCmdSetExclusiveScissorNV =
PFN_vkCmdSetExclusiveScissorNV( vkGetDeviceProcAddr( device, "vkCmdSetExclusiveScissorNV" ) );
vkCmdSetFragmentShadingRateEnumNV =
PFN_vkCmdSetFragmentShadingRateEnumNV( vkGetDeviceProcAddr( device, "vkCmdSetFragmentShadingRateEnumNV" ) );
vkCmdSetFragmentShadingRateKHR =
PFN_vkCmdSetFragmentShadingRateKHR( vkGetDeviceProcAddr( device, "vkCmdSetFragmentShadingRateKHR" ) );
vkCmdSetFrontFaceEXT = PFN_vkCmdSetFrontFaceEXT( vkGetDeviceProcAddr( device, "vkCmdSetFrontFaceEXT" ) );