Sort constants by feature and extension. (#1628)

This commit is contained in:
Andreas Süßenbach 2023-07-26 22:12:40 +02:00 committed by GitHub
parent 24045ff3f4
commit b988e54dad
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
6 changed files with 415 additions and 211 deletions

View File

@ -4719,25 +4719,62 @@ std::string VulkanHppGenerator::generateConstexprDefines() const
)" }; )" };
auto const deprecatedAttribute = std::string{ R"(VULKAN_HPP_DEPRECATED("${reason}") )" }; auto const deprecatedAttribute = std::string{ R"(VULKAN_HPP_DEPRECATED("${reason}") )" };
auto constexprDefines = std::string{ R"(
//=========================================
//=== CONSTEXPR CONSTANTs AND FUNCTIONs ===
//=========================================
)" };
// handle the value and callee macros first so they are visible for use in functions below. // handle the value and callee macros first so they are visible for use in functions below.
// hardcoded constants. auto constexprDefines = std::string{ R"(
for ( auto const & [macro, data] : m_constants ) //===========================
{ //=== CONSTEXPR CONSTANTs ===
// make `macro` PascalCase, and strip the `Vk` prefix //===========================
auto const constName = stripPrefix( toCamelCase( macro ), "Vk" ); )" };
constexprDefines += {
replaceWithMap( constexprValueTemplate, { { "type", data.type }, { "constName", constName }, { "deprecated", "" }, { "value", macro } } ); auto const generateConstantsAndProtection =
[&constexprValueTemplate, this]( std::vector<RequireData> const & requireData, std::string const & title, std::set<std::string> & listedConstants )
{
auto constants = std::string{};
for ( auto const & require : requireData )
{
for ( auto const & constant : require.constants )
{
if ( !listedConstants.contains( constant ) )
{
auto constIt = m_constants.find( constant );
if ( constIt == m_constants.end() )
{
auto aliasIt = m_constantAliases.find( constant );
assert( aliasIt != m_constantAliases.end() );
constIt = m_constants.find( aliasIt->second.name );
assert( constIt != m_constants.end() );
}
constants += replaceWithMap( constexprValueTemplate,
{ { "type", constIt->second.type },
{ "constName", stripPrefix( toCamelCase( constant ), "Vk" ) },
{ "deprecated", "" },
{ "value", constant } } );
listedConstants.insert( constant );
}
}
}
return addTitleAndProtection( title, constants );
};
std::set<std::string> listedConstants;
for ( auto const & feature : m_features )
{
constexprDefines += generateConstantsAndProtection( feature.requireData, feature.name, listedConstants );
}
for ( auto const & extension : m_extensions )
{
constexprDefines += generateConstantsAndProtection( extension.requireData, extension.name, listedConstants );
}
} }
// values // values
constexprDefines += R"(
//========================
//=== CONSTEXPR VALUEs ===
//========================
)";
for ( auto const & [macro, data] : m_definesPartition.values ) for ( auto const & [macro, data] : m_definesPartition.values )
{ {
auto const deprecated = data.deprecated ? replaceWithMap( deprecatedAttribute, { { "reason", data.deprecationReason } } ) : ""; auto const deprecated = data.deprecated ? replaceWithMap( deprecatedAttribute, { { "reason", data.deprecationReason } } ) : "";
@ -4751,6 +4788,11 @@ std::string VulkanHppGenerator::generateConstexprDefines() const
} }
// functions // functions
constexprDefines += R"(
//=========================
//=== CONSTEXPR CALLEEs ===
//=========================
)";
for ( auto const & [macro, data] : m_definesPartition.callees ) for ( auto const & [macro, data] : m_definesPartition.callees )
{ {
auto const deprecated = data.deprecated ? replaceWithMap( deprecatedAttribute, { { "reason", data.deprecationReason } } ) : ""; auto const deprecated = data.deprecated ? replaceWithMap( deprecatedAttribute, { { "reason", data.deprecationReason } } ) : "";
@ -4773,6 +4815,11 @@ std::string VulkanHppGenerator::generateConstexprDefines() const
} }
// callers // callers
constexprDefines += R"(
//=========================
//=== CONSTEXPR CALLERs ===
//=========================
)";
for ( auto const & [macro, data] : m_definesPartition.callers ) for ( auto const & [macro, data] : m_definesPartition.callers )
{ {
auto const deprecated = data.deprecated ? replaceWithMap( deprecatedAttribute, { { "reason", data.deprecationReason } } ) : ""; auto const deprecated = data.deprecated ? replaceWithMap( deprecatedAttribute, { { "reason", data.deprecationReason } } ) : "";
@ -4800,9 +4847,9 @@ std::string VulkanHppGenerator::generateConstexprDefines() const
std::string VulkanHppGenerator::generateConstexprUsings() const std::string VulkanHppGenerator::generateConstexprUsings() const
{ {
auto constexprUsings = std::string{ R"( auto constexprUsings = std::string{ R"(
//========================================= //===========================
//=== CONSTEXPR CONSTANTs AND FUNCTIONs === //=== CONSTEXPR CONSTANTs ===
//========================================= //===========================
)" }; )" };
auto const constexprUsingTemplate = std::string{ R"( using VULKAN_HPP_NAMESPACE::${constName}; auto const constexprUsingTemplate = std::string{ R"( using VULKAN_HPP_NAMESPACE::${constName};
@ -4812,14 +4859,50 @@ std::string VulkanHppGenerator::generateConstexprUsings() const
auto const camelCasePrefixStrip = []( std::string const & macro ) { return startLowerCase( stripPrefix( toCamelCase( macro ), "Vk" ) ); }; auto const camelCasePrefixStrip = []( std::string const & macro ) { return startLowerCase( stripPrefix( toCamelCase( macro ), "Vk" ) ); };
// constants // constants
for ( auto const & macro : m_constants )
{ {
// make `macro` PascalCase and strip the `Vk` prefix auto const generateConstantsAndProtection =
auto const constName = pascalCasePrefixStrip( macro.first ); [&constexprUsingTemplate, this]( std::vector<RequireData> const & requireData, std::string const & title, std::set<std::string> & listedConstants )
constexprUsings += replaceWithMap( constexprUsingTemplate, { { "constName", constName } } ); {
auto constants = std::string{};
for ( auto const & require : requireData )
{
for ( auto const & constant : require.constants )
{
if ( !listedConstants.contains( constant ) )
{
auto constIt = m_constants.find( constant );
if ( constIt == m_constants.end() )
{
auto aliasIt = m_constantAliases.find( constant );
assert( aliasIt != m_constantAliases.end() );
constIt = m_constants.find( aliasIt->second.name );
assert( constIt != m_constants.end() );
}
constants += replaceWithMap( constexprUsingTemplate, { { "constName", stripPrefix( toCamelCase( constant ), "Vk" ) } } );
listedConstants.insert( constant );
}
}
}
return addTitleAndProtection( title, constants );
};
std::set<std::string> listedConstants;
for ( auto const & feature : m_features )
{
constexprUsings += generateConstantsAndProtection( feature.requireData, feature.name, listedConstants );
}
for ( auto const & extension : m_extensions )
{
constexprUsings += generateConstantsAndProtection( extension.requireData, extension.name, listedConstants );
}
} }
// values // values
constexprUsings += R"(
//========================
//=== CONSTEXPR VALUEs ===
//========================
)";
for ( auto const & macro : m_definesPartition.values ) for ( auto const & macro : m_definesPartition.values )
{ {
// make `macro` PascalCase and strip the `Vk` prefix // make `macro` PascalCase and strip the `Vk` prefix
@ -4828,6 +4911,11 @@ std::string VulkanHppGenerator::generateConstexprUsings() const
} }
// callees // callees
constexprUsings += R"(
//=========================
//=== CONSTEXPR CALLEEs ===
//=========================
)";
for ( auto const & macro : m_definesPartition.callees ) for ( auto const & macro : m_definesPartition.callees )
{ {
// make `macro` camelCase and strip the `Vk` prefix // make `macro` camelCase and strip the `Vk` prefix
@ -4836,6 +4924,11 @@ std::string VulkanHppGenerator::generateConstexprUsings() const
} }
// callers // callers
constexprUsings += R"(
//==========================
//=== CONSTEXPR CALLERSs ===
//==========================
)";
for ( auto const & macro : m_definesPartition.callers ) for ( auto const & macro : m_definesPartition.callers )
{ {
// make `macro` PascalCase and strip the `Vk` prefix // make `macro` PascalCase and strip the `Vk` prefix
@ -12604,7 +12697,7 @@ void VulkanHppGenerator::readExtensionRequire( tinyxml2::XMLElement const * elem
} }
else if ( value == "enum" ) else if ( value == "enum" )
{ {
readRequireEnum( child, extensionData.name, extensionData.platform, extensionSupported && requireSupported ); readRequireEnum( child, extensionData.name, extensionData.platform, extensionSupported && requireSupported, requireData );
} }
else if ( value == "type" ) else if ( value == "type" )
{ {
@ -12895,7 +12988,7 @@ VulkanHppGenerator::RequireData
} }
else if ( value == "enum" ) else if ( value == "enum" )
{ {
readRequireEnum( child, featureName, "", featureSupported ); readRequireEnum( child, featureName, "", featureSupported, requireData );
} }
else if ( value == "type" ) else if ( value == "type" )
{ {
@ -13308,7 +13401,8 @@ std::string VulkanHppGenerator::readRequireCommand( tinyxml2::XMLElement const *
return name; return name;
} }
void VulkanHppGenerator::readRequireEnum( tinyxml2::XMLElement const * element, std::string const & requiredBy, std::string const & platform, bool supported ) void VulkanHppGenerator::readRequireEnum(
tinyxml2::XMLElement const * element, std::string const & requiredBy, std::string const & platform, bool supported, RequireData & requireData )
{ {
int line = element->GetLineNum(); int line = element->GetLineNum();
std::map<std::string, std::string> attributes = getAttributes( element ); std::map<std::string, std::string> attributes = getAttributes( element );
@ -13408,10 +13502,6 @@ void VulkanHppGenerator::readRequireEnum( tinyxml2::XMLElement const * element,
value = attribute.second; value = attribute.second;
} }
} }
if ( protect.empty() )
{
protect = getProtectFromPlatform( platform );
}
if ( extends.empty() ) if ( extends.empty() )
{ {
@ -13420,6 +13510,7 @@ void VulkanHppGenerator::readRequireEnum( tinyxml2::XMLElement const * element,
auto typeIt = m_types.find( name ); auto typeIt = m_types.find( name );
checkForError( typeIt != m_types.end(), line, "unknown required enum <" + name + ">" ); checkForError( typeIt != m_types.end(), line, "unknown required enum <" + name + ">" );
typeIt->second.requiredBy.insert( requiredBy ); typeIt->second.requiredBy.insert( requiredBy );
requireData.constants.push_back( name );
} }
else else
{ {
@ -13443,7 +13534,8 @@ void VulkanHppGenerator::readRequireEnum( tinyxml2::XMLElement const * element,
auto enumIt = m_enums.find( extends ); auto enumIt = m_enums.find( extends );
assert( enumIt != m_enums.end() ); assert( enumIt != m_enums.end() );
enumIt->second.addEnumValue( line, name, protect, bitpos + offset, value, ( api.empty() || ( api == m_api ) ) && supported ); enumIt->second.addEnumValue(
line, name, protect.empty() ? getProtectFromPlatform( platform ) : protect, bitpos + offset, value, ( api.empty() || ( api == m_api ) ) && supported );
} }
} }
} }

View File

@ -204,6 +204,7 @@ private:
{ {
std::vector<std::string> depends = {}; std::vector<std::string> depends = {};
std::vector<std::string> commands = {}; std::vector<std::string> commands = {};
std::vector<std::string> constants = {};
std::vector<std::string> types = {}; std::vector<std::string> types = {};
int xmlLine = {}; int xmlLine = {};
}; };
@ -940,7 +941,8 @@ private:
void readPlatforms( tinyxml2::XMLElement const * element ); void readPlatforms( tinyxml2::XMLElement const * element );
void readRegistry( tinyxml2::XMLElement const * element ); void readRegistry( tinyxml2::XMLElement const * element );
std::string readRequireCommand( tinyxml2::XMLElement const * element, std::string const & requiredBy ); std::string readRequireCommand( tinyxml2::XMLElement const * element, std::string const & requiredBy );
void readRequireEnum( tinyxml2::XMLElement const * element, std::string const & requiredBy, std::string const & platform, bool supported ); void readRequireEnum(
tinyxml2::XMLElement const * element, std::string const & requiredBy, std::string const & platform, bool supported, RequireData & requireData );
std::string readRequireType( tinyxml2::XMLElement const * element, std::string const & requiredBy ); std::string readRequireType( tinyxml2::XMLElement const * element, std::string const & requiredBy );
void readSPIRVCapability( tinyxml2::XMLElement const * element ); void readSPIRVCapability( tinyxml2::XMLElement const * element );
void readSPIRVCapabilityEnable( tinyxml2::XMLElement const * element ); void readSPIRVCapabilityEnable( tinyxml2::XMLElement const * element );

View File

@ -888,50 +888,94 @@ export namespace VULKAN_HPP_NAMESPACE
using VULKAN_HPP_NAMESPACE::ResultValue; using VULKAN_HPP_NAMESPACE::ResultValue;
using VULKAN_HPP_NAMESPACE::ResultValueType; using VULKAN_HPP_NAMESPACE::ResultValueType;
//========================================= //===========================
//=== CONSTEXPR CONSTANTs AND FUNCTIONs === //=== CONSTEXPR CONSTANTs ===
//========================================= //===========================
//=== VK_VERSION_1_0 ===
using VULKAN_HPP_NAMESPACE::AttachmentUnused;
using VULKAN_HPP_NAMESPACE::False;
using VULKAN_HPP_NAMESPACE::LodClampNone;
using VULKAN_HPP_NAMESPACE::MaxDescriptionSize;
using VULKAN_HPP_NAMESPACE::MaxExtensionNameSize;
using VULKAN_HPP_NAMESPACE::MaxMemoryHeaps;
using VULKAN_HPP_NAMESPACE::MaxMemoryTypes;
using VULKAN_HPP_NAMESPACE::MaxPhysicalDeviceNameSize;
using VULKAN_HPP_NAMESPACE::QueueFamilyIgnored;
using VULKAN_HPP_NAMESPACE::RemainingArrayLayers;
using VULKAN_HPP_NAMESPACE::RemainingMipLevels;
using VULKAN_HPP_NAMESPACE::SubpassExternal;
using VULKAN_HPP_NAMESPACE::True;
using VULKAN_HPP_NAMESPACE::UuidSize;
using VULKAN_HPP_NAMESPACE::WholeSize;
//=== VK_VERSION_1_1 ===
using VULKAN_HPP_NAMESPACE::LuidSize;
using VULKAN_HPP_NAMESPACE::MaxDeviceGroupSize;
using VULKAN_HPP_NAMESPACE::QueueFamilyExternal;
//=== VK_VERSION_1_2 ===
using VULKAN_HPP_NAMESPACE::MaxDriverInfoSize;
using VULKAN_HPP_NAMESPACE::MaxDriverNameSize;
//=== VK_KHR_device_group_creation ===
using VULKAN_HPP_NAMESPACE::MaxDeviceGroupSizeKhr;
//=== VK_KHR_external_memory_capabilities ===
using VULKAN_HPP_NAMESPACE::LuidSizeKhr;
//=== VK_KHR_external_memory ===
using VULKAN_HPP_NAMESPACE::QueueFamilyExternalKhr;
//=== VK_KHR_ray_tracing_pipeline ===
using VULKAN_HPP_NAMESPACE::ShaderUnusedKhr;
//=== VK_NV_ray_tracing ===
using VULKAN_HPP_NAMESPACE::ShaderUnusedNv;
//=== VK_KHR_global_priority ===
using VULKAN_HPP_NAMESPACE::MaxGlobalPrioritySizeKhr;
//=== VK_KHR_driver_properties ===
using VULKAN_HPP_NAMESPACE::MaxDriverInfoSizeKhr;
using VULKAN_HPP_NAMESPACE::MaxDriverNameSizeKhr;
//=== VK_EXT_global_priority_query ===
using VULKAN_HPP_NAMESPACE::MaxGlobalPrioritySizeExt;
//=== VK_EXT_image_sliced_view_of_3d ===
using VULKAN_HPP_NAMESPACE::Remaining3DSlicesExt;
//=== VK_EXT_shader_module_identifier ===
using VULKAN_HPP_NAMESPACE::MaxShaderModuleIdentifierSizeExt;
//========================
//=== CONSTEXPR VALUEs ===
//========================
using VULKAN_HPP_NAMESPACE::HeaderVersion;
//=========================
//=== CONSTEXPR CALLEEs ===
//=========================
using VULKAN_HPP_NAMESPACE::apiVersionMajor;
using VULKAN_HPP_NAMESPACE::apiVersionMinor;
using VULKAN_HPP_NAMESPACE::apiVersionPatch;
using VULKAN_HPP_NAMESPACE::apiVersionVariant;
using VULKAN_HPP_NAMESPACE::makeApiVersion;
using VULKAN_HPP_NAMESPACE::makeVersion;
using VULKAN_HPP_NAMESPACE::versionMajor;
using VULKAN_HPP_NAMESPACE::versionMinor;
using VULKAN_HPP_NAMESPACE::versionPatch;
//==========================
//=== CONSTEXPR CALLERSs ===
//==========================
using VULKAN_HPP_NAMESPACE::ApiVersion; using VULKAN_HPP_NAMESPACE::ApiVersion;
using VULKAN_HPP_NAMESPACE::ApiVersion10; using VULKAN_HPP_NAMESPACE::ApiVersion10;
using VULKAN_HPP_NAMESPACE::ApiVersion11; using VULKAN_HPP_NAMESPACE::ApiVersion11;
using VULKAN_HPP_NAMESPACE::ApiVersion12; using VULKAN_HPP_NAMESPACE::ApiVersion12;
using VULKAN_HPP_NAMESPACE::ApiVersion13; using VULKAN_HPP_NAMESPACE::ApiVersion13;
using VULKAN_HPP_NAMESPACE::apiVersionMajor;
using VULKAN_HPP_NAMESPACE::apiVersionMinor;
using VULKAN_HPP_NAMESPACE::apiVersionPatch;
using VULKAN_HPP_NAMESPACE::apiVersionVariant;
using VULKAN_HPP_NAMESPACE::AttachmentUnused;
using VULKAN_HPP_NAMESPACE::False;
using VULKAN_HPP_NAMESPACE::HeaderVersion;
using VULKAN_HPP_NAMESPACE::HeaderVersionComplete; using VULKAN_HPP_NAMESPACE::HeaderVersionComplete;
using VULKAN_HPP_NAMESPACE::LodClampNone;
using VULKAN_HPP_NAMESPACE::LuidSize;
using VULKAN_HPP_NAMESPACE::makeApiVersion;
using VULKAN_HPP_NAMESPACE::makeVersion;
using VULKAN_HPP_NAMESPACE::MaxDescriptionSize;
using VULKAN_HPP_NAMESPACE::MaxDeviceGroupSize;
using VULKAN_HPP_NAMESPACE::MaxDriverInfoSize;
using VULKAN_HPP_NAMESPACE::MaxDriverNameSize;
using VULKAN_HPP_NAMESPACE::MaxExtensionNameSize;
using VULKAN_HPP_NAMESPACE::MaxGlobalPrioritySizeKhr;
using VULKAN_HPP_NAMESPACE::MaxMemoryHeaps;
using VULKAN_HPP_NAMESPACE::MaxMemoryTypes;
using VULKAN_HPP_NAMESPACE::MaxPhysicalDeviceNameSize;
using VULKAN_HPP_NAMESPACE::MaxShaderModuleIdentifierSizeExt;
using VULKAN_HPP_NAMESPACE::QueueFamilyExternal;
using VULKAN_HPP_NAMESPACE::QueueFamilyForeignExt;
using VULKAN_HPP_NAMESPACE::QueueFamilyIgnored;
using VULKAN_HPP_NAMESPACE::Remaining3DSlicesExt;
using VULKAN_HPP_NAMESPACE::RemainingArrayLayers;
using VULKAN_HPP_NAMESPACE::RemainingMipLevels;
using VULKAN_HPP_NAMESPACE::ShaderUnusedKhr;
using VULKAN_HPP_NAMESPACE::SubpassExternal;
using VULKAN_HPP_NAMESPACE::True;
using VULKAN_HPP_NAMESPACE::UuidSize;
using VULKAN_HPP_NAMESPACE::versionMajor;
using VULKAN_HPP_NAMESPACE::versionMinor;
using VULKAN_HPP_NAMESPACE::versionPatch;
using VULKAN_HPP_NAMESPACE::WholeSize;
//=============== //===============
//=== STRUCTs === //=== STRUCTs ===

View File

@ -6976,36 +6976,75 @@ namespace VULKAN_HPP_NAMESPACE
#endif #endif
} }
//========================================= //===========================
//=== CONSTEXPR CONSTANTs AND FUNCTIONs === //=== CONSTEXPR CONSTANTs ===
//========================================= //===========================
//=== VK_VERSION_1_0 ===
VULKAN_HPP_CONSTEXPR_INLINE uint32_t AttachmentUnused = VK_ATTACHMENT_UNUSED; VULKAN_HPP_CONSTEXPR_INLINE uint32_t AttachmentUnused = VK_ATTACHMENT_UNUSED;
VULKAN_HPP_CONSTEXPR_INLINE uint32_t False = VK_FALSE; VULKAN_HPP_CONSTEXPR_INLINE uint32_t False = VK_FALSE;
VULKAN_HPP_CONSTEXPR_INLINE float LodClampNone = VK_LOD_CLAMP_NONE; VULKAN_HPP_CONSTEXPR_INLINE float LodClampNone = VK_LOD_CLAMP_NONE;
VULKAN_HPP_CONSTEXPR_INLINE uint32_t LuidSize = VK_LUID_SIZE;
VULKAN_HPP_CONSTEXPR_INLINE uint32_t MaxDescriptionSize = VK_MAX_DESCRIPTION_SIZE;
VULKAN_HPP_CONSTEXPR_INLINE uint32_t MaxDeviceGroupSize = VK_MAX_DEVICE_GROUP_SIZE;
VULKAN_HPP_CONSTEXPR_INLINE uint32_t MaxDriverInfoSize = VK_MAX_DRIVER_INFO_SIZE;
VULKAN_HPP_CONSTEXPR_INLINE uint32_t MaxDriverNameSize = VK_MAX_DRIVER_NAME_SIZE;
VULKAN_HPP_CONSTEXPR_INLINE uint32_t MaxExtensionNameSize = VK_MAX_EXTENSION_NAME_SIZE;
VULKAN_HPP_CONSTEXPR_INLINE uint32_t MaxGlobalPrioritySizeKhr = VK_MAX_GLOBAL_PRIORITY_SIZE_KHR;
VULKAN_HPP_CONSTEXPR_INLINE uint32_t MaxMemoryHeaps = VK_MAX_MEMORY_HEAPS;
VULKAN_HPP_CONSTEXPR_INLINE uint32_t MaxMemoryTypes = VK_MAX_MEMORY_TYPES;
VULKAN_HPP_CONSTEXPR_INLINE uint32_t MaxPhysicalDeviceNameSize = VK_MAX_PHYSICAL_DEVICE_NAME_SIZE;
VULKAN_HPP_CONSTEXPR_INLINE uint32_t MaxShaderModuleIdentifierSizeExt = VK_MAX_SHADER_MODULE_IDENTIFIER_SIZE_EXT;
VULKAN_HPP_CONSTEXPR_INLINE uint32_t QueueFamilyExternal = VK_QUEUE_FAMILY_EXTERNAL;
VULKAN_HPP_CONSTEXPR_INLINE uint32_t QueueFamilyForeignExt = VK_QUEUE_FAMILY_FOREIGN_EXT;
VULKAN_HPP_CONSTEXPR_INLINE uint32_t QueueFamilyIgnored = VK_QUEUE_FAMILY_IGNORED; VULKAN_HPP_CONSTEXPR_INLINE uint32_t QueueFamilyIgnored = VK_QUEUE_FAMILY_IGNORED;
VULKAN_HPP_CONSTEXPR_INLINE uint32_t Remaining3DSlicesExt = VK_REMAINING_3D_SLICES_EXT;
VULKAN_HPP_CONSTEXPR_INLINE uint32_t RemainingArrayLayers = VK_REMAINING_ARRAY_LAYERS; VULKAN_HPP_CONSTEXPR_INLINE uint32_t RemainingArrayLayers = VK_REMAINING_ARRAY_LAYERS;
VULKAN_HPP_CONSTEXPR_INLINE uint32_t RemainingMipLevels = VK_REMAINING_MIP_LEVELS; VULKAN_HPP_CONSTEXPR_INLINE uint32_t RemainingMipLevels = VK_REMAINING_MIP_LEVELS;
VULKAN_HPP_CONSTEXPR_INLINE uint32_t ShaderUnusedKhr = VK_SHADER_UNUSED_KHR;
VULKAN_HPP_CONSTEXPR_INLINE uint32_t SubpassExternal = VK_SUBPASS_EXTERNAL; VULKAN_HPP_CONSTEXPR_INLINE uint32_t SubpassExternal = VK_SUBPASS_EXTERNAL;
VULKAN_HPP_CONSTEXPR_INLINE uint32_t True = VK_TRUE; VULKAN_HPP_CONSTEXPR_INLINE uint32_t True = VK_TRUE;
VULKAN_HPP_CONSTEXPR_INLINE uint32_t UuidSize = VK_UUID_SIZE;
VULKAN_HPP_CONSTEXPR_INLINE uint64_t WholeSize = VK_WHOLE_SIZE; VULKAN_HPP_CONSTEXPR_INLINE uint64_t WholeSize = VK_WHOLE_SIZE;
VULKAN_HPP_CONSTEXPR_INLINE uint32_t MaxMemoryTypes = VK_MAX_MEMORY_TYPES;
VULKAN_HPP_CONSTEXPR_INLINE uint32_t MaxPhysicalDeviceNameSize = VK_MAX_PHYSICAL_DEVICE_NAME_SIZE;
VULKAN_HPP_CONSTEXPR_INLINE uint32_t UuidSize = VK_UUID_SIZE;
VULKAN_HPP_CONSTEXPR_INLINE uint32_t MaxExtensionNameSize = VK_MAX_EXTENSION_NAME_SIZE;
VULKAN_HPP_CONSTEXPR_INLINE uint32_t MaxDescriptionSize = VK_MAX_DESCRIPTION_SIZE;
VULKAN_HPP_CONSTEXPR_INLINE uint32_t MaxMemoryHeaps = VK_MAX_MEMORY_HEAPS;
//=== VK_VERSION_1_1 ===
VULKAN_HPP_CONSTEXPR_INLINE uint32_t MaxDeviceGroupSize = VK_MAX_DEVICE_GROUP_SIZE;
VULKAN_HPP_CONSTEXPR_INLINE uint32_t LuidSize = VK_LUID_SIZE;
VULKAN_HPP_CONSTEXPR_INLINE uint32_t QueueFamilyExternal = VK_QUEUE_FAMILY_EXTERNAL;
//=== VK_VERSION_1_2 ===
VULKAN_HPP_CONSTEXPR_INLINE uint32_t MaxDriverNameSize = VK_MAX_DRIVER_NAME_SIZE;
VULKAN_HPP_CONSTEXPR_INLINE uint32_t MaxDriverInfoSize = VK_MAX_DRIVER_INFO_SIZE;
//=== VK_KHR_device_group_creation ===
VULKAN_HPP_CONSTEXPR_INLINE uint32_t MaxDeviceGroupSizeKhr = VK_MAX_DEVICE_GROUP_SIZE_KHR;
//=== VK_KHR_external_memory_capabilities ===
VULKAN_HPP_CONSTEXPR_INLINE uint32_t LuidSizeKhr = VK_LUID_SIZE_KHR;
//=== VK_KHR_external_memory ===
VULKAN_HPP_CONSTEXPR_INLINE uint32_t QueueFamilyExternalKhr = VK_QUEUE_FAMILY_EXTERNAL_KHR;
//=== VK_KHR_ray_tracing_pipeline ===
VULKAN_HPP_CONSTEXPR_INLINE uint32_t ShaderUnusedKhr = VK_SHADER_UNUSED_KHR;
//=== VK_NV_ray_tracing ===
VULKAN_HPP_CONSTEXPR_INLINE uint32_t ShaderUnusedNv = VK_SHADER_UNUSED_NV;
//=== VK_KHR_global_priority ===
VULKAN_HPP_CONSTEXPR_INLINE uint32_t MaxGlobalPrioritySizeKhr = VK_MAX_GLOBAL_PRIORITY_SIZE_KHR;
//=== VK_KHR_driver_properties ===
VULKAN_HPP_CONSTEXPR_INLINE uint32_t MaxDriverNameSizeKhr = VK_MAX_DRIVER_NAME_SIZE_KHR;
VULKAN_HPP_CONSTEXPR_INLINE uint32_t MaxDriverInfoSizeKhr = VK_MAX_DRIVER_INFO_SIZE_KHR;
//=== VK_EXT_global_priority_query ===
VULKAN_HPP_CONSTEXPR_INLINE uint32_t MaxGlobalPrioritySizeExt = VK_MAX_GLOBAL_PRIORITY_SIZE_EXT;
//=== VK_EXT_image_sliced_view_of_3d ===
VULKAN_HPP_CONSTEXPR_INLINE uint32_t Remaining3DSlicesExt = VK_REMAINING_3D_SLICES_EXT;
//=== VK_EXT_shader_module_identifier ===
VULKAN_HPP_CONSTEXPR_INLINE uint32_t MaxShaderModuleIdentifierSizeExt = VK_MAX_SHADER_MODULE_IDENTIFIER_SIZE_EXT;
//========================
//=== CONSTEXPR VALUEs ===
//========================
VULKAN_HPP_CONSTEXPR_INLINE uint32_t HeaderVersion = VK_HEADER_VERSION; VULKAN_HPP_CONSTEXPR_INLINE uint32_t HeaderVersion = VK_HEADER_VERSION;
//=========================
//=== CONSTEXPR CALLEEs ===
//=========================
template <typename T, typename = typename std::enable_if<std::is_integral<T>::value>::type> template <typename T, typename = typename std::enable_if<std::is_integral<T>::value>::type>
VULKAN_HPP_CONSTEXPR uint32_t apiVersionMajor( T const version ) VULKAN_HPP_CONSTEXPR uint32_t apiVersionMajor( T const version )
{ {
@ -7064,6 +7103,9 @@ namespace VULKAN_HPP_NAMESPACE
return ( (uint32_t)(version)&0xFFFU ); return ( (uint32_t)(version)&0xFFFU );
} }
//=========================
//=== CONSTEXPR CALLERs ===
//=========================
VULKAN_HPP_CONSTEXPR_INLINE auto ApiVersion = makeApiVersion( 0, 1, 0, 0 ); VULKAN_HPP_CONSTEXPR_INLINE auto ApiVersion = makeApiVersion( 0, 1, 0, 0 );
VULKAN_HPP_CONSTEXPR_INLINE auto ApiVersion10 = makeApiVersion( 0, 1, 0, 0 ); VULKAN_HPP_CONSTEXPR_INLINE auto ApiVersion10 = makeApiVersion( 0, 1, 0, 0 );
VULKAN_HPP_CONSTEXPR_INLINE auto ApiVersion11 = makeApiVersion( 0, 1, 1, 0 ); VULKAN_HPP_CONSTEXPR_INLINE auto ApiVersion11 = makeApiVersion( 0, 1, 1, 0 );

