mirror of
https://github.com/KhronosGroup/Vulkan-Hpp
synced 2024-11-09 22:20:07 +00:00
Simplify handling of enum value aliases (#1838)
This commit is contained in:
parent
8c9901c072
commit
d111d68be8
@ -27,9 +27,11 @@ namespace
|
||||
{
|
||||
std::vector<std::pair<std::string, size_t>> filterNumbers( std::vector<std::string> const & names );
|
||||
template <typename T>
|
||||
typename std::vector<std::pair<std::string, T>>::const_iterator find( std::vector<std::pair<std::string, T>> const & values, std::string const & name );
|
||||
typename std::vector<T>::iterator findByName( std::vector<T> & values, std::string const & name );
|
||||
template <typename T>
|
||||
typename std::vector<std::pair<std::string, T>>::iterator find( std::vector<std::pair<std::string, T>> & values, std::string const & name );
|
||||
typename std::vector<T>::const_iterator findByNameOrAlias( std::vector<T> const & values, std::string const & name );
|
||||
template <typename T>
|
||||
typename std::vector<T>::iterator findByNameOrAlias( std::vector<T> & values, std::string const & name );
|
||||
std::string generateCArraySizes( std::vector<std::string> const & sizes );
|
||||
std::string generateList( std::vector<std::string> const & elements, std::string const & prefix, std::string const & separator );
|
||||
std::string generateNamespacedType( std::string const & type );
|
||||
@ -63,7 +65,6 @@ VulkanHppGenerator::VulkanHppGenerator( tinyxml2::XMLDocument const & document,
|
||||
checkForError( elements.size() == 1, line, "encountered " + std::to_string( elements.size() ) + " elements named <registry> but only one is allowed" );
|
||||
readRegistry( elements[0] );
|
||||
filterLenMembers();
|
||||
fixEnumValueIssues();
|
||||
checkCorrectness();
|
||||
handleRemovals();
|
||||
|
||||
@ -1124,19 +1125,20 @@ void VulkanHppGenerator::checkCommandCorrectness() const
|
||||
std::set<std::string> resultCodes;
|
||||
for ( auto rc : resultIt->second.values )
|
||||
{
|
||||
resultCodes.insert( rc.first );
|
||||
for ( auto ac : rc.second.aliases )
|
||||
resultCodes.insert( rc.name );
|
||||
for ( auto ac : rc.aliases )
|
||||
{
|
||||
resultCodes.insert( ac.first );
|
||||
}
|
||||
}
|
||||
for ( auto rc : resultIt->second.unsupportedValues )
|
||||
// some special handling needed for vulkansc!!
|
||||
if ( m_api == "vulkansc" )
|
||||
{
|
||||
resultCodes.insert( rc.first );
|
||||
for ( auto ac : rc.second.aliases )
|
||||
{
|
||||
resultCodes.insert( ac.first );
|
||||
}
|
||||
resultCodes.insert( { "VK_ERROR_FRAGMENTATION_EXT",
|
||||
"VK_ERROR_INVALID_EXTERNAL_HANDLE_KHR",
|
||||
"VK_ERROR_INVALID_OPAQUE_CAPTURE_ADDRESS_KHR",
|
||||
"VK_ERROR_NOT_PERMITTED_EXT",
|
||||
"VK_PIPELINE_COMPILE_REQUIRED_EXT" } );
|
||||
}
|
||||
|
||||
// command checks
|
||||
@ -1215,19 +1217,6 @@ void VulkanHppGenerator::checkEnumCorrectness() const
|
||||
auto typeIt = m_types.find( e.first );
|
||||
assert( typeIt != m_types.end() );
|
||||
checkForWarning( !typeIt->second.requiredBy.empty(), e.second.xmlLine, "enum <" + e.first + "> not required in any feature or extension" );
|
||||
|
||||
// check that each enum value actually is specified (and not only listed as an alias)
|
||||
for ( auto const & evd : e.second.values )
|
||||
{
|
||||
if ( evd.second.xmlLine == -1 )
|
||||
{
|
||||
assert( !evd.second.aliases.empty() );
|
||||
checkForError( false,
|
||||
evd.second.aliases.begin()->second,
|
||||
"enum alias value <" + evd.second.aliases.begin()->first + "> is listed as an alias of enum value <" + evd.first +
|
||||
"> but that value has never been listed" );
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// enum checks by features and extensions
|
||||
@ -1251,10 +1240,12 @@ void VulkanHppGenerator::checkEnumCorrectness() const
|
||||
{
|
||||
auto enumIt = m_enums.find( "VkFormat" );
|
||||
assert( enumIt != m_enums.end() );
|
||||
assert( enumIt->second.values.front().first == "VK_FORMAT_UNDEFINED" );
|
||||
assert( enumIt->second.values.front().name == "VK_FORMAT_UNDEFINED" );
|
||||
for ( auto enumValueIt = std::next( enumIt->second.values.begin() ); enumValueIt != enumIt->second.values.end(); ++enumValueIt )
|
||||
{
|
||||
checkForError( m_formats.contains( enumValueIt->first ), enumValueIt->second.xmlLine, "missing format specification for <" + enumValueIt->first + ">" );
|
||||
checkForError( !enumValueIt->supported || m_formats.contains( enumValueIt->name ),
|
||||
enumValueIt->xmlLine,
|
||||
"missing format specification for <" + enumValueIt->name + ">" );
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -1454,14 +1445,14 @@ void VulkanHppGenerator::checkHandleCorrectness() const
|
||||
// check that all specified objectType values are used with a handle type
|
||||
for ( auto const & objectTypeValue : objectTypeIt->second.values )
|
||||
{
|
||||
if ( objectTypeValue.first != "VK_OBJECT_TYPE_UNKNOWN" )
|
||||
if ( objectTypeValue.name != "VK_OBJECT_TYPE_UNKNOWN" )
|
||||
{
|
||||
checkForError( std::any_of( m_handles.begin(),
|
||||
m_handles.end(),
|
||||
[&objectTypeValue]( std::pair<std::string, HandleData> const & hd )
|
||||
{ return hd.second.objTypeEnum == objectTypeValue.first; } ),
|
||||
objectTypeValue.second.xmlLine,
|
||||
"VkObjectType value <" + objectTypeValue.first + "> not specified as \"objtypeenum\" for any handle" );
|
||||
{ return hd.second.objTypeEnum == objectTypeValue.name; } ),
|
||||
objectTypeValue.xmlLine,
|
||||
"VkObjectType value <" + objectTypeValue.name + "> not specified as \"objtypeenum\" for any handle" );
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -1503,14 +1494,15 @@ void VulkanHppGenerator::checkStructCorrectness() const
|
||||
"VK_STRUCTURE_TYPE_PRIVATE_VENDOR_INFO_PLACEHOLDER_OFFSET_0_NV" };
|
||||
for ( auto const & enumValue : structureTypeIt->second.values )
|
||||
{
|
||||
if ( reservedValues.contains( enumValue.first ) )
|
||||
if ( reservedValues.contains( enumValue.name ) )
|
||||
{
|
||||
checkForError(
|
||||
!sTypeValues.contains( enumValue.first ), enumValue.second.xmlLine, "Reserved VkStructureType enum value <" + enumValue.first + "> is used" );
|
||||
checkForError( !sTypeValues.contains( enumValue.name ), enumValue.xmlLine, "Reserved VkStructureType enum value <" + enumValue.name + "> is used" );
|
||||
}
|
||||
else
|
||||
{
|
||||
checkForWarning( sTypeValues.erase( enumValue.first ) == 1, enumValue.second.xmlLine, "VkStructureType enum value <" + enumValue.first + "> never used" );
|
||||
checkForWarning( !enumValue.supported || ( sTypeValues.erase( enumValue.name ) == 1 ),
|
||||
enumValue.xmlLine,
|
||||
"VkStructureType enum value <" + enumValue.name + "> never used" );
|
||||
}
|
||||
}
|
||||
assert( sTypeValues.empty() );
|
||||
@ -1551,7 +1543,7 @@ void VulkanHppGenerator::checkStructMemberCorrectness( std::string const &
|
||||
assert( !unionMember.selection.empty() );
|
||||
for ( auto const & selection : unionMember.selection )
|
||||
{
|
||||
checkForError( contains( selectorEnumIt->second.values, selection ) || selectorEnumIt->second.unsupportedValues.contains( selection ),
|
||||
checkForError( contains( selectorEnumIt->second.values, selection ),
|
||||
unionMember.xmlLine,
|
||||
"union member <" + unionMember.name + "> uses selection <" + selection + "> that is not part of the selector type <" +
|
||||
selectorIt->type.type + ">" );
|
||||
@ -1665,9 +1657,10 @@ std::string VulkanHppGenerator::combineDataTypes( std::map<size_t, VectorParamDa
|
||||
return combinedType;
|
||||
}
|
||||
|
||||
bool VulkanHppGenerator::contains( std::vector<EnumValue> const & enumValues, std::string const & name ) const
|
||||
bool VulkanHppGenerator::contains( std::vector<EnumValueData> const & enumValues, std::string const & name ) const
|
||||
{
|
||||
return std::any_of( enumValues.begin(), enumValues.end(), [&name]( EnumValue const & ev ) { return ev.first == name; } );
|
||||
return std::any_of(
|
||||
enumValues.begin(), enumValues.end(), [&name]( EnumValueData const & ev ) { return ( ev.name == name ) || ev.aliases.contains( name ); } );
|
||||
}
|
||||
|
||||
bool VulkanHppGenerator::containsArray( std::string const & type ) const
|
||||
@ -2091,6 +2084,35 @@ std::set<size_t> VulkanHppGenerator::determineVoidPointerParams( std::vector<Par
|
||||
return voidPointerParams;
|
||||
}
|
||||
|
||||
void VulkanHppGenerator::distributeEnumValueAliases()
|
||||
{
|
||||
for ( auto & e : m_enums )
|
||||
{
|
||||
for ( auto & a : e.second.valueAliases )
|
||||
{
|
||||
auto valueIt = findByName( e.second.values, a.alias );
|
||||
if ( valueIt == e.second.values.end() )
|
||||
{
|
||||
auto aliasIt = findByName( e.second.valueAliases, a.alias );
|
||||
checkForError(
|
||||
aliasIt != e.second.valueAliases.end(), a.xmlLine, "enum value alias <" + a.name + "> aliases non-existent enum value <" + a.alias + ">" );
|
||||
valueIt = findByName( e.second.values, aliasIt->alias );
|
||||
}
|
||||
checkForError( valueIt != e.second.values.end(), a.xmlLine, "enum value alias <" + a.name + "> aliases non-existent enum value <" + a.alias + ">" );
|
||||
if ( a.supported && valueIt->supported )
|
||||
{
|
||||
// only supported enum values need to be kept!
|
||||
checkForError(
|
||||
a.protect == valueIt->protect, a.xmlLine, "enum value alias <" + a.name + "> aliases enum value <" + a.alias + "> with different properties" );
|
||||
checkForError( valueIt->aliases.insert( { a.name, a.xmlLine } ).second,
|
||||
a.xmlLine,
|
||||
"enum value alias <" + a.name + "> already contained as alias for enum value <" + a.alias + ">" );
|
||||
}
|
||||
}
|
||||
e.second.valueAliases.clear();
|
||||
}
|
||||
}
|
||||
|
||||
void VulkanHppGenerator::distributeSecondLevelCommands( std::set<std::string> const & specialFunctions )
|
||||
{
|
||||
// distribute commands from instance/device to second-level handles, like Queue, Event,... for RAII handles
|
||||
@ -2177,26 +2199,6 @@ std::string VulkanHppGenerator::findBaseName( std::string aliasName, std::map<st
|
||||
return baseName;
|
||||
}
|
||||
|
||||
VulkanHppGenerator::EnumValueData const * VulkanHppGenerator::findEnumValueData( std::map<std::string, EnumData>::const_iterator enumIt,
|
||||
std::string const & name ) const
|
||||
{
|
||||
EnumValueData const * evdPtr = nullptr;
|
||||
auto evIt = find( enumIt->second.values, name );
|
||||
if ( evIt == enumIt->second.values.end() )
|
||||
{
|
||||
auto uvIt = enumIt->second.unsupportedValues.find( name );
|
||||
if ( uvIt != enumIt->second.unsupportedValues.end() )
|
||||
{
|
||||
evdPtr = &uvIt->second;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
evdPtr = &evIt->second;
|
||||
}
|
||||
return evdPtr;
|
||||
}
|
||||
|
||||
std::vector<VulkanHppGenerator::FeatureData>::const_iterator VulkanHppGenerator::findFeature( std::string const & name ) const
|
||||
{
|
||||
return std::find_if( m_features.begin(), m_features.end(), [&name]( FeatureData const & fd ) { return fd.name == name; } );
|
||||
@ -2232,31 +2234,6 @@ std::string VulkanHppGenerator::findTag( std::string const & name, std::string c
|
||||
return ( tagIt != m_tags.end() ) ? tagIt->first : "";
|
||||
}
|
||||
|
||||
void VulkanHppGenerator::fixEnumValueIssues()
|
||||
{
|
||||
for ( auto & e : m_enums )
|
||||
{
|
||||
// fix enum values that are only listed as an alias, but actually are listed as an unsupported value
|
||||
for ( auto & evd : e.second.values )
|
||||
{
|
||||
if ( evd.second.xmlLine == -1 )
|
||||
{
|
||||
assert( !evd.second.aliases.empty() );
|
||||
auto unsupportedIt = e.second.unsupportedValues.find( evd.first );
|
||||
if ( unsupportedIt != e.second.unsupportedValues.end() )
|
||||
{
|
||||
assert( unsupportedIt->second.aliases.empty() );
|
||||
// "fix" this, by moving that unsupported enum over to the supported
|
||||
auto aliases = evd.second.aliases;
|
||||
evd.second = unsupportedIt->second;
|
||||
evd.second.aliases = aliases;
|
||||
e.second.unsupportedValues.erase( unsupportedIt );
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
std::pair<std::string, std::string> VulkanHppGenerator::generateAllocatorTemplates( std::vector<size_t> const & returnParams,
|
||||
std::vector<std::string> const & returnDataTypes,
|
||||
std::map<size_t, VectorParamData> const & vectorParams,
|
||||
@ -2555,7 +2532,8 @@ std::string VulkanHppGenerator::generateBitmask( std::map<std::string, BitmaskDa
|
||||
( aliasBitmaskIt == m_bitmaskAliases.end() ) ? "" : ( " using " + stripPrefix( aliasBitmaskIt->first, "Vk" ) + " = " + bitmaskName + ";\n" );
|
||||
|
||||
std::string allFlags;
|
||||
if ( bitmaskBitsIt->second.values.empty() )
|
||||
if ( bitmaskBitsIt->second.values.empty() ||
|
||||
std::none_of( bitmaskBitsIt->second.values.begin(), bitmaskBitsIt->second.values.end(), []( auto const & evd ) { return evd.supported; } ) )
|
||||
{
|
||||
allFlags = " {};";
|
||||
}
|
||||
@ -2564,27 +2542,29 @@ std::string VulkanHppGenerator::generateBitmask( std::map<std::string, BitmaskDa
|
||||
bool encounteredFlag = false;
|
||||
std::string previousEnter, previousLeave;
|
||||
for ( auto const & value : bitmaskBitsIt->second.values )
|
||||
{
|
||||
if ( value.supported )
|
||||
{
|
||||
// if the value's protect differs from the surrounding protect, generate protection code
|
||||
std::string enter, leave;
|
||||
if ( !value.second.protect.empty() && ( value.second.protect != surroundingProtect ) )
|
||||
if ( !value.protect.empty() && ( value.protect != surroundingProtect ) )
|
||||
{
|
||||
tie( enter, leave ) = generateProtection( value.second.protect );
|
||||
tie( enter, leave ) = generateProtection( value.protect );
|
||||
}
|
||||
std::string valueName = generateEnumValueName( bitmaskBitsIt->first, value.first, true );
|
||||
allFlags +=
|
||||
( ( previousEnter != enter ) ? ( "\n" + previousLeave + enter ) : "\n" ) + " " + ( encounteredFlag ? "| " : " " ) + enumName + "::" + valueName;
|
||||
std::string valueName = generateEnumValueName( bitmaskBitsIt->first, value.name, true );
|
||||
allFlags += ( ( previousEnter != enter ) ? ( "\n" + previousLeave + enter ) : "\n" ) + " " + ( encounteredFlag ? "| " : " " ) + enumName +
|
||||
"::" + valueName;
|
||||
encounteredFlag = true;
|
||||
previousEnter = enter;
|
||||
previousLeave = leave;
|
||||
}
|
||||
}
|
||||
if ( !previousLeave.empty() )
|
||||
{
|
||||
allFlags += "\n" + previousLeave;
|
||||
}
|
||||
allFlags += ";";
|
||||
}
|
||||
|
||||
static const std::string bitmaskTemplate = R"(
|
||||
using ${bitmaskName} = Flags<${enumName}>;
|
||||
${alias}
|
||||
@ -2652,7 +2632,8 @@ std::string VulkanHppGenerator::generateBitmaskToString( std::map<std::string, B
|
||||
std::string enumName = stripPrefix( bitmaskBitsIt->first, "Vk" );
|
||||
|
||||
std::string str;
|
||||
if ( bitmaskBitsIt->second.values.empty() )
|
||||
if ( bitmaskBitsIt->second.values.empty() ||
|
||||
std::none_of( bitmaskBitsIt->second.values.begin(), bitmaskBitsIt->second.values.end(), []( auto const & evd ) { return evd.supported; } ) )
|
||||
{
|
||||
static std::string bitmaskToStringTemplate = R"(
|
||||
VULKAN_HPP_INLINE std::string to_string( ${bitmaskName} )
|
||||
@ -2681,21 +2662,24 @@ ${toStringChecks}
|
||||
std::string previousEnter, previousLeave;
|
||||
for ( auto const & value : bitmaskBitsIt->second.values )
|
||||
{
|
||||
std::string valueName = generateEnumValueName( bitmaskBitsIt->first, value.first, true );
|
||||
if ( value.second.value == "0" )
|
||||
if ( value.supported )
|
||||
{
|
||||
std::string valueName = generateEnumValueName( bitmaskBitsIt->first, value.name, true );
|
||||
if ( value.value == "0" )
|
||||
{
|
||||
assert( emptyValue == "{}" );
|
||||
emptyValue = valueName.substr( 1 );
|
||||
}
|
||||
else if ( !value.second.bitpos.empty() )
|
||||
else if ( !value.bitpos.empty() )
|
||||
{
|
||||
const auto [enter, leave] = generateProtection( value.second.protect );
|
||||
const auto [enter, leave] = generateProtection( value.protect );
|
||||
toStringChecks += ( ( previousEnter != enter ) ? ( previousLeave + enter ) : "" ) + " if ( value & " + enumName + "::" + valueName +
|
||||
" ) result += \"" + valueName.substr( 1 ) + " | \";\n";
|
||||
previousEnter = enter;
|
||||
previousLeave = leave;
|
||||
}
|
||||
}
|
||||
}
|
||||
if ( !previousLeave.empty() )
|
||||
{
|
||||
assert( previousLeave.ends_with( "\n" ) );
|
||||
@ -5669,13 +5653,13 @@ std::string VulkanHppGenerator::generateCppModuleUsings() const
|
||||
auto const & [name, data] = *m_enums.find( "VkResult" );
|
||||
for ( auto const & value : data.values )
|
||||
{
|
||||
if ( value.first.starts_with( "VK_ERROR" ) )
|
||||
if ( value.supported && value.name.starts_with( "VK_ERROR" ) )
|
||||
{
|
||||
auto [enter, leave] = generateProtection( value.second.protect );
|
||||
auto [enter, leave] = generateProtection( value.protect );
|
||||
enter = enter.empty() ? enter : "\n" + enter;
|
||||
leave = leave.empty() ? leave : leave + "\n";
|
||||
|
||||
auto const valueName = generateEnumValueName( name, value.first, false );
|
||||
auto const valueName = generateEnumValueName( name, value.name, false );
|
||||
auto const className = stripPrefix( valueName, "eError" ) + "Error";
|
||||
|
||||
resultExceptionsUsings += enter + replaceWithMap( usingTemplate, { { "className", className } } ) + leave;
|
||||
@ -6597,24 +6581,26 @@ std::string VulkanHppGenerator::generateEnum( std::pair<std::string, EnumData> c
|
||||
std::map<std::string, std::string> valueToNameMap;
|
||||
for ( auto const & value : enumData.second.values )
|
||||
{
|
||||
std::string valueName = generateEnumValueName( enumData.first, value.first, enumData.second.isBitmask );
|
||||
checkForError( valueToNameMap.insert( { valueName, value.first } ).second,
|
||||
value.second.xmlLine,
|
||||
if ( value.supported )
|
||||
{
|
||||
std::string valueName = generateEnumValueName( enumData.first, value.name, enumData.second.isBitmask );
|
||||
checkForError( valueToNameMap.insert( { valueName, value.name } ).second,
|
||||
value.xmlLine,
|
||||
"generated enum value name <" + valueName + "> already listed for enum <" + enumData.first + ">" );
|
||||
|
||||
// if the value's protect differs from the surrounding protect, generate protection code
|
||||
std::string enter, leave;
|
||||
if ( !value.second.protect.empty() && ( value.second.protect != surroundingProtect ) )
|
||||
if ( !value.protect.empty() && ( value.protect != surroundingProtect ) )
|
||||
{
|
||||
tie( enter, leave ) = generateProtection( value.second.protect );
|
||||
tie( enter, leave ) = generateProtection( value.protect );
|
||||
}
|
||||
if ( previousEnter != enter )
|
||||
{
|
||||
enumValues += previousLeave + enter;
|
||||
}
|
||||
enumValues += " " + valueName + " = " + value.first + ",\n";
|
||||
enumValues += " " + valueName + " = " + value.name + ",\n";
|
||||
|
||||
for ( auto const & alias : value.second.aliases )
|
||||
for ( auto const & alias : value.aliases )
|
||||
{
|
||||
std::string enumName = enumData.first;
|
||||
auto aliasIt = std::find_if( m_enumAliases.begin(), m_enumAliases.end(), [&enumData]( auto const & ad ) { return ad.second.name == enumData.first; } );
|
||||
@ -6641,7 +6627,7 @@ std::string VulkanHppGenerator::generateEnum( std::pair<std::string, EnumData> c
|
||||
{
|
||||
// some aliases are so close to the original, that no new entry can be generated!
|
||||
assert( mapIt->second != alias.first );
|
||||
checkForError( ( mapIt->second == value.first ) || value.second.aliases.contains( mapIt->second ),
|
||||
checkForError( ( mapIt->second == value.name ) || value.aliases.contains( mapIt->second ),
|
||||
alias.second,
|
||||
"generated enum alias value name <" + aliasName + ">, generated from <" + alias.first +
|
||||
"> is already generated from different enum value <" + mapIt->second + ">" );
|
||||
@ -6651,6 +6637,7 @@ std::string VulkanHppGenerator::generateEnum( std::pair<std::string, EnumData> c
|
||||
previousEnter = enter;
|
||||
previousLeave = leave;
|
||||
}
|
||||
}
|
||||
enumValues += previousLeave;
|
||||
|
||||
if ( !enumValues.empty() )
|
||||
@ -6784,12 +6771,12 @@ std::string VulkanHppGenerator::generateEnumsToString( std::vector<RequireData>
|
||||
|
||||
std::string VulkanHppGenerator::generateEnumInitializer( TypeInfo const & type,
|
||||
std::vector<std::string> const & arraySizes,
|
||||
std::vector<EnumValue> const & values,
|
||||
std::vector<EnumValueData> const & values,
|
||||
bool bitmask ) const
|
||||
{
|
||||
// enum arguments might need special initialization
|
||||
assert( type.prefix.empty() && !values.empty() );
|
||||
std::string valueName = generateEnumValueName( type.type, values.front().first, bitmask );
|
||||
std::string valueName = generateEnumValueName( type.type, values.front().name, bitmask );
|
||||
std::string value = generateNamespacedType( type.type ) + "::" + valueName;
|
||||
std::string str;
|
||||
if ( arraySizes.empty() )
|
||||
@ -6816,7 +6803,9 @@ std::string VulkanHppGenerator::generateEnumToString( std::pair<std::string, Enu
|
||||
{
|
||||
std::string enumName = stripPrefix( enumData.first, "Vk" );
|
||||
std::string functionBody;
|
||||
if ( enumData.second.values.empty() )
|
||||
bool isEmpty = enumData.second.values.empty() ||
|
||||
std::none_of( enumData.second.values.begin(), enumData.second.values.end(), []( auto const & evd ) { return evd.supported; } );
|
||||
if ( isEmpty )
|
||||
{
|
||||
functionBody = R"x( return "(void)";)x";
|
||||
}
|
||||
@ -6825,7 +6814,9 @@ std::string VulkanHppGenerator::generateEnumToString( std::pair<std::string, Enu
|
||||
std::string cases, previousEnter, previousLeave;
|
||||
for ( auto const & value : enumData.second.values )
|
||||
{
|
||||
const auto [enter, leave] = generateProtection( value.second.protect );
|
||||
if ( value.supported )
|
||||
{
|
||||
const auto [enter, leave] = generateProtection( value.protect );
|
||||
if ( previousEnter != enter )
|
||||
{
|
||||
cases += previousLeave + enter;
|
||||
@ -6835,11 +6826,12 @@ std::string VulkanHppGenerator::generateEnumToString( std::pair<std::string, Enu
|
||||
)";
|
||||
cases += replaceWithMap(
|
||||
caseTemplate,
|
||||
{ { "enumName", enumName }, { "valueName", generateEnumValueName( enumData.first, value.first, enumData.second.isBitmask ).substr( 1 ) } } );
|
||||
{ { "enumName", enumName }, { "valueName", generateEnumValueName( enumData.first, value.name, enumData.second.isBitmask ).substr( 1 ) } } );
|
||||
|
||||
previousEnter = enter;
|
||||
previousLeave = leave;
|
||||
}
|
||||
}
|
||||
cases += previousLeave;
|
||||
|
||||
const std::string functionBodyTemplate =
|
||||
@ -6859,8 +6851,7 @@ ${functionBody}
|
||||
}
|
||||
)";
|
||||
|
||||
return replaceWithMap( enumToStringTemplate,
|
||||
{ { "argument", enumData.second.values.empty() ? "" : " value" }, { "enumName", enumName }, { "functionBody", functionBody } } );
|
||||
return replaceWithMap( enumToStringTemplate, { { "argument", isEmpty ? "" : " value" }, { "enumName", enumName }, { "functionBody", functionBody } } );
|
||||
}
|
||||
|
||||
std::pair<std::string, std::string> VulkanHppGenerator::generateEnumSuffixes( std::string const & name, bool bitmask ) const
|
||||
@ -7321,14 +7312,16 @@ ${texelsPerBlockCases}
|
||||
|
||||
auto formatIt = m_enums.find( "VkFormat" );
|
||||
assert( formatIt != m_enums.end() );
|
||||
assert( formatIt->second.values.front().first == "VK_FORMAT_UNDEFINED" );
|
||||
assert( formatIt->second.values.front().name == "VK_FORMAT_UNDEFINED" );
|
||||
|
||||
std::string blockSizeCases, blockExtentCases, classCases, componentBitsCases, componentCountCases, componentNameCases, componentNumericFormatCases,
|
||||
componentPlaneIndexCases, componentsAreCompressedCases, compressionSchemeCases, packedCases, planeCompatibleCases, planeCountCases, planeHeightDivisorCases,
|
||||
planeWidthDivisorCases, texelsPerBlockCases;
|
||||
for ( auto formatValuesIt = std::next( formatIt->second.values.begin() ); formatValuesIt != formatIt->second.values.end(); ++formatValuesIt )
|
||||
{
|
||||
auto traitIt = m_formats.find( formatValuesIt->first );
|
||||
if ( formatValuesIt->supported )
|
||||
{
|
||||
auto traitIt = m_formats.find( formatValuesIt->name );
|
||||
assert( traitIt != m_formats.end() );
|
||||
std::string caseString = " case VULKAN_HPP_NAMESPACE::Format::" + generateEnumValueName( "VkFormat", traitIt->first, false ) + ":";
|
||||
|
||||
@ -7465,7 +7458,8 @@ ${widthDivisorCases}
|
||||
for ( size_t i = 0; i < traitIt->second.planes.size(); ++i )
|
||||
{
|
||||
compatibleCases += " case " + std::to_string( i ) +
|
||||
": return VULKAN_HPP_NAMESPACE::Format::" + generateEnumValueName( "VkFormat", traitIt->second.planes[i].compatible, false ) + ";\n";
|
||||
": return VULKAN_HPP_NAMESPACE::Format::" + generateEnumValueName( "VkFormat", traitIt->second.planes[i].compatible, false ) +
|
||||
";\n";
|
||||
heightDivisorCases += " case " + std::to_string( i ) + ": return " + traitIt->second.planes[i].heightDivisor + ";\n";
|
||||
widthDivisorCases += " case " + std::to_string( i ) + ": return " + traitIt->second.planes[i].widthDivisor + ";\n";
|
||||
}
|
||||
@ -7485,6 +7479,7 @@ ${widthDivisorCases}
|
||||
|
||||
texelsPerBlockCases += caseString + " return " + traitIt->second.texelsPerBlock + ";\n";
|
||||
}
|
||||
}
|
||||
|
||||
return replaceWithMap( formatTraitsTemplate,
|
||||
{ { "blockExtentCases", blockExtentCases },
|
||||
@ -7911,10 +7906,10 @@ ${indexTypeTraits}
|
||||
std::string indexTypeTraits;
|
||||
for ( auto const & value : indexType->second.values )
|
||||
{
|
||||
assert( value.first.starts_with( "VK_INDEX_TYPE_UINT" ) || value.first.starts_with( "VK_INDEX_TYPE_NONE" ) );
|
||||
if ( value.first.starts_with( "VK_INDEX_TYPE_UINT" ) )
|
||||
assert( value.name.starts_with( "VK_INDEX_TYPE_UINT" ) || value.name.starts_with( "VK_INDEX_TYPE_NONE" ) );
|
||||
if ( value.name.starts_with( "VK_INDEX_TYPE_UINT" ) )
|
||||
{
|
||||
std::string valueName = generateEnumValueName( indexType->first, value.first, false );
|
||||
std::string valueName = generateEnumValueName( indexType->first, value.name, false );
|
||||
assert( valueName.starts_with( "eUint" ) );
|
||||
auto beginDigit = valueName.begin() + strlen( "eUint" );
|
||||
assert( isdigit( *beginDigit ) );
|
||||
@ -9876,10 +9871,10 @@ ${leave})";
|
||||
auto enumIt = m_enums.find( "VkResult" );
|
||||
for ( auto const & value : enumIt->second.values )
|
||||
{
|
||||
if ( value.first.starts_with( "VK_ERROR" ) )
|
||||
if ( value.supported && value.name.starts_with( "VK_ERROR" ) )
|
||||
{
|
||||
auto [enter, leave] = generateProtection( value.second.protect );
|
||||
std::string valueName = generateEnumValueName( enumIt->first, value.first, false );
|
||||
auto [enter, leave] = generateProtection( value.protect );
|
||||
std::string valueName = generateEnumValueName( enumIt->first, value.name, false );
|
||||
str += replaceWithMap( templateString,
|
||||
{ { "className", stripPrefix( valueName, "eError" ) + "Error" },
|
||||
{ "enter", enter },
|
||||
@ -11600,10 +11595,10 @@ std::string VulkanHppGenerator::generateThrowResultException() const
|
||||
std::string cases;
|
||||
for ( auto const & value : enumIt->second.values )
|
||||
{
|
||||
if ( value.first.starts_with( "VK_ERROR" ) )
|
||||
if ( value.supported && value.name.starts_with( "VK_ERROR" ) )
|
||||
{
|
||||
const auto [enter, leave] = generateProtection( value.second.protect );
|
||||
std::string valueName = generateEnumValueName( enumIt->first, value.first, false );
|
||||
const auto [enter, leave] = generateProtection( value.protect );
|
||||
std::string valueName = generateEnumValueName( enumIt->first, value.name, false );
|
||||
cases += enter + " case Result::" + valueName + ": throw " + stripPrefix( valueName, "eError" ) + "Error( message );\n" + leave;
|
||||
}
|
||||
}
|
||||
@ -12338,7 +12333,7 @@ void VulkanHppGenerator::handleRemoval( RemoveData const & removeData )
|
||||
bool removed = false;
|
||||
for ( auto enumIt = m_enums.begin(); !removed && enumIt != m_enums.end(); ++enumIt )
|
||||
{
|
||||
auto valueIt = find( enumIt->second.values, e );
|
||||
auto valueIt = findByName( enumIt->second.values, e );
|
||||
if ( valueIt != enumIt->second.values.end() )
|
||||
{
|
||||
enumIt->second.values.erase( valueIt );
|
||||
@ -13565,14 +13560,7 @@ void VulkanHppGenerator::readFormat( tinyxml2::XMLElement const * element )
|
||||
auto formatIt = m_enums.find( "VkFormat" );
|
||||
assert( formatIt != m_enums.end() );
|
||||
|
||||
if ( contains( formatIt->second.values, name ) )
|
||||
{
|
||||
checkForError( m_formats.insert( { name, format } ).second, line, "format <" + name + "> already specified" );
|
||||
}
|
||||
else
|
||||
{
|
||||
checkForError( formatIt->second.unsupportedValues.contains( name ), line, "unknown format <" + name + ">" );
|
||||
}
|
||||
checkForError( contains( formatIt->second.values, name ) && m_formats.insert( { name, format } ).second, line, "format <" + name + "> already specified" );
|
||||
}
|
||||
|
||||
void VulkanHppGenerator::readFormatComponent( tinyxml2::XMLElement const * element, FormatData & formatData )
|
||||
@ -13807,6 +13795,7 @@ void VulkanHppGenerator::readRegistry( tinyxml2::XMLElement const * element )
|
||||
else if ( value == "extensions" )
|
||||
{
|
||||
readExtensions( child );
|
||||
distributeEnumValueAliases(); // after extensions are read, there should be no more enums/aliases specified!
|
||||
}
|
||||
else if ( value == "feature" )
|
||||
{
|
||||
@ -14107,9 +14096,7 @@ void VulkanHppGenerator::readSPIRVCapabilityEnable( tinyxml2::XMLElement const *
|
||||
const auto enumIt = m_enums.find( bitmaskIt->second.require );
|
||||
checkForError(
|
||||
enumIt != m_enums.end(), line, "member <" + member + "> specified for SPIR-V capability requires an unknown enum <" + bitmaskIt->second.require + ">" );
|
||||
checkForError( contains( enumIt->second.values, value ) || enumIt->second.unsupportedValues.contains( value ),
|
||||
line,
|
||||
"unknown attribute value <" + value + "> specified for SPIR-V capability" );
|
||||
checkForError( contains( enumIt->second.values, value ), line, "unknown attribute value <" + value + "> specified for SPIR-V capability" );
|
||||
}
|
||||
}
|
||||
else if ( attributes.contains( "struct" ) )
|
||||
@ -14405,23 +14392,26 @@ void VulkanHppGenerator::readSyncAccess( tinyxml2::XMLElement const *
|
||||
checkElements( line, children, {}, { "comment", "syncequivalent", "syncsupport" } );
|
||||
|
||||
std::string aliasName;
|
||||
EnumValueData const * aliasPtr = nullptr;
|
||||
auto aliasIt = accessFlagBitsIt->second.values.end();
|
||||
for ( auto const & attribute : attributes )
|
||||
{
|
||||
if ( attribute.first == "alias" )
|
||||
{
|
||||
assert( aliasIt == accessFlagBitsIt->second.values.end() );
|
||||
aliasName = attribute.second;
|
||||
aliasPtr = findEnumValueData( accessFlagBitsIt, attribute.second );
|
||||
checkForError( aliasPtr != nullptr, line, "syncaccess alias <" + attribute.second + "> not specified as a VkAccessFlagBits value!" );
|
||||
aliasIt = findByNameOrAlias( accessFlagBitsIt->second.values, attribute.second );
|
||||
checkForError(
|
||||
aliasIt != accessFlagBitsIt->second.values.end(), line, "syncaccess alias <" + attribute.second + "> not specified as a VkAccessFlagBits value!" );
|
||||
}
|
||||
else
|
||||
{
|
||||
assert( attribute.first == "name" );
|
||||
auto namePtr = findEnumValueData( accessFlagBits2It, attribute.second );
|
||||
checkForError( namePtr != nullptr, line, "syncaccess name <" + attribute.second + "> not specified as a VkAccessFlagBits value!" );
|
||||
if ( aliasPtr != nullptr )
|
||||
auto nameIt = findByNameOrAlias( accessFlagBits2It->second.values, attribute.second );
|
||||
checkForError(
|
||||
nameIt != accessFlagBits2It->second.values.end(), line, "syncaccess name <" + attribute.second + "> not specified as a VkAccessFlagBits value!" );
|
||||
if ( aliasIt != accessFlagBitsIt->second.values.end() )
|
||||
{
|
||||
checkForError( ( aliasPtr->value == namePtr->value ) && ( aliasPtr->bitpos == namePtr->bitpos ),
|
||||
checkForError( ( aliasIt->value == nameIt->value ) && ( aliasIt->bitpos == nameIt->bitpos ),
|
||||
line,
|
||||
"syncaccess name <" + attribute.second + "> has an alias <" + aliasName + "> with a different value or bitpos!" );
|
||||
}
|
||||
@ -14455,7 +14445,7 @@ void VulkanHppGenerator::readSyncAccessEquivalent( tinyxml2::XMLElement const *
|
||||
std::vector<std::string> access = tokenize( attribute.second, "," );
|
||||
for ( auto const & a : access )
|
||||
{
|
||||
checkForError( findEnumValueData( accessFlagBits2It, a ) != nullptr, line, "syncequivalent access uses unknown value <" + a + ">!" );
|
||||
checkForError( contains( accessFlagBits2It->second.values, a ), line, "syncequivalent access uses unknown value <" + a + ">!" );
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -14474,7 +14464,7 @@ void VulkanHppGenerator::readSyncAccessSupport( tinyxml2::XMLElement const * ele
|
||||
std::vector<std::string> stage = tokenize( attribute.second, "," );
|
||||
for ( auto const & s : stage )
|
||||
{
|
||||
checkForError( findEnumValueData( stageFlagBits2It, s ) != nullptr, line, "syncsupport stage uses unknown value <" + s + ">!" );
|
||||
checkForError( contains( stageFlagBits2It->second.values, s ), line, "syncsupport stage uses unknown value <" + s + ">!" );
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -14515,23 +14505,26 @@ void VulkanHppGenerator::readSyncStage( tinyxml2::XMLElement const *
|
||||
checkElements( line, children, {}, { "syncequivalent", "syncsupport" } );
|
||||
|
||||
std::string aliasName;
|
||||
EnumValueData const * aliasPtr = nullptr;
|
||||
auto aliasIt = stageFlagBitsIt->second.values.end();
|
||||
for ( auto const & attribute : attributes )
|
||||
{
|
||||
if ( attribute.first == "alias" )
|
||||
{
|
||||
assert( aliasIt == stageFlagBitsIt->second.values.end() );
|
||||
aliasName = attribute.second;
|
||||
aliasPtr = findEnumValueData( stageFlagBitsIt, attribute.second );
|
||||
checkForError( aliasPtr != nullptr, line, "syncstage alias <" + attribute.second + "> not specified as a VkPipelineStageFlagBits value!" );
|
||||
aliasIt = findByNameOrAlias( stageFlagBitsIt->second.values, attribute.second );
|
||||
checkForError(
|
||||
aliasIt != stageFlagBitsIt->second.values.end(), line, "syncstage alias <" + attribute.second + "> not specified as a VkPipelineStageFlagBits value!" );
|
||||
}
|
||||
else
|
||||
{
|
||||
assert( attribute.first == "name" );
|
||||
auto namePtr = findEnumValueData( stageFlagBits2It, attribute.second );
|
||||
checkForError( namePtr != nullptr, line, "syncstage name <" + attribute.second + "> not specified as a VkPipelineStageFlagBits2 value!" );
|
||||
if ( aliasPtr != nullptr )
|
||||
auto nameIt = findByNameOrAlias( stageFlagBits2It->second.values, attribute.second );
|
||||
checkForError(
|
||||
nameIt != stageFlagBits2It->second.values.end(), line, "syncstage name <" + attribute.second + "> not specified as a VkPipelineStageFlagBits2 value!" );
|
||||
if ( aliasIt != stageFlagBitsIt->second.values.end() )
|
||||
{
|
||||
checkForError( ( aliasPtr->value == namePtr->value ) && ( aliasPtr->bitpos == namePtr->bitpos ),
|
||||
checkForError( ( aliasIt->value == nameIt->value ) && ( aliasIt->bitpos == nameIt->bitpos ),
|
||||
line,
|
||||
"syncstate name <" + attribute.second + "> has an alias <" + aliasName + "> with a different value or bitpos!" );
|
||||
}
|
||||
@ -14566,7 +14559,7 @@ void VulkanHppGenerator::readSyncStageEquivalent( tinyxml2::XMLElement const * e
|
||||
std::vector<std::string> stage = tokenize( attribute.second, "," );
|
||||
for ( auto const & s : stage )
|
||||
{
|
||||
checkForError( findEnumValueData( stageFlagBits2It, s ) != nullptr, line, "syncequivalent stage uses unknown value <" + s + ">!" );
|
||||
checkForError( contains( stageFlagBits2It->second.values, s ), line, "syncequivalent stage uses unknown value <" + s + ">!" );
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -15387,88 +15380,30 @@ std::string VulkanHppGenerator::toString( TypeCategory category )
|
||||
|
||||
void VulkanHppGenerator::EnumData::addEnumAlias( int line, std::string const & name, std::string const & alias, std::string const & protect, bool supported )
|
||||
{
|
||||
EnumValueData * valuePtr = nullptr;
|
||||
if ( supported )
|
||||
auto aliasIt = findByName( valueAliases, name );
|
||||
if ( aliasIt == valueAliases.end() )
|
||||
{
|
||||
auto valueIt = find( values, alias );
|
||||
if ( valueIt == values.end() )
|
||||
{
|
||||
valueIt = std::find_if( values.begin(), values.end(), [alias]( auto const value ) { return value.second.aliases.contains( alias ); } );
|
||||
}
|
||||
if ( valueIt != values.end() )
|
||||
{
|
||||
valuePtr = &valueIt->second;
|
||||
}
|
||||
valueAliases.push_back( { alias, name, protect, supported, line } );
|
||||
}
|
||||
else
|
||||
{
|
||||
auto valueIt = unsupportedValues.find( alias );
|
||||
if ( valueIt == unsupportedValues.end() )
|
||||
{
|
||||
valueIt =
|
||||
std::find_if( unsupportedValues.begin(), unsupportedValues.end(), [alias]( auto const value ) { return value.second.aliases.contains( alias ); } );
|
||||
}
|
||||
if ( valueIt != unsupportedValues.end() )
|
||||
{
|
||||
valuePtr = &valueIt->second;
|
||||
}
|
||||
}
|
||||
|
||||
if ( valuePtr )
|
||||
{
|
||||
checkForError( protect == valuePtr->protect,
|
||||
checkForError( ( alias == aliasIt->alias ) && ( protect == aliasIt->protect ) && ( supported == aliasIt->supported ),
|
||||
line,
|
||||
"enum alias value <" + name + "> uses a different protection <" + protect + "> than the aliased enum value <" + alias + ">" );
|
||||
valuePtr->aliases.insert( { name, line } ); // it happens, that the very same alias is listed multiple times -> no error check here!
|
||||
}
|
||||
else
|
||||
{
|
||||
// the alias is defined before the aliased enum!! -> insert a preliminary enum on line -1 and add this alias again
|
||||
addEnumValue( -1, alias, "", "", "", supported );
|
||||
addEnumAlias( line, name, alias, protect, supported );
|
||||
"enum value alias <" + name + "> already listed with different properties" );
|
||||
}
|
||||
}
|
||||
|
||||
void VulkanHppGenerator::EnumData::addEnumValue(
|
||||
int line, std::string const & name, std::string const & protect, std::string const & bitpos, std::string const & value, bool supported )
|
||||
{
|
||||
EnumValueData * valuePtr = nullptr;
|
||||
if ( supported )
|
||||
auto valueIt = findByName( values, name );
|
||||
if ( valueIt == values.end() )
|
||||
{
|
||||
auto valueIt = find( values, name );
|
||||
if ( valueIt != values.end() )
|
||||
{
|
||||
valuePtr = &valueIt->second;
|
||||
values.push_back( { {}, bitpos, name, protect, supported, value, line } );
|
||||
}
|
||||
}
|
||||
else
|
||||
else if ( supported ) // only for supported enum values, we need to check for consistency!
|
||||
{
|
||||
auto valueIt = unsupportedValues.find( name );
|
||||
if ( valueIt != unsupportedValues.end() )
|
||||
{
|
||||
valuePtr = &valueIt->second;
|
||||
}
|
||||
}
|
||||
if ( !valuePtr )
|
||||
{
|
||||
if ( supported )
|
||||
{
|
||||
values.push_back( { name, { {}, bitpos, protect, value, line } } );
|
||||
}
|
||||
else
|
||||
{
|
||||
unsupportedValues.insert( { name, { {}, bitpos, protect, value, line } } );
|
||||
}
|
||||
}
|
||||
else if ( valuePtr->xmlLine == -1 )
|
||||
{
|
||||
// this enum value has been listed by an alias before!
|
||||
assert( !valuePtr->aliases.empty() && valuePtr->bitpos.empty() && valuePtr->protect.empty() && valuePtr->value.empty() );
|
||||
*valuePtr = { valuePtr->aliases, bitpos, protect, value, line };
|
||||
}
|
||||
else
|
||||
{
|
||||
checkForError( ( protect == valuePtr->protect ) && ( bitpos == valuePtr->bitpos ) && ( value == valuePtr->value ),
|
||||
checkForError( ( bitpos == valueIt->bitpos ) && ( protect == valueIt->protect ) && ( supported == valueIt->supported ) && ( value == valueIt->value ),
|
||||
line,
|
||||
"enum value <" + name + "> already listed with different properties" );
|
||||
}
|
||||
@ -15494,19 +15429,21 @@ namespace
|
||||
}
|
||||
|
||||
template <typename T>
|
||||
typename std::vector<std::pair<std::string, T>>::const_iterator find( std::vector<std::pair<std::string, T>> const & values, std::string const & name )
|
||||
typename std::vector<T>::iterator findByName( std::vector<T> & values, std::string const & name )
|
||||
{
|
||||
return std::find_if( values.begin(),
|
||||
values.end(),
|
||||
[&name]( std::pair<std::string, T> const & value ) { return ( value.first == name ) || value.second.aliases.contains( name ); } );
|
||||
return std::find_if( values.begin(), values.end(), [&name]( T const & value ) { return value.name == name; } );
|
||||
}
|
||||
|
||||
template <typename T>
|
||||
typename std::vector<std::pair<std::string, T>>::iterator find( std::vector<std::pair<std::string, T>> & values, std::string const & name )
|
||||
typename std::vector<T>::const_iterator findByNameOrAlias( std::vector<T> const & values, std::string const & name )
|
||||
{
|
||||
return std::find_if( values.begin(),
|
||||
values.end(),
|
||||
[&name]( std::pair<std::string, T> const & value ) { return ( value.first == name ) || value.second.aliases.contains( name ); } );
|
||||
return std::find_if( values.begin(), values.end(), [&name]( T const & value ) { return ( value.name == name ) || value.aliases.contains( name ); } );
|
||||
}
|
||||
|
||||
template <typename T>
|
||||
typename std::vector<T>::iterator findByNameOrAlias( std::vector<T> & values, std::string const & name )
|
||||
{
|
||||
return std::find_if( values.begin(), values.end(), [&name]( T const & value ) { return ( value.name == name ) || value.aliases.contains( name ); } );
|
||||
}
|
||||
|
||||
std::string generateCArraySizes( std::vector<std::string> const & sizes )
|
||||
|
@ -133,17 +133,26 @@ private:
|
||||
int xmlLine = {};
|
||||
};
|
||||
|
||||
struct EnumValueAlias
|
||||
{
|
||||
std::string alias = {};
|
||||
std::string name = {};
|
||||
std::string protect = {};
|
||||
bool supported = {};
|
||||
int xmlLine = {};
|
||||
};
|
||||
|
||||
struct EnumValueData
|
||||
{
|
||||
std::map<std::string, int> aliases = {};
|
||||
std::string bitpos = {};
|
||||
std::string name = {};
|
||||
std::string protect = {};
|
||||
bool supported = {};
|
||||
std::string value = {};
|
||||
int xmlLine = {};
|
||||
};
|
||||
|
||||
using EnumValue = std::pair<std::string, EnumValueData>;
|
||||
|
||||
struct EnumData
|
||||
{
|
||||
void addEnumAlias( int line, std::string const & name, std::string const & alias, std::string const & protect, bool supported );
|
||||
@ -152,8 +161,8 @@ private:
|
||||
|
||||
std::string bitwidth = {};
|
||||
bool isBitmask = false;
|
||||
std::map<std::string, EnumValueData> unsupportedValues = {};
|
||||
std::vector<EnumValue> values = {};
|
||||
std::vector<EnumValueAlias> valueAliases = {}; // temporary storage for aliases, as they might be specified before the actual value is specified
|
||||
std::vector<EnumValueData> values = {};
|
||||
int xmlLine = {};
|
||||
};
|
||||
|
||||
@ -429,7 +438,7 @@ private:
|
||||
std::vector<std::string> const & dataTypes,
|
||||
CommandFlavourFlags flavourFlags,
|
||||
bool raii ) const;
|
||||
bool contains( std::vector<EnumValue> const & enumValues, std::string const & name ) const;
|
||||
bool contains( std::vector<EnumValueData> const & enumValues, std::string const & name ) const;
|
||||
bool containsArray( std::string const & type ) const;
|
||||
bool containsFuncPointer( std::string const & type ) const;
|
||||
bool containsFloatingPoints( std::vector<MemberData> const & members ) const;
|
||||
@ -456,18 +465,17 @@ private:
|
||||
std::string determineSubStruct( std::pair<std::string, StructureData> const & structure ) const;
|
||||
std::map<size_t, VectorParamData> determineVectorParams( std::vector<ParamData> const & params ) const;
|
||||
std::set<size_t> determineVoidPointerParams( std::vector<ParamData> const & params ) const;
|
||||
void distributeEnumValueAliases();
|
||||
void distributeSecondLevelCommands( std::set<std::string> const & specialFunctions );
|
||||
void filterLenMembers();
|
||||
std::map<std::string, AliasData>::const_iterator findAlias( std::string const & name, std::map<std::string, AliasData> const & aliases ) const;
|
||||
std::string findBaseName( std::string aliasName, std::map<std::string, AliasData> const & aliases ) const;
|
||||
EnumValueData const * findEnumValueData( std::map<std::string, EnumData>::const_iterator enumIt, std::string const & name ) const;
|
||||
std::vector<FeatureData>::const_iterator findFeature( std::string const & name ) const;
|
||||
std::vector<ParamData>::const_iterator findParamIt( std::string const & name, std::vector<ParamData> const & paramData ) const;
|
||||
std::vector<MemberData>::const_iterator findStructMemberIt( std::string const & name, std::vector<MemberData> const & memberData ) const;
|
||||
std::vector<MemberData>::const_iterator findStructMemberItByType( std::string const & type, std::vector<MemberData> const & memberData ) const;
|
||||
std::vector<ExtensionData>::const_iterator findSupportedExtension( std::string const & name ) const;
|
||||
std::string findTag( std::string const & name, std::string const & postfix = "" ) const;
|
||||
void fixEnumValueIssues();
|
||||
std::pair<std::string, std::string> generateAllocatorTemplates( std::vector<size_t> const & returnParams,
|
||||
std::vector<std::string> const & returnDataTypes,
|
||||
std::map<size_t, VectorParamData> const & vectorParams,
|
||||
@ -702,8 +710,10 @@ private:
|
||||
std::set<std::string> & listedCommands,
|
||||
std::string const & title ) const;
|
||||
std::string generateEnum( std::pair<std::string, EnumData> const & enumData, std::string const & surroundingProtect ) const;
|
||||
std::string
|
||||
generateEnumInitializer( TypeInfo const & type, std::vector<std::string> const & arraySizes, std::vector<EnumValue> const & values, bool bitmask ) const;
|
||||
std::string generateEnumInitializer( TypeInfo const & type,
|
||||
std::vector<std::string> const & arraySizes,
|
||||
std::vector<EnumValueData> const & values,
|
||||
bool bitmask ) const;
|
||||
std::string generateEnums() const;
|
||||
std::string generateEnums( std::vector<RequireData> const & requireData, std::set<std::string> & listedEnums, std::string const & title ) const;
|
||||
std::string generateEnumsToString() const;
|
||||
|
@ -940,15 +940,11 @@ namespace VULKAN_HPP_NAMESPACE
|
||||
ePipelineRepresentativeFragmentTestStateCreateInfoNV = VK_STRUCTURE_TYPE_PIPELINE_REPRESENTATIVE_FRAGMENT_TEST_STATE_CREATE_INFO_NV,
|
||||
ePhysicalDeviceImageViewImageFormatInfoEXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_VIEW_IMAGE_FORMAT_INFO_EXT,
|
||||
eFilterCubicImageViewImageFormatPropertiesEXT = VK_STRUCTURE_TYPE_FILTER_CUBIC_IMAGE_VIEW_IMAGE_FORMAT_PROPERTIES_EXT,
|
||||
eDeviceQueueGlobalPriorityCreateInfoKHR = VK_STRUCTURE_TYPE_DEVICE_QUEUE_GLOBAL_PRIORITY_CREATE_INFO_KHR,
|
||||
eDeviceQueueGlobalPriorityCreateInfoEXT = VK_STRUCTURE_TYPE_DEVICE_QUEUE_GLOBAL_PRIORITY_CREATE_INFO_EXT,
|
||||
eImportMemoryHostPointerInfoEXT = VK_STRUCTURE_TYPE_IMPORT_MEMORY_HOST_POINTER_INFO_EXT,
|
||||
eMemoryHostPointerPropertiesEXT = VK_STRUCTURE_TYPE_MEMORY_HOST_POINTER_PROPERTIES_EXT,
|
||||
ePhysicalDeviceExternalMemoryHostPropertiesEXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_MEMORY_HOST_PROPERTIES_EXT,
|
||||
ePhysicalDeviceShaderClockFeaturesKHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CLOCK_FEATURES_KHR,
|
||||
ePipelineCompilerControlCreateInfoAMD = VK_STRUCTURE_TYPE_PIPELINE_COMPILER_CONTROL_CREATE_INFO_AMD,
|
||||
eCalibratedTimestampInfoKHR = VK_STRUCTURE_TYPE_CALIBRATED_TIMESTAMP_INFO_KHR,
|
||||
eCalibratedTimestampInfoEXT = VK_STRUCTURE_TYPE_CALIBRATED_TIMESTAMP_INFO_EXT,
|
||||
ePhysicalDeviceShaderCorePropertiesAMD = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CORE_PROPERTIES_AMD,
|
||||
eVideoDecodeH265CapabilitiesKHR = VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_CAPABILITIES_KHR,
|
||||
eVideoDecodeH265SessionParametersCreateInfoKHR = VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_SESSION_PARAMETERS_CREATE_INFO_KHR,
|
||||
@ -956,24 +952,20 @@ namespace VULKAN_HPP_NAMESPACE
|
||||
eVideoDecodeH265ProfileInfoKHR = VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_PROFILE_INFO_KHR,
|
||||
eVideoDecodeH265PictureInfoKHR = VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_PICTURE_INFO_KHR,
|
||||
eVideoDecodeH265DpbSlotInfoKHR = VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_DPB_SLOT_INFO_KHR,
|
||||
eDeviceQueueGlobalPriorityCreateInfoKHR = VK_STRUCTURE_TYPE_DEVICE_QUEUE_GLOBAL_PRIORITY_CREATE_INFO_KHR,
|
||||
eDeviceQueueGlobalPriorityCreateInfoEXT = VK_STRUCTURE_TYPE_DEVICE_QUEUE_GLOBAL_PRIORITY_CREATE_INFO_EXT,
|
||||
ePhysicalDeviceGlobalPriorityQueryFeaturesKHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_GLOBAL_PRIORITY_QUERY_FEATURES_KHR,
|
||||
ePhysicalDeviceGlobalPriorityQueryFeaturesEXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_GLOBAL_PRIORITY_QUERY_FEATURES_EXT,
|
||||
eQueueFamilyGlobalPriorityPropertiesKHR = VK_STRUCTURE_TYPE_QUEUE_FAMILY_GLOBAL_PRIORITY_PROPERTIES_KHR,
|
||||
eQueueFamilyGlobalPriorityPropertiesEXT = VK_STRUCTURE_TYPE_QUEUE_FAMILY_GLOBAL_PRIORITY_PROPERTIES_EXT,
|
||||
eDeviceMemoryOverallocationCreateInfoAMD = VK_STRUCTURE_TYPE_DEVICE_MEMORY_OVERALLOCATION_CREATE_INFO_AMD,
|
||||
ePhysicalDeviceVertexAttributeDivisorPropertiesEXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_ATTRIBUTE_DIVISOR_PROPERTIES_EXT,
|
||||
ePipelineVertexInputDivisorStateCreateInfoKHR = VK_STRUCTURE_TYPE_PIPELINE_VERTEX_INPUT_DIVISOR_STATE_CREATE_INFO_KHR,
|
||||
ePipelineVertexInputDivisorStateCreateInfoEXT = VK_STRUCTURE_TYPE_PIPELINE_VERTEX_INPUT_DIVISOR_STATE_CREATE_INFO_EXT,
|
||||
ePhysicalDeviceVertexAttributeDivisorFeaturesKHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_ATTRIBUTE_DIVISOR_FEATURES_KHR,
|
||||
ePhysicalDeviceVertexAttributeDivisorFeaturesEXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_ATTRIBUTE_DIVISOR_FEATURES_EXT,
|
||||
#if defined( VK_USE_PLATFORM_GGP )
|
||||
ePresentFrameTokenGGP = VK_STRUCTURE_TYPE_PRESENT_FRAME_TOKEN_GGP,
|
||||
#endif /*VK_USE_PLATFORM_GGP*/
|
||||
ePhysicalDeviceComputeShaderDerivativesFeaturesNV = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COMPUTE_SHADER_DERIVATIVES_FEATURES_NV,
|
||||
ePhysicalDeviceMeshShaderFeaturesNV = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MESH_SHADER_FEATURES_NV,
|
||||
ePhysicalDeviceMeshShaderPropertiesNV = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MESH_SHADER_PROPERTIES_NV,
|
||||
ePhysicalDeviceFragmentShaderBarycentricFeaturesKHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADER_BARYCENTRIC_FEATURES_KHR,
|
||||
ePhysicalDeviceFragmentShaderBarycentricFeaturesNV = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADER_BARYCENTRIC_FEATURES_NV,
|
||||
ePhysicalDeviceShaderImageFootprintFeaturesNV = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_IMAGE_FOOTPRINT_FEATURES_NV,
|
||||
ePipelineViewportExclusiveScissorStateCreateInfoNV = VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_EXCLUSIVE_SCISSOR_STATE_CREATE_INFO_NV,
|
||||
ePhysicalDeviceExclusiveScissorFeaturesNV = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXCLUSIVE_SCISSOR_FEATURES_NV,
|
||||
@ -1038,15 +1030,7 @@ namespace VULKAN_HPP_NAMESPACE
|
||||
eSurfaceFullScreenExclusiveWin32InfoEXT = VK_STRUCTURE_TYPE_SURFACE_FULL_SCREEN_EXCLUSIVE_WIN32_INFO_EXT,
|
||||
#endif /*VK_USE_PLATFORM_WIN32_KHR*/
|
||||
eHeadlessSurfaceCreateInfoEXT = VK_STRUCTURE_TYPE_HEADLESS_SURFACE_CREATE_INFO_EXT,
|
||||
ePhysicalDeviceLineRasterizationFeaturesKHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_LINE_RASTERIZATION_FEATURES_KHR,
|
||||
ePhysicalDeviceLineRasterizationFeaturesEXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_LINE_RASTERIZATION_FEATURES_EXT,
|
||||
ePipelineRasterizationLineStateCreateInfoKHR = VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_LINE_STATE_CREATE_INFO_KHR,
|
||||
ePipelineRasterizationLineStateCreateInfoEXT = VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_LINE_STATE_CREATE_INFO_EXT,
|
||||
ePhysicalDeviceLineRasterizationPropertiesKHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_LINE_RASTERIZATION_PROPERTIES_KHR,
|
||||
ePhysicalDeviceLineRasterizationPropertiesEXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_LINE_RASTERIZATION_PROPERTIES_EXT,
|
||||
ePhysicalDeviceShaderAtomicFloatFeaturesEXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_ATOMIC_FLOAT_FEATURES_EXT,
|
||||
ePhysicalDeviceIndexTypeUint8FeaturesKHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_INDEX_TYPE_UINT8_FEATURES_KHR,
|
||||
ePhysicalDeviceIndexTypeUint8FeaturesEXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_INDEX_TYPE_UINT8_FEATURES_EXT,
|
||||
ePhysicalDeviceExtendedDynamicStateFeaturesEXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTENDED_DYNAMIC_STATE_FEATURES_EXT,
|
||||
ePhysicalDevicePipelineExecutablePropertiesFeaturesKHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_EXECUTABLE_PROPERTIES_FEATURES_KHR,
|
||||
ePipelineInfoKHR = VK_STRUCTURE_TYPE_PIPELINE_INFO_KHR,
|
||||
@ -1164,6 +1148,8 @@ namespace VULKAN_HPP_NAMESPACE
|
||||
ePhysicalDeviceGraphicsPipelineLibraryPropertiesEXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_GRAPHICS_PIPELINE_LIBRARY_PROPERTIES_EXT,
|
||||
eGraphicsPipelineLibraryCreateInfoEXT = VK_STRUCTURE_TYPE_GRAPHICS_PIPELINE_LIBRARY_CREATE_INFO_EXT,
|
||||
ePhysicalDeviceShaderEarlyAndLateFragmentTestsFeaturesAMD = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_EARLY_AND_LATE_FRAGMENT_TESTS_FEATURES_AMD,
|
||||
ePhysicalDeviceFragmentShaderBarycentricFeaturesKHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADER_BARYCENTRIC_FEATURES_KHR,
|
||||
ePhysicalDeviceFragmentShaderBarycentricFeaturesNV = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADER_BARYCENTRIC_FEATURES_NV,
|
||||
ePhysicalDeviceFragmentShaderBarycentricPropertiesKHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADER_BARYCENTRIC_PROPERTIES_KHR,
|
||||
ePhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SUBGROUP_UNIFORM_CONTROL_FLOW_FEATURES_KHR,
|
||||
ePhysicalDeviceFragmentShadingRateEnumsPropertiesNV = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADING_RATE_ENUMS_PROPERTIES_NV,
|
||||
@ -1181,26 +1167,16 @@ namespace VULKAN_HPP_NAMESPACE
|
||||
ePhysicalDeviceWorkgroupMemoryExplicitLayoutFeaturesKHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_WORKGROUP_MEMORY_EXPLICIT_LAYOUT_FEATURES_KHR,
|
||||
ePhysicalDeviceImageCompressionControlFeaturesEXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_COMPRESSION_CONTROL_FEATURES_EXT,
|
||||
eImageCompressionControlEXT = VK_STRUCTURE_TYPE_IMAGE_COMPRESSION_CONTROL_EXT,
|
||||
eSubresourceLayout2KHR = VK_STRUCTURE_TYPE_SUBRESOURCE_LAYOUT_2_KHR,
|
||||
eSubresourceLayout2EXT = VK_STRUCTURE_TYPE_SUBRESOURCE_LAYOUT_2_EXT,
|
||||
eImageSubresource2KHR = VK_STRUCTURE_TYPE_IMAGE_SUBRESOURCE_2_KHR,
|
||||
eImageSubresource2EXT = VK_STRUCTURE_TYPE_IMAGE_SUBRESOURCE_2_EXT,
|
||||
eImageCompressionPropertiesEXT = VK_STRUCTURE_TYPE_IMAGE_COMPRESSION_PROPERTIES_EXT,
|
||||
ePhysicalDeviceAttachmentFeedbackLoopLayoutFeaturesEXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ATTACHMENT_FEEDBACK_LOOP_LAYOUT_FEATURES_EXT,
|
||||
ePhysicalDevice4444FormatsFeaturesEXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_4444_FORMATS_FEATURES_EXT,
|
||||
ePhysicalDeviceFaultFeaturesEXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FAULT_FEATURES_EXT,
|
||||
eDeviceFaultCountsEXT = VK_STRUCTURE_TYPE_DEVICE_FAULT_COUNTS_EXT,
|
||||
eDeviceFaultInfoEXT = VK_STRUCTURE_TYPE_DEVICE_FAULT_INFO_EXT,
|
||||
ePhysicalDeviceRasterizationOrderAttachmentAccessFeaturesEXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RASTERIZATION_ORDER_ATTACHMENT_ACCESS_FEATURES_EXT,
|
||||
ePhysicalDeviceRasterizationOrderAttachmentAccessFeaturesARM = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RASTERIZATION_ORDER_ATTACHMENT_ACCESS_FEATURES_ARM,
|
||||
ePhysicalDeviceRgba10X6FormatsFeaturesEXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RGBA10X6_FORMATS_FEATURES_EXT,
|
||||
#if defined( VK_USE_PLATFORM_DIRECTFB_EXT )
|
||||
eDirectfbSurfaceCreateInfoEXT = VK_STRUCTURE_TYPE_DIRECTFB_SURFACE_CREATE_INFO_EXT,
|
||||
#endif /*VK_USE_PLATFORM_DIRECTFB_EXT*/
|
||||
ePhysicalDeviceMutableDescriptorTypeFeaturesEXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MUTABLE_DESCRIPTOR_TYPE_FEATURES_EXT,
|
||||
ePhysicalDeviceMutableDescriptorTypeFeaturesVALVE = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MUTABLE_DESCRIPTOR_TYPE_FEATURES_VALVE,
|
||||
eMutableDescriptorTypeCreateInfoEXT = VK_STRUCTURE_TYPE_MUTABLE_DESCRIPTOR_TYPE_CREATE_INFO_EXT,
|
||||
eMutableDescriptorTypeCreateInfoVALVE = VK_STRUCTURE_TYPE_MUTABLE_DESCRIPTOR_TYPE_CREATE_INFO_VALVE,
|
||||
ePhysicalDeviceVertexInputDynamicStateFeaturesEXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_INPUT_DYNAMIC_STATE_FEATURES_EXT,
|
||||
eVertexInputBindingDescription2EXT = VK_STRUCTURE_TYPE_VERTEX_INPUT_BINDING_DESCRIPTION_2_EXT,
|
||||
eVertexInputAttributeDescription2EXT = VK_STRUCTURE_TYPE_VERTEX_INPUT_ATTRIBUTE_DESCRIPTION_2_EXT,
|
||||
@ -1324,6 +1300,8 @@ namespace VULKAN_HPP_NAMESPACE
|
||||
ePhysicalDeviceShaderModuleIdentifierPropertiesEXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_MODULE_IDENTIFIER_PROPERTIES_EXT,
|
||||
ePipelineShaderStageModuleIdentifierCreateInfoEXT = VK_STRUCTURE_TYPE_PIPELINE_SHADER_STAGE_MODULE_IDENTIFIER_CREATE_INFO_EXT,
|
||||
eShaderModuleIdentifierEXT = VK_STRUCTURE_TYPE_SHADER_MODULE_IDENTIFIER_EXT,
|
||||
ePhysicalDeviceRasterizationOrderAttachmentAccessFeaturesEXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RASTERIZATION_ORDER_ATTACHMENT_ACCESS_FEATURES_EXT,
|
||||
ePhysicalDeviceRasterizationOrderAttachmentAccessFeaturesARM = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RASTERIZATION_ORDER_ATTACHMENT_ACCESS_FEATURES_ARM,
|
||||
ePhysicalDeviceOpticalFlowFeaturesNV = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_OPTICAL_FLOW_FEATURES_NV,
|
||||
ePhysicalDeviceOpticalFlowPropertiesNV = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_OPTICAL_FLOW_PROPERTIES_NV,
|
||||
eOpticalFlowImageFormatInfoNV = VK_STRUCTURE_TYPE_OPTICAL_FLOW_IMAGE_FORMAT_INFO_NV,
|
||||
@ -1342,6 +1320,10 @@ namespace VULKAN_HPP_NAMESPACE
|
||||
ePhysicalDeviceMaintenance5PropertiesKHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_5_PROPERTIES_KHR,
|
||||
eRenderingAreaInfoKHR = VK_STRUCTURE_TYPE_RENDERING_AREA_INFO_KHR,
|
||||
eDeviceImageSubresourceInfoKHR = VK_STRUCTURE_TYPE_DEVICE_IMAGE_SUBRESOURCE_INFO_KHR,
|
||||
eSubresourceLayout2KHR = VK_STRUCTURE_TYPE_SUBRESOURCE_LAYOUT_2_KHR,
|
||||
eSubresourceLayout2EXT = VK_STRUCTURE_TYPE_SUBRESOURCE_LAYOUT_2_EXT,
|
||||
eImageSubresource2KHR = VK_STRUCTURE_TYPE_IMAGE_SUBRESOURCE_2_KHR,
|
||||
eImageSubresource2EXT = VK_STRUCTURE_TYPE_IMAGE_SUBRESOURCE_2_EXT,
|
||||
ePipelineCreateFlags2CreateInfoKHR = VK_STRUCTURE_TYPE_PIPELINE_CREATE_FLAGS_2_CREATE_INFO_KHR,
|
||||
eBufferUsageFlags2CreateInfoKHR = VK_STRUCTURE_TYPE_BUFFER_USAGE_FLAGS_2_CREATE_INFO_KHR,
|
||||
ePhysicalDeviceRayTracingPositionFetchFeaturesKHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_POSITION_FETCH_FEATURES_KHR,
|
||||
@ -1357,6 +1339,10 @@ namespace VULKAN_HPP_NAMESPACE
|
||||
ePhysicalDeviceRayTracingInvocationReorderPropertiesNV = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_INVOCATION_REORDER_PROPERTIES_NV,
|
||||
ePhysicalDeviceExtendedSparseAddressSpaceFeaturesNV = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTENDED_SPARSE_ADDRESS_SPACE_FEATURES_NV,
|
||||
ePhysicalDeviceExtendedSparseAddressSpacePropertiesNV = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTENDED_SPARSE_ADDRESS_SPACE_PROPERTIES_NV,
|
||||
ePhysicalDeviceMutableDescriptorTypeFeaturesEXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MUTABLE_DESCRIPTOR_TYPE_FEATURES_EXT,
|
||||
ePhysicalDeviceMutableDescriptorTypeFeaturesVALVE = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MUTABLE_DESCRIPTOR_TYPE_FEATURES_VALVE,
|
||||
eMutableDescriptorTypeCreateInfoEXT = VK_STRUCTURE_TYPE_MUTABLE_DESCRIPTOR_TYPE_CREATE_INFO_EXT,
|
||||
eMutableDescriptorTypeCreateInfoVALVE = VK_STRUCTURE_TYPE_MUTABLE_DESCRIPTOR_TYPE_CREATE_INFO_VALVE,
|
||||
eLayerSettingsCreateInfoEXT = VK_STRUCTURE_TYPE_LAYER_SETTINGS_CREATE_INFO_EXT,
|
||||
ePhysicalDeviceShaderCoreBuiltinsFeaturesARM = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CORE_BUILTINS_FEATURES_ARM,
|
||||
ePhysicalDeviceShaderCoreBuiltinsPropertiesARM = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CORE_BUILTINS_PROPERTIES_ARM,
|
||||
@ -1395,6 +1381,10 @@ namespace VULKAN_HPP_NAMESPACE
|
||||
ePhysicalDeviceCubicClampFeaturesQCOM = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CUBIC_CLAMP_FEATURES_QCOM,
|
||||
ePhysicalDeviceAttachmentFeedbackLoopDynamicStateFeaturesEXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ATTACHMENT_FEEDBACK_LOOP_DYNAMIC_STATE_FEATURES_EXT,
|
||||
ePhysicalDeviceVertexAttributeDivisorPropertiesKHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_ATTRIBUTE_DIVISOR_PROPERTIES_KHR,
|
||||
ePipelineVertexInputDivisorStateCreateInfoKHR = VK_STRUCTURE_TYPE_PIPELINE_VERTEX_INPUT_DIVISOR_STATE_CREATE_INFO_KHR,
|
||||
ePipelineVertexInputDivisorStateCreateInfoEXT = VK_STRUCTURE_TYPE_PIPELINE_VERTEX_INPUT_DIVISOR_STATE_CREATE_INFO_EXT,
|
||||
ePhysicalDeviceVertexAttributeDivisorFeaturesKHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_ATTRIBUTE_DIVISOR_FEATURES_KHR,
|
||||
ePhysicalDeviceVertexAttributeDivisorFeaturesEXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_ATTRIBUTE_DIVISOR_FEATURES_EXT,
|
||||
ePhysicalDeviceShaderFloatControls2FeaturesKHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_FLOAT_CONTROLS_2_FEATURES_KHR,
|
||||
#if defined( VK_USE_PLATFORM_SCREEN_QNX )
|
||||
eScreenBufferPropertiesQNX = VK_STRUCTURE_TYPE_SCREEN_BUFFER_PROPERTIES_QNX,
|
||||
@ -1404,6 +1394,16 @@ namespace VULKAN_HPP_NAMESPACE
|
||||
ePhysicalDeviceExternalMemoryScreenBufferFeaturesQNX = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_MEMORY_SCREEN_BUFFER_FEATURES_QNX,
|
||||
#endif /*VK_USE_PLATFORM_SCREEN_QNX*/
|
||||
ePhysicalDeviceLayeredDriverPropertiesMSFT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_LAYERED_DRIVER_PROPERTIES_MSFT,
|
||||
ePhysicalDeviceIndexTypeUint8FeaturesKHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_INDEX_TYPE_UINT8_FEATURES_KHR,
|
||||
ePhysicalDeviceIndexTypeUint8FeaturesEXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_INDEX_TYPE_UINT8_FEATURES_EXT,
|
||||
ePhysicalDeviceLineRasterizationFeaturesKHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_LINE_RASTERIZATION_FEATURES_KHR,
|
||||
ePhysicalDeviceLineRasterizationFeaturesEXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_LINE_RASTERIZATION_FEATURES_EXT,
|
||||
ePipelineRasterizationLineStateCreateInfoKHR = VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_LINE_STATE_CREATE_INFO_KHR,
|
||||
ePipelineRasterizationLineStateCreateInfoEXT = VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_LINE_STATE_CREATE_INFO_EXT,
|
||||
ePhysicalDeviceLineRasterizationPropertiesKHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_LINE_RASTERIZATION_PROPERTIES_KHR,
|
||||
ePhysicalDeviceLineRasterizationPropertiesEXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_LINE_RASTERIZATION_PROPERTIES_EXT,
|
||||
eCalibratedTimestampInfoKHR = VK_STRUCTURE_TYPE_CALIBRATED_TIMESTAMP_INFO_KHR,
|
||||
eCalibratedTimestampInfoEXT = VK_STRUCTURE_TYPE_CALIBRATED_TIMESTAMP_INFO_EXT,
|
||||
ePhysicalDeviceShaderExpectAssumeFeaturesKHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_EXPECT_ASSUME_FEATURES_KHR,
|
||||
ePhysicalDeviceMaintenance6FeaturesKHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_6_FEATURES_KHR,
|
||||
ePhysicalDeviceMaintenance6PropertiesKHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_6_PROPERTIES_KHR,
|
||||
@ -1843,11 +1843,11 @@ namespace VULKAN_HPP_NAMESPACE
|
||||
eCositedChromaSamplesKHR = VK_FORMAT_FEATURE_COSITED_CHROMA_SAMPLES_BIT_KHR,
|
||||
eSampledImageFilterMinmax = VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_MINMAX_BIT,
|
||||
eSampledImageFilterMinmaxEXT = VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_MINMAX_BIT_EXT,
|
||||
eSampledImageFilterCubicEXT = VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_CUBIC_BIT_EXT,
|
||||
eSampledImageFilterCubicIMG = VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_CUBIC_BIT_IMG,
|
||||
eVideoDecodeOutputKHR = VK_FORMAT_FEATURE_VIDEO_DECODE_OUTPUT_BIT_KHR,
|
||||
eVideoDecodeDpbKHR = VK_FORMAT_FEATURE_VIDEO_DECODE_DPB_BIT_KHR,
|
||||
eAccelerationStructureVertexBufferKHR = VK_FORMAT_FEATURE_ACCELERATION_STRUCTURE_VERTEX_BUFFER_BIT_KHR,
|
||||
eSampledImageFilterCubicEXT = VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_CUBIC_BIT_EXT,
|
||||
eSampledImageFilterCubicIMG = VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_CUBIC_BIT_IMG,
|
||||
eFragmentDensityMapEXT = VK_FORMAT_FEATURE_FRAGMENT_DENSITY_MAP_BIT_EXT,
|
||||
eFragmentShadingRateAttachmentKHR = VK_FORMAT_FEATURE_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHR,
|
||||
eVideoEncodeInputKHR = VK_FORMAT_FEATURE_VIDEO_ENCODE_INPUT_BIT_KHR,
|
||||
@ -1870,10 +1870,10 @@ namespace VULKAN_HPP_NAMESPACE
|
||||
FormatFeatureFlagBits::eSampledImageYcbcrConversionSeparateReconstructionFilter |
|
||||
FormatFeatureFlagBits::eSampledImageYcbcrConversionChromaReconstructionExplicit |
|
||||
FormatFeatureFlagBits::eSampledImageYcbcrConversionChromaReconstructionExplicitForceable | FormatFeatureFlagBits::eDisjoint |
|
||||
FormatFeatureFlagBits::eCositedChromaSamples | FormatFeatureFlagBits::eSampledImageFilterMinmax | FormatFeatureFlagBits::eSampledImageFilterCubicEXT |
|
||||
FormatFeatureFlagBits::eVideoDecodeOutputKHR | FormatFeatureFlagBits::eVideoDecodeDpbKHR | FormatFeatureFlagBits::eAccelerationStructureVertexBufferKHR |
|
||||
FormatFeatureFlagBits::eFragmentDensityMapEXT | FormatFeatureFlagBits::eFragmentShadingRateAttachmentKHR | FormatFeatureFlagBits::eVideoEncodeInputKHR |
|
||||
FormatFeatureFlagBits::eVideoEncodeDpbKHR;
|
||||
FormatFeatureFlagBits::eCositedChromaSamples | FormatFeatureFlagBits::eSampledImageFilterMinmax | FormatFeatureFlagBits::eVideoDecodeOutputKHR |
|
||||
FormatFeatureFlagBits::eVideoDecodeDpbKHR | FormatFeatureFlagBits::eAccelerationStructureVertexBufferKHR |
|
||||
FormatFeatureFlagBits::eSampledImageFilterCubicEXT | FormatFeatureFlagBits::eFragmentDensityMapEXT |
|
||||
FormatFeatureFlagBits::eFragmentShadingRateAttachmentKHR | FormatFeatureFlagBits::eVideoEncodeInputKHR | FormatFeatureFlagBits::eVideoEncodeDpbKHR;
|
||||
};
|
||||
|
||||
enum class ImageCreateFlagBits : VkImageCreateFlags
|
||||
@ -1949,9 +1949,9 @@ namespace VULKAN_HPP_NAMESPACE
|
||||
eVideoDecodeDstKHR = VK_IMAGE_USAGE_VIDEO_DECODE_DST_BIT_KHR,
|
||||
eVideoDecodeSrcKHR = VK_IMAGE_USAGE_VIDEO_DECODE_SRC_BIT_KHR,
|
||||
eVideoDecodeDpbKHR = VK_IMAGE_USAGE_VIDEO_DECODE_DPB_BIT_KHR,
|
||||
eFragmentDensityMapEXT = VK_IMAGE_USAGE_FRAGMENT_DENSITY_MAP_BIT_EXT,
|
||||
eFragmentShadingRateAttachmentKHR = VK_IMAGE_USAGE_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHR,
|
||||
eShadingRateImageNV = VK_IMAGE_USAGE_SHADING_RATE_IMAGE_BIT_NV,
|
||||
eFragmentDensityMapEXT = VK_IMAGE_USAGE_FRAGMENT_DENSITY_MAP_BIT_EXT,
|
||||
eHostTransferEXT = VK_IMAGE_USAGE_HOST_TRANSFER_BIT_EXT,
|
||||
eVideoEncodeDstKHR = VK_IMAGE_USAGE_VIDEO_ENCODE_DST_BIT_KHR,
|
||||
eVideoEncodeSrcKHR = VK_IMAGE_USAGE_VIDEO_ENCODE_SRC_BIT_KHR,
|
||||
@ -1972,7 +1972,7 @@ namespace VULKAN_HPP_NAMESPACE
|
||||
ImageUsageFlagBits::eTransferSrc | ImageUsageFlagBits::eTransferDst | ImageUsageFlagBits::eSampled | ImageUsageFlagBits::eStorage |
|
||||
ImageUsageFlagBits::eColorAttachment | ImageUsageFlagBits::eDepthStencilAttachment | ImageUsageFlagBits::eTransientAttachment |
|
||||
ImageUsageFlagBits::eInputAttachment | ImageUsageFlagBits::eVideoDecodeDstKHR | ImageUsageFlagBits::eVideoDecodeSrcKHR |
|
||||
ImageUsageFlagBits::eVideoDecodeDpbKHR | ImageUsageFlagBits::eFragmentShadingRateAttachmentKHR | ImageUsageFlagBits::eFragmentDensityMapEXT |
|
||||
ImageUsageFlagBits::eVideoDecodeDpbKHR | ImageUsageFlagBits::eFragmentDensityMapEXT | ImageUsageFlagBits::eFragmentShadingRateAttachmentKHR |
|
||||
ImageUsageFlagBits::eHostTransferEXT | ImageUsageFlagBits::eVideoEncodeDstKHR | ImageUsageFlagBits::eVideoEncodeSrcKHR |
|
||||
ImageUsageFlagBits::eVideoEncodeDpbKHR | ImageUsageFlagBits::eAttachmentFeedbackLoopEXT | ImageUsageFlagBits::eInvocationMaskHUAWEI |
|
||||
ImageUsageFlagBits::eSampleWeightQCOM | ImageUsageFlagBits::eSampleBlockMatchQCOM;
|
||||
@ -2155,14 +2155,14 @@ namespace VULKAN_HPP_NAMESPACE
|
||||
eAccelerationStructureBuildNV = VK_PIPELINE_STAGE_ACCELERATION_STRUCTURE_BUILD_BIT_NV,
|
||||
eRayTracingShaderKHR = VK_PIPELINE_STAGE_RAY_TRACING_SHADER_BIT_KHR,
|
||||
eRayTracingShaderNV = VK_PIPELINE_STAGE_RAY_TRACING_SHADER_BIT_NV,
|
||||
eFragmentDensityProcessEXT = VK_PIPELINE_STAGE_FRAGMENT_DENSITY_PROCESS_BIT_EXT,
|
||||
eFragmentShadingRateAttachmentKHR = VK_PIPELINE_STAGE_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHR,
|
||||
eShadingRateImageNV = VK_PIPELINE_STAGE_SHADING_RATE_IMAGE_BIT_NV,
|
||||
eCommandPreprocessNV = VK_PIPELINE_STAGE_COMMAND_PREPROCESS_BIT_NV,
|
||||
eTaskShaderEXT = VK_PIPELINE_STAGE_TASK_SHADER_BIT_EXT,
|
||||
eTaskShaderNV = VK_PIPELINE_STAGE_TASK_SHADER_BIT_NV,
|
||||
eMeshShaderEXT = VK_PIPELINE_STAGE_MESH_SHADER_BIT_EXT,
|
||||
eMeshShaderNV = VK_PIPELINE_STAGE_MESH_SHADER_BIT_NV,
|
||||
eFragmentDensityProcessEXT = VK_PIPELINE_STAGE_FRAGMENT_DENSITY_PROCESS_BIT_EXT,
|
||||
eCommandPreprocessNV = VK_PIPELINE_STAGE_COMMAND_PREPROCESS_BIT_NV
|
||||
eMeshShaderNV = VK_PIPELINE_STAGE_MESH_SHADER_BIT_NV
|
||||
};
|
||||
|
||||
using PipelineStageFlags = Flags<PipelineStageFlagBits>;
|
||||
@ -2178,9 +2178,9 @@ namespace VULKAN_HPP_NAMESPACE
|
||||
PipelineStageFlagBits::eColorAttachmentOutput | PipelineStageFlagBits::eComputeShader | PipelineStageFlagBits::eTransfer |
|
||||
PipelineStageFlagBits::eBottomOfPipe | PipelineStageFlagBits::eHost | PipelineStageFlagBits::eAllGraphics | PipelineStageFlagBits::eAllCommands |
|
||||
PipelineStageFlagBits::eNone | PipelineStageFlagBits::eTransformFeedbackEXT | PipelineStageFlagBits::eConditionalRenderingEXT |
|
||||
PipelineStageFlagBits::eAccelerationStructureBuildKHR | PipelineStageFlagBits::eRayTracingShaderKHR |
|
||||
PipelineStageFlagBits::eFragmentShadingRateAttachmentKHR | PipelineStageFlagBits::eTaskShaderEXT | PipelineStageFlagBits::eMeshShaderEXT |
|
||||
PipelineStageFlagBits::eFragmentDensityProcessEXT | PipelineStageFlagBits::eCommandPreprocessNV;
|
||||
PipelineStageFlagBits::eAccelerationStructureBuildKHR | PipelineStageFlagBits::eRayTracingShaderKHR | PipelineStageFlagBits::eFragmentDensityProcessEXT |
|
||||
PipelineStageFlagBits::eFragmentShadingRateAttachmentKHR | PipelineStageFlagBits::eCommandPreprocessNV | PipelineStageFlagBits::eTaskShaderEXT |
|
||||
PipelineStageFlagBits::eMeshShaderEXT;
|
||||
};
|
||||
|
||||
enum class MemoryMapFlagBits : VkMemoryMapFlags
|
||||
@ -2523,9 +2523,9 @@ namespace VULKAN_HPP_NAMESPACE
|
||||
eVideoDecodeSrcKHR = VK_IMAGE_LAYOUT_VIDEO_DECODE_SRC_KHR,
|
||||
eVideoDecodeDpbKHR = VK_IMAGE_LAYOUT_VIDEO_DECODE_DPB_KHR,
|
||||
eSharedPresentKHR = VK_IMAGE_LAYOUT_SHARED_PRESENT_KHR,
|
||||
eFragmentDensityMapOptimalEXT = VK_IMAGE_LAYOUT_FRAGMENT_DENSITY_MAP_OPTIMAL_EXT,
|
||||
eFragmentShadingRateAttachmentOptimalKHR = VK_IMAGE_LAYOUT_FRAGMENT_SHADING_RATE_ATTACHMENT_OPTIMAL_KHR,
|
||||
eShadingRateOptimalNV = VK_IMAGE_LAYOUT_SHADING_RATE_OPTIMAL_NV,
|
||||
eFragmentDensityMapOptimalEXT = VK_IMAGE_LAYOUT_FRAGMENT_DENSITY_MAP_OPTIMAL_EXT,
|
||||
eRenderingLocalReadKHR = VK_IMAGE_LAYOUT_RENDERING_LOCAL_READ_KHR,
|
||||
eVideoEncodeDstKHR = VK_IMAGE_LAYOUT_VIDEO_ENCODE_DST_KHR,
|
||||
eVideoEncodeSrcKHR = VK_IMAGE_LAYOUT_VIDEO_ENCODE_SRC_KHR,
|
||||
@ -2779,8 +2779,6 @@ namespace VULKAN_HPP_NAMESPACE
|
||||
eExclusiveScissorEnableNV = VK_DYNAMIC_STATE_EXCLUSIVE_SCISSOR_ENABLE_NV,
|
||||
eExclusiveScissorNV = VK_DYNAMIC_STATE_EXCLUSIVE_SCISSOR_NV,
|
||||
eFragmentShadingRateKHR = VK_DYNAMIC_STATE_FRAGMENT_SHADING_RATE_KHR,
|
||||
eLineStippleKHR = VK_DYNAMIC_STATE_LINE_STIPPLE_KHR,
|
||||
eLineStippleEXT = VK_DYNAMIC_STATE_LINE_STIPPLE_EXT,
|
||||
eVertexInputEXT = VK_DYNAMIC_STATE_VERTEX_INPUT_EXT,
|
||||
ePatchControlPointsEXT = VK_DYNAMIC_STATE_PATCH_CONTROL_POINTS_EXT,
|
||||
eLogicOpEXT = VK_DYNAMIC_STATE_LOGIC_OP_EXT,
|
||||
@ -2816,7 +2814,9 @@ namespace VULKAN_HPP_NAMESPACE
|
||||
eShadingRateImageEnableNV = VK_DYNAMIC_STATE_SHADING_RATE_IMAGE_ENABLE_NV,
|
||||
eRepresentativeFragmentTestEnableNV = VK_DYNAMIC_STATE_REPRESENTATIVE_FRAGMENT_TEST_ENABLE_NV,
|
||||
eCoverageReductionModeNV = VK_DYNAMIC_STATE_COVERAGE_REDUCTION_MODE_NV,
|
||||
eAttachmentFeedbackLoopEnableEXT = VK_DYNAMIC_STATE_ATTACHMENT_FEEDBACK_LOOP_ENABLE_EXT
|
||||
eAttachmentFeedbackLoopEnableEXT = VK_DYNAMIC_STATE_ATTACHMENT_FEEDBACK_LOOP_ENABLE_EXT,
|
||||
eLineStippleKHR = VK_DYNAMIC_STATE_LINE_STIPPLE_KHR,
|
||||
eLineStippleEXT = VK_DYNAMIC_STATE_LINE_STIPPLE_EXT
|
||||
};
|
||||
|
||||
enum class FrontFace
|
||||
@ -3241,9 +3241,9 @@ namespace VULKAN_HPP_NAMESPACE
|
||||
ePushDescriptorKHR = VK_DESCRIPTOR_SET_LAYOUT_CREATE_PUSH_DESCRIPTOR_BIT_KHR,
|
||||
eDescriptorBufferEXT = VK_DESCRIPTOR_SET_LAYOUT_CREATE_DESCRIPTOR_BUFFER_BIT_EXT,
|
||||
eEmbeddedImmutableSamplersEXT = VK_DESCRIPTOR_SET_LAYOUT_CREATE_EMBEDDED_IMMUTABLE_SAMPLERS_BIT_EXT,
|
||||
eIndirectBindableNV = VK_DESCRIPTOR_SET_LAYOUT_CREATE_INDIRECT_BINDABLE_BIT_NV,
|
||||
eHostOnlyPoolEXT = VK_DESCRIPTOR_SET_LAYOUT_CREATE_HOST_ONLY_POOL_BIT_EXT,
|
||||
eHostOnlyPoolVALVE = VK_DESCRIPTOR_SET_LAYOUT_CREATE_HOST_ONLY_POOL_BIT_VALVE,
|
||||
eIndirectBindableNV = VK_DESCRIPTOR_SET_LAYOUT_CREATE_INDIRECT_BINDABLE_BIT_NV,
|
||||
ePerStageNV = VK_DESCRIPTOR_SET_LAYOUT_CREATE_PER_STAGE_BIT_NV
|
||||
};
|
||||
|
||||
@ -3256,7 +3256,7 @@ namespace VULKAN_HPP_NAMESPACE
|
||||
static VULKAN_HPP_CONST_OR_CONSTEXPR DescriptorSetLayoutCreateFlags allFlags =
|
||||
DescriptorSetLayoutCreateFlagBits::eUpdateAfterBindPool | DescriptorSetLayoutCreateFlagBits::ePushDescriptorKHR |
|
||||
DescriptorSetLayoutCreateFlagBits::eDescriptorBufferEXT | DescriptorSetLayoutCreateFlagBits::eEmbeddedImmutableSamplersEXT |
|
||||
DescriptorSetLayoutCreateFlagBits::eHostOnlyPoolEXT | DescriptorSetLayoutCreateFlagBits::eIndirectBindableNV |
|
||||
DescriptorSetLayoutCreateFlagBits::eIndirectBindableNV | DescriptorSetLayoutCreateFlagBits::eHostOnlyPoolEXT |
|
||||
DescriptorSetLayoutCreateFlagBits::ePerStageNV;
|
||||
};
|
||||
|
||||
@ -3277,10 +3277,10 @@ namespace VULKAN_HPP_NAMESPACE
|
||||
eInlineUniformBlockEXT = VK_DESCRIPTOR_TYPE_INLINE_UNIFORM_BLOCK_EXT,
|
||||
eAccelerationStructureKHR = VK_DESCRIPTOR_TYPE_ACCELERATION_STRUCTURE_KHR,
|
||||
eAccelerationStructureNV = VK_DESCRIPTOR_TYPE_ACCELERATION_STRUCTURE_NV,
|
||||
eMutableEXT = VK_DESCRIPTOR_TYPE_MUTABLE_EXT,
|
||||
eMutableVALVE = VK_DESCRIPTOR_TYPE_MUTABLE_VALVE,
|
||||
eSampleWeightImageQCOM = VK_DESCRIPTOR_TYPE_SAMPLE_WEIGHT_IMAGE_QCOM,
|
||||
eBlockMatchImageQCOM = VK_DESCRIPTOR_TYPE_BLOCK_MATCH_IMAGE_QCOM
|
||||
eBlockMatchImageQCOM = VK_DESCRIPTOR_TYPE_BLOCK_MATCH_IMAGE_QCOM,
|
||||
eMutableEXT = VK_DESCRIPTOR_TYPE_MUTABLE_EXT,
|
||||
eMutableVALVE = VK_DESCRIPTOR_TYPE_MUTABLE_VALVE
|
||||
};
|
||||
|
||||
enum class DescriptorPoolResetFlagBits : VkDescriptorPoolResetFlags
|
||||
@ -3326,9 +3326,9 @@ namespace VULKAN_HPP_NAMESPACE
|
||||
eAccelerationStructureReadNV = VK_ACCESS_ACCELERATION_STRUCTURE_READ_BIT_NV,
|
||||
eAccelerationStructureWriteKHR = VK_ACCESS_ACCELERATION_STRUCTURE_WRITE_BIT_KHR,
|
||||
eAccelerationStructureWriteNV = VK_ACCESS_ACCELERATION_STRUCTURE_WRITE_BIT_NV,
|
||||
eFragmentDensityMapReadEXT = VK_ACCESS_FRAGMENT_DENSITY_MAP_READ_BIT_EXT,
|
||||
eFragmentShadingRateAttachmentReadKHR = VK_ACCESS_FRAGMENT_SHADING_RATE_ATTACHMENT_READ_BIT_KHR,
|
||||
eShadingRateImageReadNV = VK_ACCESS_SHADING_RATE_IMAGE_READ_BIT_NV,
|
||||
eFragmentDensityMapReadEXT = VK_ACCESS_FRAGMENT_DENSITY_MAP_READ_BIT_EXT,
|
||||
eCommandPreprocessReadNV = VK_ACCESS_COMMAND_PREPROCESS_READ_BIT_NV,
|
||||
eCommandPreprocessWriteNV = VK_ACCESS_COMMAND_PREPROCESS_WRITE_BIT_NV
|
||||
};
|
||||
@ -3346,8 +3346,8 @@ namespace VULKAN_HPP_NAMESPACE
|
||||
AccessFlagBits::eTransferRead | AccessFlagBits::eTransferWrite | AccessFlagBits::eHostRead | AccessFlagBits::eHostWrite | AccessFlagBits::eMemoryRead |
|
||||
AccessFlagBits::eMemoryWrite | AccessFlagBits::eNone | AccessFlagBits::eTransformFeedbackWriteEXT | AccessFlagBits::eTransformFeedbackCounterReadEXT |
|
||||
AccessFlagBits::eTransformFeedbackCounterWriteEXT | AccessFlagBits::eConditionalRenderingReadEXT | AccessFlagBits::eColorAttachmentReadNoncoherentEXT |
|
||||
AccessFlagBits::eAccelerationStructureReadKHR | AccessFlagBits::eAccelerationStructureWriteKHR | AccessFlagBits::eFragmentShadingRateAttachmentReadKHR |
|
||||
AccessFlagBits::eFragmentDensityMapReadEXT | AccessFlagBits::eCommandPreprocessReadNV | AccessFlagBits::eCommandPreprocessWriteNV;
|
||||
AccessFlagBits::eAccelerationStructureReadKHR | AccessFlagBits::eAccelerationStructureWriteKHR | AccessFlagBits::eFragmentDensityMapReadEXT |
|
||||
AccessFlagBits::eFragmentShadingRateAttachmentReadKHR | AccessFlagBits::eCommandPreprocessReadNV | AccessFlagBits::eCommandPreprocessWriteNV;
|
||||
};
|
||||
|
||||
enum class AttachmentDescriptionFlagBits : VkAttachmentDescriptionFlags
|
||||
|
@ -77,14 +77,14 @@ namespace VULKAN_HPP_NAMESPACE
|
||||
result += "CositedChromaSamples | ";
|
||||
if ( value & FormatFeatureFlagBits::eSampledImageFilterMinmax )
|
||||
result += "SampledImageFilterMinmax | ";
|
||||
if ( value & FormatFeatureFlagBits::eSampledImageFilterCubicEXT )
|
||||
result += "SampledImageFilterCubicEXT | ";
|
||||
if ( value & FormatFeatureFlagBits::eVideoDecodeOutputKHR )
|
||||
result += "VideoDecodeOutputKHR | ";
|
||||
if ( value & FormatFeatureFlagBits::eVideoDecodeDpbKHR )
|
||||
result += "VideoDecodeDpbKHR | ";
|
||||
if ( value & FormatFeatureFlagBits::eAccelerationStructureVertexBufferKHR )
|
||||
result += "AccelerationStructureVertexBufferKHR | ";
|
||||
if ( value & FormatFeatureFlagBits::eSampledImageFilterCubicEXT )
|
||||
result += "SampledImageFilterCubicEXT | ";
|
||||
if ( value & FormatFeatureFlagBits::eFragmentDensityMapEXT )
|
||||
result += "FragmentDensityMapEXT | ";
|
||||
if ( value & FormatFeatureFlagBits::eFragmentShadingRateAttachmentKHR )
|
||||
@ -175,10 +175,10 @@ namespace VULKAN_HPP_NAMESPACE
|
||||
result += "VideoDecodeSrcKHR | ";
|
||||
if ( value & ImageUsageFlagBits::eVideoDecodeDpbKHR )
|
||||
result += "VideoDecodeDpbKHR | ";
|
||||
if ( value & ImageUsageFlagBits::eFragmentShadingRateAttachmentKHR )
|
||||
result += "FragmentShadingRateAttachmentKHR | ";
|
||||
if ( value & ImageUsageFlagBits::eFragmentDensityMapEXT )
|
||||
result += "FragmentDensityMapEXT | ";
|
||||
if ( value & ImageUsageFlagBits::eFragmentShadingRateAttachmentKHR )
|
||||
result += "FragmentShadingRateAttachmentKHR | ";
|
||||
if ( value & ImageUsageFlagBits::eHostTransferEXT )
|
||||
result += "HostTransferEXT | ";
|
||||
if ( value & ImageUsageFlagBits::eVideoEncodeDstKHR )
|
||||
@ -368,16 +368,16 @@ namespace VULKAN_HPP_NAMESPACE
|
||||
result += "AccelerationStructureBuildKHR | ";
|
||||
if ( value & PipelineStageFlagBits::eRayTracingShaderKHR )
|
||||
result += "RayTracingShaderKHR | ";
|
||||
if ( value & PipelineStageFlagBits::eFragmentDensityProcessEXT )
|
||||
result += "FragmentDensityProcessEXT | ";
|
||||
if ( value & PipelineStageFlagBits::eFragmentShadingRateAttachmentKHR )
|
||||
result += "FragmentShadingRateAttachmentKHR | ";
|
||||
if ( value & PipelineStageFlagBits::eCommandPreprocessNV )
|
||||
result += "CommandPreprocessNV | ";
|
||||
if ( value & PipelineStageFlagBits::eTaskShaderEXT )
|
||||
result += "TaskShaderEXT | ";
|
||||
if ( value & PipelineStageFlagBits::eMeshShaderEXT )
|
||||
result += "MeshShaderEXT | ";
|
||||
if ( value & PipelineStageFlagBits::eFragmentDensityProcessEXT )
|
||||
result += "FragmentDensityProcessEXT | ";
|
||||
if ( value & PipelineStageFlagBits::eCommandPreprocessNV )
|
||||
result += "CommandPreprocessNV | ";
|
||||
|
||||
return "{ " + result.substr( 0, result.size() - 3 ) + " }";
|
||||
}
|
||||
@ -966,10 +966,10 @@ namespace VULKAN_HPP_NAMESPACE
|
||||
result += "DescriptorBufferEXT | ";
|
||||
if ( value & DescriptorSetLayoutCreateFlagBits::eEmbeddedImmutableSamplersEXT )
|
||||
result += "EmbeddedImmutableSamplersEXT | ";
|
||||
if ( value & DescriptorSetLayoutCreateFlagBits::eHostOnlyPoolEXT )
|
||||
result += "HostOnlyPoolEXT | ";
|
||||
if ( value & DescriptorSetLayoutCreateFlagBits::eIndirectBindableNV )
|
||||
result += "IndirectBindableNV | ";
|
||||
if ( value & DescriptorSetLayoutCreateFlagBits::eHostOnlyPoolEXT )
|
||||
result += "HostOnlyPoolEXT | ";
|
||||
if ( value & DescriptorSetLayoutCreateFlagBits::ePerStageNV )
|
||||
result += "PerStageNV | ";
|
||||
|
||||
@ -1030,10 +1030,10 @@ namespace VULKAN_HPP_NAMESPACE
|
||||
result += "AccelerationStructureReadKHR | ";
|
||||
if ( value & AccessFlagBits::eAccelerationStructureWriteKHR )
|
||||
result += "AccelerationStructureWriteKHR | ";
|
||||
if ( value & AccessFlagBits::eFragmentShadingRateAttachmentReadKHR )
|
||||
result += "FragmentShadingRateAttachmentReadKHR | ";
|
||||
if ( value & AccessFlagBits::eFragmentDensityMapReadEXT )
|
||||
result += "FragmentDensityMapReadEXT | ";
|
||||
if ( value & AccessFlagBits::eFragmentShadingRateAttachmentReadKHR )
|
||||
result += "FragmentShadingRateAttachmentReadKHR | ";
|
||||
if ( value & AccessFlagBits::eCommandPreprocessReadNV )
|
||||
result += "CommandPreprocessReadNV | ";
|
||||
if ( value & AccessFlagBits::eCommandPreprocessWriteNV )
|
||||
@ -4091,13 +4091,11 @@ namespace VULKAN_HPP_NAMESPACE
|
||||
case StructureType::ePipelineRepresentativeFragmentTestStateCreateInfoNV: return "PipelineRepresentativeFragmentTestStateCreateInfoNV";
|
||||
case StructureType::ePhysicalDeviceImageViewImageFormatInfoEXT: return "PhysicalDeviceImageViewImageFormatInfoEXT";
|
||||
case StructureType::eFilterCubicImageViewImageFormatPropertiesEXT: return "FilterCubicImageViewImageFormatPropertiesEXT";
|
||||
case StructureType::eDeviceQueueGlobalPriorityCreateInfoKHR: return "DeviceQueueGlobalPriorityCreateInfoKHR";
|
||||
case StructureType::eImportMemoryHostPointerInfoEXT: return "ImportMemoryHostPointerInfoEXT";
|
||||
case StructureType::eMemoryHostPointerPropertiesEXT: return "MemoryHostPointerPropertiesEXT";
|
||||
case StructureType::ePhysicalDeviceExternalMemoryHostPropertiesEXT: return "PhysicalDeviceExternalMemoryHostPropertiesEXT";
|
||||
case StructureType::ePhysicalDeviceShaderClockFeaturesKHR: return "PhysicalDeviceShaderClockFeaturesKHR";
|
||||
case StructureType::ePipelineCompilerControlCreateInfoAMD: return "PipelineCompilerControlCreateInfoAMD";
|
||||
case StructureType::eCalibratedTimestampInfoKHR: return "CalibratedTimestampInfoKHR";
|
||||
case StructureType::ePhysicalDeviceShaderCorePropertiesAMD: return "PhysicalDeviceShaderCorePropertiesAMD";
|
||||
case StructureType::eVideoDecodeH265CapabilitiesKHR: return "VideoDecodeH265CapabilitiesKHR";
|
||||
case StructureType::eVideoDecodeH265SessionParametersCreateInfoKHR: return "VideoDecodeH265SessionParametersCreateInfoKHR";
|
||||
@ -4105,19 +4103,17 @@ namespace VULKAN_HPP_NAMESPACE
|
||||
case StructureType::eVideoDecodeH265ProfileInfoKHR: return "VideoDecodeH265ProfileInfoKHR";
|
||||
case StructureType::eVideoDecodeH265PictureInfoKHR: return "VideoDecodeH265PictureInfoKHR";
|
||||
case StructureType::eVideoDecodeH265DpbSlotInfoKHR: return "VideoDecodeH265DpbSlotInfoKHR";
|
||||
case StructureType::eDeviceQueueGlobalPriorityCreateInfoKHR: return "DeviceQueueGlobalPriorityCreateInfoKHR";
|
||||
case StructureType::ePhysicalDeviceGlobalPriorityQueryFeaturesKHR: return "PhysicalDeviceGlobalPriorityQueryFeaturesKHR";
|
||||
case StructureType::eQueueFamilyGlobalPriorityPropertiesKHR: return "QueueFamilyGlobalPriorityPropertiesKHR";
|
||||
case StructureType::eDeviceMemoryOverallocationCreateInfoAMD: return "DeviceMemoryOverallocationCreateInfoAMD";
|
||||
case StructureType::ePhysicalDeviceVertexAttributeDivisorPropertiesEXT: return "PhysicalDeviceVertexAttributeDivisorPropertiesEXT";
|
||||
case StructureType::ePipelineVertexInputDivisorStateCreateInfoKHR: return "PipelineVertexInputDivisorStateCreateInfoKHR";
|
||||
case StructureType::ePhysicalDeviceVertexAttributeDivisorFeaturesKHR: return "PhysicalDeviceVertexAttributeDivisorFeaturesKHR";
|
||||
#if defined( VK_USE_PLATFORM_GGP )
|
||||
case StructureType::ePresentFrameTokenGGP: return "PresentFrameTokenGGP";
|
||||
#endif /*VK_USE_PLATFORM_GGP*/
|
||||
case StructureType::ePhysicalDeviceComputeShaderDerivativesFeaturesNV: return "PhysicalDeviceComputeShaderDerivativesFeaturesNV";
|
||||
case StructureType::ePhysicalDeviceMeshShaderFeaturesNV: return "PhysicalDeviceMeshShaderFeaturesNV";
|
||||
case StructureType::ePhysicalDeviceMeshShaderPropertiesNV: return "PhysicalDeviceMeshShaderPropertiesNV";
|
||||
case StructureType::ePhysicalDeviceFragmentShaderBarycentricFeaturesKHR: return "PhysicalDeviceFragmentShaderBarycentricFeaturesKHR";
|
||||
case StructureType::ePhysicalDeviceShaderImageFootprintFeaturesNV: return "PhysicalDeviceShaderImageFootprintFeaturesNV";
|
||||
case StructureType::ePipelineViewportExclusiveScissorStateCreateInfoNV: return "PipelineViewportExclusiveScissorStateCreateInfoNV";
|
||||
case StructureType::ePhysicalDeviceExclusiveScissorFeaturesNV: return "PhysicalDeviceExclusiveScissorFeaturesNV";
|
||||
@ -4180,11 +4176,7 @@ namespace VULKAN_HPP_NAMESPACE
|
||||
case StructureType::eSurfaceFullScreenExclusiveWin32InfoEXT: return "SurfaceFullScreenExclusiveWin32InfoEXT";
|
||||
#endif /*VK_USE_PLATFORM_WIN32_KHR*/
|
||||
case StructureType::eHeadlessSurfaceCreateInfoEXT: return "HeadlessSurfaceCreateInfoEXT";
|
||||
case StructureType::ePhysicalDeviceLineRasterizationFeaturesKHR: return "PhysicalDeviceLineRasterizationFeaturesKHR";
|
||||
case StructureType::ePipelineRasterizationLineStateCreateInfoKHR: return "PipelineRasterizationLineStateCreateInfoKHR";
|
||||
case StructureType::ePhysicalDeviceLineRasterizationPropertiesKHR: return "PhysicalDeviceLineRasterizationPropertiesKHR";
|
||||
case StructureType::ePhysicalDeviceShaderAtomicFloatFeaturesEXT: return "PhysicalDeviceShaderAtomicFloatFeaturesEXT";
|
||||
case StructureType::ePhysicalDeviceIndexTypeUint8FeaturesKHR: return "PhysicalDeviceIndexTypeUint8FeaturesKHR";
|
||||
case StructureType::ePhysicalDeviceExtendedDynamicStateFeaturesEXT: return "PhysicalDeviceExtendedDynamicStateFeaturesEXT";
|
||||
case StructureType::ePhysicalDevicePipelineExecutablePropertiesFeaturesKHR: return "PhysicalDevicePipelineExecutablePropertiesFeaturesKHR";
|
||||
case StructureType::ePipelineInfoKHR: return "PipelineInfoKHR";
|
||||
@ -4301,6 +4293,7 @@ namespace VULKAN_HPP_NAMESPACE
|
||||
case StructureType::ePhysicalDeviceGraphicsPipelineLibraryPropertiesEXT: return "PhysicalDeviceGraphicsPipelineLibraryPropertiesEXT";
|
||||
case StructureType::eGraphicsPipelineLibraryCreateInfoEXT: return "GraphicsPipelineLibraryCreateInfoEXT";
|
||||
case StructureType::ePhysicalDeviceShaderEarlyAndLateFragmentTestsFeaturesAMD: return "PhysicalDeviceShaderEarlyAndLateFragmentTestsFeaturesAMD";
|
||||
case StructureType::ePhysicalDeviceFragmentShaderBarycentricFeaturesKHR: return "PhysicalDeviceFragmentShaderBarycentricFeaturesKHR";
|
||||
case StructureType::ePhysicalDeviceFragmentShaderBarycentricPropertiesKHR: return "PhysicalDeviceFragmentShaderBarycentricPropertiesKHR";
|
||||
case StructureType::ePhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR: return "PhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR";
|
||||
case StructureType::ePhysicalDeviceFragmentShadingRateEnumsPropertiesNV: return "PhysicalDeviceFragmentShadingRateEnumsPropertiesNV";
|
||||
@ -4318,21 +4311,16 @@ namespace VULKAN_HPP_NAMESPACE
|
||||
case StructureType::ePhysicalDeviceWorkgroupMemoryExplicitLayoutFeaturesKHR: return "PhysicalDeviceWorkgroupMemoryExplicitLayoutFeaturesKHR";
|
||||
case StructureType::ePhysicalDeviceImageCompressionControlFeaturesEXT: return "PhysicalDeviceImageCompressionControlFeaturesEXT";
|
||||
case StructureType::eImageCompressionControlEXT: return "ImageCompressionControlEXT";
|
||||
case StructureType::eSubresourceLayout2KHR: return "SubresourceLayout2KHR";
|
||||
case StructureType::eImageSubresource2KHR: return "ImageSubresource2KHR";
|
||||
case StructureType::eImageCompressionPropertiesEXT: return "ImageCompressionPropertiesEXT";
|
||||
case StructureType::ePhysicalDeviceAttachmentFeedbackLoopLayoutFeaturesEXT: return "PhysicalDeviceAttachmentFeedbackLoopLayoutFeaturesEXT";
|
||||
case StructureType::ePhysicalDevice4444FormatsFeaturesEXT: return "PhysicalDevice4444FormatsFeaturesEXT";
|
||||
case StructureType::ePhysicalDeviceFaultFeaturesEXT: return "PhysicalDeviceFaultFeaturesEXT";
|
||||
case StructureType::eDeviceFaultCountsEXT: return "DeviceFaultCountsEXT";
|
||||
case StructureType::eDeviceFaultInfoEXT: return "DeviceFaultInfoEXT";
|
||||
case StructureType::ePhysicalDeviceRasterizationOrderAttachmentAccessFeaturesEXT: return "PhysicalDeviceRasterizationOrderAttachmentAccessFeaturesEXT";
|
||||
case StructureType::ePhysicalDeviceRgba10X6FormatsFeaturesEXT: return "PhysicalDeviceRgba10X6FormatsFeaturesEXT";
|
||||
#if defined( VK_USE_PLATFORM_DIRECTFB_EXT )
|
||||
case StructureType::eDirectfbSurfaceCreateInfoEXT: return "DirectfbSurfaceCreateInfoEXT";
|
||||
#endif /*VK_USE_PLATFORM_DIRECTFB_EXT*/
|
||||
case StructureType::ePhysicalDeviceMutableDescriptorTypeFeaturesEXT: return "PhysicalDeviceMutableDescriptorTypeFeaturesEXT";
|
||||
case StructureType::eMutableDescriptorTypeCreateInfoEXT: return "MutableDescriptorTypeCreateInfoEXT";
|
||||
case StructureType::ePhysicalDeviceVertexInputDynamicStateFeaturesEXT: return "PhysicalDeviceVertexInputDynamicStateFeaturesEXT";
|
||||
case StructureType::eVertexInputBindingDescription2EXT: return "VertexInputBindingDescription2EXT";
|
||||
case StructureType::eVertexInputAttributeDescription2EXT: return "VertexInputAttributeDescription2EXT";
|
||||
@ -4456,6 +4444,7 @@ namespace VULKAN_HPP_NAMESPACE
|
||||
case StructureType::ePhysicalDeviceShaderModuleIdentifierPropertiesEXT: return "PhysicalDeviceShaderModuleIdentifierPropertiesEXT";
|
||||
case StructureType::ePipelineShaderStageModuleIdentifierCreateInfoEXT: return "PipelineShaderStageModuleIdentifierCreateInfoEXT";
|
||||
case StructureType::eShaderModuleIdentifierEXT: return "ShaderModuleIdentifierEXT";
|
||||
case StructureType::ePhysicalDeviceRasterizationOrderAttachmentAccessFeaturesEXT: return "PhysicalDeviceRasterizationOrderAttachmentAccessFeaturesEXT";
|
||||
case StructureType::ePhysicalDeviceOpticalFlowFeaturesNV: return "PhysicalDeviceOpticalFlowFeaturesNV";
|
||||
case StructureType::ePhysicalDeviceOpticalFlowPropertiesNV: return "PhysicalDeviceOpticalFlowPropertiesNV";
|
||||
case StructureType::eOpticalFlowImageFormatInfoNV: return "OpticalFlowImageFormatInfoNV";
|
||||
@ -4474,6 +4463,8 @@ namespace VULKAN_HPP_NAMESPACE
|
||||
case StructureType::ePhysicalDeviceMaintenance5PropertiesKHR: return "PhysicalDeviceMaintenance5PropertiesKHR";
|
||||
case StructureType::eRenderingAreaInfoKHR: return "RenderingAreaInfoKHR";
|
||||
case StructureType::eDeviceImageSubresourceInfoKHR: return "DeviceImageSubresourceInfoKHR";
|
||||
case StructureType::eSubresourceLayout2KHR: return "SubresourceLayout2KHR";
|
||||
case StructureType::eImageSubresource2KHR: return "ImageSubresource2KHR";
|
||||
case StructureType::ePipelineCreateFlags2CreateInfoKHR: return "PipelineCreateFlags2CreateInfoKHR";
|
||||
case StructureType::eBufferUsageFlags2CreateInfoKHR: return "BufferUsageFlags2CreateInfoKHR";
|
||||
case StructureType::ePhysicalDeviceRayTracingPositionFetchFeaturesKHR: return "PhysicalDeviceRayTracingPositionFetchFeaturesKHR";
|
||||
@ -4489,6 +4480,8 @@ namespace VULKAN_HPP_NAMESPACE
|
||||
case StructureType::ePhysicalDeviceRayTracingInvocationReorderPropertiesNV: return "PhysicalDeviceRayTracingInvocationReorderPropertiesNV";
|
||||
case StructureType::ePhysicalDeviceExtendedSparseAddressSpaceFeaturesNV: return "PhysicalDeviceExtendedSparseAddressSpaceFeaturesNV";
|
||||
case StructureType::ePhysicalDeviceExtendedSparseAddressSpacePropertiesNV: return "PhysicalDeviceExtendedSparseAddressSpacePropertiesNV";
|
||||
case StructureType::ePhysicalDeviceMutableDescriptorTypeFeaturesEXT: return "PhysicalDeviceMutableDescriptorTypeFeaturesEXT";
|
||||
case StructureType::eMutableDescriptorTypeCreateInfoEXT: return "MutableDescriptorTypeCreateInfoEXT";
|
||||
case StructureType::eLayerSettingsCreateInfoEXT: return "LayerSettingsCreateInfoEXT";
|
||||
case StructureType::ePhysicalDeviceShaderCoreBuiltinsFeaturesARM: return "PhysicalDeviceShaderCoreBuiltinsFeaturesARM";
|
||||
case StructureType::ePhysicalDeviceShaderCoreBuiltinsPropertiesARM: return "PhysicalDeviceShaderCoreBuiltinsPropertiesARM";
|
||||
@ -4527,6 +4520,8 @@ namespace VULKAN_HPP_NAMESPACE
|
||||
case StructureType::ePhysicalDeviceCubicClampFeaturesQCOM: return "PhysicalDeviceCubicClampFeaturesQCOM";
|
||||
case StructureType::ePhysicalDeviceAttachmentFeedbackLoopDynamicStateFeaturesEXT: return "PhysicalDeviceAttachmentFeedbackLoopDynamicStateFeaturesEXT";
|
||||
case StructureType::ePhysicalDeviceVertexAttributeDivisorPropertiesKHR: return "PhysicalDeviceVertexAttributeDivisorPropertiesKHR";
|
||||
case StructureType::ePipelineVertexInputDivisorStateCreateInfoKHR: return "PipelineVertexInputDivisorStateCreateInfoKHR";
|
||||
case StructureType::ePhysicalDeviceVertexAttributeDivisorFeaturesKHR: return "PhysicalDeviceVertexAttributeDivisorFeaturesKHR";
|
||||
case StructureType::ePhysicalDeviceShaderFloatControls2FeaturesKHR: return "PhysicalDeviceShaderFloatControls2FeaturesKHR";
|
||||
#if defined( VK_USE_PLATFORM_SCREEN_QNX )
|
||||
case StructureType::eScreenBufferPropertiesQNX: return "ScreenBufferPropertiesQNX";
|
||||
@ -4536,6 +4531,11 @@ namespace VULKAN_HPP_NAMESPACE
|
||||
case StructureType::ePhysicalDeviceExternalMemoryScreenBufferFeaturesQNX: return "PhysicalDeviceExternalMemoryScreenBufferFeaturesQNX";
|
||||
#endif /*VK_USE_PLATFORM_SCREEN_QNX*/
|
||||
case StructureType::ePhysicalDeviceLayeredDriverPropertiesMSFT: return "PhysicalDeviceLayeredDriverPropertiesMSFT";
|
||||
case StructureType::ePhysicalDeviceIndexTypeUint8FeaturesKHR: return "PhysicalDeviceIndexTypeUint8FeaturesKHR";
|
||||
case StructureType::ePhysicalDeviceLineRasterizationFeaturesKHR: return "PhysicalDeviceLineRasterizationFeaturesKHR";
|
||||
case StructureType::ePipelineRasterizationLineStateCreateInfoKHR: return "PipelineRasterizationLineStateCreateInfoKHR";
|
||||
case StructureType::ePhysicalDeviceLineRasterizationPropertiesKHR: return "PhysicalDeviceLineRasterizationPropertiesKHR";
|
||||
case StructureType::eCalibratedTimestampInfoKHR: return "CalibratedTimestampInfoKHR";
|
||||
case StructureType::ePhysicalDeviceShaderExpectAssumeFeaturesKHR: return "PhysicalDeviceShaderExpectAssumeFeaturesKHR";
|
||||
case StructureType::ePhysicalDeviceMaintenance6FeaturesKHR: return "PhysicalDeviceMaintenance6FeaturesKHR";
|
||||
case StructureType::ePhysicalDeviceMaintenance6PropertiesKHR: return "PhysicalDeviceMaintenance6PropertiesKHR";
|
||||
@ -4927,10 +4927,10 @@ namespace VULKAN_HPP_NAMESPACE
|
||||
case FormatFeatureFlagBits::eDisjoint: return "Disjoint";
|
||||
case FormatFeatureFlagBits::eCositedChromaSamples: return "CositedChromaSamples";
|
||||
case FormatFeatureFlagBits::eSampledImageFilterMinmax: return "SampledImageFilterMinmax";
|
||||
case FormatFeatureFlagBits::eSampledImageFilterCubicEXT: return "SampledImageFilterCubicEXT";
|
||||
case FormatFeatureFlagBits::eVideoDecodeOutputKHR: return "VideoDecodeOutputKHR";
|
||||
case FormatFeatureFlagBits::eVideoDecodeDpbKHR: return "VideoDecodeDpbKHR";
|
||||
case FormatFeatureFlagBits::eAccelerationStructureVertexBufferKHR: return "AccelerationStructureVertexBufferKHR";
|
||||
case FormatFeatureFlagBits::eSampledImageFilterCubicEXT: return "SampledImageFilterCubicEXT";
|
||||
case FormatFeatureFlagBits::eFragmentDensityMapEXT: return "FragmentDensityMapEXT";
|
||||
case FormatFeatureFlagBits::eFragmentShadingRateAttachmentKHR: return "FragmentShadingRateAttachmentKHR";
|
||||
case FormatFeatureFlagBits::eVideoEncodeInputKHR: return "VideoEncodeInputKHR";
|
||||
@ -5004,8 +5004,8 @@ namespace VULKAN_HPP_NAMESPACE
|
||||
case ImageUsageFlagBits::eVideoDecodeDstKHR: return "VideoDecodeDstKHR";
|
||||
case ImageUsageFlagBits::eVideoDecodeSrcKHR: return "VideoDecodeSrcKHR";
|
||||
case ImageUsageFlagBits::eVideoDecodeDpbKHR: return "VideoDecodeDpbKHR";
|
||||
case ImageUsageFlagBits::eFragmentShadingRateAttachmentKHR: return "FragmentShadingRateAttachmentKHR";
|
||||
case ImageUsageFlagBits::eFragmentDensityMapEXT: return "FragmentDensityMapEXT";
|
||||
case ImageUsageFlagBits::eFragmentShadingRateAttachmentKHR: return "FragmentShadingRateAttachmentKHR";
|
||||
case ImageUsageFlagBits::eHostTransferEXT: return "HostTransferEXT";
|
||||
case ImageUsageFlagBits::eVideoEncodeDstKHR: return "VideoEncodeDstKHR";
|
||||
case ImageUsageFlagBits::eVideoEncodeSrcKHR: return "VideoEncodeSrcKHR";
|
||||
@ -5160,11 +5160,11 @@ namespace VULKAN_HPP_NAMESPACE
|
||||
case PipelineStageFlagBits::eConditionalRenderingEXT: return "ConditionalRenderingEXT";
|
||||
case PipelineStageFlagBits::eAccelerationStructureBuildKHR: return "AccelerationStructureBuildKHR";
|
||||
case PipelineStageFlagBits::eRayTracingShaderKHR: return "RayTracingShaderKHR";
|
||||
case PipelineStageFlagBits::eFragmentDensityProcessEXT: return "FragmentDensityProcessEXT";
|
||||
case PipelineStageFlagBits::eFragmentShadingRateAttachmentKHR: return "FragmentShadingRateAttachmentKHR";
|
||||
case PipelineStageFlagBits::eCommandPreprocessNV: return "CommandPreprocessNV";
|
||||
case PipelineStageFlagBits::eTaskShaderEXT: return "TaskShaderEXT";
|
||||
case PipelineStageFlagBits::eMeshShaderEXT: return "MeshShaderEXT";
|
||||
case PipelineStageFlagBits::eFragmentDensityProcessEXT: return "FragmentDensityProcessEXT";
|
||||
case PipelineStageFlagBits::eCommandPreprocessNV: return "CommandPreprocessNV";
|
||||
default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
|
||||
}
|
||||
}
|
||||
@ -5398,8 +5398,8 @@ namespace VULKAN_HPP_NAMESPACE
|
||||
case ImageLayout::eVideoDecodeSrcKHR: return "VideoDecodeSrcKHR";
|
||||
case ImageLayout::eVideoDecodeDpbKHR: return "VideoDecodeDpbKHR";
|
||||
case ImageLayout::eSharedPresentKHR: return "SharedPresentKHR";
|
||||
case ImageLayout::eFragmentShadingRateAttachmentOptimalKHR: return "FragmentShadingRateAttachmentOptimalKHR";
|
||||
case ImageLayout::eFragmentDensityMapOptimalEXT: return "FragmentDensityMapOptimalEXT";
|
||||
case ImageLayout::eFragmentShadingRateAttachmentOptimalKHR: return "FragmentShadingRateAttachmentOptimalKHR";
|
||||
case ImageLayout::eRenderingLocalReadKHR: return "RenderingLocalReadKHR";
|
||||
case ImageLayout::eVideoEncodeDstKHR: return "VideoEncodeDstKHR";
|
||||
case ImageLayout::eVideoEncodeSrcKHR: return "VideoEncodeSrcKHR";
|
||||
@ -5629,7 +5629,6 @@ namespace VULKAN_HPP_NAMESPACE
|
||||
case DynamicState::eExclusiveScissorEnableNV: return "ExclusiveScissorEnableNV";
|
||||
case DynamicState::eExclusiveScissorNV: return "ExclusiveScissorNV";
|
||||
case DynamicState::eFragmentShadingRateKHR: return "FragmentShadingRateKHR";
|
||||
case DynamicState::eLineStippleKHR: return "LineStippleKHR";
|
||||
case DynamicState::eVertexInputEXT: return "VertexInputEXT";
|
||||
case DynamicState::ePatchControlPointsEXT: return "PatchControlPointsEXT";
|
||||
case DynamicState::eLogicOpEXT: return "LogicOpEXT";
|
||||
@ -5666,6 +5665,7 @@ namespace VULKAN_HPP_NAMESPACE
|
||||
case DynamicState::eRepresentativeFragmentTestEnableNV: return "RepresentativeFragmentTestEnableNV";
|
||||
case DynamicState::eCoverageReductionModeNV: return "CoverageReductionModeNV";
|
||||
case DynamicState::eAttachmentFeedbackLoopEnableEXT: return "AttachmentFeedbackLoopEnableEXT";
|
||||
case DynamicState::eLineStippleKHR: return "LineStippleKHR";
|
||||
default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
|
||||
}
|
||||
}
|
||||
@ -5985,8 +5985,8 @@ namespace VULKAN_HPP_NAMESPACE
|
||||
case DescriptorSetLayoutCreateFlagBits::ePushDescriptorKHR: return "PushDescriptorKHR";
|
||||
case DescriptorSetLayoutCreateFlagBits::eDescriptorBufferEXT: return "DescriptorBufferEXT";
|
||||
case DescriptorSetLayoutCreateFlagBits::eEmbeddedImmutableSamplersEXT: return "EmbeddedImmutableSamplersEXT";
|
||||
case DescriptorSetLayoutCreateFlagBits::eHostOnlyPoolEXT: return "HostOnlyPoolEXT";
|
||||
case DescriptorSetLayoutCreateFlagBits::eIndirectBindableNV: return "IndirectBindableNV";
|
||||
case DescriptorSetLayoutCreateFlagBits::eHostOnlyPoolEXT: return "HostOnlyPoolEXT";
|
||||
case DescriptorSetLayoutCreateFlagBits::ePerStageNV: return "PerStageNV";
|
||||
default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
|
||||
}
|
||||
@ -6010,9 +6010,9 @@ namespace VULKAN_HPP_NAMESPACE
|
||||
case DescriptorType::eInlineUniformBlock: return "InlineUniformBlock";
|
||||
case DescriptorType::eAccelerationStructureKHR: return "AccelerationStructureKHR";
|
||||
case DescriptorType::eAccelerationStructureNV: return "AccelerationStructureNV";
|
||||
case DescriptorType::eMutableEXT: return "MutableEXT";
|
||||
case DescriptorType::eSampleWeightImageQCOM: return "SampleWeightImageQCOM";
|
||||
case DescriptorType::eBlockMatchImageQCOM: return "BlockMatchImageQCOM";
|
||||
case DescriptorType::eMutableEXT: return "MutableEXT";
|
||||
default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
|
||||
}
|
||||
}
|
||||
@ -6051,8 +6051,8 @@ namespace VULKAN_HPP_NAMESPACE
|
||||
case AccessFlagBits::eColorAttachmentReadNoncoherentEXT: return "ColorAttachmentReadNoncoherentEXT";
|
||||
case AccessFlagBits::eAccelerationStructureReadKHR: return "AccelerationStructureReadKHR";
|
||||
case AccessFlagBits::eAccelerationStructureWriteKHR: return "AccelerationStructureWriteKHR";
|
||||
case AccessFlagBits::eFragmentShadingRateAttachmentReadKHR: return "FragmentShadingRateAttachmentReadKHR";
|
||||
case AccessFlagBits::eFragmentDensityMapReadEXT: return "FragmentDensityMapReadEXT";
|
||||
case AccessFlagBits::eFragmentShadingRateAttachmentReadKHR: return "FragmentShadingRateAttachmentReadKHR";
|
||||
case AccessFlagBits::eCommandPreprocessReadNV: return "CommandPreprocessReadNV";
|
||||
case AccessFlagBits::eCommandPreprocessWriteNV: return "CommandPreprocessWriteNV";
|
||||
default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
|
||||
|
@ -449,7 +449,6 @@ export namespace VULKAN_HPP_NAMESPACE
|
||||
using VULKAN_HPP_NAMESPACE::MemoryMapFailedError;
|
||||
using VULKAN_HPP_NAMESPACE::NativeWindowInUseKHRError;
|
||||
using VULKAN_HPP_NAMESPACE::NoPipelineMatchError;
|
||||
using VULKAN_HPP_NAMESPACE::NotPermittedKHRError;
|
||||
using VULKAN_HPP_NAMESPACE::OutOfDateKHRError;
|
||||
using VULKAN_HPP_NAMESPACE::OutOfDeviceMemoryError;
|
||||
using VULKAN_HPP_NAMESPACE::OutOfHostMemoryError;
|
||||
|
@ -3704,14 +3704,6 @@ namespace VULKAN_HPP_NAMESPACE
|
||||
}
|
||||
};
|
||||
|
||||
class NotPermittedKHRError : public SystemError
|
||||
{
|
||||
public:
|
||||
NotPermittedKHRError( std::string const & message ) : SystemError( make_error_code( Result::eErrorNotPermittedKHR ), message ) {}
|
||||
|
||||
NotPermittedKHRError( char const * message ) : SystemError( make_error_code( Result::eErrorNotPermittedKHR ), message ) {}
|
||||
};
|
||||
|
||||
namespace detail
|
||||
{
|
||||
[[noreturn]] VULKAN_HPP_INLINE void throwResultException( Result result, char const * message )
|
||||
@ -3743,7 +3735,6 @@ namespace VULKAN_HPP_NAMESPACE
|
||||
case Result::eErrorOutOfDateKHR: throw OutOfDateKHRError( message );
|
||||
case Result::eErrorIncompatibleDisplayKHR: throw IncompatibleDisplayKHRError( message );
|
||||
case Result::eErrorInvalidDrmFormatModifierPlaneLayoutEXT: throw InvalidDrmFormatModifierPlaneLayoutEXTError( message );
|
||||
case Result::eErrorNotPermittedKHR: throw NotPermittedKHRError( message );
|
||||
default: throw SystemError( make_error_code( result ), message );
|
||||
}
|
||||
}
|
||||
|
@ -256,9 +256,7 @@ namespace VULKAN_HPP_NAMESPACE
|
||||
eSuboptimalKHR = VK_SUBOPTIMAL_KHR,
|
||||
eErrorOutOfDateKHR = VK_ERROR_OUT_OF_DATE_KHR,
|
||||
eErrorIncompatibleDisplayKHR = VK_ERROR_INCOMPATIBLE_DISPLAY_KHR,
|
||||
eErrorInvalidDrmFormatModifierPlaneLayoutEXT = VK_ERROR_INVALID_DRM_FORMAT_MODIFIER_PLANE_LAYOUT_EXT,
|
||||
eErrorNotPermittedKHR = VK_ERROR_NOT_PERMITTED_KHR,
|
||||
eErrorNotPermittedEXT = VK_ERROR_NOT_PERMITTED_EXT
|
||||
eErrorInvalidDrmFormatModifierPlaneLayoutEXT = VK_ERROR_INVALID_DRM_FORMAT_MODIFIER_PLANE_LAYOUT_EXT
|
||||
};
|
||||
|
||||
enum class StructureType
|
||||
@ -579,19 +577,11 @@ namespace VULKAN_HPP_NAMESPACE
|
||||
eDrmFormatModifierPropertiesList2EXT = VK_STRUCTURE_TYPE_DRM_FORMAT_MODIFIER_PROPERTIES_LIST_2_EXT,
|
||||
ePhysicalDeviceImageViewImageFormatInfoEXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_VIEW_IMAGE_FORMAT_INFO_EXT,
|
||||
eFilterCubicImageViewImageFormatPropertiesEXT = VK_STRUCTURE_TYPE_FILTER_CUBIC_IMAGE_VIEW_IMAGE_FORMAT_PROPERTIES_EXT,
|
||||
eDeviceQueueGlobalPriorityCreateInfoKHR = VK_STRUCTURE_TYPE_DEVICE_QUEUE_GLOBAL_PRIORITY_CREATE_INFO_KHR,
|
||||
eDeviceQueueGlobalPriorityCreateInfoEXT = VK_STRUCTURE_TYPE_DEVICE_QUEUE_GLOBAL_PRIORITY_CREATE_INFO_EXT,
|
||||
eImportMemoryHostPointerInfoEXT = VK_STRUCTURE_TYPE_IMPORT_MEMORY_HOST_POINTER_INFO_EXT,
|
||||
eMemoryHostPointerPropertiesEXT = VK_STRUCTURE_TYPE_MEMORY_HOST_POINTER_PROPERTIES_EXT,
|
||||
ePhysicalDeviceExternalMemoryHostPropertiesEXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_MEMORY_HOST_PROPERTIES_EXT,
|
||||
ePhysicalDeviceShaderClockFeaturesKHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CLOCK_FEATURES_KHR,
|
||||
eCalibratedTimestampInfoKHR = VK_STRUCTURE_TYPE_CALIBRATED_TIMESTAMP_INFO_KHR,
|
||||
eCalibratedTimestampInfoEXT = VK_STRUCTURE_TYPE_CALIBRATED_TIMESTAMP_INFO_EXT,
|
||||
ePhysicalDeviceVertexAttributeDivisorPropertiesEXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_ATTRIBUTE_DIVISOR_PROPERTIES_EXT,
|
||||
ePipelineVertexInputDivisorStateCreateInfoKHR = VK_STRUCTURE_TYPE_PIPELINE_VERTEX_INPUT_DIVISOR_STATE_CREATE_INFO_KHR,
|
||||
ePipelineVertexInputDivisorStateCreateInfoEXT = VK_STRUCTURE_TYPE_PIPELINE_VERTEX_INPUT_DIVISOR_STATE_CREATE_INFO_EXT,
|
||||
ePhysicalDeviceVertexAttributeDivisorFeaturesKHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_ATTRIBUTE_DIVISOR_FEATURES_KHR,
|
||||
ePhysicalDeviceVertexAttributeDivisorFeaturesEXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_ATTRIBUTE_DIVISOR_FEATURES_EXT,
|
||||
ePhysicalDevicePciBusInfoPropertiesEXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PCI_BUS_INFO_PROPERTIES_EXT,
|
||||
eFragmentShadingRateAttachmentInfoKHR = VK_STRUCTURE_TYPE_FRAGMENT_SHADING_RATE_ATTACHMENT_INFO_KHR,
|
||||
ePipelineFragmentShadingRateStateCreateInfoKHR = VK_STRUCTURE_TYPE_PIPELINE_FRAGMENT_SHADING_RATE_STATE_CREATE_INFO_KHR,
|
||||
@ -604,15 +594,7 @@ namespace VULKAN_HPP_NAMESPACE
|
||||
ePhysicalDeviceFragmentShaderInterlockFeaturesEXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADER_INTERLOCK_FEATURES_EXT,
|
||||
ePhysicalDeviceYcbcrImageArraysFeaturesEXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_YCBCR_IMAGE_ARRAYS_FEATURES_EXT,
|
||||
eHeadlessSurfaceCreateInfoEXT = VK_STRUCTURE_TYPE_HEADLESS_SURFACE_CREATE_INFO_EXT,
|
||||
ePhysicalDeviceLineRasterizationFeaturesKHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_LINE_RASTERIZATION_FEATURES_KHR,
|
||||
ePhysicalDeviceLineRasterizationFeaturesEXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_LINE_RASTERIZATION_FEATURES_EXT,
|
||||
ePipelineRasterizationLineStateCreateInfoKHR = VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_LINE_STATE_CREATE_INFO_KHR,
|
||||
ePipelineRasterizationLineStateCreateInfoEXT = VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_LINE_STATE_CREATE_INFO_EXT,
|
||||
ePhysicalDeviceLineRasterizationPropertiesKHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_LINE_RASTERIZATION_PROPERTIES_KHR,
|
||||
ePhysicalDeviceLineRasterizationPropertiesEXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_LINE_RASTERIZATION_PROPERTIES_EXT,
|
||||
ePhysicalDeviceShaderAtomicFloatFeaturesEXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_ATOMIC_FLOAT_FEATURES_EXT,
|
||||
ePhysicalDeviceIndexTypeUint8FeaturesKHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_INDEX_TYPE_UINT8_FEATURES_KHR,
|
||||
ePhysicalDeviceIndexTypeUint8FeaturesEXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_INDEX_TYPE_UINT8_FEATURES_EXT,
|
||||
ePhysicalDeviceExtendedDynamicStateFeaturesEXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTENDED_DYNAMIC_STATE_FEATURES_EXT,
|
||||
ePhysicalDeviceTexelBufferAlignmentFeaturesEXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXEL_BUFFER_ALIGNMENT_FEATURES_EXT,
|
||||
ePhysicalDeviceRobustness2FeaturesEXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ROBUSTNESS_2_FEATURES_EXT,
|
||||
@ -1750,8 +1732,6 @@ namespace VULKAN_HPP_NAMESPACE
|
||||
eDiscardRectangleModeEXT = VK_DYNAMIC_STATE_DISCARD_RECTANGLE_MODE_EXT,
|
||||
eSampleLocationsEXT = VK_DYNAMIC_STATE_SAMPLE_LOCATIONS_EXT,
|
||||
eFragmentShadingRateKHR = VK_DYNAMIC_STATE_FRAGMENT_SHADING_RATE_KHR,
|
||||
eLineStippleKHR = VK_DYNAMIC_STATE_LINE_STIPPLE_KHR,
|
||||
eLineStippleEXT = VK_DYNAMIC_STATE_LINE_STIPPLE_EXT,
|
||||
eVertexInputEXT = VK_DYNAMIC_STATE_VERTEX_INPUT_EXT,
|
||||
ePatchControlPointsEXT = VK_DYNAMIC_STATE_PATCH_CONTROL_POINTS_EXT,
|
||||
eLogicOpEXT = VK_DYNAMIC_STATE_LOGIC_OP_EXT,
|
||||
@ -2336,9 +2316,7 @@ namespace VULKAN_HPP_NAMESPACE
|
||||
enum class IndexType
|
||||
{
|
||||
eUint16 = VK_INDEX_TYPE_UINT16,
|
||||
eUint32 = VK_INDEX_TYPE_UINT32,
|
||||
eUint8KHR = VK_INDEX_TYPE_UINT8_KHR,
|
||||
eUint8EXT = VK_INDEX_TYPE_UINT8_EXT
|
||||
eUint32 = VK_INDEX_TYPE_UINT32
|
||||
};
|
||||
|
||||
enum class StencilFaceFlagBits : VkStencilFaceFlags
|
||||
@ -3635,7 +3613,7 @@ namespace VULKAN_HPP_NAMESPACE
|
||||
|
||||
//=== VK_VERSION_1_1 ===
|
||||
case VULKAN_HPP_NAMESPACE::ObjectType::eSamplerYcbcrConversion:
|
||||
return VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT::eUnknown;
|
||||
return VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT::eSamplerYcbcrConversion;
|
||||
|
||||
//=== VK_VERSION_1_3 ===
|
||||
case VULKAN_HPP_NAMESPACE::ObjectType::ePrivateDataSlot:
|
||||
|
@ -4343,7 +4343,7 @@ namespace VULKAN_HPP_NAMESPACE
|
||||
|
||||
static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::ObjectType objectType = VULKAN_HPP_NAMESPACE::ObjectType::eSamplerYcbcrConversion;
|
||||
static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT debugReportObjectType =
|
||||
VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT::eUnknown;
|
||||
VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT::eSamplerYcbcrConversion;
|
||||
|
||||
public:
|
||||
VULKAN_HPP_CONSTEXPR SamplerYcbcrConversion() = default;
|
||||
@ -4413,6 +4413,12 @@ namespace VULKAN_HPP_NAMESPACE
|
||||
using Type = VULKAN_HPP_NAMESPACE::SamplerYcbcrConversion;
|
||||
};
|
||||
|
||||
template <>
|
||||
struct CppType<VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT, VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT::eSamplerYcbcrConversion>
|
||||
{
|
||||
using Type = VULKAN_HPP_NAMESPACE::SamplerYcbcrConversion;
|
||||
};
|
||||
|
||||
#if ( VK_USE_64_BIT_PTR_DEFINES == 1 )
|
||||
template <>
|
||||
struct CppType<VkSamplerYcbcrConversion, VK_NULL_HANDLE>
|
||||
|
@ -5594,7 +5594,7 @@ namespace VULKAN_HPP_NAMESPACE
|
||||
|
||||
static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::ObjectType objectType = VULKAN_HPP_NAMESPACE::ObjectType::eSamplerYcbcrConversion;
|
||||
static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT debugReportObjectType =
|
||||
VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT::eUnknown;
|
||||
VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT::eSamplerYcbcrConversion;
|
||||
|
||||
public:
|
||||
# if !defined( VULKAN_HPP_RAII_NO_EXCEPTIONS )
|
||||
|
@ -1676,7 +1676,6 @@ namespace VULKAN_HPP_NAMESPACE
|
||||
case Result::eErrorOutOfDateKHR: return "ErrorOutOfDateKHR";
|
||||
case Result::eErrorIncompatibleDisplayKHR: return "ErrorIncompatibleDisplayKHR";
|
||||
case Result::eErrorInvalidDrmFormatModifierPlaneLayoutEXT: return "ErrorInvalidDrmFormatModifierPlaneLayoutEXT";
|
||||
case Result::eErrorNotPermittedKHR: return "ErrorNotPermittedKHR";
|
||||
default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
|
||||
}
|
||||
}
|
||||
@ -1974,15 +1973,11 @@ namespace VULKAN_HPP_NAMESPACE
|
||||
case StructureType::eDrmFormatModifierPropertiesList2EXT: return "DrmFormatModifierPropertiesList2EXT";
|
||||
case StructureType::ePhysicalDeviceImageViewImageFormatInfoEXT: return "PhysicalDeviceImageViewImageFormatInfoEXT";
|
||||
case StructureType::eFilterCubicImageViewImageFormatPropertiesEXT: return "FilterCubicImageViewImageFormatPropertiesEXT";
|
||||
case StructureType::eDeviceQueueGlobalPriorityCreateInfoKHR: return "DeviceQueueGlobalPriorityCreateInfoKHR";
|
||||
case StructureType::eImportMemoryHostPointerInfoEXT: return "ImportMemoryHostPointerInfoEXT";
|
||||
case StructureType::eMemoryHostPointerPropertiesEXT: return "MemoryHostPointerPropertiesEXT";
|
||||
case StructureType::ePhysicalDeviceExternalMemoryHostPropertiesEXT: return "PhysicalDeviceExternalMemoryHostPropertiesEXT";
|
||||
case StructureType::ePhysicalDeviceShaderClockFeaturesKHR: return "PhysicalDeviceShaderClockFeaturesKHR";
|
||||
case StructureType::eCalibratedTimestampInfoKHR: return "CalibratedTimestampInfoKHR";
|
||||
case StructureType::ePhysicalDeviceVertexAttributeDivisorPropertiesEXT: return "PhysicalDeviceVertexAttributeDivisorPropertiesEXT";
|
||||
case StructureType::ePipelineVertexInputDivisorStateCreateInfoKHR: return "PipelineVertexInputDivisorStateCreateInfoKHR";
|
||||
case StructureType::ePhysicalDeviceVertexAttributeDivisorFeaturesKHR: return "PhysicalDeviceVertexAttributeDivisorFeaturesKHR";
|
||||
case StructureType::ePhysicalDevicePciBusInfoPropertiesEXT: return "PhysicalDevicePciBusInfoPropertiesEXT";
|
||||
case StructureType::eFragmentShadingRateAttachmentInfoKHR: return "FragmentShadingRateAttachmentInfoKHR";
|
||||
case StructureType::ePipelineFragmentShadingRateStateCreateInfoKHR: return "PipelineFragmentShadingRateStateCreateInfoKHR";
|
||||
@ -1995,11 +1990,7 @@ namespace VULKAN_HPP_NAMESPACE
|
||||
case StructureType::ePhysicalDeviceFragmentShaderInterlockFeaturesEXT: return "PhysicalDeviceFragmentShaderInterlockFeaturesEXT";
|
||||
case StructureType::ePhysicalDeviceYcbcrImageArraysFeaturesEXT: return "PhysicalDeviceYcbcrImageArraysFeaturesEXT";
|
||||
case StructureType::eHeadlessSurfaceCreateInfoEXT: return "HeadlessSurfaceCreateInfoEXT";
|
||||
case StructureType::ePhysicalDeviceLineRasterizationFeaturesKHR: return "PhysicalDeviceLineRasterizationFeaturesKHR";
|
||||
case StructureType::ePipelineRasterizationLineStateCreateInfoKHR: return "PipelineRasterizationLineStateCreateInfoKHR";
|
||||
case StructureType::ePhysicalDeviceLineRasterizationPropertiesKHR: return "PhysicalDeviceLineRasterizationPropertiesKHR";
|
||||
case StructureType::ePhysicalDeviceShaderAtomicFloatFeaturesEXT: return "PhysicalDeviceShaderAtomicFloatFeaturesEXT";
|
||||
case StructureType::ePhysicalDeviceIndexTypeUint8FeaturesKHR: return "PhysicalDeviceIndexTypeUint8FeaturesKHR";
|
||||
case StructureType::ePhysicalDeviceExtendedDynamicStateFeaturesEXT: return "PhysicalDeviceExtendedDynamicStateFeaturesEXT";
|
||||
case StructureType::ePhysicalDeviceTexelBufferAlignmentFeaturesEXT: return "PhysicalDeviceTexelBufferAlignmentFeaturesEXT";
|
||||
case StructureType::ePhysicalDeviceRobustness2FeaturesEXT: return "PhysicalDeviceRobustness2FeaturesEXT";
|
||||
@ -2969,7 +2960,6 @@ namespace VULKAN_HPP_NAMESPACE
|
||||
case DynamicState::eDiscardRectangleModeEXT: return "DiscardRectangleModeEXT";
|
||||
case DynamicState::eSampleLocationsEXT: return "SampleLocationsEXT";
|
||||
case DynamicState::eFragmentShadingRateKHR: return "FragmentShadingRateKHR";
|
||||
case DynamicState::eLineStippleKHR: return "LineStippleKHR";
|
||||
case DynamicState::eVertexInputEXT: return "VertexInputEXT";
|
||||
case DynamicState::ePatchControlPointsEXT: return "PatchControlPointsEXT";
|
||||
case DynamicState::eLogicOpEXT: return "LogicOpEXT";
|
||||
@ -3416,7 +3406,6 @@ namespace VULKAN_HPP_NAMESPACE
|
||||
{
|
||||
case IndexType::eUint16: return "Uint16";
|
||||
case IndexType::eUint32: return "Uint32";
|
||||
case IndexType::eUint8KHR: return "Uint8KHR";
|
||||
default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
|
||||
}
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user