/* Ċ Ġ* ĠCopyright ĠL WJ GL . ĠAll Ġrights Ġreserved . Ċ Ġ* ĠLicense Ġterms : Ġhttps :// www . lwjgl . org / license Ċ Ġ* ĠM ACH INE ĠGENERATED ĠFILE , ĠDO ĠNOT ĠEDIT Ċ Ġ*/ Ċ package Ġv ulkan . templates Ċ Ċ import Ġorg . lwjgl . generator .* Ċ import Ġv ulkan .* Ċ Ċ val ĠK HR _ maintenance 4 Ġ= Ġ" KHR Maintenance 4 ". native Class VK (" KHR _ maintenance 4 ", Ġtype Ġ= Ġ" device ", Ġpostfix Ġ= Ġ" KHR ") Ġ{ ĊĠĠĠ Ġdocumentation Ġ= ĊĠĠĠĠĠĠĠ Ġ""" ĊĠĠĠĠĠĠĠ Ġ{@ code ĠVK _ KHR _ maintenance 4 } Ġadds Ġa Ġcollection Ġof Ġminor Ġfeatures , Ġnone Ġof Ġwhich Ġwould Ġwarr ant Ġan Ġentire Ġextension Ġof Ġtheir Ġown . ĊĊĠĠĠĠĠĠĠ ĠThe Ġnew Ġfeatures Ġare Ġas Ġfollows : ĊĊĠĠĠĠĠĠĠ Ġ< ul > ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ< li > Allow Ġthe Ġapplication Ġto Ġdestroy Ġtheir Ġ{@ code ĠVk Pipeline Layout } Ġobject Ġimmediately Ġafter Ġit Ġwas Ġused Ġto Ġcreate Ġanother Ġobject . ĠIt Ġis Ġno Ġlonger Ġnecessary Ġto Ġkeep Ġits Ġhandle Ġvalid Ġwhile Ġthe Ġcreated Ġobject Ġis Ġin Ġuse .</ li > ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ< li > Add Ġa Ġnew Ġ< a Ġtarget ="_ blank " Ġhref =" https :// www . kh ronos . org / registry / v ulkan / specs / 1 . 3 - extensions / html / vk spec . html \ # limits - max BufferSize ">{ @ code Ġmax BufferSize }</ a > Ġimplementation - defined Ġlimit Ġfor Ġthe Ġmaximum Ġsize Ġ{@ code ĠVk Buffer } Ġthat Ġ< b > can </ b > Ġbe Ġcreated .</ li > ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ< li > Add Ġsupport Ġfor Ġthe ĠSPI R - V Ġ 1 . 2 Ġ{@ code ĠLocal Size Id } Ġexecution Ġmode , Ġwhich Ġcan Ġbe Ġused Ġas Ġan Ġalternative Ġto Ġ{@ code ĠLocal Size } Ġto Ġspecify Ġthe Ġlocal Ġwork group Ġsize Ġwith Ġspecial ization Ġconstants .</ li > ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ< li > Add Ġa Ġguarantee Ġthat Ġimages Ġcreated Ġwith Ġidentical Ġcreation Ġparameters Ġwill Ġalways Ġhave Ġthe Ġsame Ġalignment Ġrequirements .</ li > ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ< li > Add Ġnew Ġ# GetDevice Buffer Memory Requirements KHR (), Ġ# GetDevice Image Memory Requirements KHR (), Ġand Ġ# GetDevice Image Sparse Memory Requirements KHR () Ġto Ġallow Ġthe Ġapplication Ġto Ġquery Ġthe Ġimage Ġmemory Ġrequirements Ġwithout Ġhaving Ġto Ġcreate Ġan Ġimage Ġobject Ġand Ġquery Ġit .</ li > ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ< li > Rel ax Ġthe Ġrequirement Ġthat Ġpush Ġconstants Ġmust Ġbe Ġinitialized Ġbefore Ġthey Ġare Ġdynamically Ġaccessed .</ li > ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ< li > Rel ax Ġthe Ġinterface Ġmatching Ġrules Ġto Ġallow Ġa Ġlarger Ġoutput Ġvector Ġto Ġmatch Ġwith Ġa Ġsmaller Ġinput Ġvector , Ġwith Ġadditional Ġvalues Ġbeing Ġdiscarded .</ li > ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ< li > Add Ġa Ġguarantee Ġfor Ġbuffer Ġmemory Ġrequirement Ġthat Ġthe Ġsize Ġmemory Ġrequirement Ġis Ġnever Ġgreater Ġthan Ġthe Ġresult Ġof Ġalign ing Ġcreate Ġsize Ġwith Ġthe Ġalignment Ġmemory Ġrequirement .</ li > ĊĠĠĠĠĠĠĠ Ġ</ ul > ĊĊĠĠĠĠĠĠĠ Ġ< h 5 > Promotion Ġto ĠVulkan Ġ 1 . 3 </ h 5 > ĊĠĠĠĠĠĠĠ ĠFunction ality Ġin Ġthis Ġextension Ġis Ġincluded Ġin Ġcore ĠVulkan Ġ 1 . 3 , Ġwith Ġthe ĠK HR Ġsuffix Ġomitted . ĠThe Ġoriginal Ġtype , Ġenum Ġand Ġcommand Ġnames Ġare Ġstill Ġavailable Ġas Ġaliases Ġof Ġthe Ġcore Ġfunctionality . ĊĊĠĠĠĠĠĠĠ Ġ< h 5 > VK _ KHR _ maintenance 4 </ h 5 > ĊĠĠĠĠĠĠĠ Ġ< dl > ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ< dt >< b > Name ĠString </ b ></ dt > ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ< dd >{@ code ĠVK _ KHR _ maintenance 4 }</ dd > ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġ< dt >< b > Extension ĠType </ b ></ dt > ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ< dd > Device Ġextension </ dd > ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġ< dt >< b > Registered ĠExtension ĠNumber </ b ></ dt > ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ< dd > 4 1 4 </ dd > ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġ< dt >< b > Revision </ b ></ dt > ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ< dd > 2 </ dd > ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġ< dt >< b > Extension Ġand ĠVersion ĠDependencies </ b ></ dt > ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ< dd >< ul > ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ< li > Requires ĠVulkan Ġ 1 . 1 </ li > ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ</ ul ></ dd > ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġ< dt >< b > De precation Ġstate </ b ></ dt > ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ< dd >< ul > ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ< li >< em > Prom oted </ em > Ġto Ġ< a Ġtarget ="_ blank " Ġhref =" https :// www . kh ronos . org / registry / v ulkan / specs / 1 . 3 - extensions / html / vk spec . html \ # versions - 1 . 3 - prom otions "> Vulkan Ġ 1 . 3 </ a ></ li > ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ</ ul ></ dd > ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġ< dt >< b > Contact </ b ></ dt > ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ< dd >< ul > ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ< li > Pi ers ĠDaniel l Ġ< a Ġtarget ="_ blank " Ġhref =" https :// github . com / Kh ronos Group / Vulkan - Docs / issues / new ? body =[ VK _ KHR _ maintenance 4 ] % 2 0 @ pd an iel l - nv % 2 5 0 A % 3 C % 3 CH ere % 2 0 describe % 2 0 the % 2 0 issue % 2 0 or % 2 0 question % 2 0 you % 2 0 have % 2 0 about % 2 0 the % 2 0 VK _ KHR _ maintenance 4 % 2 0 extension % 3 E % 3 E "> pd an iel l - nv </ a ></ li > ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ</ ul ></ dd > ĊĠĠĠĠĠĠĠ Ġ</ dl > ĊĊĠĠĠĠĠĠĠ Ġ< h 5 > Other ĠExtension ĠMetadata </ h 5 > ĊĠĠĠĠĠĠĠ Ġ< dl > ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ< dt >< b > Last ĠModified ĠDate </ b ></ dt > ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ< dd > 2 0 2 1 - 1 0 - 2 5 </ dd > ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġ< dt >< b > Interactions Ġand ĠExternal ĠDependencies </ b ></ dt > ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ< dd >< ul > ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ< li > Prom oted Ġto ĠVulkan Ġ 1 . 3 ĠCore </ li > ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ< li > Requires ĠSPI R - V Ġ 1 . 2 Ġfor Ġ{@ code ĠLocal Size Id }</ li > ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ</ ul ></ dd > ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġ< dt >< b > Contribut ors </ b ></ dt > ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ< dd >< ul > ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ< li > L ion el ĠD uc , ĠNVIDIA </ li > ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ< li > J ason ĠE k strand , ĠIntel </ li > ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ< li > S pen cer ĠF ric ke , ĠSamsung </ li > ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ< li > To bias ĠH ector , ĠAMD </ li > ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ< li > L ion el ĠLand wer lin , ĠIntel </ li > ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ< li > G ra eme ĠLee se , ĠBroad com </ li > ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ< li > Tom ĠOl son , ĠArm </ li > ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ< li > St u ĠSmith , ĠAMD </ li > ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ< li > Yi wei ĠZ hang , ĠGoogle </ li > ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ</ ul ></ dd > ĊĠĠĠĠĠĠĠ Ġ</ dl > ĊĠĠĠĠĠĠĠ Ġ""" ĊĊĠĠĠ ĠInt Constant ( ĊĠĠĠĠĠĠĠ Ġ" The Ġextension Ġspecification Ġversion .", ĊĊĠĠĠĠĠĠĠ Ġ" KHR _ MA INTEN ANCE _ 4 _ SPEC _ VERSION " .." 2 " ĊĠĠĠ Ġ) ĊĊĠĠĠ ĠString Constant ( ĊĠĠĠĠĠĠĠ Ġ" The Ġextension Ġname .", ĊĊĠĠĠĠĠĠĠ Ġ" KHR _ MA INTEN ANCE _ 4 _ EXTENSION _ NAME " .." VK _ KHR _ maintenance 4 " ĊĠĠĠ Ġ) ĊĊĠĠĠ ĠEnum Constant ( ĊĠĠĠĠĠĠĠ Ġ" Ext ends Ġ{@ code ĠVk Structure Type }. ", ĊĊĠĠĠĠĠĠĠ Ġ" STRUCTURE _ TYPE _ PHYSICAL _ DEVICE _ MA INTEN ANCE _ 4 _ FEATURES _ KHR " .." 1 0 0 0 4 1 3 0 0 0 ", ĊĠĠĠĠĠĠĠ Ġ" STRUCTURE _ TYPE _ PHYSICAL _ DEVICE _ MA INTEN ANCE _ 4 _ PROPERTIES _ KHR " .." 1 0 0 0 4 1 3 0 0 1 ", ĊĠĠĠĠĠĠĠ Ġ" STRUCTURE _ TYPE _ DEVICE _ BUFFER _ MEMORY _ REQUIRE MENTS _ KHR " .." 1 0 0 0 4 1 3 0 0 2 ", ĊĠĠĠĠĠĠĠ Ġ" STRUCTURE _ TYPE _ DEVICE _ IMAGE _ MEMORY _ REQUIRE MENTS _ KHR " .." 1 0 0 0 4 1 3 0 0 3 " ĊĠĠĠ Ġ) ĊĊĠĠĠ ĠEnum Constant ( ĊĠĠĠĠĠĠĠ Ġ" Ext ends Ġ{@ code ĠVk Image Aspect Flag Bits }. ", ĊĊĠĠĠĠĠĠĠ Ġ" IMAGE _ AS PECT _ NONE _ KHR " .." 0 " ĊĠĠĠ Ġ) ĊĊĠĠĠ Ġvoid ( ĊĠĠĠĠĠĠĠ Ġ" GetDevice Buffer Memory Requirements KHR ", ĊĠĠĠĠĠĠĠ Ġ" See Ġ# GetDevice Buffer Memory Requirements (). ", ĊĊĠĠĠĠĠĠĠ ĠVk Device (" device ", Ġ" the Ġlogical Ġdevice Ġintended Ġto Ġown Ġthe Ġbuffer ."), ĊĠĠĠĠĠĠĠ ĠVk Device Buffer Memory Requirements . const . p (" p Info ", Ġ" a Ġpointer Ġto Ġa Ġ## VkDevice Buffer Memory Requirements Ġstructure Ġcontaining Ġparameters Ġrequired Ġfor Ġthe Ġmemory Ġrequirements Ġquery ."), ĊĠĠĠĠĠĠĠ ĠVk Memory Requirements 2 . p (" p Memory Requirements ", Ġ" a Ġpointer Ġto Ġa Ġ## Vk Memory Requirements 2 Ġstructure Ġin Ġwhich Ġthe Ġmemory Ġrequirements Ġof Ġthe Ġbuffer Ġobject Ġare Ġreturned .") ĊĠĠĠ Ġ) ĊĊĠĠĠ Ġvoid ( ĊĠĠĠĠĠĠĠ Ġ" GetDevice Image Memory Requirements KHR ", ĊĠĠĠĠĠĠĠ Ġ" See Ġ# GetDevice Image Memory Requirements (). ", ĊĊĠĠĠĠĠĠĠ ĠVk Device (" device ", Ġ" the Ġlogical Ġdevice Ġintended Ġto Ġown Ġthe Ġimage ."), ĊĠĠĠĠĠĠĠ ĠVk Device Image Memory Requirements . const . p (" p Info ", Ġ" a Ġpointer Ġto Ġa Ġ## VkDevice Image Memory Requirements Ġstructure Ġcontaining Ġparameters Ġrequired Ġfor Ġthe Ġmemory Ġrequirements Ġquery ."), ĊĠĠĠĠĠĠĠ ĠVk Memory Requirements 2 . p (" p Memory Requirements ", Ġ" a Ġpointer Ġto Ġa Ġ## Vk Memory Requirements 2 Ġstructure Ġin Ġwhich Ġthe Ġmemory Ġrequirements Ġof Ġthe Ġimage Ġobject Ġare Ġreturned .") ĊĠĠĠ Ġ) ĊĊĠĠĠ Ġvoid ( ĊĠĠĠĠĠĠĠ Ġ" GetDevice Image Sparse Memory Requirements KHR ", ĊĠĠĠĠĠĠĠ Ġ" See Ġ# GetDevice Image Sparse Memory Requirements (). ", ĊĊĠĠĠĠĠĠĠ ĠVk Device (" device ", Ġ" the Ġlogical Ġdevice Ġintended Ġto Ġown Ġthe Ġimage ."), ĊĠĠĠĠĠĠĠ ĠVk Device Image Memory Requirements . const . p (" p Info ", Ġ" a Ġpointer Ġto Ġa Ġ## VkDevice Image Memory Requirements Ġstructure Ġcontaining Ġparameters Ġrequired Ġfor Ġthe Ġmemory Ġrequirements Ġquery ."), ĊĠĠĠĠĠĠĠ ĠAuto Size (" p Sparse Memory Requirements ") .. Check ( 1 ) .. uint 3 2 _ t . p (" p Sparse Memory Requirement Count ", Ġ" a Ġpointer Ġto Ġan Ġinteger Ġrelated Ġto Ġthe Ġnumber Ġof Ġsparse Ġmemory Ġrequirements Ġavailable Ġor Ġqueried , Ġas Ġdescribed Ġbelow ."), ĊĠĠĠĠĠĠĠ Ġnullable .. Vk Sparse Image Memory Requirements 2 . p (" p Sparse Memory Requirements ", Ġ" either Ġ{@ code ĠNULL } Ġor Ġa Ġpointer Ġto Ġan Ġarray Ġof Ġ## Vk Sparse Image Memory Requirements 2 Ġstructures .") ĊĠĠĠ Ġ) Ċ }