View File

@ -462,50 +462,63 @@ export namespace VULKAN_HPP_NAMESPACE
using VULKAN_HPP_NAMESPACE::ResultValue; using VULKAN_HPP_NAMESPACE::ResultValue;
using VULKAN_HPP_NAMESPACE::ResultValueType; using VULKAN_HPP_NAMESPACE::ResultValueType;
//========================================= //===========================
//=== CONSTEXPR CONSTANTs AND FUNCTIONs === //=== CONSTEXPR CONSTANTs ===
//========================================= //===========================
//=== VK_VERSION_1_0 ===
using VULKAN_HPP_NAMESPACE::AttachmentUnused;
using VULKAN_HPP_NAMESPACE::False;
using VULKAN_HPP_NAMESPACE::LodClampNone;
using VULKAN_HPP_NAMESPACE::MaxDescriptionSize;
using VULKAN_HPP_NAMESPACE::MaxExtensionNameSize;
using VULKAN_HPP_NAMESPACE::MaxMemoryHeaps;
using VULKAN_HPP_NAMESPACE::MaxMemoryTypes;
using VULKAN_HPP_NAMESPACE::MaxPhysicalDeviceNameSize;
using VULKAN_HPP_NAMESPACE::QueueFamilyIgnored;
using VULKAN_HPP_NAMESPACE::RemainingArrayLayers;
using VULKAN_HPP_NAMESPACE::RemainingMipLevels;
using VULKAN_HPP_NAMESPACE::SubpassExternal;
using VULKAN_HPP_NAMESPACE::True;
using VULKAN_HPP_NAMESPACE::UuidSize;
using VULKAN_HPP_NAMESPACE::WholeSize;
//=== VK_VERSION_1_1 ===
using VULKAN_HPP_NAMESPACE::LuidSize;
using VULKAN_HPP_NAMESPACE::MaxDeviceGroupSize;
using VULKAN_HPP_NAMESPACE::QueueFamilyExternal;
//=== VK_VERSION_1_2 ===
using VULKAN_HPP_NAMESPACE::MaxDriverInfoSize;
using VULKAN_HPP_NAMESPACE::MaxDriverNameSize;
//========================
//=== CONSTEXPR VALUEs ===
//========================
using VULKAN_HPP_NAMESPACE::HeaderVersion;
//=========================
//=== CONSTEXPR CALLEEs ===
//=========================
using VULKAN_HPP_NAMESPACE::apiVersionMajor;
using VULKAN_HPP_NAMESPACE::apiVersionMinor;
using VULKAN_HPP_NAMESPACE::apiVersionPatch;
using VULKAN_HPP_NAMESPACE::apiVersionVariant;
using VULKAN_HPP_NAMESPACE::makeApiVersion;
using VULKAN_HPP_NAMESPACE::makeVersion;
using VULKAN_HPP_NAMESPACE::versionMajor;
using VULKAN_HPP_NAMESPACE::versionMinor;
using VULKAN_HPP_NAMESPACE::versionPatch;
//==========================
//=== CONSTEXPR CALLERSs ===
//==========================
using VULKAN_HPP_NAMESPACE::ApiVersion; using VULKAN_HPP_NAMESPACE::ApiVersion;
using VULKAN_HPP_NAMESPACE::ApiVersion10; using VULKAN_HPP_NAMESPACE::ApiVersion10;
using VULKAN_HPP_NAMESPACE::ApiVersion11; using VULKAN_HPP_NAMESPACE::ApiVersion11;
using VULKAN_HPP_NAMESPACE::ApiVersion12; using VULKAN_HPP_NAMESPACE::ApiVersion12;
using VULKAN_HPP_NAMESPACE::ApiVersion13; using VULKAN_HPP_NAMESPACE::ApiVersion13;
using VULKAN_HPP_NAMESPACE::apiVersionMajor;
using VULKAN_HPP_NAMESPACE::apiVersionMinor;
using VULKAN_HPP_NAMESPACE::apiVersionPatch;
using VULKAN_HPP_NAMESPACE::apiVersionVariant;
using VULKAN_HPP_NAMESPACE::AttachmentUnused;
using VULKAN_HPP_NAMESPACE::False;
using VULKAN_HPP_NAMESPACE::HeaderVersion;
using VULKAN_HPP_NAMESPACE::HeaderVersionComplete; using VULKAN_HPP_NAMESPACE::HeaderVersionComplete;
using VULKAN_HPP_NAMESPACE::LodClampNone;
using VULKAN_HPP_NAMESPACE::LuidSize;
using VULKAN_HPP_NAMESPACE::makeApiVersion;
using VULKAN_HPP_NAMESPACE::makeVersion;
using VULKAN_HPP_NAMESPACE::MaxDescriptionSize;
using VULKAN_HPP_NAMESPACE::MaxDeviceGroupSize;
using VULKAN_HPP_NAMESPACE::MaxDriverInfoSize;
using VULKAN_HPP_NAMESPACE::MaxDriverNameSize;
using VULKAN_HPP_NAMESPACE::MaxExtensionNameSize;
using VULKAN_HPP_NAMESPACE::MaxGlobalPrioritySizeKhr;
using VULKAN_HPP_NAMESPACE::MaxMemoryHeaps;
using VULKAN_HPP_NAMESPACE::MaxMemoryTypes;
using VULKAN_HPP_NAMESPACE::MaxPhysicalDeviceNameSize;
using VULKAN_HPP_NAMESPACE::MaxShaderModuleIdentifierSizeExt;
using VULKAN_HPP_NAMESPACE::QueueFamilyExternal;
using VULKAN_HPP_NAMESPACE::QueueFamilyForeignExt;
using VULKAN_HPP_NAMESPACE::QueueFamilyIgnored;
using VULKAN_HPP_NAMESPACE::Remaining3DSlicesExt;
using VULKAN_HPP_NAMESPACE::RemainingArrayLayers;
using VULKAN_HPP_NAMESPACE::RemainingMipLevels;
using VULKAN_HPP_NAMESPACE::ShaderUnusedKhr;
using VULKAN_HPP_NAMESPACE::SubpassExternal;
using VULKAN_HPP_NAMESPACE::True;
using VULKAN_HPP_NAMESPACE::UuidSize;
using VULKAN_HPP_NAMESPACE::versionMajor;
using VULKAN_HPP_NAMESPACE::versionMinor;
using VULKAN_HPP_NAMESPACE::versionPatch;
using VULKAN_HPP_NAMESPACE::WholeSize;
//=============== //===============
//=== STRUCTs === //=== STRUCTs ===

View File

@ -4325,36 +4325,44 @@ namespace VULKAN_HPP_NAMESPACE
#endif #endif
} }
//========================================= //===========================
//=== CONSTEXPR CONSTANTs AND FUNCTIONs === //=== CONSTEXPR CONSTANTs ===
//========================================= //===========================
//=== VK_VERSION_1_0 ===
VULKAN_HPP_CONSTEXPR_INLINE uint32_t AttachmentUnused = VK_ATTACHMENT_UNUSED; VULKAN_HPP_CONSTEXPR_INLINE uint32_t AttachmentUnused = VK_ATTACHMENT_UNUSED;
VULKAN_HPP_CONSTEXPR_INLINE uint32_t False = VK_FALSE; VULKAN_HPP_CONSTEXPR_INLINE uint32_t False = VK_FALSE;
VULKAN_HPP_CONSTEXPR_INLINE float LodClampNone = VK_LOD_CLAMP_NONE; VULKAN_HPP_CONSTEXPR_INLINE float LodClampNone = VK_LOD_CLAMP_NONE;
VULKAN_HPP_CONSTEXPR_INLINE uint32_t LuidSize = VK_LUID_SIZE;
VULKAN_HPP_CONSTEXPR_INLINE uint32_t MaxDescriptionSize = VK_MAX_DESCRIPTION_SIZE;
VULKAN_HPP_CONSTEXPR_INLINE uint32_t MaxDeviceGroupSize = VK_MAX_DEVICE_GROUP_SIZE;
VULKAN_HPP_CONSTEXPR_INLINE uint32_t MaxDriverInfoSize = VK_MAX_DRIVER_INFO_SIZE;
VULKAN_HPP_CONSTEXPR_INLINE uint32_t MaxDriverNameSize = VK_MAX_DRIVER_NAME_SIZE;
VULKAN_HPP_CONSTEXPR_INLINE uint32_t MaxExtensionNameSize = VK_MAX_EXTENSION_NAME_SIZE;
VULKAN_HPP_CONSTEXPR_INLINE uint32_t MaxGlobalPrioritySizeKhr = VK_MAX_GLOBAL_PRIORITY_SIZE_KHR;
VULKAN_HPP_CONSTEXPR_INLINE uint32_t MaxMemoryHeaps = VK_MAX_MEMORY_HEAPS;
VULKAN_HPP_CONSTEXPR_INLINE uint32_t MaxMemoryTypes = VK_MAX_MEMORY_TYPES;
VULKAN_HPP_CONSTEXPR_INLINE uint32_t MaxPhysicalDeviceNameSize = VK_MAX_PHYSICAL_DEVICE_NAME_SIZE;
VULKAN_HPP_CONSTEXPR_INLINE uint32_t MaxShaderModuleIdentifierSizeExt = VK_MAX_SHADER_MODULE_IDENTIFIER_SIZE_EXT;
VULKAN_HPP_CONSTEXPR_INLINE uint32_t QueueFamilyExternal = VK_QUEUE_FAMILY_EXTERNAL;
VULKAN_HPP_CONSTEXPR_INLINE uint32_t QueueFamilyForeignExt = VK_QUEUE_FAMILY_FOREIGN_EXT;
VULKAN_HPP_CONSTEXPR_INLINE uint32_t QueueFamilyIgnored = VK_QUEUE_FAMILY_IGNORED; VULKAN_HPP_CONSTEXPR_INLINE uint32_t QueueFamilyIgnored = VK_QUEUE_FAMILY_IGNORED;
VULKAN_HPP_CONSTEXPR_INLINE uint32_t Remaining3DSlicesExt = VK_REMAINING_3D_SLICES_EXT;
VULKAN_HPP_CONSTEXPR_INLINE uint32_t RemainingArrayLayers = VK_REMAINING_ARRAY_LAYERS; VULKAN_HPP_CONSTEXPR_INLINE uint32_t RemainingArrayLayers = VK_REMAINING_ARRAY_LAYERS;
VULKAN_HPP_CONSTEXPR_INLINE uint32_t RemainingMipLevels = VK_REMAINING_MIP_LEVELS; VULKAN_HPP_CONSTEXPR_INLINE uint32_t RemainingMipLevels = VK_REMAINING_MIP_LEVELS;
VULKAN_HPP_CONSTEXPR_INLINE uint32_t ShaderUnusedKhr = VK_SHADER_UNUSED_KHR;
VULKAN_HPP_CONSTEXPR_INLINE uint32_t SubpassExternal = VK_SUBPASS_EXTERNAL; VULKAN_HPP_CONSTEXPR_INLINE uint32_t SubpassExternal = VK_SUBPASS_EXTERNAL;
VULKAN_HPP_CONSTEXPR_INLINE uint32_t True = VK_TRUE; VULKAN_HPP_CONSTEXPR_INLINE uint32_t True = VK_TRUE;
VULKAN_HPP_CONSTEXPR_INLINE uint32_t UuidSize = VK_UUID_SIZE;
VULKAN_HPP_CONSTEXPR_INLINE uint64_t WholeSize = VK_WHOLE_SIZE; VULKAN_HPP_CONSTEXPR_INLINE uint64_t WholeSize = VK_WHOLE_SIZE;
VULKAN_HPP_CONSTEXPR_INLINE uint32_t MaxMemoryTypes = VK_MAX_MEMORY_TYPES;
VULKAN_HPP_CONSTEXPR_INLINE uint32_t MaxPhysicalDeviceNameSize = VK_MAX_PHYSICAL_DEVICE_NAME_SIZE;
VULKAN_HPP_CONSTEXPR_INLINE uint32_t UuidSize = VK_UUID_SIZE;
VULKAN_HPP_CONSTEXPR_INLINE uint32_t MaxExtensionNameSize = VK_MAX_EXTENSION_NAME_SIZE;
VULKAN_HPP_CONSTEXPR_INLINE uint32_t MaxDescriptionSize = VK_MAX_DESCRIPTION_SIZE;
VULKAN_HPP_CONSTEXPR_INLINE uint32_t MaxMemoryHeaps = VK_MAX_MEMORY_HEAPS;
//=== VK_VERSION_1_1 ===
VULKAN_HPP_CONSTEXPR_INLINE uint32_t MaxDeviceGroupSize = VK_MAX_DEVICE_GROUP_SIZE;
VULKAN_HPP_CONSTEXPR_INLINE uint32_t LuidSize = VK_LUID_SIZE;
VULKAN_HPP_CONSTEXPR_INLINE uint32_t QueueFamilyExternal = VK_QUEUE_FAMILY_EXTERNAL;
//=== VK_VERSION_1_2 ===
VULKAN_HPP_CONSTEXPR_INLINE uint32_t MaxDriverNameSize = VK_MAX_DRIVER_NAME_SIZE;
VULKAN_HPP_CONSTEXPR_INLINE uint32_t MaxDriverInfoSize = VK_MAX_DRIVER_INFO_SIZE;
//========================
//=== CONSTEXPR VALUEs ===
//========================
VULKAN_HPP_CONSTEXPR_INLINE uint32_t HeaderVersion = VK_HEADER_VERSION; VULKAN_HPP_CONSTEXPR_INLINE uint32_t HeaderVersion = VK_HEADER_VERSION;
//=========================
//=== CONSTEXPR CALLEEs ===
//=========================
template <typename T, typename = typename std::enable_if<std::is_integral<T>::value>::type> template <typename T, typename = typename std::enable_if<std::is_integral<T>::value>::type>
VULKAN_HPP_CONSTEXPR uint32_t apiVersionMajor( T const version ) VULKAN_HPP_CONSTEXPR uint32_t apiVersionMajor( T const version )
{ {
@ -4413,6 +4421,9 @@ namespace VULKAN_HPP_NAMESPACE
return ( (uint32_t)(version)&0xFFFU ); return ( (uint32_t)(version)&0xFFFU );
} }
//=========================
//=== CONSTEXPR CALLERs ===
//=========================
VULKAN_HPP_CONSTEXPR_INLINE auto ApiVersion = makeApiVersion( 0, 1, 0, 0 ); VULKAN_HPP_CONSTEXPR_INLINE auto ApiVersion = makeApiVersion( 0, 1, 0, 0 );
VULKAN_HPP_CONSTEXPR_INLINE auto ApiVersion10 = makeApiVersion( 0, 1, 0, 0 ); VULKAN_HPP_CONSTEXPR_INLINE auto ApiVersion10 = makeApiVersion( 0, 1, 0, 0 );
VULKAN_HPP_CONSTEXPR_INLINE auto ApiVersion11 = makeApiVersion( 0, 1, 1, 0 ); VULKAN_HPP_CONSTEXPR_INLINE auto ApiVersion11 = makeApiVersion( 0, 1, 1, 0 );