vk_enum_string_helper.h 490 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294129512961297129812991300130113021303130413051306130713081309131013111312131313141315131613171318131913201321132213231324132513261327132813291330133113321333133413351336133713381339134013411342134313441345134613471348134913501351135213531354135513561357135813591360136113621363136413651366136713681369137013711372137313741375137613771378137913801381138213831384138513861387138813891390139113921393139413951396139713981399140014011402140314041405140614071408140914101411141214131414141514161417141814191420142114221423142414251426142714281429143014311432143314341435143614371438143914401441144214431444144514461447144814491450145114521453145414551456145714581459146014611462146314641465146614671468146914701471147214731474147514761477147814791480148114821483148414851486148714881489149014911492149314941495149614971498149915001501150215031504150515061507150815091510151115121513151415151516151715181519152015211522152315241525152615271528152915301531153215331534153515361537153815391540154115421543154415451546154715481549155015511552155315541555155615571558155915601561156215631564156515661567156815691570157115721573157415751576157715781579158015811582158315841585158615871588158915901591159215931594159515961597159815991600160116021603160416051606160716081609161016111612161316141615161616171618161916201621162216231624162516261627162816291630163116321633163416351636163716381639164016411642164316441645164616471648164916501651165216531654165516561657165816591660166116621663166416651666166716681669167016711672167316741675167616771678167916801681168216831684168516861687168816891690169116921693169416951696169716981699170017011702170317041705170617071708170917101711171217131714171517161717171817191720172117221723172417251726172717281729173017311732173317341735173617371738173917401741174217431744174517461747174817491750175117521753175417551756175717581759176017611762176317641765176617671768176917701771177217731774177517761777177817791780178117821783178417851786178717881789179017911792179317941795179617971798179918001801180218031804180518061807180818091810181118121813181418151816181718181819182018211822182318241825182618271828182918301831183218331834183518361837183818391840184118421843184418451846184718481849185018511852185318541855185618571858185918601861186218631864186518661867186818691870187118721873187418751876187718781879188018811882188318841885188618871888188918901891189218931894189518961897189818991900190119021903190419051906190719081909191019111912191319141915191619171918191919201921192219231924192519261927192819291930193119321933193419351936193719381939194019411942194319441945194619471948194919501951195219531954195519561957195819591960196119621963196419651966196719681969197019711972197319741975197619771978197919801981198219831984198519861987198819891990199119921993199419951996199719981999200020012002200320042005200620072008200920102011201220132014201520162017201820192020202120222023202420252026202720282029203020312032203320342035203620372038203920402041204220432044204520462047204820492050205120522053205420552056205720582059206020612062206320642065206620672068206920702071207220732074207520762077207820792080208120822083208420852086208720882089209020912092209320942095209620972098209921002101210221032104210521062107210821092110211121122113211421152116211721182119212021212122212321242125212621272128212921302131213221332134213521362137213821392140214121422143214421452146214721482149215021512152215321542155215621572158215921602161216221632164216521662167216821692170217121722173217421752176217721782179218021812182218321842185218621872188218921902191219221932194219521962197219821992200220122022203220422052206220722082209221022112212221322142215221622172218221922202221222222232224222522262227222822292230223122322233223422352236223722382239224022412242224322442245224622472248224922502251225222532254225522562257225822592260226122622263226422652266226722682269227022712272227322742275227622772278227922802281228222832284228522862287228822892290229122922293229422952296229722982299230023012302230323042305230623072308230923102311231223132314231523162317231823192320232123222323232423252326232723282329233023312332233323342335233623372338233923402341234223432344234523462347234823492350235123522353235423552356235723582359236023612362236323642365236623672368236923702371237223732374237523762377237823792380238123822383238423852386238723882389239023912392239323942395239623972398239924002401240224032404240524062407240824092410241124122413241424152416241724182419242024212422242324242425242624272428242924302431243224332434243524362437243824392440244124422443244424452446244724482449245024512452245324542455245624572458245924602461246224632464246524662467246824692470247124722473247424752476247724782479248024812482248324842485248624872488248924902491249224932494249524962497249824992500250125022503250425052506250725082509251025112512251325142515251625172518251925202521252225232524252525262527252825292530253125322533253425352536253725382539254025412542254325442545254625472548254925502551255225532554255525562557255825592560256125622563256425652566256725682569257025712572257325742575257625772578257925802581258225832584258525862587258825892590259125922593259425952596259725982599260026012602260326042605260626072608260926102611261226132614261526162617261826192620262126222623262426252626262726282629263026312632263326342635263626372638263926402641264226432644264526462647264826492650265126522653265426552656265726582659266026612662266326642665266626672668266926702671267226732674267526762677267826792680268126822683268426852686268726882689269026912692269326942695269626972698269927002701270227032704270527062707270827092710271127122713271427152716271727182719272027212722272327242725272627272728272927302731273227332734273527362737273827392740274127422743274427452746274727482749275027512752275327542755275627572758275927602761276227632764276527662767276827692770277127722773277427752776277727782779278027812782278327842785278627872788278927902791279227932794279527962797279827992800280128022803280428052806280728082809281028112812281328142815281628172818281928202821282228232824282528262827282828292830283128322833283428352836283728382839284028412842284328442845284628472848284928502851285228532854285528562857285828592860286128622863286428652866286728682869287028712872287328742875287628772878287928802881288228832884288528862887288828892890289128922893289428952896289728982899290029012902290329042905290629072908290929102911291229132914291529162917291829192920292129222923292429252926292729282929293029312932293329342935293629372938293929402941294229432944294529462947294829492950295129522953295429552956295729582959296029612962296329642965296629672968296929702971297229732974297529762977297829792980298129822983298429852986298729882989299029912992299329942995299629972998299930003001300230033004300530063007300830093010301130123013301430153016301730183019302030213022302330243025302630273028302930303031303230333034303530363037303830393040304130423043304430453046304730483049305030513052305330543055305630573058305930603061306230633064306530663067306830693070307130723073307430753076307730783079308030813082308330843085308630873088308930903091309230933094309530963097309830993100310131023103310431053106310731083109311031113112311331143115311631173118311931203121312231233124312531263127312831293130313131323133313431353136313731383139314031413142314331443145314631473148314931503151315231533154315531563157315831593160316131623163316431653166316731683169317031713172317331743175317631773178317931803181318231833184318531863187318831893190319131923193319431953196319731983199320032013202320332043205320632073208320932103211321232133214321532163217321832193220322132223223322432253226322732283229323032313232323332343235323632373238323932403241324232433244324532463247324832493250325132523253325432553256325732583259326032613262326332643265326632673268326932703271327232733274327532763277327832793280328132823283328432853286328732883289329032913292329332943295329632973298329933003301330233033304330533063307330833093310331133123313331433153316331733183319332033213322332333243325332633273328332933303331333233333334333533363337333833393340334133423343334433453346334733483349335033513352335333543355335633573358335933603361336233633364336533663367336833693370337133723373337433753376337733783379338033813382338333843385338633873388338933903391339233933394339533963397339833993400340134023403340434053406340734083409341034113412341334143415341634173418341934203421342234233424342534263427342834293430343134323433343434353436343734383439344034413442344334443445344634473448344934503451345234533454345534563457345834593460346134623463346434653466346734683469347034713472347334743475347634773478347934803481348234833484348534863487348834893490349134923493349434953496349734983499350035013502350335043505350635073508350935103511351235133514351535163517351835193520352135223523352435253526352735283529353035313532353335343535353635373538353935403541354235433544354535463547354835493550355135523553355435553556355735583559356035613562356335643565356635673568356935703571357235733574357535763577357835793580358135823583358435853586358735883589359035913592359335943595359635973598359936003601360236033604360536063607360836093610361136123613361436153616361736183619362036213622362336243625362636273628362936303631363236333634363536363637363836393640364136423643364436453646364736483649365036513652365336543655365636573658365936603661366236633664366536663667366836693670367136723673367436753676367736783679368036813682368336843685368636873688368936903691369236933694369536963697369836993700370137023703370437053706370737083709371037113712371337143715371637173718371937203721372237233724372537263727372837293730373137323733373437353736373737383739374037413742374337443745374637473748374937503751375237533754375537563757375837593760376137623763376437653766376737683769377037713772377337743775377637773778377937803781378237833784378537863787378837893790379137923793379437953796379737983799380038013802380338043805380638073808380938103811381238133814381538163817381838193820382138223823382438253826382738283829383038313832383338343835383638373838383938403841384238433844384538463847384838493850385138523853385438553856385738583859386038613862386338643865386638673868386938703871387238733874387538763877387838793880388138823883388438853886388738883889389038913892389338943895389638973898389939003901390239033904390539063907390839093910391139123913391439153916391739183919392039213922392339243925392639273928392939303931393239333934393539363937393839393940394139423943394439453946394739483949395039513952395339543955395639573958395939603961396239633964396539663967396839693970397139723973397439753976397739783979398039813982398339843985398639873988398939903991399239933994399539963997399839994000400140024003400440054006400740084009401040114012401340144015401640174018401940204021402240234024402540264027402840294030403140324033403440354036403740384039404040414042404340444045404640474048404940504051405240534054405540564057405840594060406140624063406440654066406740684069407040714072407340744075407640774078407940804081408240834084408540864087408840894090409140924093409440954096409740984099410041014102410341044105410641074108410941104111411241134114411541164117411841194120412141224123412441254126412741284129413041314132413341344135413641374138413941404141414241434144414541464147414841494150415141524153415441554156415741584159416041614162416341644165416641674168416941704171417241734174417541764177417841794180418141824183418441854186418741884189419041914192419341944195419641974198419942004201420242034204420542064207420842094210421142124213421442154216421742184219422042214222422342244225422642274228422942304231423242334234423542364237423842394240424142424243424442454246424742484249425042514252425342544255425642574258425942604261426242634264426542664267426842694270427142724273427442754276427742784279428042814282428342844285428642874288428942904291429242934294429542964297429842994300430143024303430443054306430743084309431043114312431343144315431643174318431943204321432243234324432543264327432843294330433143324333433443354336433743384339434043414342434343444345434643474348434943504351435243534354435543564357435843594360436143624363436443654366436743684369437043714372437343744375437643774378437943804381438243834384438543864387438843894390439143924393439443954396439743984399440044014402440344044405440644074408440944104411441244134414441544164417441844194420442144224423442444254426442744284429443044314432443344344435443644374438443944404441444244434444444544464447444844494450445144524453445444554456445744584459446044614462446344644465446644674468446944704471447244734474447544764477447844794480448144824483448444854486448744884489449044914492449344944495449644974498449945004501450245034504450545064507450845094510451145124513451445154516451745184519452045214522452345244525452645274528452945304531453245334534453545364537453845394540454145424543454445454546454745484549455045514552455345544555455645574558455945604561456245634564456545664567456845694570457145724573457445754576457745784579458045814582458345844585458645874588458945904591459245934594459545964597459845994600460146024603460446054606460746084609461046114612461346144615461646174618461946204621462246234624462546264627462846294630463146324633463446354636463746384639464046414642464346444645464646474648464946504651465246534654465546564657465846594660466146624663466446654666466746684669467046714672467346744675467646774678467946804681468246834684468546864687468846894690469146924693469446954696469746984699470047014702470347044705470647074708470947104711471247134714471547164717471847194720472147224723472447254726472747284729473047314732473347344735473647374738473947404741474247434744474547464747474847494750475147524753475447554756475747584759476047614762476347644765476647674768476947704771477247734774477547764777477847794780478147824783478447854786478747884789479047914792479347944795479647974798479948004801480248034804480548064807480848094810481148124813481448154816481748184819482048214822482348244825482648274828482948304831483248334834483548364837483848394840484148424843484448454846484748484849485048514852485348544855485648574858485948604861486248634864486548664867486848694870487148724873487448754876487748784879488048814882488348844885488648874888488948904891489248934894489548964897489848994900490149024903490449054906490749084909491049114912491349144915491649174918491949204921492249234924492549264927492849294930493149324933493449354936493749384939494049414942494349444945494649474948494949504951495249534954495549564957495849594960496149624963496449654966496749684969497049714972497349744975497649774978497949804981498249834984498549864987498849894990499149924993499449954996499749984999500050015002500350045005500650075008500950105011501250135014501550165017501850195020502150225023502450255026502750285029503050315032503350345035503650375038503950405041504250435044504550465047504850495050505150525053505450555056505750585059506050615062506350645065506650675068506950705071507250735074507550765077507850795080508150825083508450855086508750885089509050915092509350945095509650975098509951005101510251035104510551065107510851095110511151125113511451155116511751185119512051215122512351245125512651275128512951305131513251335134513551365137513851395140514151425143514451455146514751485149515051515152515351545155515651575158515951605161516251635164516551665167516851695170517151725173517451755176517751785179518051815182518351845185518651875188518951905191519251935194519551965197519851995200520152025203520452055206520752085209521052115212521352145215521652175218521952205221522252235224522552265227522852295230523152325233523452355236523752385239524052415242524352445245524652475248524952505251525252535254525552565257525852595260526152625263526452655266526752685269527052715272527352745275527652775278527952805281528252835284528552865287528852895290529152925293529452955296529752985299530053015302530353045305530653075308530953105311531253135314531553165317531853195320532153225323532453255326532753285329533053315332533353345335533653375338533953405341534253435344534553465347534853495350535153525353535453555356535753585359536053615362536353645365536653675368536953705371537253735374537553765377537853795380538153825383538453855386538753885389539053915392539353945395539653975398539954005401540254035404540554065407540854095410541154125413541454155416541754185419542054215422542354245425542654275428542954305431543254335434543554365437543854395440544154425443544454455446544754485449545054515452545354545455545654575458545954605461546254635464546554665467546854695470547154725473547454755476547754785479548054815482548354845485548654875488548954905491549254935494549554965497549854995500550155025503550455055506550755085509551055115512551355145515551655175518551955205521552255235524552555265527552855295530553155325533553455355536553755385539554055415542554355445545554655475548554955505551555255535554555555565557555855595560556155625563556455655566556755685569557055715572557355745575557655775578557955805581558255835584558555865587558855895590559155925593559455955596559755985599560056015602560356045605560656075608560956105611561256135614561556165617561856195620562156225623562456255626562756285629563056315632563356345635563656375638563956405641564256435644564556465647564856495650565156525653565456555656565756585659566056615662566356645665566656675668566956705671567256735674567556765677567856795680568156825683568456855686568756885689569056915692569356945695569656975698569957005701570257035704570557065707570857095710571157125713571457155716571757185719572057215722572357245725572657275728572957305731573257335734573557365737573857395740574157425743574457455746574757485749575057515752575357545755575657575758575957605761576257635764576557665767576857695770577157725773577457755776577757785779578057815782578357845785578657875788578957905791579257935794579557965797579857995800580158025803580458055806580758085809581058115812581358145815581658175818581958205821582258235824582558265827582858295830583158325833583458355836583758385839584058415842584358445845584658475848584958505851585258535854585558565857585858595860586158625863586458655866586758685869587058715872587358745875587658775878587958805881588258835884588558865887588858895890589158925893589458955896589758985899590059015902590359045905590659075908590959105911591259135914591559165917591859195920592159225923592459255926592759285929593059315932593359345935593659375938593959405941594259435944594559465947594859495950595159525953595459555956595759585959596059615962596359645965596659675968596959705971597259735974597559765977597859795980598159825983598459855986598759885989599059915992599359945995599659975998599960006001600260036004600560066007600860096010601160126013601460156016601760186019602060216022602360246025602660276028602960306031603260336034603560366037603860396040604160426043604460456046604760486049605060516052605360546055605660576058605960606061606260636064606560666067606860696070607160726073607460756076607760786079608060816082608360846085608660876088608960906091609260936094609560966097609860996100610161026103610461056106610761086109611061116112611361146115611661176118611961206121612261236124612561266127612861296130613161326133613461356136613761386139614061416142614361446145614661476148614961506151615261536154615561566157615861596160616161626163616461656166616761686169617061716172617361746175617661776178617961806181618261836184618561866187618861896190619161926193619461956196619761986199620062016202620362046205620662076208620962106211621262136214621562166217621862196220622162226223622462256226622762286229623062316232623362346235623662376238623962406241624262436244624562466247624862496250625162526253625462556256625762586259626062616262626362646265626662676268626962706271627262736274627562766277627862796280628162826283628462856286628762886289629062916292629362946295629662976298629963006301630263036304630563066307630863096310631163126313631463156316631763186319632063216322632363246325632663276328632963306331633263336334633563366337633863396340634163426343634463456346634763486349635063516352635363546355635663576358635963606361636263636364636563666367636863696370637163726373637463756376637763786379638063816382638363846385638663876388638963906391639263936394639563966397639863996400640164026403640464056406640764086409641064116412641364146415641664176418641964206421642264236424642564266427642864296430643164326433643464356436643764386439644064416442644364446445644664476448644964506451645264536454645564566457645864596460646164626463646464656466646764686469647064716472647364746475647664776478647964806481648264836484648564866487648864896490649164926493649464956496649764986499650065016502650365046505650665076508650965106511651265136514651565166517651865196520652165226523652465256526652765286529653065316532653365346535653665376538653965406541654265436544654565466547654865496550655165526553655465556556655765586559656065616562656365646565656665676568656965706571657265736574657565766577657865796580658165826583658465856586658765886589659065916592659365946595659665976598659966006601660266036604660566066607660866096610661166126613661466156616661766186619662066216622662366246625662666276628662966306631663266336634663566366637663866396640664166426643664466456646664766486649665066516652665366546655665666576658665966606661666266636664666566666667666866696670667166726673667466756676667766786679668066816682668366846685668666876688668966906691669266936694669566966697669866996700670167026703670467056706670767086709671067116712671367146715671667176718671967206721672267236724672567266727672867296730673167326733673467356736673767386739674067416742674367446745674667476748674967506751675267536754675567566757675867596760676167626763676467656766676767686769677067716772677367746775677667776778677967806781678267836784678567866787678867896790679167926793679467956796679767986799680068016802680368046805680668076808680968106811681268136814681568166817681868196820682168226823682468256826682768286829683068316832683368346835683668376838683968406841684268436844684568466847684868496850685168526853685468556856685768586859686068616862686368646865686668676868686968706871687268736874687568766877687868796880688168826883688468856886688768886889689068916892689368946895689668976898689969006901690269036904690569066907690869096910691169126913691469156916691769186919692069216922692369246925692669276928692969306931693269336934693569366937693869396940694169426943694469456946694769486949695069516952695369546955695669576958695969606961696269636964696569666967696869696970697169726973697469756976697769786979698069816982698369846985698669876988698969906991699269936994699569966997699869997000700170027003700470057006700770087009701070117012701370147015701670177018701970207021702270237024702570267027702870297030703170327033703470357036703770387039704070417042704370447045704670477048704970507051705270537054705570567057705870597060706170627063706470657066706770687069707070717072707370747075707670777078707970807081708270837084708570867087708870897090709170927093709470957096709770987099710071017102710371047105710671077108710971107111711271137114711571167117711871197120712171227123712471257126712771287129713071317132713371347135713671377138713971407141714271437144714571467147714871497150715171527153715471557156715771587159716071617162716371647165716671677168716971707171717271737174717571767177717871797180718171827183718471857186718771887189719071917192719371947195719671977198719972007201720272037204720572067207720872097210721172127213721472157216721772187219722072217222722372247225722672277228722972307231723272337234723572367237723872397240724172427243724472457246724772487249725072517252725372547255725672577258725972607261726272637264726572667267726872697270727172727273727472757276727772787279728072817282728372847285728672877288728972907291729272937294729572967297729872997300730173027303730473057306730773087309731073117312731373147315731673177318731973207321732273237324732573267327732873297330733173327333733473357336733773387339734073417342734373447345734673477348734973507351735273537354735573567357735873597360736173627363736473657366736773687369737073717372737373747375737673777378737973807381738273837384738573867387738873897390739173927393739473957396739773987399740074017402740374047405740674077408740974107411741274137414741574167417741874197420742174227423742474257426742774287429743074317432743374347435743674377438743974407441744274437444744574467447744874497450745174527453745474557456745774587459746074617462746374647465746674677468746974707471747274737474747574767477747874797480748174827483748474857486748774887489749074917492749374947495749674977498749975007501750275037504750575067507750875097510751175127513751475157516751775187519752075217522752375247525752675277528752975307531753275337534753575367537753875397540754175427543754475457546754775487549755075517552755375547555755675577558755975607561756275637564756575667567756875697570757175727573757475757576757775787579758075817582758375847585758675877588758975907591759275937594759575967597759875997600760176027603760476057606760776087609761076117612761376147615761676177618761976207621762276237624762576267627762876297630763176327633763476357636763776387639764076417642764376447645764676477648764976507651765276537654765576567657765876597660766176627663766476657666766776687669767076717672767376747675767676777678767976807681768276837684768576867687768876897690769176927693769476957696769776987699770077017702770377047705770677077708770977107711771277137714771577167717771877197720772177227723772477257726772777287729773077317732773377347735773677377738773977407741774277437744774577467747774877497750775177527753775477557756775777587759776077617762776377647765776677677768776977707771777277737774777577767777777877797780778177827783778477857786778777887789779077917792779377947795779677977798779978007801780278037804780578067807780878097810781178127813781478157816781778187819782078217822782378247825782678277828782978307831783278337834783578367837783878397840784178427843784478457846784778487849785078517852785378547855785678577858785978607861786278637864786578667867786878697870787178727873787478757876787778787879788078817882788378847885788678877888788978907891789278937894789578967897789878997900790179027903790479057906790779087909791079117912791379147915791679177918791979207921792279237924792579267927792879297930793179327933793479357936793779387939794079417942794379447945794679477948794979507951795279537954795579567957795879597960796179627963796479657966796779687969797079717972797379747975797679777978797979807981798279837984798579867987798879897990799179927993799479957996799779987999800080018002800380048005800680078008800980108011801280138014801580168017801880198020802180228023802480258026802780288029803080318032803380348035803680378038803980408041804280438044804580468047804880498050805180528053805480558056805780588059806080618062806380648065806680678068806980708071807280738074807580768077807880798080808180828083808480858086808780888089809080918092809380948095809680978098809981008101810281038104810581068107810881098110811181128113811481158116811781188119812081218122812381248125812681278128812981308131813281338134813581368137813881398140814181428143814481458146814781488149815081518152815381548155815681578158815981608161816281638164816581668167816881698170817181728173817481758176817781788179818081818182818381848185818681878188818981908191819281938194819581968197819881998200820182028203820482058206820782088209821082118212821382148215821682178218821982208221822282238224822582268227822882298230823182328233823482358236823782388239824082418242824382448245824682478248824982508251825282538254825582568257825882598260826182628263826482658266826782688269827082718272827382748275827682778278827982808281828282838284828582868287828882898290829182928293829482958296829782988299830083018302830383048305830683078308830983108311831283138314831583168317831883198320832183228323832483258326832783288329833083318332833383348335833683378338833983408341834283438344834583468347834883498350835183528353835483558356835783588359836083618362836383648365836683678368836983708371837283738374837583768377837883798380838183828383838483858386838783888389839083918392839383948395839683978398839984008401840284038404840584068407840884098410841184128413841484158416841784188419842084218422842384248425842684278428842984308431843284338434843584368437843884398440844184428443844484458446844784488449845084518452845384548455845684578458845984608461846284638464846584668467846884698470847184728473847484758476847784788479848084818482848384848485848684878488848984908491849284938494849584968497849884998500850185028503850485058506850785088509851085118512851385148515851685178518851985208521852285238524852585268527852885298530853185328533853485358536853785388539854085418542854385448545854685478548854985508551855285538554855585568557855885598560856185628563856485658566856785688569857085718572857385748575857685778578857985808581858285838584858585868587858885898590859185928593859485958596859785988599860086018602860386048605860686078608860986108611861286138614861586168617861886198620862186228623862486258626862786288629863086318632863386348635863686378638863986408641864286438644864586468647864886498650865186528653865486558656865786588659866086618662866386648665866686678668866986708671867286738674867586768677867886798680868186828683868486858686868786888689869086918692869386948695869686978698869987008701870287038704870587068707870887098710871187128713871487158716871787188719872087218722872387248725872687278728872987308731873287338734873587368737873887398740874187428743874487458746874787488749875087518752875387548755875687578758875987608761876287638764876587668767876887698770877187728773877487758776877787788779878087818782878387848785878687878788878987908791879287938794879587968797879887998800880188028803880488058806880788088809881088118812881388148815881688178818881988208821882288238824882588268827882888298830883188328833883488358836883788388839884088418842884388448845884688478848884988508851885288538854885588568857885888598860886188628863886488658866886788688869887088718872887388748875887688778878887988808881888288838884888588868887888888898890889188928893889488958896889788988899890089018902890389048905890689078908890989108911891289138914891589168917891889198920892189228923892489258926892789288929893089318932893389348935893689378938893989408941894289438944894589468947894889498950895189528953895489558956895789588959896089618962896389648965896689678968896989708971897289738974897589768977897889798980898189828983898489858986898789888989899089918992899389948995899689978998899990009001900290039004900590069007900890099010901190129013901490159016901790189019902090219022902390249025902690279028902990309031903290339034903590369037903890399040904190429043904490459046904790489049905090519052905390549055905690579058905990609061906290639064906590669067906890699070907190729073907490759076907790789079908090819082908390849085908690879088908990909091909290939094909590969097909890999100910191029103910491059106910791089109911091119112911391149115911691179118911991209121912291239124912591269127912891299130913191329133913491359136913791389139914091419142914391449145914691479148914991509151915291539154915591569157915891599160916191629163916491659166916791689169917091719172917391749175917691779178917991809181918291839184918591869187918891899190919191929193919491959196919791989199920092019202920392049205920692079208920992109211921292139214921592169217921892199220922192229223922492259226922792289229923092319232923392349235923692379238923992409241924292439244924592469247924892499250925192529253925492559256925792589259926092619262926392649265926692679268926992709271927292739274927592769277927892799280928192829283928492859286928792889289929092919292929392949295929692979298929993009301930293039304930593069307930893099310931193129313931493159316931793189319932093219322932393249325932693279328932993309331933293339334933593369337933893399340934193429343934493459346934793489349935093519352935393549355935693579358935993609361936293639364936593669367936893699370937193729373937493759376937793789379938093819382938393849385938693879388938993909391939293939394939593969397939893999400940194029403940494059406940794089409941094119412941394149415941694179418941994209421942294239424942594269427942894299430943194329433943494359436943794389439944094419442944394449445944694479448944994509451945294539454945594569457945894599460946194629463946494659466946794689469947094719472947394749475947694779478947994809481948294839484948594869487948894899490949194929493949494959496949794989499950095019502950395049505950695079508950995109511951295139514951595169517951895199520952195229523952495259526952795289529953095319532953395349535953695379538953995409541954295439544954595469547954895499550955195529553955495559556955795589559956095619562956395649565956695679568956995709571957295739574957595769577957895799580958195829583958495859586958795889589959095919592959395949595959695979598959996009601960296039604960596069607960896099610961196129613961496159616961796189619962096219622962396249625962696279628962996309631963296339634963596369637963896399640964196429643964496459646964796489649965096519652965396549655965696579658965996609661966296639664966596669667966896699670967196729673967496759676967796789679968096819682968396849685968696879688968996909691969296939694969596969697969896999700970197029703970497059706970797089709971097119712971397149715971697179718971997209721972297239724972597269727972897299730973197329733973497359736973797389739974097419742974397449745974697479748974997509751975297539754975597569757975897599760976197629763976497659766976797689769977097719772977397749775977697779778977997809781978297839784978597869787978897899790979197929793979497959796979797989799980098019802980398049805980698079808980998109811981298139814981598169817981898199820982198229823982498259826982798289829983098319832983398349835983698379838983998409841984298439844984598469847984898499850985198529853985498559856985798589859986098619862986398649865986698679868986998709871987298739874987598769877987898799880988198829883988498859886988798889889989098919892989398949895989698979898989999009901990299039904990599069907990899099910991199129913991499159916991799189919992099219922992399249925992699279928992999309931993299339934993599369937993899399940994199429943994499459946994799489949995099519952995399549955995699579958995999609961996299639964996599669967996899699970997199729973997499759976997799789979998099819982998399849985998699879988998999909991999299939994999599969997999899991000010001100021000310004100051000610007100081000910010100111001210013100141001510016100171001810019100201002110022100231002410025100261002710028100291003010031100321003310034100351003610037100381003910040100411004210043100441004510046100471004810049100501005110052100531005410055100561005710058100591006010061100621006310064100651006610067100681006910070100711007210073100741007510076100771007810079100801008110082100831008410085100861008710088100891009010091100921009310094100951009610097100981009910100101011010210103101041010510106101071010810109101101011110112101131011410115101161011710118101191012010121101221012310124101251012610127101281012910130101311013210133101341013510136101371013810139101401014110142101431014410145101461014710148101491015010151101521015310154101551015610157101581015910160101611016210163101641016510166101671016810169101701017110172101731017410175101761017710178101791018010181101821018310184101851018610187101881018910190101911019210193101941019510196101971019810199102001020110202102031020410205102061020710208102091021010211102121021310214102151021610217102181021910220102211022210223102241022510226102271022810229102301023110232102331023410235102361023710238102391024010241102421024310244102451024610247102481024910250102511025210253102541025510256102571025810259102601026110262102631026410265102661026710268102691027010271102721027310274102751027610277102781027910280102811028210283102841028510286102871028810289102901029110292102931029410295102961029710298102991030010301103021030310304103051030610307103081030910310103111031210313103141031510316103171031810319103201032110322103231032410325103261032710328103291033010331103321033310334103351033610337103381033910340103411034210343103441034510346103471034810349103501035110352103531035410355103561035710358103591036010361103621036310364103651036610367103681036910370103711037210373103741037510376103771037810379103801038110382103831038410385103861038710388103891039010391103921039310394103951039610397103981039910400104011040210403104041040510406104071040810409104101041110412104131041410415104161041710418104191042010421104221042310424104251042610427104281042910430104311043210433104341043510436104371043810439104401044110442104431044410445104461044710448104491045010451104521045310454104551045610457104581045910460104611046210463104641046510466104671046810469104701047110472104731047410475104761047710478104791048010481104821048310484104851048610487104881048910490104911049210493104941049510496104971049810499105001050110502105031050410505105061050710508105091051010511105121051310514105151051610517105181051910520105211052210523105241052510526105271052810529105301053110532105331053410535105361053710538105391054010541105421054310544105451054610547105481054910550105511055210553105541055510556105571055810559105601056110562105631056410565105661056710568105691057010571105721057310574105751057610577105781057910580105811058210583105841058510586105871058810589105901059110592105931059410595105961059710598105991060010601106021060310604106051060610607106081060910610106111061210613106141061510616106171061810619106201062110622106231062410625106261062710628106291063010631106321063310634106351063610637106381063910640106411064210643106441064510646106471064810649106501065110652106531065410655106561065710658106591066010661106621066310664106651066610667106681066910670106711067210673106741067510676106771067810679106801068110682106831068410685106861068710688106891069010691106921069310694106951069610697106981069910700107011070210703107041070510706107071070810709107101071110712107131071410715107161071710718107191072010721107221072310724107251072610727107281072910730107311073210733107341073510736107371073810739107401074110742107431074410745107461074710748107491075010751107521075310754107551075610757107581075910760107611076210763107641076510766107671076810769107701077110772107731077410775107761077710778
  1. // *** THIS FILE IS GENERATED - DO NOT EDIT ***
  2. // See helper_file_generator.py for modifications
  3. /***************************************************************************
  4. *
  5. * Copyright (c) 2015-2022 The Khronos Group Inc.
  6. * Copyright (c) 2015-2022 Valve Corporation
  7. * Copyright (c) 2015-2022 LunarG, Inc.
  8. * Copyright (c) 2015-2022 Google Inc.
  9. *
  10. * Licensed under the Apache License, Version 2.0 (the "License");
  11. * you may not use this file except in compliance with the License.
  12. * You may obtain a copy of the License at
  13. *
  14. * http://www.apache.org/licenses/LICENSE-2.0
  15. *
  16. * Unless required by applicable law or agreed to in writing, software
  17. * distributed under the License is distributed on an "AS IS" BASIS,
  18. * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  19. * See the License for the specific language governing permissions and
  20. * limitations under the License.
  21. *
  22. * Author: Mark Lobodzinski <mark@lunarg.com>
  23. * Author: Courtney Goeltzenleuchter <courtneygo@google.com>
  24. * Author: Tobin Ehlis <tobine@google.com>
  25. * Author: Chris Forbes <chrisforbes@google.com>
  26. * Author: John Zulauf<jzulauf@lunarg.com>
  27. * Author: Tony Barbour <tony@lunarg.com>
  28. *
  29. ****************************************************************************/
  30. #pragma once
  31. #ifdef _MSC_VER
  32. #pragma warning( disable : 4065 )
  33. #endif
  34. #include <string>
  35. #ifdef USE_VOLK
  36. #include <volk.h>
  37. #else
  38. #include <vulkan/vulkan.h>
  39. #endif
  40. static inline const char* string_VkResult(VkResult input_value)
  41. {
  42. switch (input_value)
  43. {
  44. case VK_ERROR_COMPRESSION_EXHAUSTED_EXT:
  45. return "VK_ERROR_COMPRESSION_EXHAUSTED_EXT";
  46. case VK_ERROR_DEVICE_LOST:
  47. return "VK_ERROR_DEVICE_LOST";
  48. case VK_ERROR_EXTENSION_NOT_PRESENT:
  49. return "VK_ERROR_EXTENSION_NOT_PRESENT";
  50. case VK_ERROR_FEATURE_NOT_PRESENT:
  51. return "VK_ERROR_FEATURE_NOT_PRESENT";
  52. case VK_ERROR_FORMAT_NOT_SUPPORTED:
  53. return "VK_ERROR_FORMAT_NOT_SUPPORTED";
  54. case VK_ERROR_FRAGMENTATION:
  55. return "VK_ERROR_FRAGMENTATION";
  56. case VK_ERROR_FRAGMENTED_POOL:
  57. return "VK_ERROR_FRAGMENTED_POOL";
  58. case VK_ERROR_FULL_SCREEN_EXCLUSIVE_MODE_LOST_EXT:
  59. return "VK_ERROR_FULL_SCREEN_EXCLUSIVE_MODE_LOST_EXT";
  60. #ifdef VK_ENABLE_BETA_EXTENSIONS
  61. case VK_ERROR_IMAGE_USAGE_NOT_SUPPORTED_KHR:
  62. return "VK_ERROR_IMAGE_USAGE_NOT_SUPPORTED_KHR";
  63. #endif // VK_ENABLE_BETA_EXTENSIONS
  64. case VK_ERROR_INCOMPATIBLE_DISPLAY_KHR:
  65. return "VK_ERROR_INCOMPATIBLE_DISPLAY_KHR";
  66. case VK_ERROR_INCOMPATIBLE_DRIVER:
  67. return "VK_ERROR_INCOMPATIBLE_DRIVER";
  68. case VK_ERROR_INITIALIZATION_FAILED:
  69. return "VK_ERROR_INITIALIZATION_FAILED";
  70. case VK_ERROR_INVALID_DRM_FORMAT_MODIFIER_PLANE_LAYOUT_EXT:
  71. return "VK_ERROR_INVALID_DRM_FORMAT_MODIFIER_PLANE_LAYOUT_EXT";
  72. case VK_ERROR_INVALID_EXTERNAL_HANDLE:
  73. return "VK_ERROR_INVALID_EXTERNAL_HANDLE";
  74. case VK_ERROR_INVALID_OPAQUE_CAPTURE_ADDRESS:
  75. return "VK_ERROR_INVALID_OPAQUE_CAPTURE_ADDRESS";
  76. case VK_ERROR_INVALID_SHADER_NV:
  77. return "VK_ERROR_INVALID_SHADER_NV";
  78. case VK_ERROR_LAYER_NOT_PRESENT:
  79. return "VK_ERROR_LAYER_NOT_PRESENT";
  80. case VK_ERROR_MEMORY_MAP_FAILED:
  81. return "VK_ERROR_MEMORY_MAP_FAILED";
  82. case VK_ERROR_NATIVE_WINDOW_IN_USE_KHR:
  83. return "VK_ERROR_NATIVE_WINDOW_IN_USE_KHR";
  84. case VK_ERROR_NOT_PERMITTED_KHR:
  85. return "VK_ERROR_NOT_PERMITTED_KHR";
  86. case VK_ERROR_OUT_OF_DATE_KHR:
  87. return "VK_ERROR_OUT_OF_DATE_KHR";
  88. case VK_ERROR_OUT_OF_DEVICE_MEMORY:
  89. return "VK_ERROR_OUT_OF_DEVICE_MEMORY";
  90. case VK_ERROR_OUT_OF_HOST_MEMORY:
  91. return "VK_ERROR_OUT_OF_HOST_MEMORY";
  92. case VK_ERROR_OUT_OF_POOL_MEMORY:
  93. return "VK_ERROR_OUT_OF_POOL_MEMORY";
  94. case VK_ERROR_SURFACE_LOST_KHR:
  95. return "VK_ERROR_SURFACE_LOST_KHR";
  96. case VK_ERROR_TOO_MANY_OBJECTS:
  97. return "VK_ERROR_TOO_MANY_OBJECTS";
  98. case VK_ERROR_UNKNOWN:
  99. return "VK_ERROR_UNKNOWN";
  100. case VK_ERROR_VALIDATION_FAILED_EXT:
  101. return "VK_ERROR_VALIDATION_FAILED_EXT";
  102. #ifdef VK_ENABLE_BETA_EXTENSIONS
  103. case VK_ERROR_VIDEO_PICTURE_LAYOUT_NOT_SUPPORTED_KHR:
  104. return "VK_ERROR_VIDEO_PICTURE_LAYOUT_NOT_SUPPORTED_KHR";
  105. #endif // VK_ENABLE_BETA_EXTENSIONS
  106. #ifdef VK_ENABLE_BETA_EXTENSIONS
  107. case VK_ERROR_VIDEO_PROFILE_CODEC_NOT_SUPPORTED_KHR:
  108. return "VK_ERROR_VIDEO_PROFILE_CODEC_NOT_SUPPORTED_KHR";
  109. #endif // VK_ENABLE_BETA_EXTENSIONS
  110. #ifdef VK_ENABLE_BETA_EXTENSIONS
  111. case VK_ERROR_VIDEO_PROFILE_FORMAT_NOT_SUPPORTED_KHR:
  112. return "VK_ERROR_VIDEO_PROFILE_FORMAT_NOT_SUPPORTED_KHR";
  113. #endif // VK_ENABLE_BETA_EXTENSIONS
  114. #ifdef VK_ENABLE_BETA_EXTENSIONS
  115. case VK_ERROR_VIDEO_PROFILE_OPERATION_NOT_SUPPORTED_KHR:
  116. return "VK_ERROR_VIDEO_PROFILE_OPERATION_NOT_SUPPORTED_KHR";
  117. #endif // VK_ENABLE_BETA_EXTENSIONS
  118. #ifdef VK_ENABLE_BETA_EXTENSIONS
  119. case VK_ERROR_VIDEO_STD_VERSION_NOT_SUPPORTED_KHR:
  120. return "VK_ERROR_VIDEO_STD_VERSION_NOT_SUPPORTED_KHR";
  121. #endif // VK_ENABLE_BETA_EXTENSIONS
  122. case VK_EVENT_RESET:
  123. return "VK_EVENT_RESET";
  124. case VK_EVENT_SET:
  125. return "VK_EVENT_SET";
  126. case VK_INCOMPLETE:
  127. return "VK_INCOMPLETE";
  128. case VK_NOT_READY:
  129. return "VK_NOT_READY";
  130. case VK_OPERATION_DEFERRED_KHR:
  131. return "VK_OPERATION_DEFERRED_KHR";
  132. case VK_OPERATION_NOT_DEFERRED_KHR:
  133. return "VK_OPERATION_NOT_DEFERRED_KHR";
  134. case VK_PIPELINE_COMPILE_REQUIRED:
  135. return "VK_PIPELINE_COMPILE_REQUIRED";
  136. case VK_SUBOPTIMAL_KHR:
  137. return "VK_SUBOPTIMAL_KHR";
  138. case VK_SUCCESS:
  139. return "VK_SUCCESS";
  140. case VK_THREAD_DONE_KHR:
  141. return "VK_THREAD_DONE_KHR";
  142. case VK_THREAD_IDLE_KHR:
  143. return "VK_THREAD_IDLE_KHR";
  144. case VK_TIMEOUT:
  145. return "VK_TIMEOUT";
  146. default:
  147. return "Unhandled VkResult";
  148. }
  149. }
  150. static inline const char* string_VkStructureType(VkStructureType input_value)
  151. {
  152. switch (input_value)
  153. {
  154. case VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_BUILD_GEOMETRY_INFO_KHR:
  155. return "VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_BUILD_GEOMETRY_INFO_KHR";
  156. case VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_BUILD_SIZES_INFO_KHR:
  157. return "VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_BUILD_SIZES_INFO_KHR";
  158. case VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_CREATE_INFO_KHR:
  159. return "VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_CREATE_INFO_KHR";
  160. case VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_CREATE_INFO_NV:
  161. return "VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_CREATE_INFO_NV";
  162. case VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_DEVICE_ADDRESS_INFO_KHR:
  163. return "VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_DEVICE_ADDRESS_INFO_KHR";
  164. case VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_AABBS_DATA_KHR:
  165. return "VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_AABBS_DATA_KHR";
  166. case VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_INSTANCES_DATA_KHR:
  167. return "VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_INSTANCES_DATA_KHR";
  168. case VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_KHR:
  169. return "VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_KHR";
  170. case VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_MOTION_TRIANGLES_DATA_NV:
  171. return "VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_MOTION_TRIANGLES_DATA_NV";
  172. case VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_TRIANGLES_DATA_KHR:
  173. return "VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_TRIANGLES_DATA_KHR";
  174. case VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_INFO_NV:
  175. return "VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_INFO_NV";
  176. case VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_INFO_NV:
  177. return "VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_INFO_NV";
  178. case VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_MOTION_INFO_NV:
  179. return "VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_MOTION_INFO_NV";
  180. case VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_TRIANGLES_OPACITY_MICROMAP_EXT:
  181. return "VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_TRIANGLES_OPACITY_MICROMAP_EXT";
  182. case VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_VERSION_INFO_KHR:
  183. return "VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_VERSION_INFO_KHR";
  184. case VK_STRUCTURE_TYPE_ACQUIRE_NEXT_IMAGE_INFO_KHR:
  185. return "VK_STRUCTURE_TYPE_ACQUIRE_NEXT_IMAGE_INFO_KHR";
  186. case VK_STRUCTURE_TYPE_ACQUIRE_PROFILING_LOCK_INFO_KHR:
  187. return "VK_STRUCTURE_TYPE_ACQUIRE_PROFILING_LOCK_INFO_KHR";
  188. case VK_STRUCTURE_TYPE_AMIGO_PROFILING_SUBMIT_INFO_SEC:
  189. return "VK_STRUCTURE_TYPE_AMIGO_PROFILING_SUBMIT_INFO_SEC";
  190. case VK_STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_FORMAT_PROPERTIES_2_ANDROID:
  191. return "VK_STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_FORMAT_PROPERTIES_2_ANDROID";
  192. case VK_STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_FORMAT_PROPERTIES_ANDROID:
  193. return "VK_STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_FORMAT_PROPERTIES_ANDROID";
  194. case VK_STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_PROPERTIES_ANDROID:
  195. return "VK_STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_PROPERTIES_ANDROID";
  196. case VK_STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_USAGE_ANDROID:
  197. return "VK_STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_USAGE_ANDROID";
  198. case VK_STRUCTURE_TYPE_ANDROID_SURFACE_CREATE_INFO_KHR:
  199. return "VK_STRUCTURE_TYPE_ANDROID_SURFACE_CREATE_INFO_KHR";
  200. case VK_STRUCTURE_TYPE_APPLICATION_INFO:
  201. return "VK_STRUCTURE_TYPE_APPLICATION_INFO";
  202. case VK_STRUCTURE_TYPE_ATTACHMENT_DESCRIPTION_2:
  203. return "VK_STRUCTURE_TYPE_ATTACHMENT_DESCRIPTION_2";
  204. case VK_STRUCTURE_TYPE_ATTACHMENT_DESCRIPTION_STENCIL_LAYOUT:
  205. return "VK_STRUCTURE_TYPE_ATTACHMENT_DESCRIPTION_STENCIL_LAYOUT";
  206. case VK_STRUCTURE_TYPE_ATTACHMENT_REFERENCE_2:
  207. return "VK_STRUCTURE_TYPE_ATTACHMENT_REFERENCE_2";
  208. case VK_STRUCTURE_TYPE_ATTACHMENT_REFERENCE_STENCIL_LAYOUT:
  209. return "VK_STRUCTURE_TYPE_ATTACHMENT_REFERENCE_STENCIL_LAYOUT";
  210. case VK_STRUCTURE_TYPE_ATTACHMENT_SAMPLE_COUNT_INFO_AMD:
  211. return "VK_STRUCTURE_TYPE_ATTACHMENT_SAMPLE_COUNT_INFO_AMD";
  212. case VK_STRUCTURE_TYPE_BIND_ACCELERATION_STRUCTURE_MEMORY_INFO_NV:
  213. return "VK_STRUCTURE_TYPE_BIND_ACCELERATION_STRUCTURE_MEMORY_INFO_NV";
  214. case VK_STRUCTURE_TYPE_BIND_BUFFER_MEMORY_DEVICE_GROUP_INFO:
  215. return "VK_STRUCTURE_TYPE_BIND_BUFFER_MEMORY_DEVICE_GROUP_INFO";
  216. case VK_STRUCTURE_TYPE_BIND_BUFFER_MEMORY_INFO:
  217. return "VK_STRUCTURE_TYPE_BIND_BUFFER_MEMORY_INFO";
  218. case VK_STRUCTURE_TYPE_BIND_IMAGE_MEMORY_DEVICE_GROUP_INFO:
  219. return "VK_STRUCTURE_TYPE_BIND_IMAGE_MEMORY_DEVICE_GROUP_INFO";
  220. case VK_STRUCTURE_TYPE_BIND_IMAGE_MEMORY_INFO:
  221. return "VK_STRUCTURE_TYPE_BIND_IMAGE_MEMORY_INFO";
  222. case VK_STRUCTURE_TYPE_BIND_IMAGE_MEMORY_SWAPCHAIN_INFO_KHR:
  223. return "VK_STRUCTURE_TYPE_BIND_IMAGE_MEMORY_SWAPCHAIN_INFO_KHR";
  224. case VK_STRUCTURE_TYPE_BIND_IMAGE_PLANE_MEMORY_INFO:
  225. return "VK_STRUCTURE_TYPE_BIND_IMAGE_PLANE_MEMORY_INFO";
  226. case VK_STRUCTURE_TYPE_BIND_SPARSE_INFO:
  227. return "VK_STRUCTURE_TYPE_BIND_SPARSE_INFO";
  228. #ifdef VK_ENABLE_BETA_EXTENSIONS
  229. case VK_STRUCTURE_TYPE_BIND_VIDEO_SESSION_MEMORY_INFO_KHR:
  230. return "VK_STRUCTURE_TYPE_BIND_VIDEO_SESSION_MEMORY_INFO_KHR";
  231. #endif // VK_ENABLE_BETA_EXTENSIONS
  232. case VK_STRUCTURE_TYPE_BLIT_IMAGE_INFO_2:
  233. return "VK_STRUCTURE_TYPE_BLIT_IMAGE_INFO_2";
  234. case VK_STRUCTURE_TYPE_BUFFER_COLLECTION_BUFFER_CREATE_INFO_FUCHSIA:
  235. return "VK_STRUCTURE_TYPE_BUFFER_COLLECTION_BUFFER_CREATE_INFO_FUCHSIA";
  236. case VK_STRUCTURE_TYPE_BUFFER_COLLECTION_CONSTRAINTS_INFO_FUCHSIA:
  237. return "VK_STRUCTURE_TYPE_BUFFER_COLLECTION_CONSTRAINTS_INFO_FUCHSIA";
  238. case VK_STRUCTURE_TYPE_BUFFER_COLLECTION_CREATE_INFO_FUCHSIA:
  239. return "VK_STRUCTURE_TYPE_BUFFER_COLLECTION_CREATE_INFO_FUCHSIA";
  240. case VK_STRUCTURE_TYPE_BUFFER_COLLECTION_IMAGE_CREATE_INFO_FUCHSIA:
  241. return "VK_STRUCTURE_TYPE_BUFFER_COLLECTION_IMAGE_CREATE_INFO_FUCHSIA";
  242. case VK_STRUCTURE_TYPE_BUFFER_COLLECTION_PROPERTIES_FUCHSIA:
  243. return "VK_STRUCTURE_TYPE_BUFFER_COLLECTION_PROPERTIES_FUCHSIA";
  244. case VK_STRUCTURE_TYPE_BUFFER_CONSTRAINTS_INFO_FUCHSIA:
  245. return "VK_STRUCTURE_TYPE_BUFFER_CONSTRAINTS_INFO_FUCHSIA";
  246. case VK_STRUCTURE_TYPE_BUFFER_COPY_2:
  247. return "VK_STRUCTURE_TYPE_BUFFER_COPY_2";
  248. case VK_STRUCTURE_TYPE_BUFFER_CREATE_INFO:
  249. return "VK_STRUCTURE_TYPE_BUFFER_CREATE_INFO";
  250. case VK_STRUCTURE_TYPE_BUFFER_DEVICE_ADDRESS_CREATE_INFO_EXT:
  251. return "VK_STRUCTURE_TYPE_BUFFER_DEVICE_ADDRESS_CREATE_INFO_EXT";
  252. case VK_STRUCTURE_TYPE_BUFFER_DEVICE_ADDRESS_INFO:
  253. return "VK_STRUCTURE_TYPE_BUFFER_DEVICE_ADDRESS_INFO";
  254. case VK_STRUCTURE_TYPE_BUFFER_IMAGE_COPY_2:
  255. return "VK_STRUCTURE_TYPE_BUFFER_IMAGE_COPY_2";
  256. case VK_STRUCTURE_TYPE_BUFFER_MEMORY_BARRIER:
  257. return "VK_STRUCTURE_TYPE_BUFFER_MEMORY_BARRIER";
  258. case VK_STRUCTURE_TYPE_BUFFER_MEMORY_BARRIER_2:
  259. return "VK_STRUCTURE_TYPE_BUFFER_MEMORY_BARRIER_2";
  260. case VK_STRUCTURE_TYPE_BUFFER_MEMORY_REQUIREMENTS_INFO_2:
  261. return "VK_STRUCTURE_TYPE_BUFFER_MEMORY_REQUIREMENTS_INFO_2";
  262. case VK_STRUCTURE_TYPE_BUFFER_OPAQUE_CAPTURE_ADDRESS_CREATE_INFO:
  263. return "VK_STRUCTURE_TYPE_BUFFER_OPAQUE_CAPTURE_ADDRESS_CREATE_INFO";
  264. case VK_STRUCTURE_TYPE_BUFFER_VIEW_CREATE_INFO:
  265. return "VK_STRUCTURE_TYPE_BUFFER_VIEW_CREATE_INFO";
  266. case VK_STRUCTURE_TYPE_CALIBRATED_TIMESTAMP_INFO_EXT:
  267. return "VK_STRUCTURE_TYPE_CALIBRATED_TIMESTAMP_INFO_EXT";
  268. case VK_STRUCTURE_TYPE_CHECKPOINT_DATA_2_NV:
  269. return "VK_STRUCTURE_TYPE_CHECKPOINT_DATA_2_NV";
  270. case VK_STRUCTURE_TYPE_CHECKPOINT_DATA_NV:
  271. return "VK_STRUCTURE_TYPE_CHECKPOINT_DATA_NV";
  272. case VK_STRUCTURE_TYPE_COMMAND_BUFFER_ALLOCATE_INFO:
  273. return "VK_STRUCTURE_TYPE_COMMAND_BUFFER_ALLOCATE_INFO";
  274. case VK_STRUCTURE_TYPE_COMMAND_BUFFER_BEGIN_INFO:
  275. return "VK_STRUCTURE_TYPE_COMMAND_BUFFER_BEGIN_INFO";
  276. case VK_STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_CONDITIONAL_RENDERING_INFO_EXT:
  277. return "VK_STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_CONDITIONAL_RENDERING_INFO_EXT";
  278. case VK_STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_INFO:
  279. return "VK_STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_INFO";
  280. case VK_STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_RENDERING_INFO:
  281. return "VK_STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_RENDERING_INFO";
  282. case VK_STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_RENDER_PASS_TRANSFORM_INFO_QCOM:
  283. return "VK_STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_RENDER_PASS_TRANSFORM_INFO_QCOM";
  284. case VK_STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_VIEWPORT_SCISSOR_INFO_NV:
  285. return "VK_STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_VIEWPORT_SCISSOR_INFO_NV";
  286. case VK_STRUCTURE_TYPE_COMMAND_BUFFER_SUBMIT_INFO:
  287. return "VK_STRUCTURE_TYPE_COMMAND_BUFFER_SUBMIT_INFO";
  288. case VK_STRUCTURE_TYPE_COMMAND_POOL_CREATE_INFO:
  289. return "VK_STRUCTURE_TYPE_COMMAND_POOL_CREATE_INFO";
  290. case VK_STRUCTURE_TYPE_COMPUTE_PIPELINE_CREATE_INFO:
  291. return "VK_STRUCTURE_TYPE_COMPUTE_PIPELINE_CREATE_INFO";
  292. case VK_STRUCTURE_TYPE_CONDITIONAL_RENDERING_BEGIN_INFO_EXT:
  293. return "VK_STRUCTURE_TYPE_CONDITIONAL_RENDERING_BEGIN_INFO_EXT";
  294. case VK_STRUCTURE_TYPE_COOPERATIVE_MATRIX_PROPERTIES_NV:
  295. return "VK_STRUCTURE_TYPE_COOPERATIVE_MATRIX_PROPERTIES_NV";
  296. case VK_STRUCTURE_TYPE_COPY_ACCELERATION_STRUCTURE_INFO_KHR:
  297. return "VK_STRUCTURE_TYPE_COPY_ACCELERATION_STRUCTURE_INFO_KHR";
  298. case VK_STRUCTURE_TYPE_COPY_ACCELERATION_STRUCTURE_TO_MEMORY_INFO_KHR:
  299. return "VK_STRUCTURE_TYPE_COPY_ACCELERATION_STRUCTURE_TO_MEMORY_INFO_KHR";
  300. case VK_STRUCTURE_TYPE_COPY_BUFFER_INFO_2:
  301. return "VK_STRUCTURE_TYPE_COPY_BUFFER_INFO_2";
  302. case VK_STRUCTURE_TYPE_COPY_BUFFER_TO_IMAGE_INFO_2:
  303. return "VK_STRUCTURE_TYPE_COPY_BUFFER_TO_IMAGE_INFO_2";
  304. case VK_STRUCTURE_TYPE_COPY_COMMAND_TRANSFORM_INFO_QCOM:
  305. return "VK_STRUCTURE_TYPE_COPY_COMMAND_TRANSFORM_INFO_QCOM";
  306. case VK_STRUCTURE_TYPE_COPY_DESCRIPTOR_SET:
  307. return "VK_STRUCTURE_TYPE_COPY_DESCRIPTOR_SET";
  308. case VK_STRUCTURE_TYPE_COPY_IMAGE_INFO_2:
  309. return "VK_STRUCTURE_TYPE_COPY_IMAGE_INFO_2";
  310. case VK_STRUCTURE_TYPE_COPY_IMAGE_TO_BUFFER_INFO_2:
  311. return "VK_STRUCTURE_TYPE_COPY_IMAGE_TO_BUFFER_INFO_2";
  312. case VK_STRUCTURE_TYPE_COPY_MEMORY_TO_ACCELERATION_STRUCTURE_INFO_KHR:
  313. return "VK_STRUCTURE_TYPE_COPY_MEMORY_TO_ACCELERATION_STRUCTURE_INFO_KHR";
  314. case VK_STRUCTURE_TYPE_COPY_MEMORY_TO_MICROMAP_INFO_EXT:
  315. return "VK_STRUCTURE_TYPE_COPY_MEMORY_TO_MICROMAP_INFO_EXT";
  316. case VK_STRUCTURE_TYPE_COPY_MICROMAP_INFO_EXT:
  317. return "VK_STRUCTURE_TYPE_COPY_MICROMAP_INFO_EXT";
  318. case VK_STRUCTURE_TYPE_COPY_MICROMAP_TO_MEMORY_INFO_EXT:
  319. return "VK_STRUCTURE_TYPE_COPY_MICROMAP_TO_MEMORY_INFO_EXT";
  320. case VK_STRUCTURE_TYPE_CU_FUNCTION_CREATE_INFO_NVX:
  321. return "VK_STRUCTURE_TYPE_CU_FUNCTION_CREATE_INFO_NVX";
  322. case VK_STRUCTURE_TYPE_CU_LAUNCH_INFO_NVX:
  323. return "VK_STRUCTURE_TYPE_CU_LAUNCH_INFO_NVX";
  324. case VK_STRUCTURE_TYPE_CU_MODULE_CREATE_INFO_NVX:
  325. return "VK_STRUCTURE_TYPE_CU_MODULE_CREATE_INFO_NVX";
  326. case VK_STRUCTURE_TYPE_D3D12_FENCE_SUBMIT_INFO_KHR:
  327. return "VK_STRUCTURE_TYPE_D3D12_FENCE_SUBMIT_INFO_KHR";
  328. case VK_STRUCTURE_TYPE_DEBUG_MARKER_MARKER_INFO_EXT:
  329. return "VK_STRUCTURE_TYPE_DEBUG_MARKER_MARKER_INFO_EXT";
  330. case VK_STRUCTURE_TYPE_DEBUG_MARKER_OBJECT_NAME_INFO_EXT:
  331. return "VK_STRUCTURE_TYPE_DEBUG_MARKER_OBJECT_NAME_INFO_EXT";
  332. case VK_STRUCTURE_TYPE_DEBUG_MARKER_OBJECT_TAG_INFO_EXT:
  333. return "VK_STRUCTURE_TYPE_DEBUG_MARKER_OBJECT_TAG_INFO_EXT";
  334. case VK_STRUCTURE_TYPE_DEBUG_REPORT_CALLBACK_CREATE_INFO_EXT:
  335. return "VK_STRUCTURE_TYPE_DEBUG_REPORT_CALLBACK_CREATE_INFO_EXT";
  336. case VK_STRUCTURE_TYPE_DEBUG_UTILS_LABEL_EXT:
  337. return "VK_STRUCTURE_TYPE_DEBUG_UTILS_LABEL_EXT";
  338. case VK_STRUCTURE_TYPE_DEBUG_UTILS_MESSENGER_CALLBACK_DATA_EXT:
  339. return "VK_STRUCTURE_TYPE_DEBUG_UTILS_MESSENGER_CALLBACK_DATA_EXT";
  340. case VK_STRUCTURE_TYPE_DEBUG_UTILS_MESSENGER_CREATE_INFO_EXT:
  341. return "VK_STRUCTURE_TYPE_DEBUG_UTILS_MESSENGER_CREATE_INFO_EXT";
  342. case VK_STRUCTURE_TYPE_DEBUG_UTILS_OBJECT_NAME_INFO_EXT:
  343. return "VK_STRUCTURE_TYPE_DEBUG_UTILS_OBJECT_NAME_INFO_EXT";
  344. case VK_STRUCTURE_TYPE_DEBUG_UTILS_OBJECT_TAG_INFO_EXT:
  345. return "VK_STRUCTURE_TYPE_DEBUG_UTILS_OBJECT_TAG_INFO_EXT";
  346. case VK_STRUCTURE_TYPE_DEDICATED_ALLOCATION_BUFFER_CREATE_INFO_NV:
  347. return "VK_STRUCTURE_TYPE_DEDICATED_ALLOCATION_BUFFER_CREATE_INFO_NV";
  348. case VK_STRUCTURE_TYPE_DEDICATED_ALLOCATION_IMAGE_CREATE_INFO_NV:
  349. return "VK_STRUCTURE_TYPE_DEDICATED_ALLOCATION_IMAGE_CREATE_INFO_NV";
  350. case VK_STRUCTURE_TYPE_DEDICATED_ALLOCATION_MEMORY_ALLOCATE_INFO_NV:
  351. return "VK_STRUCTURE_TYPE_DEDICATED_ALLOCATION_MEMORY_ALLOCATE_INFO_NV";
  352. case VK_STRUCTURE_TYPE_DEPENDENCY_INFO:
  353. return "VK_STRUCTURE_TYPE_DEPENDENCY_INFO";
  354. case VK_STRUCTURE_TYPE_DESCRIPTOR_POOL_CREATE_INFO:
  355. return "VK_STRUCTURE_TYPE_DESCRIPTOR_POOL_CREATE_INFO";
  356. case VK_STRUCTURE_TYPE_DESCRIPTOR_POOL_INLINE_UNIFORM_BLOCK_CREATE_INFO:
  357. return "VK_STRUCTURE_TYPE_DESCRIPTOR_POOL_INLINE_UNIFORM_BLOCK_CREATE_INFO";
  358. case VK_STRUCTURE_TYPE_DESCRIPTOR_SET_ALLOCATE_INFO:
  359. return "VK_STRUCTURE_TYPE_DESCRIPTOR_SET_ALLOCATE_INFO";
  360. case VK_STRUCTURE_TYPE_DESCRIPTOR_SET_BINDING_REFERENCE_VALVE:
  361. return "VK_STRUCTURE_TYPE_DESCRIPTOR_SET_BINDING_REFERENCE_VALVE";
  362. case VK_STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_BINDING_FLAGS_CREATE_INFO:
  363. return "VK_STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_BINDING_FLAGS_CREATE_INFO";
  364. case VK_STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_CREATE_INFO:
  365. return "VK_STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_CREATE_INFO";
  366. case VK_STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_HOST_MAPPING_INFO_VALVE:
  367. return "VK_STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_HOST_MAPPING_INFO_VALVE";
  368. case VK_STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_SUPPORT:
  369. return "VK_STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_SUPPORT";
  370. case VK_STRUCTURE_TYPE_DESCRIPTOR_SET_VARIABLE_DESCRIPTOR_COUNT_ALLOCATE_INFO:
  371. return "VK_STRUCTURE_TYPE_DESCRIPTOR_SET_VARIABLE_DESCRIPTOR_COUNT_ALLOCATE_INFO";
  372. case VK_STRUCTURE_TYPE_DESCRIPTOR_SET_VARIABLE_DESCRIPTOR_COUNT_LAYOUT_SUPPORT:
  373. return "VK_STRUCTURE_TYPE_DESCRIPTOR_SET_VARIABLE_DESCRIPTOR_COUNT_LAYOUT_SUPPORT";
  374. case VK_STRUCTURE_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_CREATE_INFO:
  375. return "VK_STRUCTURE_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_CREATE_INFO";
  376. case VK_STRUCTURE_TYPE_DEVICE_ADDRESS_BINDING_CALLBACK_DATA_EXT:
  377. return "VK_STRUCTURE_TYPE_DEVICE_ADDRESS_BINDING_CALLBACK_DATA_EXT";
  378. case VK_STRUCTURE_TYPE_DEVICE_BUFFER_MEMORY_REQUIREMENTS:
  379. return "VK_STRUCTURE_TYPE_DEVICE_BUFFER_MEMORY_REQUIREMENTS";
  380. case VK_STRUCTURE_TYPE_DEVICE_CREATE_INFO:
  381. return "VK_STRUCTURE_TYPE_DEVICE_CREATE_INFO";
  382. case VK_STRUCTURE_TYPE_DEVICE_DEVICE_MEMORY_REPORT_CREATE_INFO_EXT:
  383. return "VK_STRUCTURE_TYPE_DEVICE_DEVICE_MEMORY_REPORT_CREATE_INFO_EXT";
  384. case VK_STRUCTURE_TYPE_DEVICE_DIAGNOSTICS_CONFIG_CREATE_INFO_NV:
  385. return "VK_STRUCTURE_TYPE_DEVICE_DIAGNOSTICS_CONFIG_CREATE_INFO_NV";
  386. case VK_STRUCTURE_TYPE_DEVICE_EVENT_INFO_EXT:
  387. return "VK_STRUCTURE_TYPE_DEVICE_EVENT_INFO_EXT";
  388. case VK_STRUCTURE_TYPE_DEVICE_FAULT_COUNTS_EXT:
  389. return "VK_STRUCTURE_TYPE_DEVICE_FAULT_COUNTS_EXT";
  390. case VK_STRUCTURE_TYPE_DEVICE_FAULT_INFO_EXT:
  391. return "VK_STRUCTURE_TYPE_DEVICE_FAULT_INFO_EXT";
  392. case VK_STRUCTURE_TYPE_DEVICE_GROUP_BIND_SPARSE_INFO:
  393. return "VK_STRUCTURE_TYPE_DEVICE_GROUP_BIND_SPARSE_INFO";
  394. case VK_STRUCTURE_TYPE_DEVICE_GROUP_COMMAND_BUFFER_BEGIN_INFO:
  395. return "VK_STRUCTURE_TYPE_DEVICE_GROUP_COMMAND_BUFFER_BEGIN_INFO";
  396. case VK_STRUCTURE_TYPE_DEVICE_GROUP_DEVICE_CREATE_INFO:
  397. return "VK_STRUCTURE_TYPE_DEVICE_GROUP_DEVICE_CREATE_INFO";
  398. case VK_STRUCTURE_TYPE_DEVICE_GROUP_PRESENT_CAPABILITIES_KHR:
  399. return "VK_STRUCTURE_TYPE_DEVICE_GROUP_PRESENT_CAPABILITIES_KHR";
  400. case VK_STRUCTURE_TYPE_DEVICE_GROUP_PRESENT_INFO_KHR:
  401. return "VK_STRUCTURE_TYPE_DEVICE_GROUP_PRESENT_INFO_KHR";
  402. case VK_STRUCTURE_TYPE_DEVICE_GROUP_RENDER_PASS_BEGIN_INFO:
  403. return "VK_STRUCTURE_TYPE_DEVICE_GROUP_RENDER_PASS_BEGIN_INFO";
  404. case VK_STRUCTURE_TYPE_DEVICE_GROUP_SUBMIT_INFO:
  405. return "VK_STRUCTURE_TYPE_DEVICE_GROUP_SUBMIT_INFO";
  406. case VK_STRUCTURE_TYPE_DEVICE_GROUP_SWAPCHAIN_CREATE_INFO_KHR:
  407. return "VK_STRUCTURE_TYPE_DEVICE_GROUP_SWAPCHAIN_CREATE_INFO_KHR";
  408. case VK_STRUCTURE_TYPE_DEVICE_IMAGE_MEMORY_REQUIREMENTS:
  409. return "VK_STRUCTURE_TYPE_DEVICE_IMAGE_MEMORY_REQUIREMENTS";
  410. case VK_STRUCTURE_TYPE_DEVICE_MEMORY_OPAQUE_CAPTURE_ADDRESS_INFO:
  411. return "VK_STRUCTURE_TYPE_DEVICE_MEMORY_OPAQUE_CAPTURE_ADDRESS_INFO";
  412. case VK_STRUCTURE_TYPE_DEVICE_MEMORY_OVERALLOCATION_CREATE_INFO_AMD:
  413. return "VK_STRUCTURE_TYPE_DEVICE_MEMORY_OVERALLOCATION_CREATE_INFO_AMD";
  414. case VK_STRUCTURE_TYPE_DEVICE_MEMORY_REPORT_CALLBACK_DATA_EXT:
  415. return "VK_STRUCTURE_TYPE_DEVICE_MEMORY_REPORT_CALLBACK_DATA_EXT";
  416. case VK_STRUCTURE_TYPE_DEVICE_PRIVATE_DATA_CREATE_INFO:
  417. return "VK_STRUCTURE_TYPE_DEVICE_PRIVATE_DATA_CREATE_INFO";
  418. case VK_STRUCTURE_TYPE_DEVICE_QUEUE_CREATE_INFO:
  419. return "VK_STRUCTURE_TYPE_DEVICE_QUEUE_CREATE_INFO";
  420. case VK_STRUCTURE_TYPE_DEVICE_QUEUE_GLOBAL_PRIORITY_CREATE_INFO_KHR:
  421. return "VK_STRUCTURE_TYPE_DEVICE_QUEUE_GLOBAL_PRIORITY_CREATE_INFO_KHR";
  422. case VK_STRUCTURE_TYPE_DEVICE_QUEUE_INFO_2:
  423. return "VK_STRUCTURE_TYPE_DEVICE_QUEUE_INFO_2";
  424. case VK_STRUCTURE_TYPE_DIRECTFB_SURFACE_CREATE_INFO_EXT:
  425. return "VK_STRUCTURE_TYPE_DIRECTFB_SURFACE_CREATE_INFO_EXT";
  426. case VK_STRUCTURE_TYPE_DISPLAY_EVENT_INFO_EXT:
  427. return "VK_STRUCTURE_TYPE_DISPLAY_EVENT_INFO_EXT";
  428. case VK_STRUCTURE_TYPE_DISPLAY_MODE_CREATE_INFO_KHR:
  429. return "VK_STRUCTURE_TYPE_DISPLAY_MODE_CREATE_INFO_KHR";
  430. case VK_STRUCTURE_TYPE_DISPLAY_MODE_PROPERTIES_2_KHR:
  431. return "VK_STRUCTURE_TYPE_DISPLAY_MODE_PROPERTIES_2_KHR";
  432. case VK_STRUCTURE_TYPE_DISPLAY_NATIVE_HDR_SURFACE_CAPABILITIES_AMD:
  433. return "VK_STRUCTURE_TYPE_DISPLAY_NATIVE_HDR_SURFACE_CAPABILITIES_AMD";
  434. case VK_STRUCTURE_TYPE_DISPLAY_PLANE_CAPABILITIES_2_KHR:
  435. return "VK_STRUCTURE_TYPE_DISPLAY_PLANE_CAPABILITIES_2_KHR";
  436. case VK_STRUCTURE_TYPE_DISPLAY_PLANE_INFO_2_KHR:
  437. return "VK_STRUCTURE_TYPE_DISPLAY_PLANE_INFO_2_KHR";
  438. case VK_STRUCTURE_TYPE_DISPLAY_PLANE_PROPERTIES_2_KHR:
  439. return "VK_STRUCTURE_TYPE_DISPLAY_PLANE_PROPERTIES_2_KHR";
  440. case VK_STRUCTURE_TYPE_DISPLAY_POWER_INFO_EXT:
  441. return "VK_STRUCTURE_TYPE_DISPLAY_POWER_INFO_EXT";
  442. case VK_STRUCTURE_TYPE_DISPLAY_PRESENT_INFO_KHR:
  443. return "VK_STRUCTURE_TYPE_DISPLAY_PRESENT_INFO_KHR";
  444. case VK_STRUCTURE_TYPE_DISPLAY_PROPERTIES_2_KHR:
  445. return "VK_STRUCTURE_TYPE_DISPLAY_PROPERTIES_2_KHR";
  446. case VK_STRUCTURE_TYPE_DISPLAY_SURFACE_CREATE_INFO_KHR:
  447. return "VK_STRUCTURE_TYPE_DISPLAY_SURFACE_CREATE_INFO_KHR";
  448. case VK_STRUCTURE_TYPE_DRM_FORMAT_MODIFIER_PROPERTIES_LIST_2_EXT:
  449. return "VK_STRUCTURE_TYPE_DRM_FORMAT_MODIFIER_PROPERTIES_LIST_2_EXT";
  450. case VK_STRUCTURE_TYPE_DRM_FORMAT_MODIFIER_PROPERTIES_LIST_EXT:
  451. return "VK_STRUCTURE_TYPE_DRM_FORMAT_MODIFIER_PROPERTIES_LIST_EXT";
  452. case VK_STRUCTURE_TYPE_EVENT_CREATE_INFO:
  453. return "VK_STRUCTURE_TYPE_EVENT_CREATE_INFO";
  454. case VK_STRUCTURE_TYPE_EXPORT_FENCE_CREATE_INFO:
  455. return "VK_STRUCTURE_TYPE_EXPORT_FENCE_CREATE_INFO";
  456. case VK_STRUCTURE_TYPE_EXPORT_FENCE_WIN32_HANDLE_INFO_KHR:
  457. return "VK_STRUCTURE_TYPE_EXPORT_FENCE_WIN32_HANDLE_INFO_KHR";
  458. case VK_STRUCTURE_TYPE_EXPORT_MEMORY_ALLOCATE_INFO:
  459. return "VK_STRUCTURE_TYPE_EXPORT_MEMORY_ALLOCATE_INFO";
  460. case VK_STRUCTURE_TYPE_EXPORT_MEMORY_ALLOCATE_INFO_NV:
  461. return "VK_STRUCTURE_TYPE_EXPORT_MEMORY_ALLOCATE_INFO_NV";
  462. case VK_STRUCTURE_TYPE_EXPORT_MEMORY_WIN32_HANDLE_INFO_KHR:
  463. return "VK_STRUCTURE_TYPE_EXPORT_MEMORY_WIN32_HANDLE_INFO_KHR";
  464. case VK_STRUCTURE_TYPE_EXPORT_MEMORY_WIN32_HANDLE_INFO_NV:
  465. return "VK_STRUCTURE_TYPE_EXPORT_MEMORY_WIN32_HANDLE_INFO_NV";
  466. case VK_STRUCTURE_TYPE_EXPORT_METAL_BUFFER_INFO_EXT:
  467. return "VK_STRUCTURE_TYPE_EXPORT_METAL_BUFFER_INFO_EXT";
  468. case VK_STRUCTURE_TYPE_EXPORT_METAL_COMMAND_QUEUE_INFO_EXT:
  469. return "VK_STRUCTURE_TYPE_EXPORT_METAL_COMMAND_QUEUE_INFO_EXT";
  470. case VK_STRUCTURE_TYPE_EXPORT_METAL_DEVICE_INFO_EXT:
  471. return "VK_STRUCTURE_TYPE_EXPORT_METAL_DEVICE_INFO_EXT";
  472. case VK_STRUCTURE_TYPE_EXPORT_METAL_IO_SURFACE_INFO_EXT:
  473. return "VK_STRUCTURE_TYPE_EXPORT_METAL_IO_SURFACE_INFO_EXT";
  474. case VK_STRUCTURE_TYPE_EXPORT_METAL_OBJECTS_INFO_EXT:
  475. return "VK_STRUCTURE_TYPE_EXPORT_METAL_OBJECTS_INFO_EXT";
  476. case VK_STRUCTURE_TYPE_EXPORT_METAL_OBJECT_CREATE_INFO_EXT:
  477. return "VK_STRUCTURE_TYPE_EXPORT_METAL_OBJECT_CREATE_INFO_EXT";
  478. case VK_STRUCTURE_TYPE_EXPORT_METAL_SHARED_EVENT_INFO_EXT:
  479. return "VK_STRUCTURE_TYPE_EXPORT_METAL_SHARED_EVENT_INFO_EXT";
  480. case VK_STRUCTURE_TYPE_EXPORT_METAL_TEXTURE_INFO_EXT:
  481. return "VK_STRUCTURE_TYPE_EXPORT_METAL_TEXTURE_INFO_EXT";
  482. case VK_STRUCTURE_TYPE_EXPORT_SEMAPHORE_CREATE_INFO:
  483. return "VK_STRUCTURE_TYPE_EXPORT_SEMAPHORE_CREATE_INFO";
  484. case VK_STRUCTURE_TYPE_EXPORT_SEMAPHORE_WIN32_HANDLE_INFO_KHR:
  485. return "VK_STRUCTURE_TYPE_EXPORT_SEMAPHORE_WIN32_HANDLE_INFO_KHR";
  486. case VK_STRUCTURE_TYPE_EXTERNAL_BUFFER_PROPERTIES:
  487. return "VK_STRUCTURE_TYPE_EXTERNAL_BUFFER_PROPERTIES";
  488. case VK_STRUCTURE_TYPE_EXTERNAL_FENCE_PROPERTIES:
  489. return "VK_STRUCTURE_TYPE_EXTERNAL_FENCE_PROPERTIES";
  490. case VK_STRUCTURE_TYPE_EXTERNAL_FORMAT_ANDROID:
  491. return "VK_STRUCTURE_TYPE_EXTERNAL_FORMAT_ANDROID";
  492. case VK_STRUCTURE_TYPE_EXTERNAL_IMAGE_FORMAT_PROPERTIES:
  493. return "VK_STRUCTURE_TYPE_EXTERNAL_IMAGE_FORMAT_PROPERTIES";
  494. case VK_STRUCTURE_TYPE_EXTERNAL_MEMORY_BUFFER_CREATE_INFO:
  495. return "VK_STRUCTURE_TYPE_EXTERNAL_MEMORY_BUFFER_CREATE_INFO";
  496. case VK_STRUCTURE_TYPE_EXTERNAL_MEMORY_IMAGE_CREATE_INFO:
  497. return "VK_STRUCTURE_TYPE_EXTERNAL_MEMORY_IMAGE_CREATE_INFO";
  498. case VK_STRUCTURE_TYPE_EXTERNAL_MEMORY_IMAGE_CREATE_INFO_NV:
  499. return "VK_STRUCTURE_TYPE_EXTERNAL_MEMORY_IMAGE_CREATE_INFO_NV";
  500. case VK_STRUCTURE_TYPE_EXTERNAL_SEMAPHORE_PROPERTIES:
  501. return "VK_STRUCTURE_TYPE_EXTERNAL_SEMAPHORE_PROPERTIES";
  502. case VK_STRUCTURE_TYPE_FENCE_CREATE_INFO:
  503. return "VK_STRUCTURE_TYPE_FENCE_CREATE_INFO";
  504. case VK_STRUCTURE_TYPE_FENCE_GET_FD_INFO_KHR:
  505. return "VK_STRUCTURE_TYPE_FENCE_GET_FD_INFO_KHR";
  506. case VK_STRUCTURE_TYPE_FENCE_GET_WIN32_HANDLE_INFO_KHR:
  507. return "VK_STRUCTURE_TYPE_FENCE_GET_WIN32_HANDLE_INFO_KHR";
  508. case VK_STRUCTURE_TYPE_FILTER_CUBIC_IMAGE_VIEW_IMAGE_FORMAT_PROPERTIES_EXT:
  509. return "VK_STRUCTURE_TYPE_FILTER_CUBIC_IMAGE_VIEW_IMAGE_FORMAT_PROPERTIES_EXT";
  510. case VK_STRUCTURE_TYPE_FORMAT_PROPERTIES_2:
  511. return "VK_STRUCTURE_TYPE_FORMAT_PROPERTIES_2";
  512. case VK_STRUCTURE_TYPE_FORMAT_PROPERTIES_3:
  513. return "VK_STRUCTURE_TYPE_FORMAT_PROPERTIES_3";
  514. case VK_STRUCTURE_TYPE_FRAGMENT_SHADING_RATE_ATTACHMENT_INFO_KHR:
  515. return "VK_STRUCTURE_TYPE_FRAGMENT_SHADING_RATE_ATTACHMENT_INFO_KHR";
  516. case VK_STRUCTURE_TYPE_FRAMEBUFFER_ATTACHMENTS_CREATE_INFO:
  517. return "VK_STRUCTURE_TYPE_FRAMEBUFFER_ATTACHMENTS_CREATE_INFO";
  518. case VK_STRUCTURE_TYPE_FRAMEBUFFER_ATTACHMENT_IMAGE_INFO:
  519. return "VK_STRUCTURE_TYPE_FRAMEBUFFER_ATTACHMENT_IMAGE_INFO";
  520. case VK_STRUCTURE_TYPE_FRAMEBUFFER_CREATE_INFO:
  521. return "VK_STRUCTURE_TYPE_FRAMEBUFFER_CREATE_INFO";
  522. case VK_STRUCTURE_TYPE_FRAMEBUFFER_MIXED_SAMPLES_COMBINATION_NV:
  523. return "VK_STRUCTURE_TYPE_FRAMEBUFFER_MIXED_SAMPLES_COMBINATION_NV";
  524. case VK_STRUCTURE_TYPE_GENERATED_COMMANDS_INFO_NV:
  525. return "VK_STRUCTURE_TYPE_GENERATED_COMMANDS_INFO_NV";
  526. case VK_STRUCTURE_TYPE_GENERATED_COMMANDS_MEMORY_REQUIREMENTS_INFO_NV:
  527. return "VK_STRUCTURE_TYPE_GENERATED_COMMANDS_MEMORY_REQUIREMENTS_INFO_NV";
  528. case VK_STRUCTURE_TYPE_GEOMETRY_AABB_NV:
  529. return "VK_STRUCTURE_TYPE_GEOMETRY_AABB_NV";
  530. case VK_STRUCTURE_TYPE_GEOMETRY_NV:
  531. return "VK_STRUCTURE_TYPE_GEOMETRY_NV";
  532. case VK_STRUCTURE_TYPE_GEOMETRY_TRIANGLES_NV:
  533. return "VK_STRUCTURE_TYPE_GEOMETRY_TRIANGLES_NV";
  534. case VK_STRUCTURE_TYPE_GRAPHICS_PIPELINE_CREATE_INFO:
  535. return "VK_STRUCTURE_TYPE_GRAPHICS_PIPELINE_CREATE_INFO";
  536. case VK_STRUCTURE_TYPE_GRAPHICS_PIPELINE_LIBRARY_CREATE_INFO_EXT:
  537. return "VK_STRUCTURE_TYPE_GRAPHICS_PIPELINE_LIBRARY_CREATE_INFO_EXT";
  538. case VK_STRUCTURE_TYPE_GRAPHICS_PIPELINE_SHADER_GROUPS_CREATE_INFO_NV:
  539. return "VK_STRUCTURE_TYPE_GRAPHICS_PIPELINE_SHADER_GROUPS_CREATE_INFO_NV";
  540. case VK_STRUCTURE_TYPE_GRAPHICS_SHADER_GROUP_CREATE_INFO_NV:
  541. return "VK_STRUCTURE_TYPE_GRAPHICS_SHADER_GROUP_CREATE_INFO_NV";
  542. case VK_STRUCTURE_TYPE_HDR_METADATA_EXT:
  543. return "VK_STRUCTURE_TYPE_HDR_METADATA_EXT";
  544. case VK_STRUCTURE_TYPE_HEADLESS_SURFACE_CREATE_INFO_EXT:
  545. return "VK_STRUCTURE_TYPE_HEADLESS_SURFACE_CREATE_INFO_EXT";
  546. case VK_STRUCTURE_TYPE_IMAGEPIPE_SURFACE_CREATE_INFO_FUCHSIA:
  547. return "VK_STRUCTURE_TYPE_IMAGEPIPE_SURFACE_CREATE_INFO_FUCHSIA";
  548. case VK_STRUCTURE_TYPE_IMAGE_BLIT_2:
  549. return "VK_STRUCTURE_TYPE_IMAGE_BLIT_2";
  550. case VK_STRUCTURE_TYPE_IMAGE_COMPRESSION_CONTROL_EXT:
  551. return "VK_STRUCTURE_TYPE_IMAGE_COMPRESSION_CONTROL_EXT";
  552. case VK_STRUCTURE_TYPE_IMAGE_COMPRESSION_PROPERTIES_EXT:
  553. return "VK_STRUCTURE_TYPE_IMAGE_COMPRESSION_PROPERTIES_EXT";
  554. case VK_STRUCTURE_TYPE_IMAGE_CONSTRAINTS_INFO_FUCHSIA:
  555. return "VK_STRUCTURE_TYPE_IMAGE_CONSTRAINTS_INFO_FUCHSIA";
  556. case VK_STRUCTURE_TYPE_IMAGE_COPY_2:
  557. return "VK_STRUCTURE_TYPE_IMAGE_COPY_2";
  558. case VK_STRUCTURE_TYPE_IMAGE_CREATE_INFO:
  559. return "VK_STRUCTURE_TYPE_IMAGE_CREATE_INFO";
  560. case VK_STRUCTURE_TYPE_IMAGE_DRM_FORMAT_MODIFIER_EXPLICIT_CREATE_INFO_EXT:
  561. return "VK_STRUCTURE_TYPE_IMAGE_DRM_FORMAT_MODIFIER_EXPLICIT_CREATE_INFO_EXT";
  562. case VK_STRUCTURE_TYPE_IMAGE_DRM_FORMAT_MODIFIER_LIST_CREATE_INFO_EXT:
  563. return "VK_STRUCTURE_TYPE_IMAGE_DRM_FORMAT_MODIFIER_LIST_CREATE_INFO_EXT";
  564. case VK_STRUCTURE_TYPE_IMAGE_DRM_FORMAT_MODIFIER_PROPERTIES_EXT:
  565. return "VK_STRUCTURE_TYPE_IMAGE_DRM_FORMAT_MODIFIER_PROPERTIES_EXT";
  566. case VK_STRUCTURE_TYPE_IMAGE_FORMAT_CONSTRAINTS_INFO_FUCHSIA:
  567. return "VK_STRUCTURE_TYPE_IMAGE_FORMAT_CONSTRAINTS_INFO_FUCHSIA";
  568. case VK_STRUCTURE_TYPE_IMAGE_FORMAT_LIST_CREATE_INFO:
  569. return "VK_STRUCTURE_TYPE_IMAGE_FORMAT_LIST_CREATE_INFO";
  570. case VK_STRUCTURE_TYPE_IMAGE_FORMAT_PROPERTIES_2:
  571. return "VK_STRUCTURE_TYPE_IMAGE_FORMAT_PROPERTIES_2";
  572. case VK_STRUCTURE_TYPE_IMAGE_MEMORY_BARRIER:
  573. return "VK_STRUCTURE_TYPE_IMAGE_MEMORY_BARRIER";
  574. case VK_STRUCTURE_TYPE_IMAGE_MEMORY_BARRIER_2:
  575. return "VK_STRUCTURE_TYPE_IMAGE_MEMORY_BARRIER_2";
  576. case VK_STRUCTURE_TYPE_IMAGE_MEMORY_REQUIREMENTS_INFO_2:
  577. return "VK_STRUCTURE_TYPE_IMAGE_MEMORY_REQUIREMENTS_INFO_2";
  578. case VK_STRUCTURE_TYPE_IMAGE_PLANE_MEMORY_REQUIREMENTS_INFO:
  579. return "VK_STRUCTURE_TYPE_IMAGE_PLANE_MEMORY_REQUIREMENTS_INFO";
  580. case VK_STRUCTURE_TYPE_IMAGE_RESOLVE_2:
  581. return "VK_STRUCTURE_TYPE_IMAGE_RESOLVE_2";
  582. case VK_STRUCTURE_TYPE_IMAGE_SPARSE_MEMORY_REQUIREMENTS_INFO_2:
  583. return "VK_STRUCTURE_TYPE_IMAGE_SPARSE_MEMORY_REQUIREMENTS_INFO_2";
  584. case VK_STRUCTURE_TYPE_IMAGE_STENCIL_USAGE_CREATE_INFO:
  585. return "VK_STRUCTURE_TYPE_IMAGE_STENCIL_USAGE_CREATE_INFO";
  586. case VK_STRUCTURE_TYPE_IMAGE_SUBRESOURCE_2_EXT:
  587. return "VK_STRUCTURE_TYPE_IMAGE_SUBRESOURCE_2_EXT";
  588. case VK_STRUCTURE_TYPE_IMAGE_SWAPCHAIN_CREATE_INFO_KHR:
  589. return "VK_STRUCTURE_TYPE_IMAGE_SWAPCHAIN_CREATE_INFO_KHR";
  590. case VK_STRUCTURE_TYPE_IMAGE_VIEW_ADDRESS_PROPERTIES_NVX:
  591. return "VK_STRUCTURE_TYPE_IMAGE_VIEW_ADDRESS_PROPERTIES_NVX";
  592. case VK_STRUCTURE_TYPE_IMAGE_VIEW_ASTC_DECODE_MODE_EXT:
  593. return "VK_STRUCTURE_TYPE_IMAGE_VIEW_ASTC_DECODE_MODE_EXT";
  594. case VK_STRUCTURE_TYPE_IMAGE_VIEW_CREATE_INFO:
  595. return "VK_STRUCTURE_TYPE_IMAGE_VIEW_CREATE_INFO";
  596. case VK_STRUCTURE_TYPE_IMAGE_VIEW_HANDLE_INFO_NVX:
  597. return "VK_STRUCTURE_TYPE_IMAGE_VIEW_HANDLE_INFO_NVX";
  598. case VK_STRUCTURE_TYPE_IMAGE_VIEW_MIN_LOD_CREATE_INFO_EXT:
  599. return "VK_STRUCTURE_TYPE_IMAGE_VIEW_MIN_LOD_CREATE_INFO_EXT";
  600. case VK_STRUCTURE_TYPE_IMAGE_VIEW_SAMPLE_WEIGHT_CREATE_INFO_QCOM:
  601. return "VK_STRUCTURE_TYPE_IMAGE_VIEW_SAMPLE_WEIGHT_CREATE_INFO_QCOM";
  602. case VK_STRUCTURE_TYPE_IMAGE_VIEW_USAGE_CREATE_INFO:
  603. return "VK_STRUCTURE_TYPE_IMAGE_VIEW_USAGE_CREATE_INFO";
  604. case VK_STRUCTURE_TYPE_IMPORT_ANDROID_HARDWARE_BUFFER_INFO_ANDROID:
  605. return "VK_STRUCTURE_TYPE_IMPORT_ANDROID_HARDWARE_BUFFER_INFO_ANDROID";
  606. case VK_STRUCTURE_TYPE_IMPORT_FENCE_FD_INFO_KHR:
  607. return "VK_STRUCTURE_TYPE_IMPORT_FENCE_FD_INFO_KHR";
  608. case VK_STRUCTURE_TYPE_IMPORT_FENCE_WIN32_HANDLE_INFO_KHR:
  609. return "VK_STRUCTURE_TYPE_IMPORT_FENCE_WIN32_HANDLE_INFO_KHR";
  610. case VK_STRUCTURE_TYPE_IMPORT_MEMORY_BUFFER_COLLECTION_FUCHSIA:
  611. return "VK_STRUCTURE_TYPE_IMPORT_MEMORY_BUFFER_COLLECTION_FUCHSIA";
  612. case VK_STRUCTURE_TYPE_IMPORT_MEMORY_FD_INFO_KHR:
  613. return "VK_STRUCTURE_TYPE_IMPORT_MEMORY_FD_INFO_KHR";
  614. case VK_STRUCTURE_TYPE_IMPORT_MEMORY_HOST_POINTER_INFO_EXT:
  615. return "VK_STRUCTURE_TYPE_IMPORT_MEMORY_HOST_POINTER_INFO_EXT";
  616. case VK_STRUCTURE_TYPE_IMPORT_MEMORY_WIN32_HANDLE_INFO_KHR:
  617. return "VK_STRUCTURE_TYPE_IMPORT_MEMORY_WIN32_HANDLE_INFO_KHR";
  618. case VK_STRUCTURE_TYPE_IMPORT_MEMORY_WIN32_HANDLE_INFO_NV:
  619. return "VK_STRUCTURE_TYPE_IMPORT_MEMORY_WIN32_HANDLE_INFO_NV";
  620. case VK_STRUCTURE_TYPE_IMPORT_MEMORY_ZIRCON_HANDLE_INFO_FUCHSIA:
  621. return "VK_STRUCTURE_TYPE_IMPORT_MEMORY_ZIRCON_HANDLE_INFO_FUCHSIA";
  622. case VK_STRUCTURE_TYPE_IMPORT_METAL_BUFFER_INFO_EXT:
  623. return "VK_STRUCTURE_TYPE_IMPORT_METAL_BUFFER_INFO_EXT";
  624. case VK_STRUCTURE_TYPE_IMPORT_METAL_IO_SURFACE_INFO_EXT:
  625. return "VK_STRUCTURE_TYPE_IMPORT_METAL_IO_SURFACE_INFO_EXT";
  626. case VK_STRUCTURE_TYPE_IMPORT_METAL_SHARED_EVENT_INFO_EXT:
  627. return "VK_STRUCTURE_TYPE_IMPORT_METAL_SHARED_EVENT_INFO_EXT";
  628. case VK_STRUCTURE_TYPE_IMPORT_METAL_TEXTURE_INFO_EXT:
  629. return "VK_STRUCTURE_TYPE_IMPORT_METAL_TEXTURE_INFO_EXT";
  630. case VK_STRUCTURE_TYPE_IMPORT_SEMAPHORE_FD_INFO_KHR:
  631. return "VK_STRUCTURE_TYPE_IMPORT_SEMAPHORE_FD_INFO_KHR";
  632. case VK_STRUCTURE_TYPE_IMPORT_SEMAPHORE_WIN32_HANDLE_INFO_KHR:
  633. return "VK_STRUCTURE_TYPE_IMPORT_SEMAPHORE_WIN32_HANDLE_INFO_KHR";
  634. case VK_STRUCTURE_TYPE_IMPORT_SEMAPHORE_ZIRCON_HANDLE_INFO_FUCHSIA:
  635. return "VK_STRUCTURE_TYPE_IMPORT_SEMAPHORE_ZIRCON_HANDLE_INFO_FUCHSIA";
  636. case VK_STRUCTURE_TYPE_INDIRECT_COMMANDS_LAYOUT_CREATE_INFO_NV:
  637. return "VK_STRUCTURE_TYPE_INDIRECT_COMMANDS_LAYOUT_CREATE_INFO_NV";
  638. case VK_STRUCTURE_TYPE_INDIRECT_COMMANDS_LAYOUT_TOKEN_NV:
  639. return "VK_STRUCTURE_TYPE_INDIRECT_COMMANDS_LAYOUT_TOKEN_NV";
  640. case VK_STRUCTURE_TYPE_INITIALIZE_PERFORMANCE_API_INFO_INTEL:
  641. return "VK_STRUCTURE_TYPE_INITIALIZE_PERFORMANCE_API_INFO_INTEL";
  642. case VK_STRUCTURE_TYPE_INSTANCE_CREATE_INFO:
  643. return "VK_STRUCTURE_TYPE_INSTANCE_CREATE_INFO";
  644. case VK_STRUCTURE_TYPE_IOS_SURFACE_CREATE_INFO_MVK:
  645. return "VK_STRUCTURE_TYPE_IOS_SURFACE_CREATE_INFO_MVK";
  646. case VK_STRUCTURE_TYPE_LOADER_DEVICE_CREATE_INFO:
  647. return "VK_STRUCTURE_TYPE_LOADER_DEVICE_CREATE_INFO";
  648. case VK_STRUCTURE_TYPE_LOADER_INSTANCE_CREATE_INFO:
  649. return "VK_STRUCTURE_TYPE_LOADER_INSTANCE_CREATE_INFO";
  650. case VK_STRUCTURE_TYPE_MACOS_SURFACE_CREATE_INFO_MVK:
  651. return "VK_STRUCTURE_TYPE_MACOS_SURFACE_CREATE_INFO_MVK";
  652. case VK_STRUCTURE_TYPE_MAPPED_MEMORY_RANGE:
  653. return "VK_STRUCTURE_TYPE_MAPPED_MEMORY_RANGE";
  654. case VK_STRUCTURE_TYPE_MEMORY_ALLOCATE_FLAGS_INFO:
  655. return "VK_STRUCTURE_TYPE_MEMORY_ALLOCATE_FLAGS_INFO";
  656. case VK_STRUCTURE_TYPE_MEMORY_ALLOCATE_INFO:
  657. return "VK_STRUCTURE_TYPE_MEMORY_ALLOCATE_INFO";
  658. case VK_STRUCTURE_TYPE_MEMORY_BARRIER:
  659. return "VK_STRUCTURE_TYPE_MEMORY_BARRIER";
  660. case VK_STRUCTURE_TYPE_MEMORY_BARRIER_2:
  661. return "VK_STRUCTURE_TYPE_MEMORY_BARRIER_2";
  662. case VK_STRUCTURE_TYPE_MEMORY_DEDICATED_ALLOCATE_INFO:
  663. return "VK_STRUCTURE_TYPE_MEMORY_DEDICATED_ALLOCATE_INFO";
  664. case VK_STRUCTURE_TYPE_MEMORY_DEDICATED_REQUIREMENTS:
  665. return "VK_STRUCTURE_TYPE_MEMORY_DEDICATED_REQUIREMENTS";
  666. case VK_STRUCTURE_TYPE_MEMORY_FD_PROPERTIES_KHR:
  667. return "VK_STRUCTURE_TYPE_MEMORY_FD_PROPERTIES_KHR";
  668. case VK_STRUCTURE_TYPE_MEMORY_GET_ANDROID_HARDWARE_BUFFER_INFO_ANDROID:
  669. return "VK_STRUCTURE_TYPE_MEMORY_GET_ANDROID_HARDWARE_BUFFER_INFO_ANDROID";
  670. case VK_STRUCTURE_TYPE_MEMORY_GET_FD_INFO_KHR:
  671. return "VK_STRUCTURE_TYPE_MEMORY_GET_FD_INFO_KHR";
  672. case VK_STRUCTURE_TYPE_MEMORY_GET_REMOTE_ADDRESS_INFO_NV:
  673. return "VK_STRUCTURE_TYPE_MEMORY_GET_REMOTE_ADDRESS_INFO_NV";
  674. case VK_STRUCTURE_TYPE_MEMORY_GET_WIN32_HANDLE_INFO_KHR:
  675. return "VK_STRUCTURE_TYPE_MEMORY_GET_WIN32_HANDLE_INFO_KHR";
  676. case VK_STRUCTURE_TYPE_MEMORY_GET_ZIRCON_HANDLE_INFO_FUCHSIA:
  677. return "VK_STRUCTURE_TYPE_MEMORY_GET_ZIRCON_HANDLE_INFO_FUCHSIA";
  678. case VK_STRUCTURE_TYPE_MEMORY_HOST_POINTER_PROPERTIES_EXT:
  679. return "VK_STRUCTURE_TYPE_MEMORY_HOST_POINTER_PROPERTIES_EXT";
  680. case VK_STRUCTURE_TYPE_MEMORY_OPAQUE_CAPTURE_ADDRESS_ALLOCATE_INFO:
  681. return "VK_STRUCTURE_TYPE_MEMORY_OPAQUE_CAPTURE_ADDRESS_ALLOCATE_INFO";
  682. case VK_STRUCTURE_TYPE_MEMORY_PRIORITY_ALLOCATE_INFO_EXT:
  683. return "VK_STRUCTURE_TYPE_MEMORY_PRIORITY_ALLOCATE_INFO_EXT";
  684. case VK_STRUCTURE_TYPE_MEMORY_REQUIREMENTS_2:
  685. return "VK_STRUCTURE_TYPE_MEMORY_REQUIREMENTS_2";
  686. case VK_STRUCTURE_TYPE_MEMORY_WIN32_HANDLE_PROPERTIES_KHR:
  687. return "VK_STRUCTURE_TYPE_MEMORY_WIN32_HANDLE_PROPERTIES_KHR";
  688. case VK_STRUCTURE_TYPE_MEMORY_ZIRCON_HANDLE_PROPERTIES_FUCHSIA:
  689. return "VK_STRUCTURE_TYPE_MEMORY_ZIRCON_HANDLE_PROPERTIES_FUCHSIA";
  690. case VK_STRUCTURE_TYPE_METAL_SURFACE_CREATE_INFO_EXT:
  691. return "VK_STRUCTURE_TYPE_METAL_SURFACE_CREATE_INFO_EXT";
  692. case VK_STRUCTURE_TYPE_MICROMAP_BUILD_INFO_EXT:
  693. return "VK_STRUCTURE_TYPE_MICROMAP_BUILD_INFO_EXT";
  694. case VK_STRUCTURE_TYPE_MICROMAP_BUILD_SIZES_INFO_EXT:
  695. return "VK_STRUCTURE_TYPE_MICROMAP_BUILD_SIZES_INFO_EXT";
  696. case VK_STRUCTURE_TYPE_MICROMAP_CREATE_INFO_EXT:
  697. return "VK_STRUCTURE_TYPE_MICROMAP_CREATE_INFO_EXT";
  698. case VK_STRUCTURE_TYPE_MICROMAP_VERSION_INFO_EXT:
  699. return "VK_STRUCTURE_TYPE_MICROMAP_VERSION_INFO_EXT";
  700. case VK_STRUCTURE_TYPE_MULTISAMPLED_RENDER_TO_SINGLE_SAMPLED_INFO_EXT:
  701. return "VK_STRUCTURE_TYPE_MULTISAMPLED_RENDER_TO_SINGLE_SAMPLED_INFO_EXT";
  702. case VK_STRUCTURE_TYPE_MULTISAMPLE_PROPERTIES_EXT:
  703. return "VK_STRUCTURE_TYPE_MULTISAMPLE_PROPERTIES_EXT";
  704. case VK_STRUCTURE_TYPE_MULTIVIEW_PER_VIEW_ATTRIBUTES_INFO_NVX:
  705. return "VK_STRUCTURE_TYPE_MULTIVIEW_PER_VIEW_ATTRIBUTES_INFO_NVX";
  706. case VK_STRUCTURE_TYPE_MUTABLE_DESCRIPTOR_TYPE_CREATE_INFO_EXT:
  707. return "VK_STRUCTURE_TYPE_MUTABLE_DESCRIPTOR_TYPE_CREATE_INFO_EXT";
  708. case VK_STRUCTURE_TYPE_OPTICAL_FLOW_EXECUTE_INFO_NV:
  709. return "VK_STRUCTURE_TYPE_OPTICAL_FLOW_EXECUTE_INFO_NV";
  710. case VK_STRUCTURE_TYPE_OPTICAL_FLOW_IMAGE_FORMAT_INFO_NV:
  711. return "VK_STRUCTURE_TYPE_OPTICAL_FLOW_IMAGE_FORMAT_INFO_NV";
  712. case VK_STRUCTURE_TYPE_OPTICAL_FLOW_IMAGE_FORMAT_PROPERTIES_NV:
  713. return "VK_STRUCTURE_TYPE_OPTICAL_FLOW_IMAGE_FORMAT_PROPERTIES_NV";
  714. case VK_STRUCTURE_TYPE_OPTICAL_FLOW_SESSION_CREATE_INFO_NV:
  715. return "VK_STRUCTURE_TYPE_OPTICAL_FLOW_SESSION_CREATE_INFO_NV";
  716. case VK_STRUCTURE_TYPE_OPTICAL_FLOW_SESSION_CREATE_PRIVATE_DATA_INFO_NV:
  717. return "VK_STRUCTURE_TYPE_OPTICAL_FLOW_SESSION_CREATE_PRIVATE_DATA_INFO_NV";
  718. case VK_STRUCTURE_TYPE_PERFORMANCE_CONFIGURATION_ACQUIRE_INFO_INTEL:
  719. return "VK_STRUCTURE_TYPE_PERFORMANCE_CONFIGURATION_ACQUIRE_INFO_INTEL";
  720. case VK_STRUCTURE_TYPE_PERFORMANCE_COUNTER_DESCRIPTION_KHR:
  721. return "VK_STRUCTURE_TYPE_PERFORMANCE_COUNTER_DESCRIPTION_KHR";
  722. case VK_STRUCTURE_TYPE_PERFORMANCE_COUNTER_KHR:
  723. return "VK_STRUCTURE_TYPE_PERFORMANCE_COUNTER_KHR";
  724. case VK_STRUCTURE_TYPE_PERFORMANCE_MARKER_INFO_INTEL:
  725. return "VK_STRUCTURE_TYPE_PERFORMANCE_MARKER_INFO_INTEL";
  726. case VK_STRUCTURE_TYPE_PERFORMANCE_OVERRIDE_INFO_INTEL:
  727. return "VK_STRUCTURE_TYPE_PERFORMANCE_OVERRIDE_INFO_INTEL";
  728. case VK_STRUCTURE_TYPE_PERFORMANCE_QUERY_SUBMIT_INFO_KHR:
  729. return "VK_STRUCTURE_TYPE_PERFORMANCE_QUERY_SUBMIT_INFO_KHR";
  730. case VK_STRUCTURE_TYPE_PERFORMANCE_STREAM_MARKER_INFO_INTEL:
  731. return "VK_STRUCTURE_TYPE_PERFORMANCE_STREAM_MARKER_INFO_INTEL";
  732. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_16BIT_STORAGE_FEATURES:
  733. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_16BIT_STORAGE_FEATURES";
  734. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_4444_FORMATS_FEATURES_EXT:
  735. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_4444_FORMATS_FEATURES_EXT";
  736. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_8BIT_STORAGE_FEATURES:
  737. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_8BIT_STORAGE_FEATURES";
  738. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ACCELERATION_STRUCTURE_FEATURES_KHR:
  739. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ACCELERATION_STRUCTURE_FEATURES_KHR";
  740. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ACCELERATION_STRUCTURE_PROPERTIES_KHR:
  741. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ACCELERATION_STRUCTURE_PROPERTIES_KHR";
  742. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ADDRESS_BINDING_REPORT_FEATURES_EXT:
  743. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ADDRESS_BINDING_REPORT_FEATURES_EXT";
  744. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_AMIGO_PROFILING_FEATURES_SEC:
  745. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_AMIGO_PROFILING_FEATURES_SEC";
  746. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ASTC_DECODE_FEATURES_EXT:
  747. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ASTC_DECODE_FEATURES_EXT";
  748. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ATTACHMENT_FEEDBACK_LOOP_LAYOUT_FEATURES_EXT:
  749. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ATTACHMENT_FEEDBACK_LOOP_LAYOUT_FEATURES_EXT";
  750. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_BLEND_OPERATION_ADVANCED_FEATURES_EXT:
  751. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_BLEND_OPERATION_ADVANCED_FEATURES_EXT";
  752. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_BLEND_OPERATION_ADVANCED_PROPERTIES_EXT:
  753. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_BLEND_OPERATION_ADVANCED_PROPERTIES_EXT";
  754. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_BORDER_COLOR_SWIZZLE_FEATURES_EXT:
  755. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_BORDER_COLOR_SWIZZLE_FEATURES_EXT";
  756. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_BUFFER_DEVICE_ADDRESS_FEATURES:
  757. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_BUFFER_DEVICE_ADDRESS_FEATURES";
  758. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_BUFFER_DEVICE_ADDRESS_FEATURES_EXT:
  759. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_BUFFER_DEVICE_ADDRESS_FEATURES_EXT";
  760. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COHERENT_MEMORY_FEATURES_AMD:
  761. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COHERENT_MEMORY_FEATURES_AMD";
  762. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COLOR_WRITE_ENABLE_FEATURES_EXT:
  763. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COLOR_WRITE_ENABLE_FEATURES_EXT";
  764. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COMPUTE_SHADER_DERIVATIVES_FEATURES_NV:
  765. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COMPUTE_SHADER_DERIVATIVES_FEATURES_NV";
  766. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CONDITIONAL_RENDERING_FEATURES_EXT:
  767. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CONDITIONAL_RENDERING_FEATURES_EXT";
  768. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CONSERVATIVE_RASTERIZATION_PROPERTIES_EXT:
  769. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CONSERVATIVE_RASTERIZATION_PROPERTIES_EXT";
  770. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COOPERATIVE_MATRIX_FEATURES_NV:
  771. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COOPERATIVE_MATRIX_FEATURES_NV";
  772. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COOPERATIVE_MATRIX_PROPERTIES_NV:
  773. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COOPERATIVE_MATRIX_PROPERTIES_NV";
  774. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CORNER_SAMPLED_IMAGE_FEATURES_NV:
  775. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CORNER_SAMPLED_IMAGE_FEATURES_NV";
  776. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COVERAGE_REDUCTION_MODE_FEATURES_NV:
  777. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COVERAGE_REDUCTION_MODE_FEATURES_NV";
  778. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CUSTOM_BORDER_COLOR_FEATURES_EXT:
  779. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CUSTOM_BORDER_COLOR_FEATURES_EXT";
  780. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CUSTOM_BORDER_COLOR_PROPERTIES_EXT:
  781. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CUSTOM_BORDER_COLOR_PROPERTIES_EXT";
  782. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEDICATED_ALLOCATION_IMAGE_ALIASING_FEATURES_NV:
  783. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEDICATED_ALLOCATION_IMAGE_ALIASING_FEATURES_NV";
  784. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_CLAMP_ZERO_ONE_FEATURES_EXT:
  785. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_CLAMP_ZERO_ONE_FEATURES_EXT";
  786. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_CLIP_CONTROL_FEATURES_EXT:
  787. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_CLIP_CONTROL_FEATURES_EXT";
  788. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_CLIP_ENABLE_FEATURES_EXT:
  789. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_CLIP_ENABLE_FEATURES_EXT";
  790. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_STENCIL_RESOLVE_PROPERTIES:
  791. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_STENCIL_RESOLVE_PROPERTIES";
  792. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_INDEXING_FEATURES:
  793. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_INDEXING_FEATURES";
  794. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_INDEXING_PROPERTIES:
  795. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_INDEXING_PROPERTIES";
  796. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_SET_HOST_MAPPING_FEATURES_VALVE:
  797. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_SET_HOST_MAPPING_FEATURES_VALVE";
  798. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEVICE_GENERATED_COMMANDS_FEATURES_NV:
  799. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEVICE_GENERATED_COMMANDS_FEATURES_NV";
  800. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEVICE_GENERATED_COMMANDS_PROPERTIES_NV:
  801. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEVICE_GENERATED_COMMANDS_PROPERTIES_NV";
  802. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEVICE_MEMORY_REPORT_FEATURES_EXT:
  803. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEVICE_MEMORY_REPORT_FEATURES_EXT";
  804. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DIAGNOSTICS_CONFIG_FEATURES_NV:
  805. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DIAGNOSTICS_CONFIG_FEATURES_NV";
  806. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DISCARD_RECTANGLE_PROPERTIES_EXT:
  807. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DISCARD_RECTANGLE_PROPERTIES_EXT";
  808. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DRIVER_PROPERTIES:
  809. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DRIVER_PROPERTIES";
  810. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DRM_PROPERTIES_EXT:
  811. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DRM_PROPERTIES_EXT";
  812. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DYNAMIC_RENDERING_FEATURES:
  813. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DYNAMIC_RENDERING_FEATURES";
  814. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXCLUSIVE_SCISSOR_FEATURES_NV:
  815. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXCLUSIVE_SCISSOR_FEATURES_NV";
  816. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTENDED_DYNAMIC_STATE_2_FEATURES_EXT:
  817. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTENDED_DYNAMIC_STATE_2_FEATURES_EXT";
  818. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTENDED_DYNAMIC_STATE_3_FEATURES_EXT:
  819. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTENDED_DYNAMIC_STATE_3_FEATURES_EXT";
  820. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTENDED_DYNAMIC_STATE_3_PROPERTIES_EXT:
  821. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTENDED_DYNAMIC_STATE_3_PROPERTIES_EXT";
  822. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTENDED_DYNAMIC_STATE_FEATURES_EXT:
  823. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTENDED_DYNAMIC_STATE_FEATURES_EXT";
  824. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_BUFFER_INFO:
  825. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_BUFFER_INFO";
  826. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_FENCE_INFO:
  827. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_FENCE_INFO";
  828. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_IMAGE_FORMAT_INFO:
  829. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_IMAGE_FORMAT_INFO";
  830. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_MEMORY_HOST_PROPERTIES_EXT:
  831. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_MEMORY_HOST_PROPERTIES_EXT";
  832. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_MEMORY_RDMA_FEATURES_NV:
  833. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_MEMORY_RDMA_FEATURES_NV";
  834. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_SEMAPHORE_INFO:
  835. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_SEMAPHORE_INFO";
  836. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FAULT_FEATURES_EXT:
  837. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FAULT_FEATURES_EXT";
  838. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FEATURES_2:
  839. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FEATURES_2";
  840. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FLOAT_CONTROLS_PROPERTIES:
  841. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FLOAT_CONTROLS_PROPERTIES";
  842. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_2_FEATURES_EXT:
  843. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_2_FEATURES_EXT";
  844. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_2_PROPERTIES_EXT:
  845. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_2_PROPERTIES_EXT";
  846. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_FEATURES_EXT:
  847. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_FEATURES_EXT";
  848. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_OFFSET_FEATURES_QCOM:
  849. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_OFFSET_FEATURES_QCOM";
  850. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_OFFSET_PROPERTIES_QCOM:
  851. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_OFFSET_PROPERTIES_QCOM";
  852. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_PROPERTIES_EXT:
  853. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_PROPERTIES_EXT";
  854. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADER_BARYCENTRIC_FEATURES_KHR:
  855. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADER_BARYCENTRIC_FEATURES_KHR";
  856. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADER_BARYCENTRIC_PROPERTIES_KHR:
  857. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADER_BARYCENTRIC_PROPERTIES_KHR";
  858. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADER_INTERLOCK_FEATURES_EXT:
  859. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADER_INTERLOCK_FEATURES_EXT";
  860. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADING_RATE_ENUMS_FEATURES_NV:
  861. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADING_RATE_ENUMS_FEATURES_NV";
  862. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADING_RATE_ENUMS_PROPERTIES_NV:
  863. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADING_RATE_ENUMS_PROPERTIES_NV";
  864. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADING_RATE_FEATURES_KHR:
  865. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADING_RATE_FEATURES_KHR";
  866. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADING_RATE_KHR:
  867. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADING_RATE_KHR";
  868. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADING_RATE_PROPERTIES_KHR:
  869. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADING_RATE_PROPERTIES_KHR";
  870. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_GLOBAL_PRIORITY_QUERY_FEATURES_KHR:
  871. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_GLOBAL_PRIORITY_QUERY_FEATURES_KHR";
  872. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_GRAPHICS_PIPELINE_LIBRARY_FEATURES_EXT:
  873. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_GRAPHICS_PIPELINE_LIBRARY_FEATURES_EXT";
  874. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_GRAPHICS_PIPELINE_LIBRARY_PROPERTIES_EXT:
  875. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_GRAPHICS_PIPELINE_LIBRARY_PROPERTIES_EXT";
  876. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_GROUP_PROPERTIES:
  877. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_GROUP_PROPERTIES";
  878. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_HOST_QUERY_RESET_FEATURES:
  879. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_HOST_QUERY_RESET_FEATURES";
  880. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ID_PROPERTIES:
  881. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ID_PROPERTIES";
  882. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGELESS_FRAMEBUFFER_FEATURES:
  883. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGELESS_FRAMEBUFFER_FEATURES";
  884. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_2D_VIEW_OF_3D_FEATURES_EXT:
  885. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_2D_VIEW_OF_3D_FEATURES_EXT";
  886. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_COMPRESSION_CONTROL_FEATURES_EXT:
  887. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_COMPRESSION_CONTROL_FEATURES_EXT";
  888. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_COMPRESSION_CONTROL_SWAPCHAIN_FEATURES_EXT:
  889. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_COMPRESSION_CONTROL_SWAPCHAIN_FEATURES_EXT";
  890. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_DRM_FORMAT_MODIFIER_INFO_EXT:
  891. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_DRM_FORMAT_MODIFIER_INFO_EXT";
  892. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_FORMAT_INFO_2:
  893. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_FORMAT_INFO_2";
  894. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_PROCESSING_FEATURES_QCOM:
  895. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_PROCESSING_FEATURES_QCOM";
  896. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_PROCESSING_PROPERTIES_QCOM:
  897. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_PROCESSING_PROPERTIES_QCOM";
  898. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_ROBUSTNESS_FEATURES:
  899. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_ROBUSTNESS_FEATURES";
  900. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_VIEW_IMAGE_FORMAT_INFO_EXT:
  901. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_VIEW_IMAGE_FORMAT_INFO_EXT";
  902. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_VIEW_MIN_LOD_FEATURES_EXT:
  903. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_VIEW_MIN_LOD_FEATURES_EXT";
  904. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_INDEX_TYPE_UINT8_FEATURES_EXT:
  905. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_INDEX_TYPE_UINT8_FEATURES_EXT";
  906. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_INHERITED_VIEWPORT_SCISSOR_FEATURES_NV:
  907. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_INHERITED_VIEWPORT_SCISSOR_FEATURES_NV";
  908. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_INLINE_UNIFORM_BLOCK_FEATURES:
  909. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_INLINE_UNIFORM_BLOCK_FEATURES";
  910. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_INLINE_UNIFORM_BLOCK_PROPERTIES:
  911. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_INLINE_UNIFORM_BLOCK_PROPERTIES";
  912. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_INVOCATION_MASK_FEATURES_HUAWEI:
  913. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_INVOCATION_MASK_FEATURES_HUAWEI";
  914. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_LEGACY_DITHERING_FEATURES_EXT:
  915. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_LEGACY_DITHERING_FEATURES_EXT";
  916. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_LINEAR_COLOR_ATTACHMENT_FEATURES_NV:
  917. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_LINEAR_COLOR_ATTACHMENT_FEATURES_NV";
  918. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_LINE_RASTERIZATION_FEATURES_EXT:
  919. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_LINE_RASTERIZATION_FEATURES_EXT";
  920. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_LINE_RASTERIZATION_PROPERTIES_EXT:
  921. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_LINE_RASTERIZATION_PROPERTIES_EXT";
  922. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_3_PROPERTIES:
  923. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_3_PROPERTIES";
  924. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_4_FEATURES:
  925. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_4_FEATURES";
  926. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_4_PROPERTIES:
  927. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_4_PROPERTIES";
  928. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_BUDGET_PROPERTIES_EXT:
  929. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_BUDGET_PROPERTIES_EXT";
  930. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_PRIORITY_FEATURES_EXT:
  931. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_PRIORITY_FEATURES_EXT";
  932. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_PROPERTIES_2:
  933. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_PROPERTIES_2";
  934. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MESH_SHADER_FEATURES_EXT:
  935. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MESH_SHADER_FEATURES_EXT";
  936. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MESH_SHADER_FEATURES_NV:
  937. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MESH_SHADER_FEATURES_NV";
  938. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MESH_SHADER_PROPERTIES_EXT:
  939. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MESH_SHADER_PROPERTIES_EXT";
  940. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MESH_SHADER_PROPERTIES_NV:
  941. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MESH_SHADER_PROPERTIES_NV";
  942. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTISAMPLED_RENDER_TO_SINGLE_SAMPLED_FEATURES_EXT:
  943. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTISAMPLED_RENDER_TO_SINGLE_SAMPLED_FEATURES_EXT";
  944. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_FEATURES:
  945. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_FEATURES";
  946. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PER_VIEW_ATTRIBUTES_PROPERTIES_NVX:
  947. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PER_VIEW_ATTRIBUTES_PROPERTIES_NVX";
  948. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PROPERTIES:
  949. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PROPERTIES";
  950. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTI_DRAW_FEATURES_EXT:
  951. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTI_DRAW_FEATURES_EXT";
  952. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTI_DRAW_PROPERTIES_EXT:
  953. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTI_DRAW_PROPERTIES_EXT";
  954. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MUTABLE_DESCRIPTOR_TYPE_FEATURES_EXT:
  955. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MUTABLE_DESCRIPTOR_TYPE_FEATURES_EXT";
  956. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_NON_SEAMLESS_CUBE_MAP_FEATURES_EXT:
  957. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_NON_SEAMLESS_CUBE_MAP_FEATURES_EXT";
  958. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_OPACITY_MICROMAP_FEATURES_EXT:
  959. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_OPACITY_MICROMAP_FEATURES_EXT";
  960. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_OPACITY_MICROMAP_PROPERTIES_EXT:
  961. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_OPACITY_MICROMAP_PROPERTIES_EXT";
  962. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_OPTICAL_FLOW_FEATURES_NV:
  963. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_OPTICAL_FLOW_FEATURES_NV";
  964. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_OPTICAL_FLOW_PROPERTIES_NV:
  965. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_OPTICAL_FLOW_PROPERTIES_NV";
  966. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PAGEABLE_DEVICE_LOCAL_MEMORY_FEATURES_EXT:
  967. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PAGEABLE_DEVICE_LOCAL_MEMORY_FEATURES_EXT";
  968. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PCI_BUS_INFO_PROPERTIES_EXT:
  969. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PCI_BUS_INFO_PROPERTIES_EXT";
  970. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PERFORMANCE_QUERY_FEATURES_KHR:
  971. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PERFORMANCE_QUERY_FEATURES_KHR";
  972. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PERFORMANCE_QUERY_PROPERTIES_KHR:
  973. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PERFORMANCE_QUERY_PROPERTIES_KHR";
  974. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_CREATION_CACHE_CONTROL_FEATURES:
  975. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_CREATION_CACHE_CONTROL_FEATURES";
  976. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_EXECUTABLE_PROPERTIES_FEATURES_KHR:
  977. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_EXECUTABLE_PROPERTIES_FEATURES_KHR";
  978. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_PROPERTIES_FEATURES_EXT:
  979. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_PROPERTIES_FEATURES_EXT";
  980. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_PROTECTED_ACCESS_FEATURES_EXT:
  981. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_PROTECTED_ACCESS_FEATURES_EXT";
  982. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_ROBUSTNESS_FEATURES_EXT:
  983. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_ROBUSTNESS_FEATURES_EXT";
  984. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_ROBUSTNESS_PROPERTIES_EXT:
  985. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_ROBUSTNESS_PROPERTIES_EXT";
  986. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_POINT_CLIPPING_PROPERTIES:
  987. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_POINT_CLIPPING_PROPERTIES";
  988. #ifdef VK_ENABLE_BETA_EXTENSIONS
  989. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PORTABILITY_SUBSET_FEATURES_KHR:
  990. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PORTABILITY_SUBSET_FEATURES_KHR";
  991. #endif // VK_ENABLE_BETA_EXTENSIONS
  992. #ifdef VK_ENABLE_BETA_EXTENSIONS
  993. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PORTABILITY_SUBSET_PROPERTIES_KHR:
  994. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PORTABILITY_SUBSET_PROPERTIES_KHR";
  995. #endif // VK_ENABLE_BETA_EXTENSIONS
  996. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRESENT_BARRIER_FEATURES_NV:
  997. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRESENT_BARRIER_FEATURES_NV";
  998. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRESENT_ID_FEATURES_KHR:
  999. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRESENT_ID_FEATURES_KHR";
  1000. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRESENT_WAIT_FEATURES_KHR:
  1001. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRESENT_WAIT_FEATURES_KHR";
  1002. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRIMITIVES_GENERATED_QUERY_FEATURES_EXT:
  1003. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRIMITIVES_GENERATED_QUERY_FEATURES_EXT";
  1004. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRIMITIVE_TOPOLOGY_LIST_RESTART_FEATURES_EXT:
  1005. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRIMITIVE_TOPOLOGY_LIST_RESTART_FEATURES_EXT";
  1006. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRIVATE_DATA_FEATURES:
  1007. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRIVATE_DATA_FEATURES";
  1008. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROPERTIES_2:
  1009. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROPERTIES_2";
  1010. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROTECTED_MEMORY_FEATURES:
  1011. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROTECTED_MEMORY_FEATURES";
  1012. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROTECTED_MEMORY_PROPERTIES:
  1013. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROTECTED_MEMORY_PROPERTIES";
  1014. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROVOKING_VERTEX_FEATURES_EXT:
  1015. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROVOKING_VERTEX_FEATURES_EXT";
  1016. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROVOKING_VERTEX_PROPERTIES_EXT:
  1017. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROVOKING_VERTEX_PROPERTIES_EXT";
  1018. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PUSH_DESCRIPTOR_PROPERTIES_KHR:
  1019. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PUSH_DESCRIPTOR_PROPERTIES_KHR";
  1020. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RASTERIZATION_ORDER_ATTACHMENT_ACCESS_FEATURES_EXT:
  1021. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RASTERIZATION_ORDER_ATTACHMENT_ACCESS_FEATURES_EXT";
  1022. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_QUERY_FEATURES_KHR:
  1023. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_QUERY_FEATURES_KHR";
  1024. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_MAINTENANCE_1_FEATURES_KHR:
  1025. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_MAINTENANCE_1_FEATURES_KHR";
  1026. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_MOTION_BLUR_FEATURES_NV:
  1027. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_MOTION_BLUR_FEATURES_NV";
  1028. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_PIPELINE_FEATURES_KHR:
  1029. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_PIPELINE_FEATURES_KHR";
  1030. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_PIPELINE_PROPERTIES_KHR:
  1031. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_PIPELINE_PROPERTIES_KHR";
  1032. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_PROPERTIES_NV:
  1033. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_PROPERTIES_NV";
  1034. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_REPRESENTATIVE_FRAGMENT_TEST_FEATURES_NV:
  1035. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_REPRESENTATIVE_FRAGMENT_TEST_FEATURES_NV";
  1036. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RGBA10X6_FORMATS_FEATURES_EXT:
  1037. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RGBA10X6_FORMATS_FEATURES_EXT";
  1038. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ROBUSTNESS_2_FEATURES_EXT:
  1039. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ROBUSTNESS_2_FEATURES_EXT";
  1040. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ROBUSTNESS_2_PROPERTIES_EXT:
  1041. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ROBUSTNESS_2_PROPERTIES_EXT";
  1042. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLER_FILTER_MINMAX_PROPERTIES:
  1043. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLER_FILTER_MINMAX_PROPERTIES";
  1044. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLER_YCBCR_CONVERSION_FEATURES:
  1045. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLER_YCBCR_CONVERSION_FEATURES";
  1046. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLE_LOCATIONS_PROPERTIES_EXT:
  1047. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLE_LOCATIONS_PROPERTIES_EXT";
  1048. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SCALAR_BLOCK_LAYOUT_FEATURES:
  1049. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SCALAR_BLOCK_LAYOUT_FEATURES";
  1050. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SEPARATE_DEPTH_STENCIL_LAYOUTS_FEATURES:
  1051. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SEPARATE_DEPTH_STENCIL_LAYOUTS_FEATURES";
  1052. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_ATOMIC_FLOAT_2_FEATURES_EXT:
  1053. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_ATOMIC_FLOAT_2_FEATURES_EXT";
  1054. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_ATOMIC_FLOAT_FEATURES_EXT:
  1055. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_ATOMIC_FLOAT_FEATURES_EXT";
  1056. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_ATOMIC_INT64_FEATURES:
  1057. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_ATOMIC_INT64_FEATURES";
  1058. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CLOCK_FEATURES_KHR:
  1059. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CLOCK_FEATURES_KHR";
  1060. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CORE_BUILTINS_FEATURES_ARM:
  1061. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CORE_BUILTINS_FEATURES_ARM";
  1062. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CORE_BUILTINS_PROPERTIES_ARM:
  1063. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CORE_BUILTINS_PROPERTIES_ARM";
  1064. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CORE_PROPERTIES_2_AMD:
  1065. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CORE_PROPERTIES_2_AMD";
  1066. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CORE_PROPERTIES_AMD:
  1067. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CORE_PROPERTIES_AMD";
  1068. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DEMOTE_TO_HELPER_INVOCATION_FEATURES:
  1069. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DEMOTE_TO_HELPER_INVOCATION_FEATURES";
  1070. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DRAW_PARAMETERS_FEATURES:
  1071. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DRAW_PARAMETERS_FEATURES";
  1072. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_EARLY_AND_LATE_FRAGMENT_TESTS_FEATURES_AMD:
  1073. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_EARLY_AND_LATE_FRAGMENT_TESTS_FEATURES_AMD";
  1074. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_FLOAT16_INT8_FEATURES:
  1075. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_FLOAT16_INT8_FEATURES";
  1076. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_IMAGE_ATOMIC_INT64_FEATURES_EXT:
  1077. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_IMAGE_ATOMIC_INT64_FEATURES_EXT";
  1078. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_IMAGE_FOOTPRINT_FEATURES_NV:
  1079. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_IMAGE_FOOTPRINT_FEATURES_NV";
  1080. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_INTEGER_DOT_PRODUCT_FEATURES:
  1081. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_INTEGER_DOT_PRODUCT_FEATURES";
  1082. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_INTEGER_DOT_PRODUCT_PROPERTIES:
  1083. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_INTEGER_DOT_PRODUCT_PROPERTIES";
  1084. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_INTEGER_FUNCTIONS_2_FEATURES_INTEL:
  1085. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_INTEGER_FUNCTIONS_2_FEATURES_INTEL";
  1086. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_MODULE_IDENTIFIER_FEATURES_EXT:
  1087. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_MODULE_IDENTIFIER_FEATURES_EXT";
  1088. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_MODULE_IDENTIFIER_PROPERTIES_EXT:
  1089. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_MODULE_IDENTIFIER_PROPERTIES_EXT";
  1090. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SM_BUILTINS_FEATURES_NV:
  1091. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SM_BUILTINS_FEATURES_NV";
  1092. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SM_BUILTINS_PROPERTIES_NV:
  1093. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SM_BUILTINS_PROPERTIES_NV";
  1094. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SUBGROUP_EXTENDED_TYPES_FEATURES:
  1095. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SUBGROUP_EXTENDED_TYPES_FEATURES";
  1096. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SUBGROUP_UNIFORM_CONTROL_FLOW_FEATURES_KHR:
  1097. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SUBGROUP_UNIFORM_CONTROL_FLOW_FEATURES_KHR";
  1098. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_TERMINATE_INVOCATION_FEATURES:
  1099. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_TERMINATE_INVOCATION_FEATURES";
  1100. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADING_RATE_IMAGE_FEATURES_NV:
  1101. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADING_RATE_IMAGE_FEATURES_NV";
  1102. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADING_RATE_IMAGE_PROPERTIES_NV:
  1103. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADING_RATE_IMAGE_PROPERTIES_NV";
  1104. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SPARSE_IMAGE_FORMAT_INFO_2:
  1105. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SPARSE_IMAGE_FORMAT_INFO_2";
  1106. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_PROPERTIES:
  1107. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_PROPERTIES";
  1108. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_SIZE_CONTROL_FEATURES:
  1109. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_SIZE_CONTROL_FEATURES";
  1110. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_SIZE_CONTROL_PROPERTIES:
  1111. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_SIZE_CONTROL_PROPERTIES";
  1112. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBPASS_MERGE_FEEDBACK_FEATURES_EXT:
  1113. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBPASS_MERGE_FEEDBACK_FEATURES_EXT";
  1114. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBPASS_SHADING_FEATURES_HUAWEI:
  1115. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBPASS_SHADING_FEATURES_HUAWEI";
  1116. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBPASS_SHADING_PROPERTIES_HUAWEI:
  1117. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBPASS_SHADING_PROPERTIES_HUAWEI";
  1118. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SURFACE_INFO_2_KHR:
  1119. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SURFACE_INFO_2_KHR";
  1120. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SYNCHRONIZATION_2_FEATURES:
  1121. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SYNCHRONIZATION_2_FEATURES";
  1122. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXEL_BUFFER_ALIGNMENT_FEATURES_EXT:
  1123. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXEL_BUFFER_ALIGNMENT_FEATURES_EXT";
  1124. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXEL_BUFFER_ALIGNMENT_PROPERTIES:
  1125. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXEL_BUFFER_ALIGNMENT_PROPERTIES";
  1126. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXTURE_COMPRESSION_ASTC_HDR_FEATURES:
  1127. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXTURE_COMPRESSION_ASTC_HDR_FEATURES";
  1128. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TILE_PROPERTIES_FEATURES_QCOM:
  1129. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TILE_PROPERTIES_FEATURES_QCOM";
  1130. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TIMELINE_SEMAPHORE_FEATURES:
  1131. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TIMELINE_SEMAPHORE_FEATURES";
  1132. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TIMELINE_SEMAPHORE_PROPERTIES:
  1133. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TIMELINE_SEMAPHORE_PROPERTIES";
  1134. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TOOL_PROPERTIES:
  1135. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TOOL_PROPERTIES";
  1136. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TRANSFORM_FEEDBACK_FEATURES_EXT:
  1137. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TRANSFORM_FEEDBACK_FEATURES_EXT";
  1138. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TRANSFORM_FEEDBACK_PROPERTIES_EXT:
  1139. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TRANSFORM_FEEDBACK_PROPERTIES_EXT";
  1140. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_UNIFORM_BUFFER_STANDARD_LAYOUT_FEATURES:
  1141. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_UNIFORM_BUFFER_STANDARD_LAYOUT_FEATURES";
  1142. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VARIABLE_POINTERS_FEATURES:
  1143. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VARIABLE_POINTERS_FEATURES";
  1144. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_ATTRIBUTE_DIVISOR_FEATURES_EXT:
  1145. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_ATTRIBUTE_DIVISOR_FEATURES_EXT";
  1146. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_ATTRIBUTE_DIVISOR_PROPERTIES_EXT:
  1147. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_ATTRIBUTE_DIVISOR_PROPERTIES_EXT";
  1148. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_INPUT_DYNAMIC_STATE_FEATURES_EXT:
  1149. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_INPUT_DYNAMIC_STATE_FEATURES_EXT";
  1150. #ifdef VK_ENABLE_BETA_EXTENSIONS
  1151. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VIDEO_FORMAT_INFO_KHR:
  1152. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VIDEO_FORMAT_INFO_KHR";
  1153. #endif // VK_ENABLE_BETA_EXTENSIONS
  1154. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_1_FEATURES:
  1155. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_1_FEATURES";
  1156. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_1_PROPERTIES:
  1157. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_1_PROPERTIES";
  1158. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_2_FEATURES:
  1159. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_2_FEATURES";
  1160. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_2_PROPERTIES:
  1161. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_2_PROPERTIES";
  1162. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_3_FEATURES:
  1163. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_3_FEATURES";
  1164. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_3_PROPERTIES:
  1165. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_3_PROPERTIES";
  1166. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_MEMORY_MODEL_FEATURES:
  1167. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_MEMORY_MODEL_FEATURES";
  1168. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_WORKGROUP_MEMORY_EXPLICIT_LAYOUT_FEATURES_KHR:
  1169. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_WORKGROUP_MEMORY_EXPLICIT_LAYOUT_FEATURES_KHR";
  1170. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_YCBCR_2_PLANE_444_FORMATS_FEATURES_EXT:
  1171. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_YCBCR_2_PLANE_444_FORMATS_FEATURES_EXT";
  1172. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_YCBCR_IMAGE_ARRAYS_FEATURES_EXT:
  1173. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_YCBCR_IMAGE_ARRAYS_FEATURES_EXT";
  1174. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ZERO_INITIALIZE_WORKGROUP_MEMORY_FEATURES:
  1175. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ZERO_INITIALIZE_WORKGROUP_MEMORY_FEATURES";
  1176. case VK_STRUCTURE_TYPE_PIPELINE_CACHE_CREATE_INFO:
  1177. return "VK_STRUCTURE_TYPE_PIPELINE_CACHE_CREATE_INFO";
  1178. case VK_STRUCTURE_TYPE_PIPELINE_COLOR_BLEND_ADVANCED_STATE_CREATE_INFO_EXT:
  1179. return "VK_STRUCTURE_TYPE_PIPELINE_COLOR_BLEND_ADVANCED_STATE_CREATE_INFO_EXT";
  1180. case VK_STRUCTURE_TYPE_PIPELINE_COLOR_BLEND_STATE_CREATE_INFO:
  1181. return "VK_STRUCTURE_TYPE_PIPELINE_COLOR_BLEND_STATE_CREATE_INFO";
  1182. case VK_STRUCTURE_TYPE_PIPELINE_COLOR_WRITE_CREATE_INFO_EXT:
  1183. return "VK_STRUCTURE_TYPE_PIPELINE_COLOR_WRITE_CREATE_INFO_EXT";
  1184. case VK_STRUCTURE_TYPE_PIPELINE_COMPILER_CONTROL_CREATE_INFO_AMD:
  1185. return "VK_STRUCTURE_TYPE_PIPELINE_COMPILER_CONTROL_CREATE_INFO_AMD";
  1186. case VK_STRUCTURE_TYPE_PIPELINE_COVERAGE_MODULATION_STATE_CREATE_INFO_NV:
  1187. return "VK_STRUCTURE_TYPE_PIPELINE_COVERAGE_MODULATION_STATE_CREATE_INFO_NV";
  1188. case VK_STRUCTURE_TYPE_PIPELINE_COVERAGE_REDUCTION_STATE_CREATE_INFO_NV:
  1189. return "VK_STRUCTURE_TYPE_PIPELINE_COVERAGE_REDUCTION_STATE_CREATE_INFO_NV";
  1190. case VK_STRUCTURE_TYPE_PIPELINE_COVERAGE_TO_COLOR_STATE_CREATE_INFO_NV:
  1191. return "VK_STRUCTURE_TYPE_PIPELINE_COVERAGE_TO_COLOR_STATE_CREATE_INFO_NV";
  1192. case VK_STRUCTURE_TYPE_PIPELINE_CREATION_FEEDBACK_CREATE_INFO:
  1193. return "VK_STRUCTURE_TYPE_PIPELINE_CREATION_FEEDBACK_CREATE_INFO";
  1194. case VK_STRUCTURE_TYPE_PIPELINE_DEPTH_STENCIL_STATE_CREATE_INFO:
  1195. return "VK_STRUCTURE_TYPE_PIPELINE_DEPTH_STENCIL_STATE_CREATE_INFO";
  1196. case VK_STRUCTURE_TYPE_PIPELINE_DISCARD_RECTANGLE_STATE_CREATE_INFO_EXT:
  1197. return "VK_STRUCTURE_TYPE_PIPELINE_DISCARD_RECTANGLE_STATE_CREATE_INFO_EXT";
  1198. case VK_STRUCTURE_TYPE_PIPELINE_DYNAMIC_STATE_CREATE_INFO:
  1199. return "VK_STRUCTURE_TYPE_PIPELINE_DYNAMIC_STATE_CREATE_INFO";
  1200. case VK_STRUCTURE_TYPE_PIPELINE_EXECUTABLE_INFO_KHR:
  1201. return "VK_STRUCTURE_TYPE_PIPELINE_EXECUTABLE_INFO_KHR";
  1202. case VK_STRUCTURE_TYPE_PIPELINE_EXECUTABLE_INTERNAL_REPRESENTATION_KHR:
  1203. return "VK_STRUCTURE_TYPE_PIPELINE_EXECUTABLE_INTERNAL_REPRESENTATION_KHR";
  1204. case VK_STRUCTURE_TYPE_PIPELINE_EXECUTABLE_PROPERTIES_KHR:
  1205. return "VK_STRUCTURE_TYPE_PIPELINE_EXECUTABLE_PROPERTIES_KHR";
  1206. case VK_STRUCTURE_TYPE_PIPELINE_EXECUTABLE_STATISTIC_KHR:
  1207. return "VK_STRUCTURE_TYPE_PIPELINE_EXECUTABLE_STATISTIC_KHR";
  1208. case VK_STRUCTURE_TYPE_PIPELINE_FRAGMENT_SHADING_RATE_ENUM_STATE_CREATE_INFO_NV:
  1209. return "VK_STRUCTURE_TYPE_PIPELINE_FRAGMENT_SHADING_RATE_ENUM_STATE_CREATE_INFO_NV";
  1210. case VK_STRUCTURE_TYPE_PIPELINE_FRAGMENT_SHADING_RATE_STATE_CREATE_INFO_KHR:
  1211. return "VK_STRUCTURE_TYPE_PIPELINE_FRAGMENT_SHADING_RATE_STATE_CREATE_INFO_KHR";
  1212. case VK_STRUCTURE_TYPE_PIPELINE_INFO_KHR:
  1213. return "VK_STRUCTURE_TYPE_PIPELINE_INFO_KHR";
  1214. case VK_STRUCTURE_TYPE_PIPELINE_INPUT_ASSEMBLY_STATE_CREATE_INFO:
  1215. return "VK_STRUCTURE_TYPE_PIPELINE_INPUT_ASSEMBLY_STATE_CREATE_INFO";
  1216. case VK_STRUCTURE_TYPE_PIPELINE_LAYOUT_CREATE_INFO:
  1217. return "VK_STRUCTURE_TYPE_PIPELINE_LAYOUT_CREATE_INFO";
  1218. case VK_STRUCTURE_TYPE_PIPELINE_LIBRARY_CREATE_INFO_KHR:
  1219. return "VK_STRUCTURE_TYPE_PIPELINE_LIBRARY_CREATE_INFO_KHR";
  1220. case VK_STRUCTURE_TYPE_PIPELINE_MULTISAMPLE_STATE_CREATE_INFO:
  1221. return "VK_STRUCTURE_TYPE_PIPELINE_MULTISAMPLE_STATE_CREATE_INFO";
  1222. case VK_STRUCTURE_TYPE_PIPELINE_PROPERTIES_IDENTIFIER_EXT:
  1223. return "VK_STRUCTURE_TYPE_PIPELINE_PROPERTIES_IDENTIFIER_EXT";
  1224. case VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_CONSERVATIVE_STATE_CREATE_INFO_EXT:
  1225. return "VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_CONSERVATIVE_STATE_CREATE_INFO_EXT";
  1226. case VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_DEPTH_CLIP_STATE_CREATE_INFO_EXT:
  1227. return "VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_DEPTH_CLIP_STATE_CREATE_INFO_EXT";
  1228. case VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_LINE_STATE_CREATE_INFO_EXT:
  1229. return "VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_LINE_STATE_CREATE_INFO_EXT";
  1230. case VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_PROVOKING_VERTEX_STATE_CREATE_INFO_EXT:
  1231. return "VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_PROVOKING_VERTEX_STATE_CREATE_INFO_EXT";
  1232. case VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_CREATE_INFO:
  1233. return "VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_CREATE_INFO";
  1234. case VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_RASTERIZATION_ORDER_AMD:
  1235. return "VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_RASTERIZATION_ORDER_AMD";
  1236. case VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_STREAM_CREATE_INFO_EXT:
  1237. return "VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_STREAM_CREATE_INFO_EXT";
  1238. case VK_STRUCTURE_TYPE_PIPELINE_RENDERING_CREATE_INFO:
  1239. return "VK_STRUCTURE_TYPE_PIPELINE_RENDERING_CREATE_INFO";
  1240. case VK_STRUCTURE_TYPE_PIPELINE_REPRESENTATIVE_FRAGMENT_TEST_STATE_CREATE_INFO_NV:
  1241. return "VK_STRUCTURE_TYPE_PIPELINE_REPRESENTATIVE_FRAGMENT_TEST_STATE_CREATE_INFO_NV";
  1242. case VK_STRUCTURE_TYPE_PIPELINE_ROBUSTNESS_CREATE_INFO_EXT:
  1243. return "VK_STRUCTURE_TYPE_PIPELINE_ROBUSTNESS_CREATE_INFO_EXT";
  1244. case VK_STRUCTURE_TYPE_PIPELINE_SAMPLE_LOCATIONS_STATE_CREATE_INFO_EXT:
  1245. return "VK_STRUCTURE_TYPE_PIPELINE_SAMPLE_LOCATIONS_STATE_CREATE_INFO_EXT";
  1246. case VK_STRUCTURE_TYPE_PIPELINE_SHADER_STAGE_CREATE_INFO:
  1247. return "VK_STRUCTURE_TYPE_PIPELINE_SHADER_STAGE_CREATE_INFO";
  1248. case VK_STRUCTURE_TYPE_PIPELINE_SHADER_STAGE_MODULE_IDENTIFIER_CREATE_INFO_EXT:
  1249. return "VK_STRUCTURE_TYPE_PIPELINE_SHADER_STAGE_MODULE_IDENTIFIER_CREATE_INFO_EXT";
  1250. case VK_STRUCTURE_TYPE_PIPELINE_SHADER_STAGE_REQUIRED_SUBGROUP_SIZE_CREATE_INFO:
  1251. return "VK_STRUCTURE_TYPE_PIPELINE_SHADER_STAGE_REQUIRED_SUBGROUP_SIZE_CREATE_INFO";
  1252. case VK_STRUCTURE_TYPE_PIPELINE_TESSELLATION_DOMAIN_ORIGIN_STATE_CREATE_INFO:
  1253. return "VK_STRUCTURE_TYPE_PIPELINE_TESSELLATION_DOMAIN_ORIGIN_STATE_CREATE_INFO";
  1254. case VK_STRUCTURE_TYPE_PIPELINE_TESSELLATION_STATE_CREATE_INFO:
  1255. return "VK_STRUCTURE_TYPE_PIPELINE_TESSELLATION_STATE_CREATE_INFO";
  1256. case VK_STRUCTURE_TYPE_PIPELINE_VERTEX_INPUT_DIVISOR_STATE_CREATE_INFO_EXT:
  1257. return "VK_STRUCTURE_TYPE_PIPELINE_VERTEX_INPUT_DIVISOR_STATE_CREATE_INFO_EXT";
  1258. case VK_STRUCTURE_TYPE_PIPELINE_VERTEX_INPUT_STATE_CREATE_INFO:
  1259. return "VK_STRUCTURE_TYPE_PIPELINE_VERTEX_INPUT_STATE_CREATE_INFO";
  1260. case VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_COARSE_SAMPLE_ORDER_STATE_CREATE_INFO_NV:
  1261. return "VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_COARSE_SAMPLE_ORDER_STATE_CREATE_INFO_NV";
  1262. case VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_DEPTH_CLIP_CONTROL_CREATE_INFO_EXT:
  1263. return "VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_DEPTH_CLIP_CONTROL_CREATE_INFO_EXT";
  1264. case VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_EXCLUSIVE_SCISSOR_STATE_CREATE_INFO_NV:
  1265. return "VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_EXCLUSIVE_SCISSOR_STATE_CREATE_INFO_NV";
  1266. case VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_SHADING_RATE_IMAGE_STATE_CREATE_INFO_NV:
  1267. return "VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_SHADING_RATE_IMAGE_STATE_CREATE_INFO_NV";
  1268. case VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_STATE_CREATE_INFO:
  1269. return "VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_STATE_CREATE_INFO";
  1270. case VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_SWIZZLE_STATE_CREATE_INFO_NV:
  1271. return "VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_SWIZZLE_STATE_CREATE_INFO_NV";
  1272. case VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_W_SCALING_STATE_CREATE_INFO_NV:
  1273. return "VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_W_SCALING_STATE_CREATE_INFO_NV";
  1274. case VK_STRUCTURE_TYPE_PRESENT_FRAME_TOKEN_GGP:
  1275. return "VK_STRUCTURE_TYPE_PRESENT_FRAME_TOKEN_GGP";
  1276. case VK_STRUCTURE_TYPE_PRESENT_ID_KHR:
  1277. return "VK_STRUCTURE_TYPE_PRESENT_ID_KHR";
  1278. case VK_STRUCTURE_TYPE_PRESENT_INFO_KHR:
  1279. return "VK_STRUCTURE_TYPE_PRESENT_INFO_KHR";
  1280. case VK_STRUCTURE_TYPE_PRESENT_REGIONS_KHR:
  1281. return "VK_STRUCTURE_TYPE_PRESENT_REGIONS_KHR";
  1282. case VK_STRUCTURE_TYPE_PRESENT_TIMES_INFO_GOOGLE:
  1283. return "VK_STRUCTURE_TYPE_PRESENT_TIMES_INFO_GOOGLE";
  1284. case VK_STRUCTURE_TYPE_PRIVATE_DATA_SLOT_CREATE_INFO:
  1285. return "VK_STRUCTURE_TYPE_PRIVATE_DATA_SLOT_CREATE_INFO";
  1286. case VK_STRUCTURE_TYPE_PROTECTED_SUBMIT_INFO:
  1287. return "VK_STRUCTURE_TYPE_PROTECTED_SUBMIT_INFO";
  1288. case VK_STRUCTURE_TYPE_QUERY_POOL_CREATE_INFO:
  1289. return "VK_STRUCTURE_TYPE_QUERY_POOL_CREATE_INFO";
  1290. case VK_STRUCTURE_TYPE_QUERY_POOL_PERFORMANCE_CREATE_INFO_KHR:
  1291. return "VK_STRUCTURE_TYPE_QUERY_POOL_PERFORMANCE_CREATE_INFO_KHR";
  1292. case VK_STRUCTURE_TYPE_QUERY_POOL_PERFORMANCE_QUERY_CREATE_INFO_INTEL:
  1293. return "VK_STRUCTURE_TYPE_QUERY_POOL_PERFORMANCE_QUERY_CREATE_INFO_INTEL";
  1294. case VK_STRUCTURE_TYPE_QUEUE_FAMILY_CHECKPOINT_PROPERTIES_2_NV:
  1295. return "VK_STRUCTURE_TYPE_QUEUE_FAMILY_CHECKPOINT_PROPERTIES_2_NV";
  1296. case VK_STRUCTURE_TYPE_QUEUE_FAMILY_CHECKPOINT_PROPERTIES_NV:
  1297. return "VK_STRUCTURE_TYPE_QUEUE_FAMILY_CHECKPOINT_PROPERTIES_NV";
  1298. case VK_STRUCTURE_TYPE_QUEUE_FAMILY_GLOBAL_PRIORITY_PROPERTIES_KHR:
  1299. return "VK_STRUCTURE_TYPE_QUEUE_FAMILY_GLOBAL_PRIORITY_PROPERTIES_KHR";
  1300. case VK_STRUCTURE_TYPE_QUEUE_FAMILY_PROPERTIES_2:
  1301. return "VK_STRUCTURE_TYPE_QUEUE_FAMILY_PROPERTIES_2";
  1302. #ifdef VK_ENABLE_BETA_EXTENSIONS
  1303. case VK_STRUCTURE_TYPE_QUEUE_FAMILY_QUERY_RESULT_STATUS_PROPERTIES_KHR:
  1304. return "VK_STRUCTURE_TYPE_QUEUE_FAMILY_QUERY_RESULT_STATUS_PROPERTIES_KHR";
  1305. #endif // VK_ENABLE_BETA_EXTENSIONS
  1306. #ifdef VK_ENABLE_BETA_EXTENSIONS
  1307. case VK_STRUCTURE_TYPE_QUEUE_FAMILY_VIDEO_PROPERTIES_KHR:
  1308. return "VK_STRUCTURE_TYPE_QUEUE_FAMILY_VIDEO_PROPERTIES_KHR";
  1309. #endif // VK_ENABLE_BETA_EXTENSIONS
  1310. case VK_STRUCTURE_TYPE_RAY_TRACING_PIPELINE_CREATE_INFO_KHR:
  1311. return "VK_STRUCTURE_TYPE_RAY_TRACING_PIPELINE_CREATE_INFO_KHR";
  1312. case VK_STRUCTURE_TYPE_RAY_TRACING_PIPELINE_CREATE_INFO_NV:
  1313. return "VK_STRUCTURE_TYPE_RAY_TRACING_PIPELINE_CREATE_INFO_NV";
  1314. case VK_STRUCTURE_TYPE_RAY_TRACING_PIPELINE_INTERFACE_CREATE_INFO_KHR:
  1315. return "VK_STRUCTURE_TYPE_RAY_TRACING_PIPELINE_INTERFACE_CREATE_INFO_KHR";
  1316. case VK_STRUCTURE_TYPE_RAY_TRACING_SHADER_GROUP_CREATE_INFO_KHR:
  1317. return "VK_STRUCTURE_TYPE_RAY_TRACING_SHADER_GROUP_CREATE_INFO_KHR";
  1318. case VK_STRUCTURE_TYPE_RAY_TRACING_SHADER_GROUP_CREATE_INFO_NV:
  1319. return "VK_STRUCTURE_TYPE_RAY_TRACING_SHADER_GROUP_CREATE_INFO_NV";
  1320. case VK_STRUCTURE_TYPE_RENDERING_ATTACHMENT_INFO:
  1321. return "VK_STRUCTURE_TYPE_RENDERING_ATTACHMENT_INFO";
  1322. case VK_STRUCTURE_TYPE_RENDERING_FRAGMENT_DENSITY_MAP_ATTACHMENT_INFO_EXT:
  1323. return "VK_STRUCTURE_TYPE_RENDERING_FRAGMENT_DENSITY_MAP_ATTACHMENT_INFO_EXT";
  1324. case VK_STRUCTURE_TYPE_RENDERING_FRAGMENT_SHADING_RATE_ATTACHMENT_INFO_KHR:
  1325. return "VK_STRUCTURE_TYPE_RENDERING_FRAGMENT_SHADING_RATE_ATTACHMENT_INFO_KHR";
  1326. case VK_STRUCTURE_TYPE_RENDERING_INFO:
  1327. return "VK_STRUCTURE_TYPE_RENDERING_INFO";
  1328. case VK_STRUCTURE_TYPE_RENDER_PASS_ATTACHMENT_BEGIN_INFO:
  1329. return "VK_STRUCTURE_TYPE_RENDER_PASS_ATTACHMENT_BEGIN_INFO";
  1330. case VK_STRUCTURE_TYPE_RENDER_PASS_BEGIN_INFO:
  1331. return "VK_STRUCTURE_TYPE_RENDER_PASS_BEGIN_INFO";
  1332. case VK_STRUCTURE_TYPE_RENDER_PASS_CREATE_INFO:
  1333. return "VK_STRUCTURE_TYPE_RENDER_PASS_CREATE_INFO";
  1334. case VK_STRUCTURE_TYPE_RENDER_PASS_CREATE_INFO_2:
  1335. return "VK_STRUCTURE_TYPE_RENDER_PASS_CREATE_INFO_2";
  1336. case VK_STRUCTURE_TYPE_RENDER_PASS_CREATION_CONTROL_EXT:
  1337. return "VK_STRUCTURE_TYPE_RENDER_PASS_CREATION_CONTROL_EXT";
  1338. case VK_STRUCTURE_TYPE_RENDER_PASS_CREATION_FEEDBACK_CREATE_INFO_EXT:
  1339. return "VK_STRUCTURE_TYPE_RENDER_PASS_CREATION_FEEDBACK_CREATE_INFO_EXT";
  1340. case VK_STRUCTURE_TYPE_RENDER_PASS_FRAGMENT_DENSITY_MAP_CREATE_INFO_EXT:
  1341. return "VK_STRUCTURE_TYPE_RENDER_PASS_FRAGMENT_DENSITY_MAP_CREATE_INFO_EXT";
  1342. case VK_STRUCTURE_TYPE_RENDER_PASS_INPUT_ATTACHMENT_ASPECT_CREATE_INFO:
  1343. return "VK_STRUCTURE_TYPE_RENDER_PASS_INPUT_ATTACHMENT_ASPECT_CREATE_INFO";
  1344. case VK_STRUCTURE_TYPE_RENDER_PASS_MULTIVIEW_CREATE_INFO:
  1345. return "VK_STRUCTURE_TYPE_RENDER_PASS_MULTIVIEW_CREATE_INFO";
  1346. case VK_STRUCTURE_TYPE_RENDER_PASS_SAMPLE_LOCATIONS_BEGIN_INFO_EXT:
  1347. return "VK_STRUCTURE_TYPE_RENDER_PASS_SAMPLE_LOCATIONS_BEGIN_INFO_EXT";
  1348. case VK_STRUCTURE_TYPE_RENDER_PASS_SUBPASS_FEEDBACK_CREATE_INFO_EXT:
  1349. return "VK_STRUCTURE_TYPE_RENDER_PASS_SUBPASS_FEEDBACK_CREATE_INFO_EXT";
  1350. case VK_STRUCTURE_TYPE_RENDER_PASS_TRANSFORM_BEGIN_INFO_QCOM:
  1351. return "VK_STRUCTURE_TYPE_RENDER_PASS_TRANSFORM_BEGIN_INFO_QCOM";
  1352. case VK_STRUCTURE_TYPE_RESOLVE_IMAGE_INFO_2:
  1353. return "VK_STRUCTURE_TYPE_RESOLVE_IMAGE_INFO_2";
  1354. case VK_STRUCTURE_TYPE_SAMPLER_BORDER_COLOR_COMPONENT_MAPPING_CREATE_INFO_EXT:
  1355. return "VK_STRUCTURE_TYPE_SAMPLER_BORDER_COLOR_COMPONENT_MAPPING_CREATE_INFO_EXT";
  1356. case VK_STRUCTURE_TYPE_SAMPLER_CREATE_INFO:
  1357. return "VK_STRUCTURE_TYPE_SAMPLER_CREATE_INFO";
  1358. case VK_STRUCTURE_TYPE_SAMPLER_CUSTOM_BORDER_COLOR_CREATE_INFO_EXT:
  1359. return "VK_STRUCTURE_TYPE_SAMPLER_CUSTOM_BORDER_COLOR_CREATE_INFO_EXT";
  1360. case VK_STRUCTURE_TYPE_SAMPLER_REDUCTION_MODE_CREATE_INFO:
  1361. return "VK_STRUCTURE_TYPE_SAMPLER_REDUCTION_MODE_CREATE_INFO";
  1362. case VK_STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_CREATE_INFO:
  1363. return "VK_STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_CREATE_INFO";
  1364. case VK_STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_IMAGE_FORMAT_PROPERTIES:
  1365. return "VK_STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_IMAGE_FORMAT_PROPERTIES";
  1366. case VK_STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_INFO:
  1367. return "VK_STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_INFO";
  1368. case VK_STRUCTURE_TYPE_SAMPLE_LOCATIONS_INFO_EXT:
  1369. return "VK_STRUCTURE_TYPE_SAMPLE_LOCATIONS_INFO_EXT";
  1370. case VK_STRUCTURE_TYPE_SCREEN_SURFACE_CREATE_INFO_QNX:
  1371. return "VK_STRUCTURE_TYPE_SCREEN_SURFACE_CREATE_INFO_QNX";
  1372. case VK_STRUCTURE_TYPE_SEMAPHORE_CREATE_INFO:
  1373. return "VK_STRUCTURE_TYPE_SEMAPHORE_CREATE_INFO";
  1374. case VK_STRUCTURE_TYPE_SEMAPHORE_GET_FD_INFO_KHR:
  1375. return "VK_STRUCTURE_TYPE_SEMAPHORE_GET_FD_INFO_KHR";
  1376. case VK_STRUCTURE_TYPE_SEMAPHORE_GET_WIN32_HANDLE_INFO_KHR:
  1377. return "VK_STRUCTURE_TYPE_SEMAPHORE_GET_WIN32_HANDLE_INFO_KHR";
  1378. case VK_STRUCTURE_TYPE_SEMAPHORE_GET_ZIRCON_HANDLE_INFO_FUCHSIA:
  1379. return "VK_STRUCTURE_TYPE_SEMAPHORE_GET_ZIRCON_HANDLE_INFO_FUCHSIA";
  1380. case VK_STRUCTURE_TYPE_SEMAPHORE_SIGNAL_INFO:
  1381. return "VK_STRUCTURE_TYPE_SEMAPHORE_SIGNAL_INFO";
  1382. case VK_STRUCTURE_TYPE_SEMAPHORE_SUBMIT_INFO:
  1383. return "VK_STRUCTURE_TYPE_SEMAPHORE_SUBMIT_INFO";
  1384. case VK_STRUCTURE_TYPE_SEMAPHORE_TYPE_CREATE_INFO:
  1385. return "VK_STRUCTURE_TYPE_SEMAPHORE_TYPE_CREATE_INFO";
  1386. case VK_STRUCTURE_TYPE_SEMAPHORE_WAIT_INFO:
  1387. return "VK_STRUCTURE_TYPE_SEMAPHORE_WAIT_INFO";
  1388. case VK_STRUCTURE_TYPE_SHADER_MODULE_CREATE_INFO:
  1389. return "VK_STRUCTURE_TYPE_SHADER_MODULE_CREATE_INFO";
  1390. case VK_STRUCTURE_TYPE_SHADER_MODULE_IDENTIFIER_EXT:
  1391. return "VK_STRUCTURE_TYPE_SHADER_MODULE_IDENTIFIER_EXT";
  1392. case VK_STRUCTURE_TYPE_SHADER_MODULE_VALIDATION_CACHE_CREATE_INFO_EXT:
  1393. return "VK_STRUCTURE_TYPE_SHADER_MODULE_VALIDATION_CACHE_CREATE_INFO_EXT";
  1394. case VK_STRUCTURE_TYPE_SHARED_PRESENT_SURFACE_CAPABILITIES_KHR:
  1395. return "VK_STRUCTURE_TYPE_SHARED_PRESENT_SURFACE_CAPABILITIES_KHR";
  1396. case VK_STRUCTURE_TYPE_SPARSE_IMAGE_FORMAT_PROPERTIES_2:
  1397. return "VK_STRUCTURE_TYPE_SPARSE_IMAGE_FORMAT_PROPERTIES_2";
  1398. case VK_STRUCTURE_TYPE_SPARSE_IMAGE_MEMORY_REQUIREMENTS_2:
  1399. return "VK_STRUCTURE_TYPE_SPARSE_IMAGE_MEMORY_REQUIREMENTS_2";
  1400. case VK_STRUCTURE_TYPE_STREAM_DESCRIPTOR_SURFACE_CREATE_INFO_GGP:
  1401. return "VK_STRUCTURE_TYPE_STREAM_DESCRIPTOR_SURFACE_CREATE_INFO_GGP";
  1402. case VK_STRUCTURE_TYPE_SUBMIT_INFO:
  1403. return "VK_STRUCTURE_TYPE_SUBMIT_INFO";
  1404. case VK_STRUCTURE_TYPE_SUBMIT_INFO_2:
  1405. return "VK_STRUCTURE_TYPE_SUBMIT_INFO_2";
  1406. case VK_STRUCTURE_TYPE_SUBPASS_BEGIN_INFO:
  1407. return "VK_STRUCTURE_TYPE_SUBPASS_BEGIN_INFO";
  1408. case VK_STRUCTURE_TYPE_SUBPASS_DEPENDENCY_2:
  1409. return "VK_STRUCTURE_TYPE_SUBPASS_DEPENDENCY_2";
  1410. case VK_STRUCTURE_TYPE_SUBPASS_DESCRIPTION_2:
  1411. return "VK_STRUCTURE_TYPE_SUBPASS_DESCRIPTION_2";
  1412. case VK_STRUCTURE_TYPE_SUBPASS_DESCRIPTION_DEPTH_STENCIL_RESOLVE:
  1413. return "VK_STRUCTURE_TYPE_SUBPASS_DESCRIPTION_DEPTH_STENCIL_RESOLVE";
  1414. case VK_STRUCTURE_TYPE_SUBPASS_END_INFO:
  1415. return "VK_STRUCTURE_TYPE_SUBPASS_END_INFO";
  1416. case VK_STRUCTURE_TYPE_SUBPASS_FRAGMENT_DENSITY_MAP_OFFSET_END_INFO_QCOM:
  1417. return "VK_STRUCTURE_TYPE_SUBPASS_FRAGMENT_DENSITY_MAP_OFFSET_END_INFO_QCOM";
  1418. case VK_STRUCTURE_TYPE_SUBPASS_RESOLVE_PERFORMANCE_QUERY_EXT:
  1419. return "VK_STRUCTURE_TYPE_SUBPASS_RESOLVE_PERFORMANCE_QUERY_EXT";
  1420. case VK_STRUCTURE_TYPE_SUBPASS_SHADING_PIPELINE_CREATE_INFO_HUAWEI:
  1421. return "VK_STRUCTURE_TYPE_SUBPASS_SHADING_PIPELINE_CREATE_INFO_HUAWEI";
  1422. case VK_STRUCTURE_TYPE_SUBRESOURCE_LAYOUT_2_EXT:
  1423. return "VK_STRUCTURE_TYPE_SUBRESOURCE_LAYOUT_2_EXT";
  1424. case VK_STRUCTURE_TYPE_SURFACE_CAPABILITIES_2_EXT:
  1425. return "VK_STRUCTURE_TYPE_SURFACE_CAPABILITIES_2_EXT";
  1426. case VK_STRUCTURE_TYPE_SURFACE_CAPABILITIES_2_KHR:
  1427. return "VK_STRUCTURE_TYPE_SURFACE_CAPABILITIES_2_KHR";
  1428. case VK_STRUCTURE_TYPE_SURFACE_CAPABILITIES_FULL_SCREEN_EXCLUSIVE_EXT:
  1429. return "VK_STRUCTURE_TYPE_SURFACE_CAPABILITIES_FULL_SCREEN_EXCLUSIVE_EXT";
  1430. case VK_STRUCTURE_TYPE_SURFACE_CAPABILITIES_PRESENT_BARRIER_NV:
  1431. return "VK_STRUCTURE_TYPE_SURFACE_CAPABILITIES_PRESENT_BARRIER_NV";
  1432. case VK_STRUCTURE_TYPE_SURFACE_FORMAT_2_KHR:
  1433. return "VK_STRUCTURE_TYPE_SURFACE_FORMAT_2_KHR";
  1434. case VK_STRUCTURE_TYPE_SURFACE_FULL_SCREEN_EXCLUSIVE_INFO_EXT:
  1435. return "VK_STRUCTURE_TYPE_SURFACE_FULL_SCREEN_EXCLUSIVE_INFO_EXT";
  1436. case VK_STRUCTURE_TYPE_SURFACE_FULL_SCREEN_EXCLUSIVE_WIN32_INFO_EXT:
  1437. return "VK_STRUCTURE_TYPE_SURFACE_FULL_SCREEN_EXCLUSIVE_WIN32_INFO_EXT";
  1438. case VK_STRUCTURE_TYPE_SURFACE_PROTECTED_CAPABILITIES_KHR:
  1439. return "VK_STRUCTURE_TYPE_SURFACE_PROTECTED_CAPABILITIES_KHR";
  1440. case VK_STRUCTURE_TYPE_SWAPCHAIN_COUNTER_CREATE_INFO_EXT:
  1441. return "VK_STRUCTURE_TYPE_SWAPCHAIN_COUNTER_CREATE_INFO_EXT";
  1442. case VK_STRUCTURE_TYPE_SWAPCHAIN_CREATE_INFO_KHR:
  1443. return "VK_STRUCTURE_TYPE_SWAPCHAIN_CREATE_INFO_KHR";
  1444. case VK_STRUCTURE_TYPE_SWAPCHAIN_DISPLAY_NATIVE_HDR_CREATE_INFO_AMD:
  1445. return "VK_STRUCTURE_TYPE_SWAPCHAIN_DISPLAY_NATIVE_HDR_CREATE_INFO_AMD";
  1446. case VK_STRUCTURE_TYPE_SWAPCHAIN_PRESENT_BARRIER_CREATE_INFO_NV:
  1447. return "VK_STRUCTURE_TYPE_SWAPCHAIN_PRESENT_BARRIER_CREATE_INFO_NV";
  1448. case VK_STRUCTURE_TYPE_SYSMEM_COLOR_SPACE_FUCHSIA:
  1449. return "VK_STRUCTURE_TYPE_SYSMEM_COLOR_SPACE_FUCHSIA";
  1450. case VK_STRUCTURE_TYPE_TEXTURE_LOD_GATHER_FORMAT_PROPERTIES_AMD:
  1451. return "VK_STRUCTURE_TYPE_TEXTURE_LOD_GATHER_FORMAT_PROPERTIES_AMD";
  1452. case VK_STRUCTURE_TYPE_TILE_PROPERTIES_QCOM:
  1453. return "VK_STRUCTURE_TYPE_TILE_PROPERTIES_QCOM";
  1454. case VK_STRUCTURE_TYPE_TIMELINE_SEMAPHORE_SUBMIT_INFO:
  1455. return "VK_STRUCTURE_TYPE_TIMELINE_SEMAPHORE_SUBMIT_INFO";
  1456. case VK_STRUCTURE_TYPE_VALIDATION_CACHE_CREATE_INFO_EXT:
  1457. return "VK_STRUCTURE_TYPE_VALIDATION_CACHE_CREATE_INFO_EXT";
  1458. case VK_STRUCTURE_TYPE_VALIDATION_FEATURES_EXT:
  1459. return "VK_STRUCTURE_TYPE_VALIDATION_FEATURES_EXT";
  1460. case VK_STRUCTURE_TYPE_VALIDATION_FLAGS_EXT:
  1461. return "VK_STRUCTURE_TYPE_VALIDATION_FLAGS_EXT";
  1462. case VK_STRUCTURE_TYPE_VERTEX_INPUT_ATTRIBUTE_DESCRIPTION_2_EXT:
  1463. return "VK_STRUCTURE_TYPE_VERTEX_INPUT_ATTRIBUTE_DESCRIPTION_2_EXT";
  1464. case VK_STRUCTURE_TYPE_VERTEX_INPUT_BINDING_DESCRIPTION_2_EXT:
  1465. return "VK_STRUCTURE_TYPE_VERTEX_INPUT_BINDING_DESCRIPTION_2_EXT";
  1466. #ifdef VK_ENABLE_BETA_EXTENSIONS
  1467. case VK_STRUCTURE_TYPE_VIDEO_BEGIN_CODING_INFO_KHR:
  1468. return "VK_STRUCTURE_TYPE_VIDEO_BEGIN_CODING_INFO_KHR";
  1469. #endif // VK_ENABLE_BETA_EXTENSIONS
  1470. #ifdef VK_ENABLE_BETA_EXTENSIONS
  1471. case VK_STRUCTURE_TYPE_VIDEO_CAPABILITIES_KHR:
  1472. return "VK_STRUCTURE_TYPE_VIDEO_CAPABILITIES_KHR";
  1473. #endif // VK_ENABLE_BETA_EXTENSIONS
  1474. #ifdef VK_ENABLE_BETA_EXTENSIONS
  1475. case VK_STRUCTURE_TYPE_VIDEO_CODING_CONTROL_INFO_KHR:
  1476. return "VK_STRUCTURE_TYPE_VIDEO_CODING_CONTROL_INFO_KHR";
  1477. #endif // VK_ENABLE_BETA_EXTENSIONS
  1478. #ifdef VK_ENABLE_BETA_EXTENSIONS
  1479. case VK_STRUCTURE_TYPE_VIDEO_DECODE_CAPABILITIES_KHR:
  1480. return "VK_STRUCTURE_TYPE_VIDEO_DECODE_CAPABILITIES_KHR";
  1481. #endif // VK_ENABLE_BETA_EXTENSIONS
  1482. #ifdef VK_ENABLE_BETA_EXTENSIONS
  1483. case VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_CAPABILITIES_EXT:
  1484. return "VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_CAPABILITIES_EXT";
  1485. #endif // VK_ENABLE_BETA_EXTENSIONS
  1486. #ifdef VK_ENABLE_BETA_EXTENSIONS
  1487. case VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_DPB_SLOT_INFO_EXT:
  1488. return "VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_DPB_SLOT_INFO_EXT";
  1489. #endif // VK_ENABLE_BETA_EXTENSIONS
  1490. #ifdef VK_ENABLE_BETA_EXTENSIONS
  1491. case VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_PICTURE_INFO_EXT:
  1492. return "VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_PICTURE_INFO_EXT";
  1493. #endif // VK_ENABLE_BETA_EXTENSIONS
  1494. #ifdef VK_ENABLE_BETA_EXTENSIONS
  1495. case VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_PROFILE_INFO_EXT:
  1496. return "VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_PROFILE_INFO_EXT";
  1497. #endif // VK_ENABLE_BETA_EXTENSIONS
  1498. #ifdef VK_ENABLE_BETA_EXTENSIONS
  1499. case VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_SESSION_PARAMETERS_ADD_INFO_EXT:
  1500. return "VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_SESSION_PARAMETERS_ADD_INFO_EXT";
  1501. #endif // VK_ENABLE_BETA_EXTENSIONS
  1502. #ifdef VK_ENABLE_BETA_EXTENSIONS
  1503. case VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_SESSION_PARAMETERS_CREATE_INFO_EXT:
  1504. return "VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_SESSION_PARAMETERS_CREATE_INFO_EXT";
  1505. #endif // VK_ENABLE_BETA_EXTENSIONS
  1506. #ifdef VK_ENABLE_BETA_EXTENSIONS
  1507. case VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_CAPABILITIES_EXT:
  1508. return "VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_CAPABILITIES_EXT";
  1509. #endif // VK_ENABLE_BETA_EXTENSIONS
  1510. #ifdef VK_ENABLE_BETA_EXTENSIONS
  1511. case VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_DPB_SLOT_INFO_EXT:
  1512. return "VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_DPB_SLOT_INFO_EXT";
  1513. #endif // VK_ENABLE_BETA_EXTENSIONS
  1514. #ifdef VK_ENABLE_BETA_EXTENSIONS
  1515. case VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_PICTURE_INFO_EXT:
  1516. return "VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_PICTURE_INFO_EXT";
  1517. #endif // VK_ENABLE_BETA_EXTENSIONS
  1518. #ifdef VK_ENABLE_BETA_EXTENSIONS
  1519. case VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_PROFILE_INFO_EXT:
  1520. return "VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_PROFILE_INFO_EXT";
  1521. #endif // VK_ENABLE_BETA_EXTENSIONS
  1522. #ifdef VK_ENABLE_BETA_EXTENSIONS
  1523. case VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_SESSION_PARAMETERS_ADD_INFO_EXT:
  1524. return "VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_SESSION_PARAMETERS_ADD_INFO_EXT";
  1525. #endif // VK_ENABLE_BETA_EXTENSIONS
  1526. #ifdef VK_ENABLE_BETA_EXTENSIONS
  1527. case VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_SESSION_PARAMETERS_CREATE_INFO_EXT:
  1528. return "VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_SESSION_PARAMETERS_CREATE_INFO_EXT";
  1529. #endif // VK_ENABLE_BETA_EXTENSIONS
  1530. #ifdef VK_ENABLE_BETA_EXTENSIONS
  1531. case VK_STRUCTURE_TYPE_VIDEO_DECODE_INFO_KHR:
  1532. return "VK_STRUCTURE_TYPE_VIDEO_DECODE_INFO_KHR";
  1533. #endif // VK_ENABLE_BETA_EXTENSIONS
  1534. #ifdef VK_ENABLE_BETA_EXTENSIONS
  1535. case VK_STRUCTURE_TYPE_VIDEO_DECODE_USAGE_INFO_KHR:
  1536. return "VK_STRUCTURE_TYPE_VIDEO_DECODE_USAGE_INFO_KHR";
  1537. #endif // VK_ENABLE_BETA_EXTENSIONS
  1538. #ifdef VK_ENABLE_BETA_EXTENSIONS
  1539. case VK_STRUCTURE_TYPE_VIDEO_ENCODE_CAPABILITIES_KHR:
  1540. return "VK_STRUCTURE_TYPE_VIDEO_ENCODE_CAPABILITIES_KHR";
  1541. #endif // VK_ENABLE_BETA_EXTENSIONS
  1542. #ifdef VK_ENABLE_BETA_EXTENSIONS
  1543. case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_CAPABILITIES_EXT:
  1544. return "VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_CAPABILITIES_EXT";
  1545. #endif // VK_ENABLE_BETA_EXTENSIONS
  1546. #ifdef VK_ENABLE_BETA_EXTENSIONS
  1547. case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_DPB_SLOT_INFO_EXT:
  1548. return "VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_DPB_SLOT_INFO_EXT";
  1549. #endif // VK_ENABLE_BETA_EXTENSIONS
  1550. #ifdef VK_ENABLE_BETA_EXTENSIONS
  1551. case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_EMIT_PICTURE_PARAMETERS_INFO_EXT:
  1552. return "VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_EMIT_PICTURE_PARAMETERS_INFO_EXT";
  1553. #endif // VK_ENABLE_BETA_EXTENSIONS
  1554. #ifdef VK_ENABLE_BETA_EXTENSIONS
  1555. case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_NALU_SLICE_INFO_EXT:
  1556. return "VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_NALU_SLICE_INFO_EXT";
  1557. #endif // VK_ENABLE_BETA_EXTENSIONS
  1558. #ifdef VK_ENABLE_BETA_EXTENSIONS
  1559. case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_PROFILE_INFO_EXT:
  1560. return "VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_PROFILE_INFO_EXT";
  1561. #endif // VK_ENABLE_BETA_EXTENSIONS
  1562. #ifdef VK_ENABLE_BETA_EXTENSIONS
  1563. case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_RATE_CONTROL_INFO_EXT:
  1564. return "VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_RATE_CONTROL_INFO_EXT";
  1565. #endif // VK_ENABLE_BETA_EXTENSIONS
  1566. #ifdef VK_ENABLE_BETA_EXTENSIONS
  1567. case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_RATE_CONTROL_LAYER_INFO_EXT:
  1568. return "VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_RATE_CONTROL_LAYER_INFO_EXT";
  1569. #endif // VK_ENABLE_BETA_EXTENSIONS
  1570. #ifdef VK_ENABLE_BETA_EXTENSIONS
  1571. case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_REFERENCE_LISTS_INFO_EXT:
  1572. return "VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_REFERENCE_LISTS_INFO_EXT";
  1573. #endif // VK_ENABLE_BETA_EXTENSIONS
  1574. #ifdef VK_ENABLE_BETA_EXTENSIONS
  1575. case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_SESSION_PARAMETERS_ADD_INFO_EXT:
  1576. return "VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_SESSION_PARAMETERS_ADD_INFO_EXT";
  1577. #endif // VK_ENABLE_BETA_EXTENSIONS
  1578. #ifdef VK_ENABLE_BETA_EXTENSIONS
  1579. case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_SESSION_PARAMETERS_CREATE_INFO_EXT:
  1580. return "VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_SESSION_PARAMETERS_CREATE_INFO_EXT";
  1581. #endif // VK_ENABLE_BETA_EXTENSIONS
  1582. #ifdef VK_ENABLE_BETA_EXTENSIONS
  1583. case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_VCL_FRAME_INFO_EXT:
  1584. return "VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_VCL_FRAME_INFO_EXT";
  1585. #endif // VK_ENABLE_BETA_EXTENSIONS
  1586. #ifdef VK_ENABLE_BETA_EXTENSIONS
  1587. case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_CAPABILITIES_EXT:
  1588. return "VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_CAPABILITIES_EXT";
  1589. #endif // VK_ENABLE_BETA_EXTENSIONS
  1590. #ifdef VK_ENABLE_BETA_EXTENSIONS
  1591. case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_DPB_SLOT_INFO_EXT:
  1592. return "VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_DPB_SLOT_INFO_EXT";
  1593. #endif // VK_ENABLE_BETA_EXTENSIONS
  1594. #ifdef VK_ENABLE_BETA_EXTENSIONS
  1595. case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_EMIT_PICTURE_PARAMETERS_INFO_EXT:
  1596. return "VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_EMIT_PICTURE_PARAMETERS_INFO_EXT";
  1597. #endif // VK_ENABLE_BETA_EXTENSIONS
  1598. #ifdef VK_ENABLE_BETA_EXTENSIONS
  1599. case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_NALU_SLICE_SEGMENT_INFO_EXT:
  1600. return "VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_NALU_SLICE_SEGMENT_INFO_EXT";
  1601. #endif // VK_ENABLE_BETA_EXTENSIONS
  1602. #ifdef VK_ENABLE_BETA_EXTENSIONS
  1603. case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_PROFILE_INFO_EXT:
  1604. return "VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_PROFILE_INFO_EXT";
  1605. #endif // VK_ENABLE_BETA_EXTENSIONS
  1606. #ifdef VK_ENABLE_BETA_EXTENSIONS
  1607. case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_RATE_CONTROL_INFO_EXT:
  1608. return "VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_RATE_CONTROL_INFO_EXT";
  1609. #endif // VK_ENABLE_BETA_EXTENSIONS
  1610. #ifdef VK_ENABLE_BETA_EXTENSIONS
  1611. case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_RATE_CONTROL_LAYER_INFO_EXT:
  1612. return "VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_RATE_CONTROL_LAYER_INFO_EXT";
  1613. #endif // VK_ENABLE_BETA_EXTENSIONS
  1614. #ifdef VK_ENABLE_BETA_EXTENSIONS
  1615. case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_REFERENCE_LISTS_INFO_EXT:
  1616. return "VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_REFERENCE_LISTS_INFO_EXT";
  1617. #endif // VK_ENABLE_BETA_EXTENSIONS
  1618. #ifdef VK_ENABLE_BETA_EXTENSIONS
  1619. case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_SESSION_PARAMETERS_ADD_INFO_EXT:
  1620. return "VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_SESSION_PARAMETERS_ADD_INFO_EXT";
  1621. #endif // VK_ENABLE_BETA_EXTENSIONS
  1622. #ifdef VK_ENABLE_BETA_EXTENSIONS
  1623. case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_SESSION_PARAMETERS_CREATE_INFO_EXT:
  1624. return "VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_SESSION_PARAMETERS_CREATE_INFO_EXT";
  1625. #endif // VK_ENABLE_BETA_EXTENSIONS
  1626. #ifdef VK_ENABLE_BETA_EXTENSIONS
  1627. case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_VCL_FRAME_INFO_EXT:
  1628. return "VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_VCL_FRAME_INFO_EXT";
  1629. #endif // VK_ENABLE_BETA_EXTENSIONS
  1630. #ifdef VK_ENABLE_BETA_EXTENSIONS
  1631. case VK_STRUCTURE_TYPE_VIDEO_ENCODE_INFO_KHR:
  1632. return "VK_STRUCTURE_TYPE_VIDEO_ENCODE_INFO_KHR";
  1633. #endif // VK_ENABLE_BETA_EXTENSIONS
  1634. #ifdef VK_ENABLE_BETA_EXTENSIONS
  1635. case VK_STRUCTURE_TYPE_VIDEO_ENCODE_RATE_CONTROL_INFO_KHR:
  1636. return "VK_STRUCTURE_TYPE_VIDEO_ENCODE_RATE_CONTROL_INFO_KHR";
  1637. #endif // VK_ENABLE_BETA_EXTENSIONS
  1638. #ifdef VK_ENABLE_BETA_EXTENSIONS
  1639. case VK_STRUCTURE_TYPE_VIDEO_ENCODE_RATE_CONTROL_LAYER_INFO_KHR:
  1640. return "VK_STRUCTURE_TYPE_VIDEO_ENCODE_RATE_CONTROL_LAYER_INFO_KHR";
  1641. #endif // VK_ENABLE_BETA_EXTENSIONS
  1642. #ifdef VK_ENABLE_BETA_EXTENSIONS
  1643. case VK_STRUCTURE_TYPE_VIDEO_ENCODE_USAGE_INFO_KHR:
  1644. return "VK_STRUCTURE_TYPE_VIDEO_ENCODE_USAGE_INFO_KHR";
  1645. #endif // VK_ENABLE_BETA_EXTENSIONS
  1646. #ifdef VK_ENABLE_BETA_EXTENSIONS
  1647. case VK_STRUCTURE_TYPE_VIDEO_END_CODING_INFO_KHR:
  1648. return "VK_STRUCTURE_TYPE_VIDEO_END_CODING_INFO_KHR";
  1649. #endif // VK_ENABLE_BETA_EXTENSIONS
  1650. #ifdef VK_ENABLE_BETA_EXTENSIONS
  1651. case VK_STRUCTURE_TYPE_VIDEO_FORMAT_PROPERTIES_KHR:
  1652. return "VK_STRUCTURE_TYPE_VIDEO_FORMAT_PROPERTIES_KHR";
  1653. #endif // VK_ENABLE_BETA_EXTENSIONS
  1654. #ifdef VK_ENABLE_BETA_EXTENSIONS
  1655. case VK_STRUCTURE_TYPE_VIDEO_PICTURE_RESOURCE_INFO_KHR:
  1656. return "VK_STRUCTURE_TYPE_VIDEO_PICTURE_RESOURCE_INFO_KHR";
  1657. #endif // VK_ENABLE_BETA_EXTENSIONS
  1658. #ifdef VK_ENABLE_BETA_EXTENSIONS
  1659. case VK_STRUCTURE_TYPE_VIDEO_PROFILE_INFO_KHR:
  1660. return "VK_STRUCTURE_TYPE_VIDEO_PROFILE_INFO_KHR";
  1661. #endif // VK_ENABLE_BETA_EXTENSIONS
  1662. #ifdef VK_ENABLE_BETA_EXTENSIONS
  1663. case VK_STRUCTURE_TYPE_VIDEO_PROFILE_LIST_INFO_KHR:
  1664. return "VK_STRUCTURE_TYPE_VIDEO_PROFILE_LIST_INFO_KHR";
  1665. #endif // VK_ENABLE_BETA_EXTENSIONS
  1666. #ifdef VK_ENABLE_BETA_EXTENSIONS
  1667. case VK_STRUCTURE_TYPE_VIDEO_REFERENCE_SLOT_INFO_KHR:
  1668. return "VK_STRUCTURE_TYPE_VIDEO_REFERENCE_SLOT_INFO_KHR";
  1669. #endif // VK_ENABLE_BETA_EXTENSIONS
  1670. #ifdef VK_ENABLE_BETA_EXTENSIONS
  1671. case VK_STRUCTURE_TYPE_VIDEO_SESSION_CREATE_INFO_KHR:
  1672. return "VK_STRUCTURE_TYPE_VIDEO_SESSION_CREATE_INFO_KHR";
  1673. #endif // VK_ENABLE_BETA_EXTENSIONS
  1674. #ifdef VK_ENABLE_BETA_EXTENSIONS
  1675. case VK_STRUCTURE_TYPE_VIDEO_SESSION_MEMORY_REQUIREMENTS_KHR:
  1676. return "VK_STRUCTURE_TYPE_VIDEO_SESSION_MEMORY_REQUIREMENTS_KHR";
  1677. #endif // VK_ENABLE_BETA_EXTENSIONS
  1678. #ifdef VK_ENABLE_BETA_EXTENSIONS
  1679. case VK_STRUCTURE_TYPE_VIDEO_SESSION_PARAMETERS_CREATE_INFO_KHR:
  1680. return "VK_STRUCTURE_TYPE_VIDEO_SESSION_PARAMETERS_CREATE_INFO_KHR";
  1681. #endif // VK_ENABLE_BETA_EXTENSIONS
  1682. #ifdef VK_ENABLE_BETA_EXTENSIONS
  1683. case VK_STRUCTURE_TYPE_VIDEO_SESSION_PARAMETERS_UPDATE_INFO_KHR:
  1684. return "VK_STRUCTURE_TYPE_VIDEO_SESSION_PARAMETERS_UPDATE_INFO_KHR";
  1685. #endif // VK_ENABLE_BETA_EXTENSIONS
  1686. case VK_STRUCTURE_TYPE_VI_SURFACE_CREATE_INFO_NN:
  1687. return "VK_STRUCTURE_TYPE_VI_SURFACE_CREATE_INFO_NN";
  1688. case VK_STRUCTURE_TYPE_WAYLAND_SURFACE_CREATE_INFO_KHR:
  1689. return "VK_STRUCTURE_TYPE_WAYLAND_SURFACE_CREATE_INFO_KHR";
  1690. case VK_STRUCTURE_TYPE_WIN32_KEYED_MUTEX_ACQUIRE_RELEASE_INFO_KHR:
  1691. return "VK_STRUCTURE_TYPE_WIN32_KEYED_MUTEX_ACQUIRE_RELEASE_INFO_KHR";
  1692. case VK_STRUCTURE_TYPE_WIN32_KEYED_MUTEX_ACQUIRE_RELEASE_INFO_NV:
  1693. return "VK_STRUCTURE_TYPE_WIN32_KEYED_MUTEX_ACQUIRE_RELEASE_INFO_NV";
  1694. case VK_STRUCTURE_TYPE_WIN32_SURFACE_CREATE_INFO_KHR:
  1695. return "VK_STRUCTURE_TYPE_WIN32_SURFACE_CREATE_INFO_KHR";
  1696. case VK_STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET:
  1697. return "VK_STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET";
  1698. case VK_STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET_ACCELERATION_STRUCTURE_KHR:
  1699. return "VK_STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET_ACCELERATION_STRUCTURE_KHR";
  1700. case VK_STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET_ACCELERATION_STRUCTURE_NV:
  1701. return "VK_STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET_ACCELERATION_STRUCTURE_NV";
  1702. case VK_STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET_INLINE_UNIFORM_BLOCK:
  1703. return "VK_STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET_INLINE_UNIFORM_BLOCK";
  1704. case VK_STRUCTURE_TYPE_XCB_SURFACE_CREATE_INFO_KHR:
  1705. return "VK_STRUCTURE_TYPE_XCB_SURFACE_CREATE_INFO_KHR";
  1706. case VK_STRUCTURE_TYPE_XLIB_SURFACE_CREATE_INFO_KHR:
  1707. return "VK_STRUCTURE_TYPE_XLIB_SURFACE_CREATE_INFO_KHR";
  1708. default:
  1709. return "Unhandled VkStructureType";
  1710. }
  1711. }
  1712. static inline const char* string_VkPipelineCacheHeaderVersion(VkPipelineCacheHeaderVersion input_value)
  1713. {
  1714. switch (input_value)
  1715. {
  1716. case VK_PIPELINE_CACHE_HEADER_VERSION_ONE:
  1717. return "VK_PIPELINE_CACHE_HEADER_VERSION_ONE";
  1718. default:
  1719. return "Unhandled VkPipelineCacheHeaderVersion";
  1720. }
  1721. }
  1722. static inline const char* string_VkAccessFlagBits(VkAccessFlagBits input_value)
  1723. {
  1724. switch (input_value)
  1725. {
  1726. case VK_ACCESS_ACCELERATION_STRUCTURE_READ_BIT_KHR:
  1727. return "VK_ACCESS_ACCELERATION_STRUCTURE_READ_BIT_KHR";
  1728. case VK_ACCESS_ACCELERATION_STRUCTURE_WRITE_BIT_KHR:
  1729. return "VK_ACCESS_ACCELERATION_STRUCTURE_WRITE_BIT_KHR";
  1730. case VK_ACCESS_COLOR_ATTACHMENT_READ_BIT:
  1731. return "VK_ACCESS_COLOR_ATTACHMENT_READ_BIT";
  1732. case VK_ACCESS_COLOR_ATTACHMENT_READ_NONCOHERENT_BIT_EXT:
  1733. return "VK_ACCESS_COLOR_ATTACHMENT_READ_NONCOHERENT_BIT_EXT";
  1734. case VK_ACCESS_COLOR_ATTACHMENT_WRITE_BIT:
  1735. return "VK_ACCESS_COLOR_ATTACHMENT_WRITE_BIT";
  1736. case VK_ACCESS_COMMAND_PREPROCESS_READ_BIT_NV:
  1737. return "VK_ACCESS_COMMAND_PREPROCESS_READ_BIT_NV";
  1738. case VK_ACCESS_COMMAND_PREPROCESS_WRITE_BIT_NV:
  1739. return "VK_ACCESS_COMMAND_PREPROCESS_WRITE_BIT_NV";
  1740. case VK_ACCESS_CONDITIONAL_RENDERING_READ_BIT_EXT:
  1741. return "VK_ACCESS_CONDITIONAL_RENDERING_READ_BIT_EXT";
  1742. case VK_ACCESS_DEPTH_STENCIL_ATTACHMENT_READ_BIT:
  1743. return "VK_ACCESS_DEPTH_STENCIL_ATTACHMENT_READ_BIT";
  1744. case VK_ACCESS_DEPTH_STENCIL_ATTACHMENT_WRITE_BIT:
  1745. return "VK_ACCESS_DEPTH_STENCIL_ATTACHMENT_WRITE_BIT";
  1746. case VK_ACCESS_FRAGMENT_DENSITY_MAP_READ_BIT_EXT:
  1747. return "VK_ACCESS_FRAGMENT_DENSITY_MAP_READ_BIT_EXT";
  1748. case VK_ACCESS_FRAGMENT_SHADING_RATE_ATTACHMENT_READ_BIT_KHR:
  1749. return "VK_ACCESS_FRAGMENT_SHADING_RATE_ATTACHMENT_READ_BIT_KHR";
  1750. case VK_ACCESS_HOST_READ_BIT:
  1751. return "VK_ACCESS_HOST_READ_BIT";
  1752. case VK_ACCESS_HOST_WRITE_BIT:
  1753. return "VK_ACCESS_HOST_WRITE_BIT";
  1754. case VK_ACCESS_INDEX_READ_BIT:
  1755. return "VK_ACCESS_INDEX_READ_BIT";
  1756. case VK_ACCESS_INDIRECT_COMMAND_READ_BIT:
  1757. return "VK_ACCESS_INDIRECT_COMMAND_READ_BIT";
  1758. case VK_ACCESS_INPUT_ATTACHMENT_READ_BIT:
  1759. return "VK_ACCESS_INPUT_ATTACHMENT_READ_BIT";
  1760. case VK_ACCESS_MEMORY_READ_BIT:
  1761. return "VK_ACCESS_MEMORY_READ_BIT";
  1762. case VK_ACCESS_MEMORY_WRITE_BIT:
  1763. return "VK_ACCESS_MEMORY_WRITE_BIT";
  1764. case VK_ACCESS_NONE:
  1765. return "VK_ACCESS_NONE";
  1766. case VK_ACCESS_SHADER_READ_BIT:
  1767. return "VK_ACCESS_SHADER_READ_BIT";
  1768. case VK_ACCESS_SHADER_WRITE_BIT:
  1769. return "VK_ACCESS_SHADER_WRITE_BIT";
  1770. case VK_ACCESS_TRANSFER_READ_BIT:
  1771. return "VK_ACCESS_TRANSFER_READ_BIT";
  1772. case VK_ACCESS_TRANSFER_WRITE_BIT:
  1773. return "VK_ACCESS_TRANSFER_WRITE_BIT";
  1774. case VK_ACCESS_TRANSFORM_FEEDBACK_COUNTER_READ_BIT_EXT:
  1775. return "VK_ACCESS_TRANSFORM_FEEDBACK_COUNTER_READ_BIT_EXT";
  1776. case VK_ACCESS_TRANSFORM_FEEDBACK_COUNTER_WRITE_BIT_EXT:
  1777. return "VK_ACCESS_TRANSFORM_FEEDBACK_COUNTER_WRITE_BIT_EXT";
  1778. case VK_ACCESS_TRANSFORM_FEEDBACK_WRITE_BIT_EXT:
  1779. return "VK_ACCESS_TRANSFORM_FEEDBACK_WRITE_BIT_EXT";
  1780. case VK_ACCESS_UNIFORM_READ_BIT:
  1781. return "VK_ACCESS_UNIFORM_READ_BIT";
  1782. case VK_ACCESS_VERTEX_ATTRIBUTE_READ_BIT:
  1783. return "VK_ACCESS_VERTEX_ATTRIBUTE_READ_BIT";
  1784. default:
  1785. return "Unhandled VkAccessFlagBits";
  1786. }
  1787. }
  1788. static inline std::string string_VkAccessFlags(VkAccessFlags input_value)
  1789. {
  1790. std::string ret;
  1791. int index = 0;
  1792. while(input_value) {
  1793. if (input_value & 1) {
  1794. if( !ret.empty()) ret.append("|");
  1795. ret.append(string_VkAccessFlagBits(static_cast<VkAccessFlagBits>(1U << index)));
  1796. }
  1797. ++index;
  1798. input_value >>= 1;
  1799. }
  1800. if( ret.empty()) ret.append(string_VkAccessFlagBits(static_cast<VkAccessFlagBits>(0)));
  1801. return ret;
  1802. }
  1803. static inline const char* string_VkImageLayout(VkImageLayout input_value)
  1804. {
  1805. switch (input_value)
  1806. {
  1807. case VK_IMAGE_LAYOUT_ATTACHMENT_FEEDBACK_LOOP_OPTIMAL_EXT:
  1808. return "VK_IMAGE_LAYOUT_ATTACHMENT_FEEDBACK_LOOP_OPTIMAL_EXT";
  1809. case VK_IMAGE_LAYOUT_ATTACHMENT_OPTIMAL:
  1810. return "VK_IMAGE_LAYOUT_ATTACHMENT_OPTIMAL";
  1811. case VK_IMAGE_LAYOUT_COLOR_ATTACHMENT_OPTIMAL:
  1812. return "VK_IMAGE_LAYOUT_COLOR_ATTACHMENT_OPTIMAL";
  1813. case VK_IMAGE_LAYOUT_DEPTH_ATTACHMENT_OPTIMAL:
  1814. return "VK_IMAGE_LAYOUT_DEPTH_ATTACHMENT_OPTIMAL";
  1815. case VK_IMAGE_LAYOUT_DEPTH_ATTACHMENT_STENCIL_READ_ONLY_OPTIMAL:
  1816. return "VK_IMAGE_LAYOUT_DEPTH_ATTACHMENT_STENCIL_READ_ONLY_OPTIMAL";
  1817. case VK_IMAGE_LAYOUT_DEPTH_READ_ONLY_OPTIMAL:
  1818. return "VK_IMAGE_LAYOUT_DEPTH_READ_ONLY_OPTIMAL";
  1819. case VK_IMAGE_LAYOUT_DEPTH_READ_ONLY_STENCIL_ATTACHMENT_OPTIMAL:
  1820. return "VK_IMAGE_LAYOUT_DEPTH_READ_ONLY_STENCIL_ATTACHMENT_OPTIMAL";
  1821. case VK_IMAGE_LAYOUT_DEPTH_STENCIL_ATTACHMENT_OPTIMAL:
  1822. return "VK_IMAGE_LAYOUT_DEPTH_STENCIL_ATTACHMENT_OPTIMAL";
  1823. case VK_IMAGE_LAYOUT_DEPTH_STENCIL_READ_ONLY_OPTIMAL:
  1824. return "VK_IMAGE_LAYOUT_DEPTH_STENCIL_READ_ONLY_OPTIMAL";
  1825. case VK_IMAGE_LAYOUT_FRAGMENT_DENSITY_MAP_OPTIMAL_EXT:
  1826. return "VK_IMAGE_LAYOUT_FRAGMENT_DENSITY_MAP_OPTIMAL_EXT";
  1827. case VK_IMAGE_LAYOUT_FRAGMENT_SHADING_RATE_ATTACHMENT_OPTIMAL_KHR:
  1828. return "VK_IMAGE_LAYOUT_FRAGMENT_SHADING_RATE_ATTACHMENT_OPTIMAL_KHR";
  1829. case VK_IMAGE_LAYOUT_GENERAL:
  1830. return "VK_IMAGE_LAYOUT_GENERAL";
  1831. case VK_IMAGE_LAYOUT_PREINITIALIZED:
  1832. return "VK_IMAGE_LAYOUT_PREINITIALIZED";
  1833. case VK_IMAGE_LAYOUT_PRESENT_SRC_KHR:
  1834. return "VK_IMAGE_LAYOUT_PRESENT_SRC_KHR";
  1835. case VK_IMAGE_LAYOUT_READ_ONLY_OPTIMAL:
  1836. return "VK_IMAGE_LAYOUT_READ_ONLY_OPTIMAL";
  1837. case VK_IMAGE_LAYOUT_SHADER_READ_ONLY_OPTIMAL:
  1838. return "VK_IMAGE_LAYOUT_SHADER_READ_ONLY_OPTIMAL";
  1839. case VK_IMAGE_LAYOUT_SHARED_PRESENT_KHR:
  1840. return "VK_IMAGE_LAYOUT_SHARED_PRESENT_KHR";
  1841. case VK_IMAGE_LAYOUT_STENCIL_ATTACHMENT_OPTIMAL:
  1842. return "VK_IMAGE_LAYOUT_STENCIL_ATTACHMENT_OPTIMAL";
  1843. case VK_IMAGE_LAYOUT_STENCIL_READ_ONLY_OPTIMAL:
  1844. return "VK_IMAGE_LAYOUT_STENCIL_READ_ONLY_OPTIMAL";
  1845. case VK_IMAGE_LAYOUT_TRANSFER_DST_OPTIMAL:
  1846. return "VK_IMAGE_LAYOUT_TRANSFER_DST_OPTIMAL";
  1847. case VK_IMAGE_LAYOUT_TRANSFER_SRC_OPTIMAL:
  1848. return "VK_IMAGE_LAYOUT_TRANSFER_SRC_OPTIMAL";
  1849. case VK_IMAGE_LAYOUT_UNDEFINED:
  1850. return "VK_IMAGE_LAYOUT_UNDEFINED";
  1851. #ifdef VK_ENABLE_BETA_EXTENSIONS
  1852. case VK_IMAGE_LAYOUT_VIDEO_DECODE_DPB_KHR:
  1853. return "VK_IMAGE_LAYOUT_VIDEO_DECODE_DPB_KHR";
  1854. #endif // VK_ENABLE_BETA_EXTENSIONS
  1855. #ifdef VK_ENABLE_BETA_EXTENSIONS
  1856. case VK_IMAGE_LAYOUT_VIDEO_DECODE_DST_KHR:
  1857. return "VK_IMAGE_LAYOUT_VIDEO_DECODE_DST_KHR";
  1858. #endif // VK_ENABLE_BETA_EXTENSIONS
  1859. #ifdef VK_ENABLE_BETA_EXTENSIONS
  1860. case VK_IMAGE_LAYOUT_VIDEO_DECODE_SRC_KHR:
  1861. return "VK_IMAGE_LAYOUT_VIDEO_DECODE_SRC_KHR";
  1862. #endif // VK_ENABLE_BETA_EXTENSIONS
  1863. #ifdef VK_ENABLE_BETA_EXTENSIONS
  1864. case VK_IMAGE_LAYOUT_VIDEO_ENCODE_DPB_KHR:
  1865. return "VK_IMAGE_LAYOUT_VIDEO_ENCODE_DPB_KHR";
  1866. #endif // VK_ENABLE_BETA_EXTENSIONS
  1867. #ifdef VK_ENABLE_BETA_EXTENSIONS
  1868. case VK_IMAGE_LAYOUT_VIDEO_ENCODE_DST_KHR:
  1869. return "VK_IMAGE_LAYOUT_VIDEO_ENCODE_DST_KHR";
  1870. #endif // VK_ENABLE_BETA_EXTENSIONS
  1871. #ifdef VK_ENABLE_BETA_EXTENSIONS
  1872. case VK_IMAGE_LAYOUT_VIDEO_ENCODE_SRC_KHR:
  1873. return "VK_IMAGE_LAYOUT_VIDEO_ENCODE_SRC_KHR";
  1874. #endif // VK_ENABLE_BETA_EXTENSIONS
  1875. default:
  1876. return "Unhandled VkImageLayout";
  1877. }
  1878. }
  1879. static inline const char* string_VkImageAspectFlagBits(VkImageAspectFlagBits input_value)
  1880. {
  1881. switch (input_value)
  1882. {
  1883. case VK_IMAGE_ASPECT_COLOR_BIT:
  1884. return "VK_IMAGE_ASPECT_COLOR_BIT";
  1885. case VK_IMAGE_ASPECT_DEPTH_BIT:
  1886. return "VK_IMAGE_ASPECT_DEPTH_BIT";
  1887. case VK_IMAGE_ASPECT_MEMORY_PLANE_0_BIT_EXT:
  1888. return "VK_IMAGE_ASPECT_MEMORY_PLANE_0_BIT_EXT";
  1889. case VK_IMAGE_ASPECT_MEMORY_PLANE_1_BIT_EXT:
  1890. return "VK_IMAGE_ASPECT_MEMORY_PLANE_1_BIT_EXT";
  1891. case VK_IMAGE_ASPECT_MEMORY_PLANE_2_BIT_EXT:
  1892. return "VK_IMAGE_ASPECT_MEMORY_PLANE_2_BIT_EXT";
  1893. case VK_IMAGE_ASPECT_MEMORY_PLANE_3_BIT_EXT:
  1894. return "VK_IMAGE_ASPECT_MEMORY_PLANE_3_BIT_EXT";
  1895. case VK_IMAGE_ASPECT_METADATA_BIT:
  1896. return "VK_IMAGE_ASPECT_METADATA_BIT";
  1897. case VK_IMAGE_ASPECT_NONE:
  1898. return "VK_IMAGE_ASPECT_NONE";
  1899. case VK_IMAGE_ASPECT_PLANE_0_BIT:
  1900. return "VK_IMAGE_ASPECT_PLANE_0_BIT";
  1901. case VK_IMAGE_ASPECT_PLANE_1_BIT:
  1902. return "VK_IMAGE_ASPECT_PLANE_1_BIT";
  1903. case VK_IMAGE_ASPECT_PLANE_2_BIT:
  1904. return "VK_IMAGE_ASPECT_PLANE_2_BIT";
  1905. case VK_IMAGE_ASPECT_STENCIL_BIT:
  1906. return "VK_IMAGE_ASPECT_STENCIL_BIT";
  1907. default:
  1908. return "Unhandled VkImageAspectFlagBits";
  1909. }
  1910. }
  1911. static inline std::string string_VkImageAspectFlags(VkImageAspectFlags input_value)
  1912. {
  1913. std::string ret;
  1914. int index = 0;
  1915. while(input_value) {
  1916. if (input_value & 1) {
  1917. if( !ret.empty()) ret.append("|");
  1918. ret.append(string_VkImageAspectFlagBits(static_cast<VkImageAspectFlagBits>(1U << index)));
  1919. }
  1920. ++index;
  1921. input_value >>= 1;
  1922. }
  1923. if( ret.empty()) ret.append(string_VkImageAspectFlagBits(static_cast<VkImageAspectFlagBits>(0)));
  1924. return ret;
  1925. }
  1926. static inline const char* string_VkObjectType(VkObjectType input_value)
  1927. {
  1928. switch (input_value)
  1929. {
  1930. case VK_OBJECT_TYPE_ACCELERATION_STRUCTURE_KHR:
  1931. return "VK_OBJECT_TYPE_ACCELERATION_STRUCTURE_KHR";
  1932. case VK_OBJECT_TYPE_ACCELERATION_STRUCTURE_NV:
  1933. return "VK_OBJECT_TYPE_ACCELERATION_STRUCTURE_NV";
  1934. case VK_OBJECT_TYPE_BUFFER:
  1935. return "VK_OBJECT_TYPE_BUFFER";
  1936. case VK_OBJECT_TYPE_BUFFER_COLLECTION_FUCHSIA:
  1937. return "VK_OBJECT_TYPE_BUFFER_COLLECTION_FUCHSIA";
  1938. case VK_OBJECT_TYPE_BUFFER_VIEW:
  1939. return "VK_OBJECT_TYPE_BUFFER_VIEW";
  1940. case VK_OBJECT_TYPE_COMMAND_BUFFER:
  1941. return "VK_OBJECT_TYPE_COMMAND_BUFFER";
  1942. case VK_OBJECT_TYPE_COMMAND_POOL:
  1943. return "VK_OBJECT_TYPE_COMMAND_POOL";
  1944. case VK_OBJECT_TYPE_CU_FUNCTION_NVX:
  1945. return "VK_OBJECT_TYPE_CU_FUNCTION_NVX";
  1946. case VK_OBJECT_TYPE_CU_MODULE_NVX:
  1947. return "VK_OBJECT_TYPE_CU_MODULE_NVX";
  1948. case VK_OBJECT_TYPE_DEBUG_REPORT_CALLBACK_EXT:
  1949. return "VK_OBJECT_TYPE_DEBUG_REPORT_CALLBACK_EXT";
  1950. case VK_OBJECT_TYPE_DEBUG_UTILS_MESSENGER_EXT:
  1951. return "VK_OBJECT_TYPE_DEBUG_UTILS_MESSENGER_EXT";
  1952. case VK_OBJECT_TYPE_DEFERRED_OPERATION_KHR:
  1953. return "VK_OBJECT_TYPE_DEFERRED_OPERATION_KHR";
  1954. case VK_OBJECT_TYPE_DESCRIPTOR_POOL:
  1955. return "VK_OBJECT_TYPE_DESCRIPTOR_POOL";
  1956. case VK_OBJECT_TYPE_DESCRIPTOR_SET:
  1957. return "VK_OBJECT_TYPE_DESCRIPTOR_SET";
  1958. case VK_OBJECT_TYPE_DESCRIPTOR_SET_LAYOUT:
  1959. return "VK_OBJECT_TYPE_DESCRIPTOR_SET_LAYOUT";
  1960. case VK_OBJECT_TYPE_DESCRIPTOR_UPDATE_TEMPLATE:
  1961. return "VK_OBJECT_TYPE_DESCRIPTOR_UPDATE_TEMPLATE";
  1962. case VK_OBJECT_TYPE_DEVICE:
  1963. return "VK_OBJECT_TYPE_DEVICE";
  1964. case VK_OBJECT_TYPE_DEVICE_MEMORY:
  1965. return "VK_OBJECT_TYPE_DEVICE_MEMORY";
  1966. case VK_OBJECT_TYPE_DISPLAY_KHR:
  1967. return "VK_OBJECT_TYPE_DISPLAY_KHR";
  1968. case VK_OBJECT_TYPE_DISPLAY_MODE_KHR:
  1969. return "VK_OBJECT_TYPE_DISPLAY_MODE_KHR";
  1970. case VK_OBJECT_TYPE_EVENT:
  1971. return "VK_OBJECT_TYPE_EVENT";
  1972. case VK_OBJECT_TYPE_FENCE:
  1973. return "VK_OBJECT_TYPE_FENCE";
  1974. case VK_OBJECT_TYPE_FRAMEBUFFER:
  1975. return "VK_OBJECT_TYPE_FRAMEBUFFER";
  1976. case VK_OBJECT_TYPE_IMAGE:
  1977. return "VK_OBJECT_TYPE_IMAGE";
  1978. case VK_OBJECT_TYPE_IMAGE_VIEW:
  1979. return "VK_OBJECT_TYPE_IMAGE_VIEW";
  1980. case VK_OBJECT_TYPE_INDIRECT_COMMANDS_LAYOUT_NV:
  1981. return "VK_OBJECT_TYPE_INDIRECT_COMMANDS_LAYOUT_NV";
  1982. case VK_OBJECT_TYPE_INSTANCE:
  1983. return "VK_OBJECT_TYPE_INSTANCE";
  1984. case VK_OBJECT_TYPE_MICROMAP_EXT:
  1985. return "VK_OBJECT_TYPE_MICROMAP_EXT";
  1986. case VK_OBJECT_TYPE_OPTICAL_FLOW_SESSION_NV:
  1987. return "VK_OBJECT_TYPE_OPTICAL_FLOW_SESSION_NV";
  1988. case VK_OBJECT_TYPE_PERFORMANCE_CONFIGURATION_INTEL:
  1989. return "VK_OBJECT_TYPE_PERFORMANCE_CONFIGURATION_INTEL";
  1990. case VK_OBJECT_TYPE_PHYSICAL_DEVICE:
  1991. return "VK_OBJECT_TYPE_PHYSICAL_DEVICE";
  1992. case VK_OBJECT_TYPE_PIPELINE:
  1993. return "VK_OBJECT_TYPE_PIPELINE";
  1994. case VK_OBJECT_TYPE_PIPELINE_CACHE:
  1995. return "VK_OBJECT_TYPE_PIPELINE_CACHE";
  1996. case VK_OBJECT_TYPE_PIPELINE_LAYOUT:
  1997. return "VK_OBJECT_TYPE_PIPELINE_LAYOUT";
  1998. case VK_OBJECT_TYPE_PRIVATE_DATA_SLOT:
  1999. return "VK_OBJECT_TYPE_PRIVATE_DATA_SLOT";
  2000. case VK_OBJECT_TYPE_QUERY_POOL:
  2001. return "VK_OBJECT_TYPE_QUERY_POOL";
  2002. case VK_OBJECT_TYPE_QUEUE:
  2003. return "VK_OBJECT_TYPE_QUEUE";
  2004. case VK_OBJECT_TYPE_RENDER_PASS:
  2005. return "VK_OBJECT_TYPE_RENDER_PASS";
  2006. case VK_OBJECT_TYPE_SAMPLER:
  2007. return "VK_OBJECT_TYPE_SAMPLER";
  2008. case VK_OBJECT_TYPE_SAMPLER_YCBCR_CONVERSION:
  2009. return "VK_OBJECT_TYPE_SAMPLER_YCBCR_CONVERSION";
  2010. case VK_OBJECT_TYPE_SEMAPHORE:
  2011. return "VK_OBJECT_TYPE_SEMAPHORE";
  2012. case VK_OBJECT_TYPE_SHADER_MODULE:
  2013. return "VK_OBJECT_TYPE_SHADER_MODULE";
  2014. case VK_OBJECT_TYPE_SURFACE_KHR:
  2015. return "VK_OBJECT_TYPE_SURFACE_KHR";
  2016. case VK_OBJECT_TYPE_SWAPCHAIN_KHR:
  2017. return "VK_OBJECT_TYPE_SWAPCHAIN_KHR";
  2018. case VK_OBJECT_TYPE_UNKNOWN:
  2019. return "VK_OBJECT_TYPE_UNKNOWN";
  2020. case VK_OBJECT_TYPE_VALIDATION_CACHE_EXT:
  2021. return "VK_OBJECT_TYPE_VALIDATION_CACHE_EXT";
  2022. #ifdef VK_ENABLE_BETA_EXTENSIONS
  2023. case VK_OBJECT_TYPE_VIDEO_SESSION_KHR:
  2024. return "VK_OBJECT_TYPE_VIDEO_SESSION_KHR";
  2025. #endif // VK_ENABLE_BETA_EXTENSIONS
  2026. #ifdef VK_ENABLE_BETA_EXTENSIONS
  2027. case VK_OBJECT_TYPE_VIDEO_SESSION_PARAMETERS_KHR:
  2028. return "VK_OBJECT_TYPE_VIDEO_SESSION_PARAMETERS_KHR";
  2029. #endif // VK_ENABLE_BETA_EXTENSIONS
  2030. default:
  2031. return "Unhandled VkObjectType";
  2032. }
  2033. }
  2034. static inline const char* string_VkVendorId(VkVendorId input_value)
  2035. {
  2036. switch (input_value)
  2037. {
  2038. case VK_VENDOR_ID_CODEPLAY:
  2039. return "VK_VENDOR_ID_CODEPLAY";
  2040. case VK_VENDOR_ID_KAZAN:
  2041. return "VK_VENDOR_ID_KAZAN";
  2042. case VK_VENDOR_ID_MESA:
  2043. return "VK_VENDOR_ID_MESA";
  2044. case VK_VENDOR_ID_POCL:
  2045. return "VK_VENDOR_ID_POCL";
  2046. case VK_VENDOR_ID_VIV:
  2047. return "VK_VENDOR_ID_VIV";
  2048. case VK_VENDOR_ID_VSI:
  2049. return "VK_VENDOR_ID_VSI";
  2050. default:
  2051. return "Unhandled VkVendorId";
  2052. }
  2053. }
  2054. static inline const char* string_VkSystemAllocationScope(VkSystemAllocationScope input_value)
  2055. {
  2056. switch (input_value)
  2057. {
  2058. case VK_SYSTEM_ALLOCATION_SCOPE_CACHE:
  2059. return "VK_SYSTEM_ALLOCATION_SCOPE_CACHE";
  2060. case VK_SYSTEM_ALLOCATION_SCOPE_COMMAND:
  2061. return "VK_SYSTEM_ALLOCATION_SCOPE_COMMAND";
  2062. case VK_SYSTEM_ALLOCATION_SCOPE_DEVICE:
  2063. return "VK_SYSTEM_ALLOCATION_SCOPE_DEVICE";
  2064. case VK_SYSTEM_ALLOCATION_SCOPE_INSTANCE:
  2065. return "VK_SYSTEM_ALLOCATION_SCOPE_INSTANCE";
  2066. case VK_SYSTEM_ALLOCATION_SCOPE_OBJECT:
  2067. return "VK_SYSTEM_ALLOCATION_SCOPE_OBJECT";
  2068. default:
  2069. return "Unhandled VkSystemAllocationScope";
  2070. }
  2071. }
  2072. static inline const char* string_VkInternalAllocationType(VkInternalAllocationType input_value)
  2073. {
  2074. switch (input_value)
  2075. {
  2076. case VK_INTERNAL_ALLOCATION_TYPE_EXECUTABLE:
  2077. return "VK_INTERNAL_ALLOCATION_TYPE_EXECUTABLE";
  2078. default:
  2079. return "Unhandled VkInternalAllocationType";
  2080. }
  2081. }
  2082. static inline const char* string_VkFormat(VkFormat input_value)
  2083. {
  2084. switch (input_value)
  2085. {
  2086. case VK_FORMAT_A1R5G5B5_UNORM_PACK16:
  2087. return "VK_FORMAT_A1R5G5B5_UNORM_PACK16";
  2088. case VK_FORMAT_A2B10G10R10_SINT_PACK32:
  2089. return "VK_FORMAT_A2B10G10R10_SINT_PACK32";
  2090. case VK_FORMAT_A2B10G10R10_SNORM_PACK32:
  2091. return "VK_FORMAT_A2B10G10R10_SNORM_PACK32";
  2092. case VK_FORMAT_A2B10G10R10_SSCALED_PACK32:
  2093. return "VK_FORMAT_A2B10G10R10_SSCALED_PACK32";
  2094. case VK_FORMAT_A2B10G10R10_UINT_PACK32:
  2095. return "VK_FORMAT_A2B10G10R10_UINT_PACK32";
  2096. case VK_FORMAT_A2B10G10R10_UNORM_PACK32:
  2097. return "VK_FORMAT_A2B10G10R10_UNORM_PACK32";
  2098. case VK_FORMAT_A2B10G10R10_USCALED_PACK32:
  2099. return "VK_FORMAT_A2B10G10R10_USCALED_PACK32";
  2100. case VK_FORMAT_A2R10G10B10_SINT_PACK32:
  2101. return "VK_FORMAT_A2R10G10B10_SINT_PACK32";
  2102. case VK_FORMAT_A2R10G10B10_SNORM_PACK32:
  2103. return "VK_FORMAT_A2R10G10B10_SNORM_PACK32";
  2104. case VK_FORMAT_A2R10G10B10_SSCALED_PACK32:
  2105. return "VK_FORMAT_A2R10G10B10_SSCALED_PACK32";
  2106. case VK_FORMAT_A2R10G10B10_UINT_PACK32:
  2107. return "VK_FORMAT_A2R10G10B10_UINT_PACK32";
  2108. case VK_FORMAT_A2R10G10B10_UNORM_PACK32:
  2109. return "VK_FORMAT_A2R10G10B10_UNORM_PACK32";
  2110. case VK_FORMAT_A2R10G10B10_USCALED_PACK32:
  2111. return "VK_FORMAT_A2R10G10B10_USCALED_PACK32";
  2112. case VK_FORMAT_A4B4G4R4_UNORM_PACK16:
  2113. return "VK_FORMAT_A4B4G4R4_UNORM_PACK16";
  2114. case VK_FORMAT_A4R4G4B4_UNORM_PACK16:
  2115. return "VK_FORMAT_A4R4G4B4_UNORM_PACK16";
  2116. case VK_FORMAT_A8B8G8R8_SINT_PACK32:
  2117. return "VK_FORMAT_A8B8G8R8_SINT_PACK32";
  2118. case VK_FORMAT_A8B8G8R8_SNORM_PACK32:
  2119. return "VK_FORMAT_A8B8G8R8_SNORM_PACK32";
  2120. case VK_FORMAT_A8B8G8R8_SRGB_PACK32:
  2121. return "VK_FORMAT_A8B8G8R8_SRGB_PACK32";
  2122. case VK_FORMAT_A8B8G8R8_SSCALED_PACK32:
  2123. return "VK_FORMAT_A8B8G8R8_SSCALED_PACK32";
  2124. case VK_FORMAT_A8B8G8R8_UINT_PACK32:
  2125. return "VK_FORMAT_A8B8G8R8_UINT_PACK32";
  2126. case VK_FORMAT_A8B8G8R8_UNORM_PACK32:
  2127. return "VK_FORMAT_A8B8G8R8_UNORM_PACK32";
  2128. case VK_FORMAT_A8B8G8R8_USCALED_PACK32:
  2129. return "VK_FORMAT_A8B8G8R8_USCALED_PACK32";
  2130. case VK_FORMAT_ASTC_10x10_SFLOAT_BLOCK:
  2131. return "VK_FORMAT_ASTC_10x10_SFLOAT_BLOCK";
  2132. case VK_FORMAT_ASTC_10x10_SRGB_BLOCK:
  2133. return "VK_FORMAT_ASTC_10x10_SRGB_BLOCK";
  2134. case VK_FORMAT_ASTC_10x10_UNORM_BLOCK:
  2135. return "VK_FORMAT_ASTC_10x10_UNORM_BLOCK";
  2136. case VK_FORMAT_ASTC_10x5_SFLOAT_BLOCK:
  2137. return "VK_FORMAT_ASTC_10x5_SFLOAT_BLOCK";
  2138. case VK_FORMAT_ASTC_10x5_SRGB_BLOCK:
  2139. return "VK_FORMAT_ASTC_10x5_SRGB_BLOCK";
  2140. case VK_FORMAT_ASTC_10x5_UNORM_BLOCK:
  2141. return "VK_FORMAT_ASTC_10x5_UNORM_BLOCK";
  2142. case VK_FORMAT_ASTC_10x6_SFLOAT_BLOCK:
  2143. return "VK_FORMAT_ASTC_10x6_SFLOAT_BLOCK";
  2144. case VK_FORMAT_ASTC_10x6_SRGB_BLOCK:
  2145. return "VK_FORMAT_ASTC_10x6_SRGB_BLOCK";
  2146. case VK_FORMAT_ASTC_10x6_UNORM_BLOCK:
  2147. return "VK_FORMAT_ASTC_10x6_UNORM_BLOCK";
  2148. case VK_FORMAT_ASTC_10x8_SFLOAT_BLOCK:
  2149. return "VK_FORMAT_ASTC_10x8_SFLOAT_BLOCK";
  2150. case VK_FORMAT_ASTC_10x8_SRGB_BLOCK:
  2151. return "VK_FORMAT_ASTC_10x8_SRGB_BLOCK";
  2152. case VK_FORMAT_ASTC_10x8_UNORM_BLOCK:
  2153. return "VK_FORMAT_ASTC_10x8_UNORM_BLOCK";
  2154. case VK_FORMAT_ASTC_12x10_SFLOAT_BLOCK:
  2155. return "VK_FORMAT_ASTC_12x10_SFLOAT_BLOCK";
  2156. case VK_FORMAT_ASTC_12x10_SRGB_BLOCK:
  2157. return "VK_FORMAT_ASTC_12x10_SRGB_BLOCK";
  2158. case VK_FORMAT_ASTC_12x10_UNORM_BLOCK:
  2159. return "VK_FORMAT_ASTC_12x10_UNORM_BLOCK";
  2160. case VK_FORMAT_ASTC_12x12_SFLOAT_BLOCK:
  2161. return "VK_FORMAT_ASTC_12x12_SFLOAT_BLOCK";
  2162. case VK_FORMAT_ASTC_12x12_SRGB_BLOCK:
  2163. return "VK_FORMAT_ASTC_12x12_SRGB_BLOCK";
  2164. case VK_FORMAT_ASTC_12x12_UNORM_BLOCK:
  2165. return "VK_FORMAT_ASTC_12x12_UNORM_BLOCK";
  2166. case VK_FORMAT_ASTC_4x4_SFLOAT_BLOCK:
  2167. return "VK_FORMAT_ASTC_4x4_SFLOAT_BLOCK";
  2168. case VK_FORMAT_ASTC_4x4_SRGB_BLOCK:
  2169. return "VK_FORMAT_ASTC_4x4_SRGB_BLOCK";
  2170. case VK_FORMAT_ASTC_4x4_UNORM_BLOCK:
  2171. return "VK_FORMAT_ASTC_4x4_UNORM_BLOCK";
  2172. case VK_FORMAT_ASTC_5x4_SFLOAT_BLOCK:
  2173. return "VK_FORMAT_ASTC_5x4_SFLOAT_BLOCK";
  2174. case VK_FORMAT_ASTC_5x4_SRGB_BLOCK:
  2175. return "VK_FORMAT_ASTC_5x4_SRGB_BLOCK";
  2176. case VK_FORMAT_ASTC_5x4_UNORM_BLOCK:
  2177. return "VK_FORMAT_ASTC_5x4_UNORM_BLOCK";
  2178. case VK_FORMAT_ASTC_5x5_SFLOAT_BLOCK:
  2179. return "VK_FORMAT_ASTC_5x5_SFLOAT_BLOCK";
  2180. case VK_FORMAT_ASTC_5x5_SRGB_BLOCK:
  2181. return "VK_FORMAT_ASTC_5x5_SRGB_BLOCK";
  2182. case VK_FORMAT_ASTC_5x5_UNORM_BLOCK:
  2183. return "VK_FORMAT_ASTC_5x5_UNORM_BLOCK";
  2184. case VK_FORMAT_ASTC_6x5_SFLOAT_BLOCK:
  2185. return "VK_FORMAT_ASTC_6x5_SFLOAT_BLOCK";
  2186. case VK_FORMAT_ASTC_6x5_SRGB_BLOCK:
  2187. return "VK_FORMAT_ASTC_6x5_SRGB_BLOCK";
  2188. case VK_FORMAT_ASTC_6x5_UNORM_BLOCK:
  2189. return "VK_FORMAT_ASTC_6x5_UNORM_BLOCK";
  2190. case VK_FORMAT_ASTC_6x6_SFLOAT_BLOCK:
  2191. return "VK_FORMAT_ASTC_6x6_SFLOAT_BLOCK";
  2192. case VK_FORMAT_ASTC_6x6_SRGB_BLOCK:
  2193. return "VK_FORMAT_ASTC_6x6_SRGB_BLOCK";
  2194. case VK_FORMAT_ASTC_6x6_UNORM_BLOCK:
  2195. return "VK_FORMAT_ASTC_6x6_UNORM_BLOCK";
  2196. case VK_FORMAT_ASTC_8x5_SFLOAT_BLOCK:
  2197. return "VK_FORMAT_ASTC_8x5_SFLOAT_BLOCK";
  2198. case VK_FORMAT_ASTC_8x5_SRGB_BLOCK:
  2199. return "VK_FORMAT_ASTC_8x5_SRGB_BLOCK";
  2200. case VK_FORMAT_ASTC_8x5_UNORM_BLOCK:
  2201. return "VK_FORMAT_ASTC_8x5_UNORM_BLOCK";
  2202. case VK_FORMAT_ASTC_8x6_SFLOAT_BLOCK:
  2203. return "VK_FORMAT_ASTC_8x6_SFLOAT_BLOCK";
  2204. case VK_FORMAT_ASTC_8x6_SRGB_BLOCK:
  2205. return "VK_FORMAT_ASTC_8x6_SRGB_BLOCK";
  2206. case VK_FORMAT_ASTC_8x6_UNORM_BLOCK:
  2207. return "VK_FORMAT_ASTC_8x6_UNORM_BLOCK";
  2208. case VK_FORMAT_ASTC_8x8_SFLOAT_BLOCK:
  2209. return "VK_FORMAT_ASTC_8x8_SFLOAT_BLOCK";
  2210. case VK_FORMAT_ASTC_8x8_SRGB_BLOCK:
  2211. return "VK_FORMAT_ASTC_8x8_SRGB_BLOCK";
  2212. case VK_FORMAT_ASTC_8x8_UNORM_BLOCK:
  2213. return "VK_FORMAT_ASTC_8x8_UNORM_BLOCK";
  2214. case VK_FORMAT_B10G11R11_UFLOAT_PACK32:
  2215. return "VK_FORMAT_B10G11R11_UFLOAT_PACK32";
  2216. case VK_FORMAT_B10X6G10X6R10X6G10X6_422_UNORM_4PACK16:
  2217. return "VK_FORMAT_B10X6G10X6R10X6G10X6_422_UNORM_4PACK16";
  2218. case VK_FORMAT_B12X4G12X4R12X4G12X4_422_UNORM_4PACK16:
  2219. return "VK_FORMAT_B12X4G12X4R12X4G12X4_422_UNORM_4PACK16";
  2220. case VK_FORMAT_B16G16R16G16_422_UNORM:
  2221. return "VK_FORMAT_B16G16R16G16_422_UNORM";
  2222. case VK_FORMAT_B4G4R4A4_UNORM_PACK16:
  2223. return "VK_FORMAT_B4G4R4A4_UNORM_PACK16";
  2224. case VK_FORMAT_B5G5R5A1_UNORM_PACK16:
  2225. return "VK_FORMAT_B5G5R5A1_UNORM_PACK16";
  2226. case VK_FORMAT_B5G6R5_UNORM_PACK16:
  2227. return "VK_FORMAT_B5G6R5_UNORM_PACK16";
  2228. case VK_FORMAT_B8G8R8A8_SINT:
  2229. return "VK_FORMAT_B8G8R8A8_SINT";
  2230. case VK_FORMAT_B8G8R8A8_SNORM:
  2231. return "VK_FORMAT_B8G8R8A8_SNORM";
  2232. case VK_FORMAT_B8G8R8A8_SRGB:
  2233. return "VK_FORMAT_B8G8R8A8_SRGB";
  2234. case VK_FORMAT_B8G8R8A8_SSCALED:
  2235. return "VK_FORMAT_B8G8R8A8_SSCALED";
  2236. case VK_FORMAT_B8G8R8A8_UINT:
  2237. return "VK_FORMAT_B8G8R8A8_UINT";
  2238. case VK_FORMAT_B8G8R8A8_UNORM:
  2239. return "VK_FORMAT_B8G8R8A8_UNORM";
  2240. case VK_FORMAT_B8G8R8A8_USCALED:
  2241. return "VK_FORMAT_B8G8R8A8_USCALED";
  2242. case VK_FORMAT_B8G8R8G8_422_UNORM:
  2243. return "VK_FORMAT_B8G8R8G8_422_UNORM";
  2244. case VK_FORMAT_B8G8R8_SINT:
  2245. return "VK_FORMAT_B8G8R8_SINT";
  2246. case VK_FORMAT_B8G8R8_SNORM:
  2247. return "VK_FORMAT_B8G8R8_SNORM";
  2248. case VK_FORMAT_B8G8R8_SRGB:
  2249. return "VK_FORMAT_B8G8R8_SRGB";
  2250. case VK_FORMAT_B8G8R8_SSCALED:
  2251. return "VK_FORMAT_B8G8R8_SSCALED";
  2252. case VK_FORMAT_B8G8R8_UINT:
  2253. return "VK_FORMAT_B8G8R8_UINT";
  2254. case VK_FORMAT_B8G8R8_UNORM:
  2255. return "VK_FORMAT_B8G8R8_UNORM";
  2256. case VK_FORMAT_B8G8R8_USCALED:
  2257. return "VK_FORMAT_B8G8R8_USCALED";
  2258. case VK_FORMAT_BC1_RGBA_SRGB_BLOCK:
  2259. return "VK_FORMAT_BC1_RGBA_SRGB_BLOCK";
  2260. case VK_FORMAT_BC1_RGBA_UNORM_BLOCK:
  2261. return "VK_FORMAT_BC1_RGBA_UNORM_BLOCK";
  2262. case VK_FORMAT_BC1_RGB_SRGB_BLOCK:
  2263. return "VK_FORMAT_BC1_RGB_SRGB_BLOCK";
  2264. case VK_FORMAT_BC1_RGB_UNORM_BLOCK:
  2265. return "VK_FORMAT_BC1_RGB_UNORM_BLOCK";
  2266. case VK_FORMAT_BC2_SRGB_BLOCK:
  2267. return "VK_FORMAT_BC2_SRGB_BLOCK";
  2268. case VK_FORMAT_BC2_UNORM_BLOCK:
  2269. return "VK_FORMAT_BC2_UNORM_BLOCK";
  2270. case VK_FORMAT_BC3_SRGB_BLOCK:
  2271. return "VK_FORMAT_BC3_SRGB_BLOCK";
  2272. case VK_FORMAT_BC3_UNORM_BLOCK:
  2273. return "VK_FORMAT_BC3_UNORM_BLOCK";
  2274. case VK_FORMAT_BC4_SNORM_BLOCK:
  2275. return "VK_FORMAT_BC4_SNORM_BLOCK";
  2276. case VK_FORMAT_BC4_UNORM_BLOCK:
  2277. return "VK_FORMAT_BC4_UNORM_BLOCK";
  2278. case VK_FORMAT_BC5_SNORM_BLOCK:
  2279. return "VK_FORMAT_BC5_SNORM_BLOCK";
  2280. case VK_FORMAT_BC5_UNORM_BLOCK:
  2281. return "VK_FORMAT_BC5_UNORM_BLOCK";
  2282. case VK_FORMAT_BC6H_SFLOAT_BLOCK:
  2283. return "VK_FORMAT_BC6H_SFLOAT_BLOCK";
  2284. case VK_FORMAT_BC6H_UFLOAT_BLOCK:
  2285. return "VK_FORMAT_BC6H_UFLOAT_BLOCK";
  2286. case VK_FORMAT_BC7_SRGB_BLOCK:
  2287. return "VK_FORMAT_BC7_SRGB_BLOCK";
  2288. case VK_FORMAT_BC7_UNORM_BLOCK:
  2289. return "VK_FORMAT_BC7_UNORM_BLOCK";
  2290. case VK_FORMAT_D16_UNORM:
  2291. return "VK_FORMAT_D16_UNORM";
  2292. case VK_FORMAT_D16_UNORM_S8_UINT:
  2293. return "VK_FORMAT_D16_UNORM_S8_UINT";
  2294. case VK_FORMAT_D24_UNORM_S8_UINT:
  2295. return "VK_FORMAT_D24_UNORM_S8_UINT";
  2296. case VK_FORMAT_D32_SFLOAT:
  2297. return "VK_FORMAT_D32_SFLOAT";
  2298. case VK_FORMAT_D32_SFLOAT_S8_UINT:
  2299. return "VK_FORMAT_D32_SFLOAT_S8_UINT";
  2300. case VK_FORMAT_E5B9G9R9_UFLOAT_PACK32:
  2301. return "VK_FORMAT_E5B9G9R9_UFLOAT_PACK32";
  2302. case VK_FORMAT_EAC_R11G11_SNORM_BLOCK:
  2303. return "VK_FORMAT_EAC_R11G11_SNORM_BLOCK";
  2304. case VK_FORMAT_EAC_R11G11_UNORM_BLOCK:
  2305. return "VK_FORMAT_EAC_R11G11_UNORM_BLOCK";
  2306. case VK_FORMAT_EAC_R11_SNORM_BLOCK:
  2307. return "VK_FORMAT_EAC_R11_SNORM_BLOCK";
  2308. case VK_FORMAT_EAC_R11_UNORM_BLOCK:
  2309. return "VK_FORMAT_EAC_R11_UNORM_BLOCK";
  2310. case VK_FORMAT_ETC2_R8G8B8A1_SRGB_BLOCK:
  2311. return "VK_FORMAT_ETC2_R8G8B8A1_SRGB_BLOCK";
  2312. case VK_FORMAT_ETC2_R8G8B8A1_UNORM_BLOCK:
  2313. return "VK_FORMAT_ETC2_R8G8B8A1_UNORM_BLOCK";
  2314. case VK_FORMAT_ETC2_R8G8B8A8_SRGB_BLOCK:
  2315. return "VK_FORMAT_ETC2_R8G8B8A8_SRGB_BLOCK";
  2316. case VK_FORMAT_ETC2_R8G8B8A8_UNORM_BLOCK:
  2317. return "VK_FORMAT_ETC2_R8G8B8A8_UNORM_BLOCK";
  2318. case VK_FORMAT_ETC2_R8G8B8_SRGB_BLOCK:
  2319. return "VK_FORMAT_ETC2_R8G8B8_SRGB_BLOCK";
  2320. case VK_FORMAT_ETC2_R8G8B8_UNORM_BLOCK:
  2321. return "VK_FORMAT_ETC2_R8G8B8_UNORM_BLOCK";
  2322. case VK_FORMAT_G10X6B10X6G10X6R10X6_422_UNORM_4PACK16:
  2323. return "VK_FORMAT_G10X6B10X6G10X6R10X6_422_UNORM_4PACK16";
  2324. case VK_FORMAT_G10X6_B10X6R10X6_2PLANE_420_UNORM_3PACK16:
  2325. return "VK_FORMAT_G10X6_B10X6R10X6_2PLANE_420_UNORM_3PACK16";
  2326. case VK_FORMAT_G10X6_B10X6R10X6_2PLANE_422_UNORM_3PACK16:
  2327. return "VK_FORMAT_G10X6_B10X6R10X6_2PLANE_422_UNORM_3PACK16";
  2328. case VK_FORMAT_G10X6_B10X6R10X6_2PLANE_444_UNORM_3PACK16:
  2329. return "VK_FORMAT_G10X6_B10X6R10X6_2PLANE_444_UNORM_3PACK16";
  2330. case VK_FORMAT_G10X6_B10X6_R10X6_3PLANE_420_UNORM_3PACK16:
  2331. return "VK_FORMAT_G10X6_B10X6_R10X6_3PLANE_420_UNORM_3PACK16";
  2332. case VK_FORMAT_G10X6_B10X6_R10X6_3PLANE_422_UNORM_3PACK16:
  2333. return "VK_FORMAT_G10X6_B10X6_R10X6_3PLANE_422_UNORM_3PACK16";
  2334. case VK_FORMAT_G10X6_B10X6_R10X6_3PLANE_444_UNORM_3PACK16:
  2335. return "VK_FORMAT_G10X6_B10X6_R10X6_3PLANE_444_UNORM_3PACK16";
  2336. case VK_FORMAT_G12X4B12X4G12X4R12X4_422_UNORM_4PACK16:
  2337. return "VK_FORMAT_G12X4B12X4G12X4R12X4_422_UNORM_4PACK16";
  2338. case VK_FORMAT_G12X4_B12X4R12X4_2PLANE_420_UNORM_3PACK16:
  2339. return "VK_FORMAT_G12X4_B12X4R12X4_2PLANE_420_UNORM_3PACK16";
  2340. case VK_FORMAT_G12X4_B12X4R12X4_2PLANE_422_UNORM_3PACK16:
  2341. return "VK_FORMAT_G12X4_B12X4R12X4_2PLANE_422_UNORM_3PACK16";
  2342. case VK_FORMAT_G12X4_B12X4R12X4_2PLANE_444_UNORM_3PACK16:
  2343. return "VK_FORMAT_G12X4_B12X4R12X4_2PLANE_444_UNORM_3PACK16";
  2344. case VK_FORMAT_G12X4_B12X4_R12X4_3PLANE_420_UNORM_3PACK16:
  2345. return "VK_FORMAT_G12X4_B12X4_R12X4_3PLANE_420_UNORM_3PACK16";
  2346. case VK_FORMAT_G12X4_B12X4_R12X4_3PLANE_422_UNORM_3PACK16:
  2347. return "VK_FORMAT_G12X4_B12X4_R12X4_3PLANE_422_UNORM_3PACK16";
  2348. case VK_FORMAT_G12X4_B12X4_R12X4_3PLANE_444_UNORM_3PACK16:
  2349. return "VK_FORMAT_G12X4_B12X4_R12X4_3PLANE_444_UNORM_3PACK16";
  2350. case VK_FORMAT_G16B16G16R16_422_UNORM:
  2351. return "VK_FORMAT_G16B16G16R16_422_UNORM";
  2352. case VK_FORMAT_G16_B16R16_2PLANE_420_UNORM:
  2353. return "VK_FORMAT_G16_B16R16_2PLANE_420_UNORM";
  2354. case VK_FORMAT_G16_B16R16_2PLANE_422_UNORM:
  2355. return "VK_FORMAT_G16_B16R16_2PLANE_422_UNORM";
  2356. case VK_FORMAT_G16_B16R16_2PLANE_444_UNORM:
  2357. return "VK_FORMAT_G16_B16R16_2PLANE_444_UNORM";
  2358. case VK_FORMAT_G16_B16_R16_3PLANE_420_UNORM:
  2359. return "VK_FORMAT_G16_B16_R16_3PLANE_420_UNORM";
  2360. case VK_FORMAT_G16_B16_R16_3PLANE_422_UNORM:
  2361. return "VK_FORMAT_G16_B16_R16_3PLANE_422_UNORM";
  2362. case VK_FORMAT_G16_B16_R16_3PLANE_444_UNORM:
  2363. return "VK_FORMAT_G16_B16_R16_3PLANE_444_UNORM";
  2364. case VK_FORMAT_G8B8G8R8_422_UNORM:
  2365. return "VK_FORMAT_G8B8G8R8_422_UNORM";
  2366. case VK_FORMAT_G8_B8R8_2PLANE_420_UNORM:
  2367. return "VK_FORMAT_G8_B8R8_2PLANE_420_UNORM";
  2368. case VK_FORMAT_G8_B8R8_2PLANE_422_UNORM:
  2369. return "VK_FORMAT_G8_B8R8_2PLANE_422_UNORM";
  2370. case VK_FORMAT_G8_B8R8_2PLANE_444_UNORM:
  2371. return "VK_FORMAT_G8_B8R8_2PLANE_444_UNORM";
  2372. case VK_FORMAT_G8_B8_R8_3PLANE_420_UNORM:
  2373. return "VK_FORMAT_G8_B8_R8_3PLANE_420_UNORM";
  2374. case VK_FORMAT_G8_B8_R8_3PLANE_422_UNORM:
  2375. return "VK_FORMAT_G8_B8_R8_3PLANE_422_UNORM";
  2376. case VK_FORMAT_G8_B8_R8_3PLANE_444_UNORM:
  2377. return "VK_FORMAT_G8_B8_R8_3PLANE_444_UNORM";
  2378. case VK_FORMAT_PVRTC1_2BPP_SRGB_BLOCK_IMG:
  2379. return "VK_FORMAT_PVRTC1_2BPP_SRGB_BLOCK_IMG";
  2380. case VK_FORMAT_PVRTC1_2BPP_UNORM_BLOCK_IMG:
  2381. return "VK_FORMAT_PVRTC1_2BPP_UNORM_BLOCK_IMG";
  2382. case VK_FORMAT_PVRTC1_4BPP_SRGB_BLOCK_IMG:
  2383. return "VK_FORMAT_PVRTC1_4BPP_SRGB_BLOCK_IMG";
  2384. case VK_FORMAT_PVRTC1_4BPP_UNORM_BLOCK_IMG:
  2385. return "VK_FORMAT_PVRTC1_4BPP_UNORM_BLOCK_IMG";
  2386. case VK_FORMAT_PVRTC2_2BPP_SRGB_BLOCK_IMG:
  2387. return "VK_FORMAT_PVRTC2_2BPP_SRGB_BLOCK_IMG";
  2388. case VK_FORMAT_PVRTC2_2BPP_UNORM_BLOCK_IMG:
  2389. return "VK_FORMAT_PVRTC2_2BPP_UNORM_BLOCK_IMG";
  2390. case VK_FORMAT_PVRTC2_4BPP_SRGB_BLOCK_IMG:
  2391. return "VK_FORMAT_PVRTC2_4BPP_SRGB_BLOCK_IMG";
  2392. case VK_FORMAT_PVRTC2_4BPP_UNORM_BLOCK_IMG:
  2393. return "VK_FORMAT_PVRTC2_4BPP_UNORM_BLOCK_IMG";
  2394. case VK_FORMAT_R10X6G10X6B10X6A10X6_UNORM_4PACK16:
  2395. return "VK_FORMAT_R10X6G10X6B10X6A10X6_UNORM_4PACK16";
  2396. case VK_FORMAT_R10X6G10X6_UNORM_2PACK16:
  2397. return "VK_FORMAT_R10X6G10X6_UNORM_2PACK16";
  2398. case VK_FORMAT_R10X6_UNORM_PACK16:
  2399. return "VK_FORMAT_R10X6_UNORM_PACK16";
  2400. case VK_FORMAT_R12X4G12X4B12X4A12X4_UNORM_4PACK16:
  2401. return "VK_FORMAT_R12X4G12X4B12X4A12X4_UNORM_4PACK16";
  2402. case VK_FORMAT_R12X4G12X4_UNORM_2PACK16:
  2403. return "VK_FORMAT_R12X4G12X4_UNORM_2PACK16";
  2404. case VK_FORMAT_R12X4_UNORM_PACK16:
  2405. return "VK_FORMAT_R12X4_UNORM_PACK16";
  2406. case VK_FORMAT_R16G16B16A16_SFLOAT:
  2407. return "VK_FORMAT_R16G16B16A16_SFLOAT";
  2408. case VK_FORMAT_R16G16B16A16_SINT:
  2409. return "VK_FORMAT_R16G16B16A16_SINT";
  2410. case VK_FORMAT_R16G16B16A16_SNORM:
  2411. return "VK_FORMAT_R16G16B16A16_SNORM";
  2412. case VK_FORMAT_R16G16B16A16_SSCALED:
  2413. return "VK_FORMAT_R16G16B16A16_SSCALED";
  2414. case VK_FORMAT_R16G16B16A16_UINT:
  2415. return "VK_FORMAT_R16G16B16A16_UINT";
  2416. case VK_FORMAT_R16G16B16A16_UNORM:
  2417. return "VK_FORMAT_R16G16B16A16_UNORM";
  2418. case VK_FORMAT_R16G16B16A16_USCALED:
  2419. return "VK_FORMAT_R16G16B16A16_USCALED";
  2420. case VK_FORMAT_R16G16B16_SFLOAT:
  2421. return "VK_FORMAT_R16G16B16_SFLOAT";
  2422. case VK_FORMAT_R16G16B16_SINT:
  2423. return "VK_FORMAT_R16G16B16_SINT";
  2424. case VK_FORMAT_R16G16B16_SNORM:
  2425. return "VK_FORMAT_R16G16B16_SNORM";
  2426. case VK_FORMAT_R16G16B16_SSCALED:
  2427. return "VK_FORMAT_R16G16B16_SSCALED";
  2428. case VK_FORMAT_R16G16B16_UINT:
  2429. return "VK_FORMAT_R16G16B16_UINT";
  2430. case VK_FORMAT_R16G16B16_UNORM:
  2431. return "VK_FORMAT_R16G16B16_UNORM";
  2432. case VK_FORMAT_R16G16B16_USCALED:
  2433. return "VK_FORMAT_R16G16B16_USCALED";
  2434. case VK_FORMAT_R16G16_S10_5_NV:
  2435. return "VK_FORMAT_R16G16_S10_5_NV";
  2436. case VK_FORMAT_R16G16_SFLOAT:
  2437. return "VK_FORMAT_R16G16_SFLOAT";
  2438. case VK_FORMAT_R16G16_SINT:
  2439. return "VK_FORMAT_R16G16_SINT";
  2440. case VK_FORMAT_R16G16_SNORM:
  2441. return "VK_FORMAT_R16G16_SNORM";
  2442. case VK_FORMAT_R16G16_SSCALED:
  2443. return "VK_FORMAT_R16G16_SSCALED";
  2444. case VK_FORMAT_R16G16_UINT:
  2445. return "VK_FORMAT_R16G16_UINT";
  2446. case VK_FORMAT_R16G16_UNORM:
  2447. return "VK_FORMAT_R16G16_UNORM";
  2448. case VK_FORMAT_R16G16_USCALED:
  2449. return "VK_FORMAT_R16G16_USCALED";
  2450. case VK_FORMAT_R16_SFLOAT:
  2451. return "VK_FORMAT_R16_SFLOAT";
  2452. case VK_FORMAT_R16_SINT:
  2453. return "VK_FORMAT_R16_SINT";
  2454. case VK_FORMAT_R16_SNORM:
  2455. return "VK_FORMAT_R16_SNORM";
  2456. case VK_FORMAT_R16_SSCALED:
  2457. return "VK_FORMAT_R16_SSCALED";
  2458. case VK_FORMAT_R16_UINT:
  2459. return "VK_FORMAT_R16_UINT";
  2460. case VK_FORMAT_R16_UNORM:
  2461. return "VK_FORMAT_R16_UNORM";
  2462. case VK_FORMAT_R16_USCALED:
  2463. return "VK_FORMAT_R16_USCALED";
  2464. case VK_FORMAT_R32G32B32A32_SFLOAT:
  2465. return "VK_FORMAT_R32G32B32A32_SFLOAT";
  2466. case VK_FORMAT_R32G32B32A32_SINT:
  2467. return "VK_FORMAT_R32G32B32A32_SINT";
  2468. case VK_FORMAT_R32G32B32A32_UINT:
  2469. return "VK_FORMAT_R32G32B32A32_UINT";
  2470. case VK_FORMAT_R32G32B32_SFLOAT:
  2471. return "VK_FORMAT_R32G32B32_SFLOAT";
  2472. case VK_FORMAT_R32G32B32_SINT:
  2473. return "VK_FORMAT_R32G32B32_SINT";
  2474. case VK_FORMAT_R32G32B32_UINT:
  2475. return "VK_FORMAT_R32G32B32_UINT";
  2476. case VK_FORMAT_R32G32_SFLOAT:
  2477. return "VK_FORMAT_R32G32_SFLOAT";
  2478. case VK_FORMAT_R32G32_SINT:
  2479. return "VK_FORMAT_R32G32_SINT";
  2480. case VK_FORMAT_R32G32_UINT:
  2481. return "VK_FORMAT_R32G32_UINT";
  2482. case VK_FORMAT_R32_SFLOAT:
  2483. return "VK_FORMAT_R32_SFLOAT";
  2484. case VK_FORMAT_R32_SINT:
  2485. return "VK_FORMAT_R32_SINT";
  2486. case VK_FORMAT_R32_UINT:
  2487. return "VK_FORMAT_R32_UINT";
  2488. case VK_FORMAT_R4G4B4A4_UNORM_PACK16:
  2489. return "VK_FORMAT_R4G4B4A4_UNORM_PACK16";
  2490. case VK_FORMAT_R4G4_UNORM_PACK8:
  2491. return "VK_FORMAT_R4G4_UNORM_PACK8";
  2492. case VK_FORMAT_R5G5B5A1_UNORM_PACK16:
  2493. return "VK_FORMAT_R5G5B5A1_UNORM_PACK16";
  2494. case VK_FORMAT_R5G6B5_UNORM_PACK16:
  2495. return "VK_FORMAT_R5G6B5_UNORM_PACK16";
  2496. case VK_FORMAT_R64G64B64A64_SFLOAT:
  2497. return "VK_FORMAT_R64G64B64A64_SFLOAT";
  2498. case VK_FORMAT_R64G64B64A64_SINT:
  2499. return "VK_FORMAT_R64G64B64A64_SINT";
  2500. case VK_FORMAT_R64G64B64A64_UINT:
  2501. return "VK_FORMAT_R64G64B64A64_UINT";
  2502. case VK_FORMAT_R64G64B64_SFLOAT:
  2503. return "VK_FORMAT_R64G64B64_SFLOAT";
  2504. case VK_FORMAT_R64G64B64_SINT:
  2505. return "VK_FORMAT_R64G64B64_SINT";
  2506. case VK_FORMAT_R64G64B64_UINT:
  2507. return "VK_FORMAT_R64G64B64_UINT";
  2508. case VK_FORMAT_R64G64_SFLOAT:
  2509. return "VK_FORMAT_R64G64_SFLOAT";
  2510. case VK_FORMAT_R64G64_SINT:
  2511. return "VK_FORMAT_R64G64_SINT";
  2512. case VK_FORMAT_R64G64_UINT:
  2513. return "VK_FORMAT_R64G64_UINT";
  2514. case VK_FORMAT_R64_SFLOAT:
  2515. return "VK_FORMAT_R64_SFLOAT";
  2516. case VK_FORMAT_R64_SINT:
  2517. return "VK_FORMAT_R64_SINT";
  2518. case VK_FORMAT_R64_UINT:
  2519. return "VK_FORMAT_R64_UINT";
  2520. case VK_FORMAT_R8G8B8A8_SINT:
  2521. return "VK_FORMAT_R8G8B8A8_SINT";
  2522. case VK_FORMAT_R8G8B8A8_SNORM:
  2523. return "VK_FORMAT_R8G8B8A8_SNORM";
  2524. case VK_FORMAT_R8G8B8A8_SRGB:
  2525. return "VK_FORMAT_R8G8B8A8_SRGB";
  2526. case VK_FORMAT_R8G8B8A8_SSCALED:
  2527. return "VK_FORMAT_R8G8B8A8_SSCALED";
  2528. case VK_FORMAT_R8G8B8A8_UINT:
  2529. return "VK_FORMAT_R8G8B8A8_UINT";
  2530. case VK_FORMAT_R8G8B8A8_UNORM:
  2531. return "VK_FORMAT_R8G8B8A8_UNORM";
  2532. case VK_FORMAT_R8G8B8A8_USCALED:
  2533. return "VK_FORMAT_R8G8B8A8_USCALED";
  2534. case VK_FORMAT_R8G8B8_SINT:
  2535. return "VK_FORMAT_R8G8B8_SINT";
  2536. case VK_FORMAT_R8G8B8_SNORM:
  2537. return "VK_FORMAT_R8G8B8_SNORM";
  2538. case VK_FORMAT_R8G8B8_SRGB:
  2539. return "VK_FORMAT_R8G8B8_SRGB";
  2540. case VK_FORMAT_R8G8B8_SSCALED:
  2541. return "VK_FORMAT_R8G8B8_SSCALED";
  2542. case VK_FORMAT_R8G8B8_UINT:
  2543. return "VK_FORMAT_R8G8B8_UINT";
  2544. case VK_FORMAT_R8G8B8_UNORM:
  2545. return "VK_FORMAT_R8G8B8_UNORM";
  2546. case VK_FORMAT_R8G8B8_USCALED:
  2547. return "VK_FORMAT_R8G8B8_USCALED";
  2548. case VK_FORMAT_R8G8_SINT:
  2549. return "VK_FORMAT_R8G8_SINT";
  2550. case VK_FORMAT_R8G8_SNORM:
  2551. return "VK_FORMAT_R8G8_SNORM";
  2552. case VK_FORMAT_R8G8_SRGB:
  2553. return "VK_FORMAT_R8G8_SRGB";
  2554. case VK_FORMAT_R8G8_SSCALED:
  2555. return "VK_FORMAT_R8G8_SSCALED";
  2556. case VK_FORMAT_R8G8_UINT:
  2557. return "VK_FORMAT_R8G8_UINT";
  2558. case VK_FORMAT_R8G8_UNORM:
  2559. return "VK_FORMAT_R8G8_UNORM";
  2560. case VK_FORMAT_R8G8_USCALED:
  2561. return "VK_FORMAT_R8G8_USCALED";
  2562. case VK_FORMAT_R8_SINT:
  2563. return "VK_FORMAT_R8_SINT";
  2564. case VK_FORMAT_R8_SNORM:
  2565. return "VK_FORMAT_R8_SNORM";
  2566. case VK_FORMAT_R8_SRGB:
  2567. return "VK_FORMAT_R8_SRGB";
  2568. case VK_FORMAT_R8_SSCALED:
  2569. return "VK_FORMAT_R8_SSCALED";
  2570. case VK_FORMAT_R8_UINT:
  2571. return "VK_FORMAT_R8_UINT";
  2572. case VK_FORMAT_R8_UNORM:
  2573. return "VK_FORMAT_R8_UNORM";
  2574. case VK_FORMAT_R8_USCALED:
  2575. return "VK_FORMAT_R8_USCALED";
  2576. case VK_FORMAT_S8_UINT:
  2577. return "VK_FORMAT_S8_UINT";
  2578. case VK_FORMAT_UNDEFINED:
  2579. return "VK_FORMAT_UNDEFINED";
  2580. case VK_FORMAT_X8_D24_UNORM_PACK32:
  2581. return "VK_FORMAT_X8_D24_UNORM_PACK32";
  2582. default:
  2583. return "Unhandled VkFormat";
  2584. }
  2585. }
  2586. static inline const char* string_VkFormatFeatureFlagBits(VkFormatFeatureFlagBits input_value)
  2587. {
  2588. switch (input_value)
  2589. {
  2590. case VK_FORMAT_FEATURE_ACCELERATION_STRUCTURE_VERTEX_BUFFER_BIT_KHR:
  2591. return "VK_FORMAT_FEATURE_ACCELERATION_STRUCTURE_VERTEX_BUFFER_BIT_KHR";
  2592. case VK_FORMAT_FEATURE_BLIT_DST_BIT:
  2593. return "VK_FORMAT_FEATURE_BLIT_DST_BIT";
  2594. case VK_FORMAT_FEATURE_BLIT_SRC_BIT:
  2595. return "VK_FORMAT_FEATURE_BLIT_SRC_BIT";
  2596. case VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BIT:
  2597. return "VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BIT";
  2598. case VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BLEND_BIT:
  2599. return "VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BLEND_BIT";
  2600. case VK_FORMAT_FEATURE_COSITED_CHROMA_SAMPLES_BIT:
  2601. return "VK_FORMAT_FEATURE_COSITED_CHROMA_SAMPLES_BIT";
  2602. case VK_FORMAT_FEATURE_DEPTH_STENCIL_ATTACHMENT_BIT:
  2603. return "VK_FORMAT_FEATURE_DEPTH_STENCIL_ATTACHMENT_BIT";
  2604. case VK_FORMAT_FEATURE_DISJOINT_BIT:
  2605. return "VK_FORMAT_FEATURE_DISJOINT_BIT";
  2606. case VK_FORMAT_FEATURE_FRAGMENT_DENSITY_MAP_BIT_EXT:
  2607. return "VK_FORMAT_FEATURE_FRAGMENT_DENSITY_MAP_BIT_EXT";
  2608. case VK_FORMAT_FEATURE_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHR:
  2609. return "VK_FORMAT_FEATURE_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHR";
  2610. case VK_FORMAT_FEATURE_MIDPOINT_CHROMA_SAMPLES_BIT:
  2611. return "VK_FORMAT_FEATURE_MIDPOINT_CHROMA_SAMPLES_BIT";
  2612. case VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT:
  2613. return "VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT";
  2614. case VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_CUBIC_BIT_EXT:
  2615. return "VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_CUBIC_BIT_EXT";
  2616. case VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT:
  2617. return "VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT";
  2618. case VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_MINMAX_BIT:
  2619. return "VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_MINMAX_BIT";
  2620. case VK_FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_BIT:
  2621. return "VK_FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_BIT";
  2622. case VK_FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_FORCEABLE_BIT:
  2623. return "VK_FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_FORCEABLE_BIT";
  2624. case VK_FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_LINEAR_FILTER_BIT:
  2625. return "VK_FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_LINEAR_FILTER_BIT";
  2626. case VK_FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_SEPARATE_RECONSTRUCTION_FILTER_BIT:
  2627. return "VK_FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_SEPARATE_RECONSTRUCTION_FILTER_BIT";
  2628. case VK_FORMAT_FEATURE_STORAGE_IMAGE_ATOMIC_BIT:
  2629. return "VK_FORMAT_FEATURE_STORAGE_IMAGE_ATOMIC_BIT";
  2630. case VK_FORMAT_FEATURE_STORAGE_IMAGE_BIT:
  2631. return "VK_FORMAT_FEATURE_STORAGE_IMAGE_BIT";
  2632. case VK_FORMAT_FEATURE_STORAGE_TEXEL_BUFFER_ATOMIC_BIT:
  2633. return "VK_FORMAT_FEATURE_STORAGE_TEXEL_BUFFER_ATOMIC_BIT";
  2634. case VK_FORMAT_FEATURE_STORAGE_TEXEL_BUFFER_BIT:
  2635. return "VK_FORMAT_FEATURE_STORAGE_TEXEL_BUFFER_BIT";
  2636. case VK_FORMAT_FEATURE_TRANSFER_DST_BIT:
  2637. return "VK_FORMAT_FEATURE_TRANSFER_DST_BIT";
  2638. case VK_FORMAT_FEATURE_TRANSFER_SRC_BIT:
  2639. return "VK_FORMAT_FEATURE_TRANSFER_SRC_BIT";
  2640. case VK_FORMAT_FEATURE_UNIFORM_TEXEL_BUFFER_BIT:
  2641. return "VK_FORMAT_FEATURE_UNIFORM_TEXEL_BUFFER_BIT";
  2642. case VK_FORMAT_FEATURE_VERTEX_BUFFER_BIT:
  2643. return "VK_FORMAT_FEATURE_VERTEX_BUFFER_BIT";
  2644. #ifdef VK_ENABLE_BETA_EXTENSIONS
  2645. case VK_FORMAT_FEATURE_VIDEO_DECODE_DPB_BIT_KHR:
  2646. return "VK_FORMAT_FEATURE_VIDEO_DECODE_DPB_BIT_KHR";
  2647. #endif // VK_ENABLE_BETA_EXTENSIONS
  2648. #ifdef VK_ENABLE_BETA_EXTENSIONS
  2649. case VK_FORMAT_FEATURE_VIDEO_DECODE_OUTPUT_BIT_KHR:
  2650. return "VK_FORMAT_FEATURE_VIDEO_DECODE_OUTPUT_BIT_KHR";
  2651. #endif // VK_ENABLE_BETA_EXTENSIONS
  2652. #ifdef VK_ENABLE_BETA_EXTENSIONS
  2653. case VK_FORMAT_FEATURE_VIDEO_ENCODE_DPB_BIT_KHR:
  2654. return "VK_FORMAT_FEATURE_VIDEO_ENCODE_DPB_BIT_KHR";
  2655. #endif // VK_ENABLE_BETA_EXTENSIONS
  2656. #ifdef VK_ENABLE_BETA_EXTENSIONS
  2657. case VK_FORMAT_FEATURE_VIDEO_ENCODE_INPUT_BIT_KHR:
  2658. return "VK_FORMAT_FEATURE_VIDEO_ENCODE_INPUT_BIT_KHR";
  2659. #endif // VK_ENABLE_BETA_EXTENSIONS
  2660. default:
  2661. return "Unhandled VkFormatFeatureFlagBits";
  2662. }
  2663. }
  2664. static inline std::string string_VkFormatFeatureFlags(VkFormatFeatureFlags input_value)
  2665. {
  2666. std::string ret;
  2667. int index = 0;
  2668. while(input_value) {
  2669. if (input_value & 1) {
  2670. if( !ret.empty()) ret.append("|");
  2671. ret.append(string_VkFormatFeatureFlagBits(static_cast<VkFormatFeatureFlagBits>(1U << index)));
  2672. }
  2673. ++index;
  2674. input_value >>= 1;
  2675. }
  2676. if( ret.empty()) ret.append(string_VkFormatFeatureFlagBits(static_cast<VkFormatFeatureFlagBits>(0)));
  2677. return ret;
  2678. }
  2679. static inline const char* string_VkImageCreateFlagBits(VkImageCreateFlagBits input_value)
  2680. {
  2681. switch (input_value)
  2682. {
  2683. case VK_IMAGE_CREATE_2D_ARRAY_COMPATIBLE_BIT:
  2684. return "VK_IMAGE_CREATE_2D_ARRAY_COMPATIBLE_BIT";
  2685. case VK_IMAGE_CREATE_2D_VIEW_COMPATIBLE_BIT_EXT:
  2686. return "VK_IMAGE_CREATE_2D_VIEW_COMPATIBLE_BIT_EXT";
  2687. case VK_IMAGE_CREATE_ALIAS_BIT:
  2688. return "VK_IMAGE_CREATE_ALIAS_BIT";
  2689. case VK_IMAGE_CREATE_BLOCK_TEXEL_VIEW_COMPATIBLE_BIT:
  2690. return "VK_IMAGE_CREATE_BLOCK_TEXEL_VIEW_COMPATIBLE_BIT";
  2691. case VK_IMAGE_CREATE_CORNER_SAMPLED_BIT_NV:
  2692. return "VK_IMAGE_CREATE_CORNER_SAMPLED_BIT_NV";
  2693. case VK_IMAGE_CREATE_CUBE_COMPATIBLE_BIT:
  2694. return "VK_IMAGE_CREATE_CUBE_COMPATIBLE_BIT";
  2695. case VK_IMAGE_CREATE_DISJOINT_BIT:
  2696. return "VK_IMAGE_CREATE_DISJOINT_BIT";
  2697. case VK_IMAGE_CREATE_EXTENDED_USAGE_BIT:
  2698. return "VK_IMAGE_CREATE_EXTENDED_USAGE_BIT";
  2699. case VK_IMAGE_CREATE_FRAGMENT_DENSITY_MAP_OFFSET_BIT_QCOM:
  2700. return "VK_IMAGE_CREATE_FRAGMENT_DENSITY_MAP_OFFSET_BIT_QCOM";
  2701. case VK_IMAGE_CREATE_MULTISAMPLED_RENDER_TO_SINGLE_SAMPLED_BIT_EXT:
  2702. return "VK_IMAGE_CREATE_MULTISAMPLED_RENDER_TO_SINGLE_SAMPLED_BIT_EXT";
  2703. case VK_IMAGE_CREATE_MUTABLE_FORMAT_BIT:
  2704. return "VK_IMAGE_CREATE_MUTABLE_FORMAT_BIT";
  2705. case VK_IMAGE_CREATE_PROTECTED_BIT:
  2706. return "VK_IMAGE_CREATE_PROTECTED_BIT";
  2707. case VK_IMAGE_CREATE_SAMPLE_LOCATIONS_COMPATIBLE_DEPTH_BIT_EXT:
  2708. return "VK_IMAGE_CREATE_SAMPLE_LOCATIONS_COMPATIBLE_DEPTH_BIT_EXT";
  2709. case VK_IMAGE_CREATE_SPARSE_ALIASED_BIT:
  2710. return "VK_IMAGE_CREATE_SPARSE_ALIASED_BIT";
  2711. case VK_IMAGE_CREATE_SPARSE_BINDING_BIT:
  2712. return "VK_IMAGE_CREATE_SPARSE_BINDING_BIT";
  2713. case VK_IMAGE_CREATE_SPARSE_RESIDENCY_BIT:
  2714. return "VK_IMAGE_CREATE_SPARSE_RESIDENCY_BIT";
  2715. case VK_IMAGE_CREATE_SPLIT_INSTANCE_BIND_REGIONS_BIT:
  2716. return "VK_IMAGE_CREATE_SPLIT_INSTANCE_BIND_REGIONS_BIT";
  2717. case VK_IMAGE_CREATE_SUBSAMPLED_BIT_EXT:
  2718. return "VK_IMAGE_CREATE_SUBSAMPLED_BIT_EXT";
  2719. default:
  2720. return "Unhandled VkImageCreateFlagBits";
  2721. }
  2722. }
  2723. static inline std::string string_VkImageCreateFlags(VkImageCreateFlags input_value)
  2724. {
  2725. std::string ret;
  2726. int index = 0;
  2727. while(input_value) {
  2728. if (input_value & 1) {
  2729. if( !ret.empty()) ret.append("|");
  2730. ret.append(string_VkImageCreateFlagBits(static_cast<VkImageCreateFlagBits>(1U << index)));
  2731. }
  2732. ++index;
  2733. input_value >>= 1;
  2734. }
  2735. if( ret.empty()) ret.append(string_VkImageCreateFlagBits(static_cast<VkImageCreateFlagBits>(0)));
  2736. return ret;
  2737. }
  2738. static inline const char* string_VkSampleCountFlagBits(VkSampleCountFlagBits input_value)
  2739. {
  2740. switch (input_value)
  2741. {
  2742. case VK_SAMPLE_COUNT_16_BIT:
  2743. return "VK_SAMPLE_COUNT_16_BIT";
  2744. case VK_SAMPLE_COUNT_1_BIT:
  2745. return "VK_SAMPLE_COUNT_1_BIT";
  2746. case VK_SAMPLE_COUNT_2_BIT:
  2747. return "VK_SAMPLE_COUNT_2_BIT";
  2748. case VK_SAMPLE_COUNT_32_BIT:
  2749. return "VK_SAMPLE_COUNT_32_BIT";
  2750. case VK_SAMPLE_COUNT_4_BIT:
  2751. return "VK_SAMPLE_COUNT_4_BIT";
  2752. case VK_SAMPLE_COUNT_64_BIT:
  2753. return "VK_SAMPLE_COUNT_64_BIT";
  2754. case VK_SAMPLE_COUNT_8_BIT:
  2755. return "VK_SAMPLE_COUNT_8_BIT";
  2756. default:
  2757. return "Unhandled VkSampleCountFlagBits";
  2758. }
  2759. }
  2760. static inline std::string string_VkSampleCountFlags(VkSampleCountFlags input_value)
  2761. {
  2762. std::string ret;
  2763. int index = 0;
  2764. while(input_value) {
  2765. if (input_value & 1) {
  2766. if( !ret.empty()) ret.append("|");
  2767. ret.append(string_VkSampleCountFlagBits(static_cast<VkSampleCountFlagBits>(1U << index)));
  2768. }
  2769. ++index;
  2770. input_value >>= 1;
  2771. }
  2772. if( ret.empty()) ret.append(string_VkSampleCountFlagBits(static_cast<VkSampleCountFlagBits>(0)));
  2773. return ret;
  2774. }
  2775. static inline const char* string_VkImageTiling(VkImageTiling input_value)
  2776. {
  2777. switch (input_value)
  2778. {
  2779. case VK_IMAGE_TILING_DRM_FORMAT_MODIFIER_EXT:
  2780. return "VK_IMAGE_TILING_DRM_FORMAT_MODIFIER_EXT";
  2781. case VK_IMAGE_TILING_LINEAR:
  2782. return "VK_IMAGE_TILING_LINEAR";
  2783. case VK_IMAGE_TILING_OPTIMAL:
  2784. return "VK_IMAGE_TILING_OPTIMAL";
  2785. default:
  2786. return "Unhandled VkImageTiling";
  2787. }
  2788. }
  2789. static inline const char* string_VkImageType(VkImageType input_value)
  2790. {
  2791. switch (input_value)
  2792. {
  2793. case VK_IMAGE_TYPE_1D:
  2794. return "VK_IMAGE_TYPE_1D";
  2795. case VK_IMAGE_TYPE_2D:
  2796. return "VK_IMAGE_TYPE_2D";
  2797. case VK_IMAGE_TYPE_3D:
  2798. return "VK_IMAGE_TYPE_3D";
  2799. default:
  2800. return "Unhandled VkImageType";
  2801. }
  2802. }
  2803. static inline const char* string_VkImageUsageFlagBits(VkImageUsageFlagBits input_value)
  2804. {
  2805. switch (input_value)
  2806. {
  2807. case VK_IMAGE_USAGE_ATTACHMENT_FEEDBACK_LOOP_BIT_EXT:
  2808. return "VK_IMAGE_USAGE_ATTACHMENT_FEEDBACK_LOOP_BIT_EXT";
  2809. case VK_IMAGE_USAGE_COLOR_ATTACHMENT_BIT:
  2810. return "VK_IMAGE_USAGE_COLOR_ATTACHMENT_BIT";
  2811. case VK_IMAGE_USAGE_DEPTH_STENCIL_ATTACHMENT_BIT:
  2812. return "VK_IMAGE_USAGE_DEPTH_STENCIL_ATTACHMENT_BIT";
  2813. case VK_IMAGE_USAGE_FRAGMENT_DENSITY_MAP_BIT_EXT:
  2814. return "VK_IMAGE_USAGE_FRAGMENT_DENSITY_MAP_BIT_EXT";
  2815. case VK_IMAGE_USAGE_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHR:
  2816. return "VK_IMAGE_USAGE_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHR";
  2817. case VK_IMAGE_USAGE_INPUT_ATTACHMENT_BIT:
  2818. return "VK_IMAGE_USAGE_INPUT_ATTACHMENT_BIT";
  2819. case VK_IMAGE_USAGE_INVOCATION_MASK_BIT_HUAWEI:
  2820. return "VK_IMAGE_USAGE_INVOCATION_MASK_BIT_HUAWEI";
  2821. case VK_IMAGE_USAGE_SAMPLED_BIT:
  2822. return "VK_IMAGE_USAGE_SAMPLED_BIT";
  2823. case VK_IMAGE_USAGE_SAMPLE_BLOCK_MATCH_BIT_QCOM:
  2824. return "VK_IMAGE_USAGE_SAMPLE_BLOCK_MATCH_BIT_QCOM";
  2825. case VK_IMAGE_USAGE_SAMPLE_WEIGHT_BIT_QCOM:
  2826. return "VK_IMAGE_USAGE_SAMPLE_WEIGHT_BIT_QCOM";
  2827. case VK_IMAGE_USAGE_STORAGE_BIT:
  2828. return "VK_IMAGE_USAGE_STORAGE_BIT";
  2829. case VK_IMAGE_USAGE_TRANSFER_DST_BIT:
  2830. return "VK_IMAGE_USAGE_TRANSFER_DST_BIT";
  2831. case VK_IMAGE_USAGE_TRANSFER_SRC_BIT:
  2832. return "VK_IMAGE_USAGE_TRANSFER_SRC_BIT";
  2833. case VK_IMAGE_USAGE_TRANSIENT_ATTACHMENT_BIT:
  2834. return "VK_IMAGE_USAGE_TRANSIENT_ATTACHMENT_BIT";
  2835. #ifdef VK_ENABLE_BETA_EXTENSIONS
  2836. case VK_IMAGE_USAGE_VIDEO_DECODE_DPB_BIT_KHR:
  2837. return "VK_IMAGE_USAGE_VIDEO_DECODE_DPB_BIT_KHR";
  2838. #endif // VK_ENABLE_BETA_EXTENSIONS
  2839. #ifdef VK_ENABLE_BETA_EXTENSIONS
  2840. case VK_IMAGE_USAGE_VIDEO_DECODE_DST_BIT_KHR:
  2841. return "VK_IMAGE_USAGE_VIDEO_DECODE_DST_BIT_KHR";
  2842. #endif // VK_ENABLE_BETA_EXTENSIONS
  2843. #ifdef VK_ENABLE_BETA_EXTENSIONS
  2844. case VK_IMAGE_USAGE_VIDEO_DECODE_SRC_BIT_KHR:
  2845. return "VK_IMAGE_USAGE_VIDEO_DECODE_SRC_BIT_KHR";
  2846. #endif // VK_ENABLE_BETA_EXTENSIONS
  2847. #ifdef VK_ENABLE_BETA_EXTENSIONS
  2848. case VK_IMAGE_USAGE_VIDEO_ENCODE_DPB_BIT_KHR:
  2849. return "VK_IMAGE_USAGE_VIDEO_ENCODE_DPB_BIT_KHR";
  2850. #endif // VK_ENABLE_BETA_EXTENSIONS
  2851. #ifdef VK_ENABLE_BETA_EXTENSIONS
  2852. case VK_IMAGE_USAGE_VIDEO_ENCODE_DST_BIT_KHR:
  2853. return "VK_IMAGE_USAGE_VIDEO_ENCODE_DST_BIT_KHR";
  2854. #endif // VK_ENABLE_BETA_EXTENSIONS
  2855. #ifdef VK_ENABLE_BETA_EXTENSIONS
  2856. case VK_IMAGE_USAGE_VIDEO_ENCODE_SRC_BIT_KHR:
  2857. return "VK_IMAGE_USAGE_VIDEO_ENCODE_SRC_BIT_KHR";
  2858. #endif // VK_ENABLE_BETA_EXTENSIONS
  2859. default:
  2860. return "Unhandled VkImageUsageFlagBits";
  2861. }
  2862. }
  2863. static inline std::string string_VkImageUsageFlags(VkImageUsageFlags input_value)
  2864. {
  2865. std::string ret;
  2866. int index = 0;
  2867. while(input_value) {
  2868. if (input_value & 1) {
  2869. if( !ret.empty()) ret.append("|");
  2870. ret.append(string_VkImageUsageFlagBits(static_cast<VkImageUsageFlagBits>(1U << index)));
  2871. }
  2872. ++index;
  2873. input_value >>= 1;
  2874. }
  2875. if( ret.empty()) ret.append(string_VkImageUsageFlagBits(static_cast<VkImageUsageFlagBits>(0)));
  2876. return ret;
  2877. }
  2878. static inline const char* string_VkInstanceCreateFlagBits(VkInstanceCreateFlagBits input_value)
  2879. {
  2880. switch (input_value)
  2881. {
  2882. case VK_INSTANCE_CREATE_ENUMERATE_PORTABILITY_BIT_KHR:
  2883. return "VK_INSTANCE_CREATE_ENUMERATE_PORTABILITY_BIT_KHR";
  2884. default:
  2885. return "Unhandled VkInstanceCreateFlagBits";
  2886. }
  2887. }
  2888. static inline std::string string_VkInstanceCreateFlags(VkInstanceCreateFlags input_value)
  2889. {
  2890. std::string ret;
  2891. int index = 0;
  2892. while(input_value) {
  2893. if (input_value & 1) {
  2894. if( !ret.empty()) ret.append("|");
  2895. ret.append(string_VkInstanceCreateFlagBits(static_cast<VkInstanceCreateFlagBits>(1U << index)));
  2896. }
  2897. ++index;
  2898. input_value >>= 1;
  2899. }
  2900. if( ret.empty()) ret.append(string_VkInstanceCreateFlagBits(static_cast<VkInstanceCreateFlagBits>(0)));
  2901. return ret;
  2902. }
  2903. static inline const char* string_VkMemoryHeapFlagBits(VkMemoryHeapFlagBits input_value)
  2904. {
  2905. switch (input_value)
  2906. {
  2907. case VK_MEMORY_HEAP_DEVICE_LOCAL_BIT:
  2908. return "VK_MEMORY_HEAP_DEVICE_LOCAL_BIT";
  2909. case VK_MEMORY_HEAP_MULTI_INSTANCE_BIT:
  2910. return "VK_MEMORY_HEAP_MULTI_INSTANCE_BIT";
  2911. default:
  2912. return "Unhandled VkMemoryHeapFlagBits";
  2913. }
  2914. }
  2915. static inline std::string string_VkMemoryHeapFlags(VkMemoryHeapFlags input_value)
  2916. {
  2917. std::string ret;
  2918. int index = 0;
  2919. while(input_value) {
  2920. if (input_value & 1) {
  2921. if( !ret.empty()) ret.append("|");
  2922. ret.append(string_VkMemoryHeapFlagBits(static_cast<VkMemoryHeapFlagBits>(1U << index)));
  2923. }
  2924. ++index;
  2925. input_value >>= 1;
  2926. }
  2927. if( ret.empty()) ret.append(string_VkMemoryHeapFlagBits(static_cast<VkMemoryHeapFlagBits>(0)));
  2928. return ret;
  2929. }
  2930. static inline const char* string_VkMemoryPropertyFlagBits(VkMemoryPropertyFlagBits input_value)
  2931. {
  2932. switch (input_value)
  2933. {
  2934. case VK_MEMORY_PROPERTY_DEVICE_COHERENT_BIT_AMD:
  2935. return "VK_MEMORY_PROPERTY_DEVICE_COHERENT_BIT_AMD";
  2936. case VK_MEMORY_PROPERTY_DEVICE_LOCAL_BIT:
  2937. return "VK_MEMORY_PROPERTY_DEVICE_LOCAL_BIT";
  2938. case VK_MEMORY_PROPERTY_DEVICE_UNCACHED_BIT_AMD:
  2939. return "VK_MEMORY_PROPERTY_DEVICE_UNCACHED_BIT_AMD";
  2940. case VK_MEMORY_PROPERTY_HOST_CACHED_BIT:
  2941. return "VK_MEMORY_PROPERTY_HOST_CACHED_BIT";
  2942. case VK_MEMORY_PROPERTY_HOST_COHERENT_BIT:
  2943. return "VK_MEMORY_PROPERTY_HOST_COHERENT_BIT";
  2944. case VK_MEMORY_PROPERTY_HOST_VISIBLE_BIT:
  2945. return "VK_MEMORY_PROPERTY_HOST_VISIBLE_BIT";
  2946. case VK_MEMORY_PROPERTY_LAZILY_ALLOCATED_BIT:
  2947. return "VK_MEMORY_PROPERTY_LAZILY_ALLOCATED_BIT";
  2948. case VK_MEMORY_PROPERTY_PROTECTED_BIT:
  2949. return "VK_MEMORY_PROPERTY_PROTECTED_BIT";
  2950. case VK_MEMORY_PROPERTY_RDMA_CAPABLE_BIT_NV:
  2951. return "VK_MEMORY_PROPERTY_RDMA_CAPABLE_BIT_NV";
  2952. default:
  2953. return "Unhandled VkMemoryPropertyFlagBits";
  2954. }
  2955. }
  2956. static inline std::string string_VkMemoryPropertyFlags(VkMemoryPropertyFlags input_value)
  2957. {
  2958. std::string ret;
  2959. int index = 0;
  2960. while(input_value) {
  2961. if (input_value & 1) {
  2962. if( !ret.empty()) ret.append("|");
  2963. ret.append(string_VkMemoryPropertyFlagBits(static_cast<VkMemoryPropertyFlagBits>(1U << index)));
  2964. }
  2965. ++index;
  2966. input_value >>= 1;
  2967. }
  2968. if( ret.empty()) ret.append(string_VkMemoryPropertyFlagBits(static_cast<VkMemoryPropertyFlagBits>(0)));
  2969. return ret;
  2970. }
  2971. static inline const char* string_VkPhysicalDeviceType(VkPhysicalDeviceType input_value)
  2972. {
  2973. switch (input_value)
  2974. {
  2975. case VK_PHYSICAL_DEVICE_TYPE_CPU:
  2976. return "VK_PHYSICAL_DEVICE_TYPE_CPU";
  2977. case VK_PHYSICAL_DEVICE_TYPE_DISCRETE_GPU:
  2978. return "VK_PHYSICAL_DEVICE_TYPE_DISCRETE_GPU";
  2979. case VK_PHYSICAL_DEVICE_TYPE_INTEGRATED_GPU:
  2980. return "VK_PHYSICAL_DEVICE_TYPE_INTEGRATED_GPU";
  2981. case VK_PHYSICAL_DEVICE_TYPE_OTHER:
  2982. return "VK_PHYSICAL_DEVICE_TYPE_OTHER";
  2983. case VK_PHYSICAL_DEVICE_TYPE_VIRTUAL_GPU:
  2984. return "VK_PHYSICAL_DEVICE_TYPE_VIRTUAL_GPU";
  2985. default:
  2986. return "Unhandled VkPhysicalDeviceType";
  2987. }
  2988. }
  2989. static inline const char* string_VkQueueFlagBits(VkQueueFlagBits input_value)
  2990. {
  2991. switch (input_value)
  2992. {
  2993. case VK_QUEUE_COMPUTE_BIT:
  2994. return "VK_QUEUE_COMPUTE_BIT";
  2995. case VK_QUEUE_GRAPHICS_BIT:
  2996. return "VK_QUEUE_GRAPHICS_BIT";
  2997. case VK_QUEUE_OPTICAL_FLOW_BIT_NV:
  2998. return "VK_QUEUE_OPTICAL_FLOW_BIT_NV";
  2999. case VK_QUEUE_PROTECTED_BIT:
  3000. return "VK_QUEUE_PROTECTED_BIT";
  3001. case VK_QUEUE_SPARSE_BINDING_BIT:
  3002. return "VK_QUEUE_SPARSE_BINDING_BIT";
  3003. case VK_QUEUE_TRANSFER_BIT:
  3004. return "VK_QUEUE_TRANSFER_BIT";
  3005. #ifdef VK_ENABLE_BETA_EXTENSIONS
  3006. case VK_QUEUE_VIDEO_DECODE_BIT_KHR:
  3007. return "VK_QUEUE_VIDEO_DECODE_BIT_KHR";
  3008. #endif // VK_ENABLE_BETA_EXTENSIONS
  3009. #ifdef VK_ENABLE_BETA_EXTENSIONS
  3010. case VK_QUEUE_VIDEO_ENCODE_BIT_KHR:
  3011. return "VK_QUEUE_VIDEO_ENCODE_BIT_KHR";
  3012. #endif // VK_ENABLE_BETA_EXTENSIONS
  3013. default:
  3014. return "Unhandled VkQueueFlagBits";
  3015. }
  3016. }
  3017. static inline std::string string_VkQueueFlags(VkQueueFlags input_value)
  3018. {
  3019. std::string ret;
  3020. int index = 0;
  3021. while(input_value) {
  3022. if (input_value & 1) {
  3023. if( !ret.empty()) ret.append("|");
  3024. ret.append(string_VkQueueFlagBits(static_cast<VkQueueFlagBits>(1U << index)));
  3025. }
  3026. ++index;
  3027. input_value >>= 1;
  3028. }
  3029. if( ret.empty()) ret.append(string_VkQueueFlagBits(static_cast<VkQueueFlagBits>(0)));
  3030. return ret;
  3031. }
  3032. static inline const char* string_VkDeviceQueueCreateFlagBits(VkDeviceQueueCreateFlagBits input_value)
  3033. {
  3034. switch (input_value)
  3035. {
  3036. case VK_DEVICE_QUEUE_CREATE_PROTECTED_BIT:
  3037. return "VK_DEVICE_QUEUE_CREATE_PROTECTED_BIT";
  3038. default:
  3039. return "Unhandled VkDeviceQueueCreateFlagBits";
  3040. }
  3041. }
  3042. static inline std::string string_VkDeviceQueueCreateFlags(VkDeviceQueueCreateFlags input_value)
  3043. {
  3044. std::string ret;
  3045. int index = 0;
  3046. while(input_value) {
  3047. if (input_value & 1) {
  3048. if( !ret.empty()) ret.append("|");
  3049. ret.append(string_VkDeviceQueueCreateFlagBits(static_cast<VkDeviceQueueCreateFlagBits>(1U << index)));
  3050. }
  3051. ++index;
  3052. input_value >>= 1;
  3053. }
  3054. if( ret.empty()) ret.append(string_VkDeviceQueueCreateFlagBits(static_cast<VkDeviceQueueCreateFlagBits>(0)));
  3055. return ret;
  3056. }
  3057. static inline const char* string_VkPipelineStageFlagBits(VkPipelineStageFlagBits input_value)
  3058. {
  3059. switch (input_value)
  3060. {
  3061. case VK_PIPELINE_STAGE_ACCELERATION_STRUCTURE_BUILD_BIT_KHR:
  3062. return "VK_PIPELINE_STAGE_ACCELERATION_STRUCTURE_BUILD_BIT_KHR";
  3063. case VK_PIPELINE_STAGE_ALL_COMMANDS_BIT:
  3064. return "VK_PIPELINE_STAGE_ALL_COMMANDS_BIT";
  3065. case VK_PIPELINE_STAGE_ALL_GRAPHICS_BIT:
  3066. return "VK_PIPELINE_STAGE_ALL_GRAPHICS_BIT";
  3067. case VK_PIPELINE_STAGE_BOTTOM_OF_PIPE_BIT:
  3068. return "VK_PIPELINE_STAGE_BOTTOM_OF_PIPE_BIT";
  3069. case VK_PIPELINE_STAGE_COLOR_ATTACHMENT_OUTPUT_BIT:
  3070. return "VK_PIPELINE_STAGE_COLOR_ATTACHMENT_OUTPUT_BIT";
  3071. case VK_PIPELINE_STAGE_COMMAND_PREPROCESS_BIT_NV:
  3072. return "VK_PIPELINE_STAGE_COMMAND_PREPROCESS_BIT_NV";
  3073. case VK_PIPELINE_STAGE_COMPUTE_SHADER_BIT:
  3074. return "VK_PIPELINE_STAGE_COMPUTE_SHADER_BIT";
  3075. case VK_PIPELINE_STAGE_CONDITIONAL_RENDERING_BIT_EXT:
  3076. return "VK_PIPELINE_STAGE_CONDITIONAL_RENDERING_BIT_EXT";
  3077. case VK_PIPELINE_STAGE_DRAW_INDIRECT_BIT:
  3078. return "VK_PIPELINE_STAGE_DRAW_INDIRECT_BIT";
  3079. case VK_PIPELINE_STAGE_EARLY_FRAGMENT_TESTS_BIT:
  3080. return "VK_PIPELINE_STAGE_EARLY_FRAGMENT_TESTS_BIT";
  3081. case VK_PIPELINE_STAGE_FRAGMENT_DENSITY_PROCESS_BIT_EXT:
  3082. return "VK_PIPELINE_STAGE_FRAGMENT_DENSITY_PROCESS_BIT_EXT";
  3083. case VK_PIPELINE_STAGE_FRAGMENT_SHADER_BIT:
  3084. return "VK_PIPELINE_STAGE_FRAGMENT_SHADER_BIT";
  3085. case VK_PIPELINE_STAGE_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHR:
  3086. return "VK_PIPELINE_STAGE_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHR";
  3087. case VK_PIPELINE_STAGE_GEOMETRY_SHADER_BIT:
  3088. return "VK_PIPELINE_STAGE_GEOMETRY_SHADER_BIT";
  3089. case VK_PIPELINE_STAGE_HOST_BIT:
  3090. return "VK_PIPELINE_STAGE_HOST_BIT";
  3091. case VK_PIPELINE_STAGE_LATE_FRAGMENT_TESTS_BIT:
  3092. return "VK_PIPELINE_STAGE_LATE_FRAGMENT_TESTS_BIT";
  3093. case VK_PIPELINE_STAGE_MESH_SHADER_BIT_EXT:
  3094. return "VK_PIPELINE_STAGE_MESH_SHADER_BIT_EXT";
  3095. case VK_PIPELINE_STAGE_NONE:
  3096. return "VK_PIPELINE_STAGE_NONE";
  3097. case VK_PIPELINE_STAGE_RAY_TRACING_SHADER_BIT_KHR:
  3098. return "VK_PIPELINE_STAGE_RAY_TRACING_SHADER_BIT_KHR";
  3099. case VK_PIPELINE_STAGE_TASK_SHADER_BIT_EXT:
  3100. return "VK_PIPELINE_STAGE_TASK_SHADER_BIT_EXT";
  3101. case VK_PIPELINE_STAGE_TESSELLATION_CONTROL_SHADER_BIT:
  3102. return "VK_PIPELINE_STAGE_TESSELLATION_CONTROL_SHADER_BIT";
  3103. case VK_PIPELINE_STAGE_TESSELLATION_EVALUATION_SHADER_BIT:
  3104. return "VK_PIPELINE_STAGE_TESSELLATION_EVALUATION_SHADER_BIT";
  3105. case VK_PIPELINE_STAGE_TOP_OF_PIPE_BIT:
  3106. return "VK_PIPELINE_STAGE_TOP_OF_PIPE_BIT";
  3107. case VK_PIPELINE_STAGE_TRANSFER_BIT:
  3108. return "VK_PIPELINE_STAGE_TRANSFER_BIT";
  3109. case VK_PIPELINE_STAGE_TRANSFORM_FEEDBACK_BIT_EXT:
  3110. return "VK_PIPELINE_STAGE_TRANSFORM_FEEDBACK_BIT_EXT";
  3111. case VK_PIPELINE_STAGE_VERTEX_INPUT_BIT:
  3112. return "VK_PIPELINE_STAGE_VERTEX_INPUT_BIT";
  3113. case VK_PIPELINE_STAGE_VERTEX_SHADER_BIT:
  3114. return "VK_PIPELINE_STAGE_VERTEX_SHADER_BIT";
  3115. default:
  3116. return "Unhandled VkPipelineStageFlagBits";
  3117. }
  3118. }
  3119. static inline std::string string_VkPipelineStageFlags(VkPipelineStageFlags input_value)
  3120. {
  3121. std::string ret;
  3122. int index = 0;
  3123. while(input_value) {
  3124. if (input_value & 1) {
  3125. if( !ret.empty()) ret.append("|");
  3126. ret.append(string_VkPipelineStageFlagBits(static_cast<VkPipelineStageFlagBits>(1U << index)));
  3127. }
  3128. ++index;
  3129. input_value >>= 1;
  3130. }
  3131. if( ret.empty()) ret.append(string_VkPipelineStageFlagBits(static_cast<VkPipelineStageFlagBits>(0)));
  3132. return ret;
  3133. }
  3134. static inline const char* string_VkSparseMemoryBindFlagBits(VkSparseMemoryBindFlagBits input_value)
  3135. {
  3136. switch (input_value)
  3137. {
  3138. case VK_SPARSE_MEMORY_BIND_METADATA_BIT:
  3139. return "VK_SPARSE_MEMORY_BIND_METADATA_BIT";
  3140. default:
  3141. return "Unhandled VkSparseMemoryBindFlagBits";
  3142. }
  3143. }
  3144. static inline std::string string_VkSparseMemoryBindFlags(VkSparseMemoryBindFlags input_value)
  3145. {
  3146. std::string ret;
  3147. int index = 0;
  3148. while(input_value) {
  3149. if (input_value & 1) {
  3150. if( !ret.empty()) ret.append("|");
  3151. ret.append(string_VkSparseMemoryBindFlagBits(static_cast<VkSparseMemoryBindFlagBits>(1U << index)));
  3152. }
  3153. ++index;
  3154. input_value >>= 1;
  3155. }
  3156. if( ret.empty()) ret.append(string_VkSparseMemoryBindFlagBits(static_cast<VkSparseMemoryBindFlagBits>(0)));
  3157. return ret;
  3158. }
  3159. static inline const char* string_VkSparseImageFormatFlagBits(VkSparseImageFormatFlagBits input_value)
  3160. {
  3161. switch (input_value)
  3162. {
  3163. case VK_SPARSE_IMAGE_FORMAT_ALIGNED_MIP_SIZE_BIT:
  3164. return "VK_SPARSE_IMAGE_FORMAT_ALIGNED_MIP_SIZE_BIT";
  3165. case VK_SPARSE_IMAGE_FORMAT_NONSTANDARD_BLOCK_SIZE_BIT:
  3166. return "VK_SPARSE_IMAGE_FORMAT_NONSTANDARD_BLOCK_SIZE_BIT";
  3167. case VK_SPARSE_IMAGE_FORMAT_SINGLE_MIPTAIL_BIT:
  3168. return "VK_SPARSE_IMAGE_FORMAT_SINGLE_MIPTAIL_BIT";
  3169. default:
  3170. return "Unhandled VkSparseImageFormatFlagBits";
  3171. }
  3172. }
  3173. static inline std::string string_VkSparseImageFormatFlags(VkSparseImageFormatFlags input_value)
  3174. {
  3175. std::string ret;
  3176. int index = 0;
  3177. while(input_value) {
  3178. if (input_value & 1) {
  3179. if( !ret.empty()) ret.append("|");
  3180. ret.append(string_VkSparseImageFormatFlagBits(static_cast<VkSparseImageFormatFlagBits>(1U << index)));
  3181. }
  3182. ++index;
  3183. input_value >>= 1;
  3184. }
  3185. if( ret.empty()) ret.append(string_VkSparseImageFormatFlagBits(static_cast<VkSparseImageFormatFlagBits>(0)));
  3186. return ret;
  3187. }
  3188. static inline const char* string_VkFenceCreateFlagBits(VkFenceCreateFlagBits input_value)
  3189. {
  3190. switch (input_value)
  3191. {
  3192. case VK_FENCE_CREATE_SIGNALED_BIT:
  3193. return "VK_FENCE_CREATE_SIGNALED_BIT";
  3194. default:
  3195. return "Unhandled VkFenceCreateFlagBits";
  3196. }
  3197. }
  3198. static inline std::string string_VkFenceCreateFlags(VkFenceCreateFlags input_value)
  3199. {
  3200. std::string ret;
  3201. int index = 0;
  3202. while(input_value) {
  3203. if (input_value & 1) {
  3204. if( !ret.empty()) ret.append("|");
  3205. ret.append(string_VkFenceCreateFlagBits(static_cast<VkFenceCreateFlagBits>(1U << index)));
  3206. }
  3207. ++index;
  3208. input_value >>= 1;
  3209. }
  3210. if( ret.empty()) ret.append(string_VkFenceCreateFlagBits(static_cast<VkFenceCreateFlagBits>(0)));
  3211. return ret;
  3212. }
  3213. static inline const char* string_VkEventCreateFlagBits(VkEventCreateFlagBits input_value)
  3214. {
  3215. switch (input_value)
  3216. {
  3217. case VK_EVENT_CREATE_DEVICE_ONLY_BIT:
  3218. return "VK_EVENT_CREATE_DEVICE_ONLY_BIT";
  3219. default:
  3220. return "Unhandled VkEventCreateFlagBits";
  3221. }
  3222. }
  3223. static inline std::string string_VkEventCreateFlags(VkEventCreateFlags input_value)
  3224. {
  3225. std::string ret;
  3226. int index = 0;
  3227. while(input_value) {
  3228. if (input_value & 1) {
  3229. if( !ret.empty()) ret.append("|");
  3230. ret.append(string_VkEventCreateFlagBits(static_cast<VkEventCreateFlagBits>(1U << index)));
  3231. }
  3232. ++index;
  3233. input_value >>= 1;
  3234. }
  3235. if( ret.empty()) ret.append(string_VkEventCreateFlagBits(static_cast<VkEventCreateFlagBits>(0)));
  3236. return ret;
  3237. }
  3238. static inline const char* string_VkQueryPipelineStatisticFlagBits(VkQueryPipelineStatisticFlagBits input_value)
  3239. {
  3240. switch (input_value)
  3241. {
  3242. case VK_QUERY_PIPELINE_STATISTIC_CLIPPING_INVOCATIONS_BIT:
  3243. return "VK_QUERY_PIPELINE_STATISTIC_CLIPPING_INVOCATIONS_BIT";
  3244. case VK_QUERY_PIPELINE_STATISTIC_CLIPPING_PRIMITIVES_BIT:
  3245. return "VK_QUERY_PIPELINE_STATISTIC_CLIPPING_PRIMITIVES_BIT";
  3246. case VK_QUERY_PIPELINE_STATISTIC_COMPUTE_SHADER_INVOCATIONS_BIT:
  3247. return "VK_QUERY_PIPELINE_STATISTIC_COMPUTE_SHADER_INVOCATIONS_BIT";
  3248. case VK_QUERY_PIPELINE_STATISTIC_FRAGMENT_SHADER_INVOCATIONS_BIT:
  3249. return "VK_QUERY_PIPELINE_STATISTIC_FRAGMENT_SHADER_INVOCATIONS_BIT";
  3250. case VK_QUERY_PIPELINE_STATISTIC_GEOMETRY_SHADER_INVOCATIONS_BIT:
  3251. return "VK_QUERY_PIPELINE_STATISTIC_GEOMETRY_SHADER_INVOCATIONS_BIT";
  3252. case VK_QUERY_PIPELINE_STATISTIC_GEOMETRY_SHADER_PRIMITIVES_BIT:
  3253. return "VK_QUERY_PIPELINE_STATISTIC_GEOMETRY_SHADER_PRIMITIVES_BIT";
  3254. case VK_QUERY_PIPELINE_STATISTIC_INPUT_ASSEMBLY_PRIMITIVES_BIT:
  3255. return "VK_QUERY_PIPELINE_STATISTIC_INPUT_ASSEMBLY_PRIMITIVES_BIT";
  3256. case VK_QUERY_PIPELINE_STATISTIC_INPUT_ASSEMBLY_VERTICES_BIT:
  3257. return "VK_QUERY_PIPELINE_STATISTIC_INPUT_ASSEMBLY_VERTICES_BIT";
  3258. case VK_QUERY_PIPELINE_STATISTIC_MESH_SHADER_INVOCATIONS_BIT_EXT:
  3259. return "VK_QUERY_PIPELINE_STATISTIC_MESH_SHADER_INVOCATIONS_BIT_EXT";
  3260. case VK_QUERY_PIPELINE_STATISTIC_TASK_SHADER_INVOCATIONS_BIT_EXT:
  3261. return "VK_QUERY_PIPELINE_STATISTIC_TASK_SHADER_INVOCATIONS_BIT_EXT";
  3262. case VK_QUERY_PIPELINE_STATISTIC_TESSELLATION_CONTROL_SHADER_PATCHES_BIT:
  3263. return "VK_QUERY_PIPELINE_STATISTIC_TESSELLATION_CONTROL_SHADER_PATCHES_BIT";
  3264. case VK_QUERY_PIPELINE_STATISTIC_TESSELLATION_EVALUATION_SHADER_INVOCATIONS_BIT:
  3265. return "VK_QUERY_PIPELINE_STATISTIC_TESSELLATION_EVALUATION_SHADER_INVOCATIONS_BIT";
  3266. case VK_QUERY_PIPELINE_STATISTIC_VERTEX_SHADER_INVOCATIONS_BIT:
  3267. return "VK_QUERY_PIPELINE_STATISTIC_VERTEX_SHADER_INVOCATIONS_BIT";
  3268. default:
  3269. return "Unhandled VkQueryPipelineStatisticFlagBits";
  3270. }
  3271. }
  3272. static inline std::string string_VkQueryPipelineStatisticFlags(VkQueryPipelineStatisticFlags input_value)
  3273. {
  3274. std::string ret;
  3275. int index = 0;
  3276. while(input_value) {
  3277. if (input_value & 1) {
  3278. if( !ret.empty()) ret.append("|");
  3279. ret.append(string_VkQueryPipelineStatisticFlagBits(static_cast<VkQueryPipelineStatisticFlagBits>(1U << index)));
  3280. }
  3281. ++index;
  3282. input_value >>= 1;
  3283. }
  3284. if( ret.empty()) ret.append(string_VkQueryPipelineStatisticFlagBits(static_cast<VkQueryPipelineStatisticFlagBits>(0)));
  3285. return ret;
  3286. }
  3287. static inline const char* string_VkQueryType(VkQueryType input_value)
  3288. {
  3289. switch (input_value)
  3290. {
  3291. case VK_QUERY_TYPE_ACCELERATION_STRUCTURE_COMPACTED_SIZE_KHR:
  3292. return "VK_QUERY_TYPE_ACCELERATION_STRUCTURE_COMPACTED_SIZE_KHR";
  3293. case VK_QUERY_TYPE_ACCELERATION_STRUCTURE_COMPACTED_SIZE_NV:
  3294. return "VK_QUERY_TYPE_ACCELERATION_STRUCTURE_COMPACTED_SIZE_NV";
  3295. case VK_QUERY_TYPE_ACCELERATION_STRUCTURE_SERIALIZATION_BOTTOM_LEVEL_POINTERS_KHR:
  3296. return "VK_QUERY_TYPE_ACCELERATION_STRUCTURE_SERIALIZATION_BOTTOM_LEVEL_POINTERS_KHR";
  3297. case VK_QUERY_TYPE_ACCELERATION_STRUCTURE_SERIALIZATION_SIZE_KHR:
  3298. return "VK_QUERY_TYPE_ACCELERATION_STRUCTURE_SERIALIZATION_SIZE_KHR";
  3299. case VK_QUERY_TYPE_ACCELERATION_STRUCTURE_SIZE_KHR:
  3300. return "VK_QUERY_TYPE_ACCELERATION_STRUCTURE_SIZE_KHR";
  3301. case VK_QUERY_TYPE_MESH_PRIMITIVES_GENERATED_EXT:
  3302. return "VK_QUERY_TYPE_MESH_PRIMITIVES_GENERATED_EXT";
  3303. case VK_QUERY_TYPE_MICROMAP_COMPACTED_SIZE_EXT:
  3304. return "VK_QUERY_TYPE_MICROMAP_COMPACTED_SIZE_EXT";
  3305. case VK_QUERY_TYPE_MICROMAP_SERIALIZATION_SIZE_EXT:
  3306. return "VK_QUERY_TYPE_MICROMAP_SERIALIZATION_SIZE_EXT";
  3307. case VK_QUERY_TYPE_OCCLUSION:
  3308. return "VK_QUERY_TYPE_OCCLUSION";
  3309. case VK_QUERY_TYPE_PERFORMANCE_QUERY_INTEL:
  3310. return "VK_QUERY_TYPE_PERFORMANCE_QUERY_INTEL";
  3311. case VK_QUERY_TYPE_PERFORMANCE_QUERY_KHR:
  3312. return "VK_QUERY_TYPE_PERFORMANCE_QUERY_KHR";
  3313. case VK_QUERY_TYPE_PIPELINE_STATISTICS:
  3314. return "VK_QUERY_TYPE_PIPELINE_STATISTICS";
  3315. case VK_QUERY_TYPE_PRIMITIVES_GENERATED_EXT:
  3316. return "VK_QUERY_TYPE_PRIMITIVES_GENERATED_EXT";
  3317. #ifdef VK_ENABLE_BETA_EXTENSIONS
  3318. case VK_QUERY_TYPE_RESULT_STATUS_ONLY_KHR:
  3319. return "VK_QUERY_TYPE_RESULT_STATUS_ONLY_KHR";
  3320. #endif // VK_ENABLE_BETA_EXTENSIONS
  3321. case VK_QUERY_TYPE_TIMESTAMP:
  3322. return "VK_QUERY_TYPE_TIMESTAMP";
  3323. case VK_QUERY_TYPE_TRANSFORM_FEEDBACK_STREAM_EXT:
  3324. return "VK_QUERY_TYPE_TRANSFORM_FEEDBACK_STREAM_EXT";
  3325. #ifdef VK_ENABLE_BETA_EXTENSIONS
  3326. case VK_QUERY_TYPE_VIDEO_ENCODE_BITSTREAM_BUFFER_RANGE_KHR:
  3327. return "VK_QUERY_TYPE_VIDEO_ENCODE_BITSTREAM_BUFFER_RANGE_KHR";
  3328. #endif // VK_ENABLE_BETA_EXTENSIONS
  3329. default:
  3330. return "Unhandled VkQueryType";
  3331. }
  3332. }
  3333. static inline const char* string_VkQueryResultFlagBits(VkQueryResultFlagBits input_value)
  3334. {
  3335. switch (input_value)
  3336. {
  3337. case VK_QUERY_RESULT_64_BIT:
  3338. return "VK_QUERY_RESULT_64_BIT";
  3339. case VK_QUERY_RESULT_PARTIAL_BIT:
  3340. return "VK_QUERY_RESULT_PARTIAL_BIT";
  3341. case VK_QUERY_RESULT_WAIT_BIT:
  3342. return "VK_QUERY_RESULT_WAIT_BIT";
  3343. case VK_QUERY_RESULT_WITH_AVAILABILITY_BIT:
  3344. return "VK_QUERY_RESULT_WITH_AVAILABILITY_BIT";
  3345. #ifdef VK_ENABLE_BETA_EXTENSIONS
  3346. case VK_QUERY_RESULT_WITH_STATUS_BIT_KHR:
  3347. return "VK_QUERY_RESULT_WITH_STATUS_BIT_KHR";
  3348. #endif // VK_ENABLE_BETA_EXTENSIONS
  3349. default:
  3350. return "Unhandled VkQueryResultFlagBits";
  3351. }
  3352. }
  3353. static inline std::string string_VkQueryResultFlags(VkQueryResultFlags input_value)
  3354. {
  3355. std::string ret;
  3356. int index = 0;
  3357. while(input_value) {
  3358. if (input_value & 1) {
  3359. if( !ret.empty()) ret.append("|");
  3360. ret.append(string_VkQueryResultFlagBits(static_cast<VkQueryResultFlagBits>(1U << index)));
  3361. }
  3362. ++index;
  3363. input_value >>= 1;
  3364. }
  3365. if( ret.empty()) ret.append(string_VkQueryResultFlagBits(static_cast<VkQueryResultFlagBits>(0)));
  3366. return ret;
  3367. }
  3368. static inline const char* string_VkBufferCreateFlagBits(VkBufferCreateFlagBits input_value)
  3369. {
  3370. switch (input_value)
  3371. {
  3372. case VK_BUFFER_CREATE_DEVICE_ADDRESS_CAPTURE_REPLAY_BIT:
  3373. return "VK_BUFFER_CREATE_DEVICE_ADDRESS_CAPTURE_REPLAY_BIT";
  3374. case VK_BUFFER_CREATE_PROTECTED_BIT:
  3375. return "VK_BUFFER_CREATE_PROTECTED_BIT";
  3376. case VK_BUFFER_CREATE_SPARSE_ALIASED_BIT:
  3377. return "VK_BUFFER_CREATE_SPARSE_ALIASED_BIT";
  3378. case VK_BUFFER_CREATE_SPARSE_BINDING_BIT:
  3379. return "VK_BUFFER_CREATE_SPARSE_BINDING_BIT";
  3380. case VK_BUFFER_CREATE_SPARSE_RESIDENCY_BIT:
  3381. return "VK_BUFFER_CREATE_SPARSE_RESIDENCY_BIT";
  3382. default:
  3383. return "Unhandled VkBufferCreateFlagBits";
  3384. }
  3385. }
  3386. static inline std::string string_VkBufferCreateFlags(VkBufferCreateFlags input_value)
  3387. {
  3388. std::string ret;
  3389. int index = 0;
  3390. while(input_value) {
  3391. if (input_value & 1) {
  3392. if( !ret.empty()) ret.append("|");
  3393. ret.append(string_VkBufferCreateFlagBits(static_cast<VkBufferCreateFlagBits>(1U << index)));
  3394. }
  3395. ++index;
  3396. input_value >>= 1;
  3397. }
  3398. if( ret.empty()) ret.append(string_VkBufferCreateFlagBits(static_cast<VkBufferCreateFlagBits>(0)));
  3399. return ret;
  3400. }
  3401. static inline const char* string_VkBufferUsageFlagBits(VkBufferUsageFlagBits input_value)
  3402. {
  3403. switch (input_value)
  3404. {
  3405. case VK_BUFFER_USAGE_ACCELERATION_STRUCTURE_BUILD_INPUT_READ_ONLY_BIT_KHR:
  3406. return "VK_BUFFER_USAGE_ACCELERATION_STRUCTURE_BUILD_INPUT_READ_ONLY_BIT_KHR";
  3407. case VK_BUFFER_USAGE_ACCELERATION_STRUCTURE_STORAGE_BIT_KHR:
  3408. return "VK_BUFFER_USAGE_ACCELERATION_STRUCTURE_STORAGE_BIT_KHR";
  3409. case VK_BUFFER_USAGE_CONDITIONAL_RENDERING_BIT_EXT:
  3410. return "VK_BUFFER_USAGE_CONDITIONAL_RENDERING_BIT_EXT";
  3411. case VK_BUFFER_USAGE_INDEX_BUFFER_BIT:
  3412. return "VK_BUFFER_USAGE_INDEX_BUFFER_BIT";
  3413. case VK_BUFFER_USAGE_INDIRECT_BUFFER_BIT:
  3414. return "VK_BUFFER_USAGE_INDIRECT_BUFFER_BIT";
  3415. case VK_BUFFER_USAGE_MICROMAP_BUILD_INPUT_READ_ONLY_BIT_EXT:
  3416. return "VK_BUFFER_USAGE_MICROMAP_BUILD_INPUT_READ_ONLY_BIT_EXT";
  3417. case VK_BUFFER_USAGE_MICROMAP_STORAGE_BIT_EXT:
  3418. return "VK_BUFFER_USAGE_MICROMAP_STORAGE_BIT_EXT";
  3419. case VK_BUFFER_USAGE_SHADER_BINDING_TABLE_BIT_KHR:
  3420. return "VK_BUFFER_USAGE_SHADER_BINDING_TABLE_BIT_KHR";
  3421. case VK_BUFFER_USAGE_SHADER_DEVICE_ADDRESS_BIT:
  3422. return "VK_BUFFER_USAGE_SHADER_DEVICE_ADDRESS_BIT";
  3423. case VK_BUFFER_USAGE_STORAGE_BUFFER_BIT:
  3424. return "VK_BUFFER_USAGE_STORAGE_BUFFER_BIT";
  3425. case VK_BUFFER_USAGE_STORAGE_TEXEL_BUFFER_BIT:
  3426. return "VK_BUFFER_USAGE_STORAGE_TEXEL_BUFFER_BIT";
  3427. case VK_BUFFER_USAGE_TRANSFER_DST_BIT:
  3428. return "VK_BUFFER_USAGE_TRANSFER_DST_BIT";
  3429. case VK_BUFFER_USAGE_TRANSFER_SRC_BIT:
  3430. return "VK_BUFFER_USAGE_TRANSFER_SRC_BIT";
  3431. case VK_BUFFER_USAGE_TRANSFORM_FEEDBACK_BUFFER_BIT_EXT:
  3432. return "VK_BUFFER_USAGE_TRANSFORM_FEEDBACK_BUFFER_BIT_EXT";
  3433. case VK_BUFFER_USAGE_TRANSFORM_FEEDBACK_COUNTER_BUFFER_BIT_EXT:
  3434. return "VK_BUFFER_USAGE_TRANSFORM_FEEDBACK_COUNTER_BUFFER_BIT_EXT";
  3435. case VK_BUFFER_USAGE_UNIFORM_BUFFER_BIT:
  3436. return "VK_BUFFER_USAGE_UNIFORM_BUFFER_BIT";
  3437. case VK_BUFFER_USAGE_UNIFORM_TEXEL_BUFFER_BIT:
  3438. return "VK_BUFFER_USAGE_UNIFORM_TEXEL_BUFFER_BIT";
  3439. case VK_BUFFER_USAGE_VERTEX_BUFFER_BIT:
  3440. return "VK_BUFFER_USAGE_VERTEX_BUFFER_BIT";
  3441. #ifdef VK_ENABLE_BETA_EXTENSIONS
  3442. case VK_BUFFER_USAGE_VIDEO_DECODE_DST_BIT_KHR:
  3443. return "VK_BUFFER_USAGE_VIDEO_DECODE_DST_BIT_KHR";
  3444. #endif // VK_ENABLE_BETA_EXTENSIONS
  3445. #ifdef VK_ENABLE_BETA_EXTENSIONS
  3446. case VK_BUFFER_USAGE_VIDEO_DECODE_SRC_BIT_KHR:
  3447. return "VK_BUFFER_USAGE_VIDEO_DECODE_SRC_BIT_KHR";
  3448. #endif // VK_ENABLE_BETA_EXTENSIONS
  3449. #ifdef VK_ENABLE_BETA_EXTENSIONS
  3450. case VK_BUFFER_USAGE_VIDEO_ENCODE_DST_BIT_KHR:
  3451. return "VK_BUFFER_USAGE_VIDEO_ENCODE_DST_BIT_KHR";
  3452. #endif // VK_ENABLE_BETA_EXTENSIONS
  3453. #ifdef VK_ENABLE_BETA_EXTENSIONS
  3454. case VK_BUFFER_USAGE_VIDEO_ENCODE_SRC_BIT_KHR:
  3455. return "VK_BUFFER_USAGE_VIDEO_ENCODE_SRC_BIT_KHR";
  3456. #endif // VK_ENABLE_BETA_EXTENSIONS
  3457. default:
  3458. return "Unhandled VkBufferUsageFlagBits";
  3459. }
  3460. }
  3461. static inline std::string string_VkBufferUsageFlags(VkBufferUsageFlags input_value)
  3462. {
  3463. std::string ret;
  3464. int index = 0;
  3465. while(input_value) {
  3466. if (input_value & 1) {
  3467. if( !ret.empty()) ret.append("|");
  3468. ret.append(string_VkBufferUsageFlagBits(static_cast<VkBufferUsageFlagBits>(1U << index)));
  3469. }
  3470. ++index;
  3471. input_value >>= 1;
  3472. }
  3473. if( ret.empty()) ret.append(string_VkBufferUsageFlagBits(static_cast<VkBufferUsageFlagBits>(0)));
  3474. return ret;
  3475. }
  3476. static inline const char* string_VkSharingMode(VkSharingMode input_value)
  3477. {
  3478. switch (input_value)
  3479. {
  3480. case VK_SHARING_MODE_CONCURRENT:
  3481. return "VK_SHARING_MODE_CONCURRENT";
  3482. case VK_SHARING_MODE_EXCLUSIVE:
  3483. return "VK_SHARING_MODE_EXCLUSIVE";
  3484. default:
  3485. return "Unhandled VkSharingMode";
  3486. }
  3487. }
  3488. static inline const char* string_VkComponentSwizzle(VkComponentSwizzle input_value)
  3489. {
  3490. switch (input_value)
  3491. {
  3492. case VK_COMPONENT_SWIZZLE_A:
  3493. return "VK_COMPONENT_SWIZZLE_A";
  3494. case VK_COMPONENT_SWIZZLE_B:
  3495. return "VK_COMPONENT_SWIZZLE_B";
  3496. case VK_COMPONENT_SWIZZLE_G:
  3497. return "VK_COMPONENT_SWIZZLE_G";
  3498. case VK_COMPONENT_SWIZZLE_IDENTITY:
  3499. return "VK_COMPONENT_SWIZZLE_IDENTITY";
  3500. case VK_COMPONENT_SWIZZLE_ONE:
  3501. return "VK_COMPONENT_SWIZZLE_ONE";
  3502. case VK_COMPONENT_SWIZZLE_R:
  3503. return "VK_COMPONENT_SWIZZLE_R";
  3504. case VK_COMPONENT_SWIZZLE_ZERO:
  3505. return "VK_COMPONENT_SWIZZLE_ZERO";
  3506. default:
  3507. return "Unhandled VkComponentSwizzle";
  3508. }
  3509. }
  3510. static inline const char* string_VkImageViewCreateFlagBits(VkImageViewCreateFlagBits input_value)
  3511. {
  3512. switch (input_value)
  3513. {
  3514. case VK_IMAGE_VIEW_CREATE_FRAGMENT_DENSITY_MAP_DEFERRED_BIT_EXT:
  3515. return "VK_IMAGE_VIEW_CREATE_FRAGMENT_DENSITY_MAP_DEFERRED_BIT_EXT";
  3516. case VK_IMAGE_VIEW_CREATE_FRAGMENT_DENSITY_MAP_DYNAMIC_BIT_EXT:
  3517. return "VK_IMAGE_VIEW_CREATE_FRAGMENT_DENSITY_MAP_DYNAMIC_BIT_EXT";
  3518. default:
  3519. return "Unhandled VkImageViewCreateFlagBits";
  3520. }
  3521. }
  3522. static inline std::string string_VkImageViewCreateFlags(VkImageViewCreateFlags input_value)
  3523. {
  3524. std::string ret;
  3525. int index = 0;
  3526. while(input_value) {
  3527. if (input_value & 1) {
  3528. if( !ret.empty()) ret.append("|");
  3529. ret.append(string_VkImageViewCreateFlagBits(static_cast<VkImageViewCreateFlagBits>(1U << index)));
  3530. }
  3531. ++index;
  3532. input_value >>= 1;
  3533. }
  3534. if( ret.empty()) ret.append(string_VkImageViewCreateFlagBits(static_cast<VkImageViewCreateFlagBits>(0)));
  3535. return ret;
  3536. }
  3537. static inline const char* string_VkImageViewType(VkImageViewType input_value)
  3538. {
  3539. switch (input_value)
  3540. {
  3541. case VK_IMAGE_VIEW_TYPE_1D:
  3542. return "VK_IMAGE_VIEW_TYPE_1D";
  3543. case VK_IMAGE_VIEW_TYPE_1D_ARRAY:
  3544. return "VK_IMAGE_VIEW_TYPE_1D_ARRAY";
  3545. case VK_IMAGE_VIEW_TYPE_2D:
  3546. return "VK_IMAGE_VIEW_TYPE_2D";
  3547. case VK_IMAGE_VIEW_TYPE_2D_ARRAY:
  3548. return "VK_IMAGE_VIEW_TYPE_2D_ARRAY";
  3549. case VK_IMAGE_VIEW_TYPE_3D:
  3550. return "VK_IMAGE_VIEW_TYPE_3D";
  3551. case VK_IMAGE_VIEW_TYPE_CUBE:
  3552. return "VK_IMAGE_VIEW_TYPE_CUBE";
  3553. case VK_IMAGE_VIEW_TYPE_CUBE_ARRAY:
  3554. return "VK_IMAGE_VIEW_TYPE_CUBE_ARRAY";
  3555. default:
  3556. return "Unhandled VkImageViewType";
  3557. }
  3558. }
  3559. static inline const char* string_VkPipelineCacheCreateFlagBits(VkPipelineCacheCreateFlagBits input_value)
  3560. {
  3561. switch (input_value)
  3562. {
  3563. case VK_PIPELINE_CACHE_CREATE_EXTERNALLY_SYNCHRONIZED_BIT:
  3564. return "VK_PIPELINE_CACHE_CREATE_EXTERNALLY_SYNCHRONIZED_BIT";
  3565. default:
  3566. return "Unhandled VkPipelineCacheCreateFlagBits";
  3567. }
  3568. }
  3569. static inline std::string string_VkPipelineCacheCreateFlags(VkPipelineCacheCreateFlags input_value)
  3570. {
  3571. std::string ret;
  3572. int index = 0;
  3573. while(input_value) {
  3574. if (input_value & 1) {
  3575. if( !ret.empty()) ret.append("|");
  3576. ret.append(string_VkPipelineCacheCreateFlagBits(static_cast<VkPipelineCacheCreateFlagBits>(1U << index)));
  3577. }
  3578. ++index;
  3579. input_value >>= 1;
  3580. }
  3581. if( ret.empty()) ret.append(string_VkPipelineCacheCreateFlagBits(static_cast<VkPipelineCacheCreateFlagBits>(0)));
  3582. return ret;
  3583. }
  3584. static inline const char* string_VkBlendFactor(VkBlendFactor input_value)
  3585. {
  3586. switch (input_value)
  3587. {
  3588. case VK_BLEND_FACTOR_CONSTANT_ALPHA:
  3589. return "VK_BLEND_FACTOR_CONSTANT_ALPHA";
  3590. case VK_BLEND_FACTOR_CONSTANT_COLOR:
  3591. return "VK_BLEND_FACTOR_CONSTANT_COLOR";
  3592. case VK_BLEND_FACTOR_DST_ALPHA:
  3593. return "VK_BLEND_FACTOR_DST_ALPHA";
  3594. case VK_BLEND_FACTOR_DST_COLOR:
  3595. return "VK_BLEND_FACTOR_DST_COLOR";
  3596. case VK_BLEND_FACTOR_ONE:
  3597. return "VK_BLEND_FACTOR_ONE";
  3598. case VK_BLEND_FACTOR_ONE_MINUS_CONSTANT_ALPHA:
  3599. return "VK_BLEND_FACTOR_ONE_MINUS_CONSTANT_ALPHA";
  3600. case VK_BLEND_FACTOR_ONE_MINUS_CONSTANT_COLOR:
  3601. return "VK_BLEND_FACTOR_ONE_MINUS_CONSTANT_COLOR";
  3602. case VK_BLEND_FACTOR_ONE_MINUS_DST_ALPHA:
  3603. return "VK_BLEND_FACTOR_ONE_MINUS_DST_ALPHA";
  3604. case VK_BLEND_FACTOR_ONE_MINUS_DST_COLOR:
  3605. return "VK_BLEND_FACTOR_ONE_MINUS_DST_COLOR";
  3606. case VK_BLEND_FACTOR_ONE_MINUS_SRC1_ALPHA:
  3607. return "VK_BLEND_FACTOR_ONE_MINUS_SRC1_ALPHA";
  3608. case VK_BLEND_FACTOR_ONE_MINUS_SRC1_COLOR:
  3609. return "VK_BLEND_FACTOR_ONE_MINUS_SRC1_COLOR";
  3610. case VK_BLEND_FACTOR_ONE_MINUS_SRC_ALPHA:
  3611. return "VK_BLEND_FACTOR_ONE_MINUS_SRC_ALPHA";
  3612. case VK_BLEND_FACTOR_ONE_MINUS_SRC_COLOR:
  3613. return "VK_BLEND_FACTOR_ONE_MINUS_SRC_COLOR";
  3614. case VK_BLEND_FACTOR_SRC1_ALPHA:
  3615. return "VK_BLEND_FACTOR_SRC1_ALPHA";
  3616. case VK_BLEND_FACTOR_SRC1_COLOR:
  3617. return "VK_BLEND_FACTOR_SRC1_COLOR";
  3618. case VK_BLEND_FACTOR_SRC_ALPHA:
  3619. return "VK_BLEND_FACTOR_SRC_ALPHA";
  3620. case VK_BLEND_FACTOR_SRC_ALPHA_SATURATE:
  3621. return "VK_BLEND_FACTOR_SRC_ALPHA_SATURATE";
  3622. case VK_BLEND_FACTOR_SRC_COLOR:
  3623. return "VK_BLEND_FACTOR_SRC_COLOR";
  3624. case VK_BLEND_FACTOR_ZERO:
  3625. return "VK_BLEND_FACTOR_ZERO";
  3626. default:
  3627. return "Unhandled VkBlendFactor";
  3628. }
  3629. }
  3630. static inline const char* string_VkBlendOp(VkBlendOp input_value)
  3631. {
  3632. switch (input_value)
  3633. {
  3634. case VK_BLEND_OP_ADD:
  3635. return "VK_BLEND_OP_ADD";
  3636. case VK_BLEND_OP_BLUE_EXT:
  3637. return "VK_BLEND_OP_BLUE_EXT";
  3638. case VK_BLEND_OP_COLORBURN_EXT:
  3639. return "VK_BLEND_OP_COLORBURN_EXT";
  3640. case VK_BLEND_OP_COLORDODGE_EXT:
  3641. return "VK_BLEND_OP_COLORDODGE_EXT";
  3642. case VK_BLEND_OP_CONTRAST_EXT:
  3643. return "VK_BLEND_OP_CONTRAST_EXT";
  3644. case VK_BLEND_OP_DARKEN_EXT:
  3645. return "VK_BLEND_OP_DARKEN_EXT";
  3646. case VK_BLEND_OP_DIFFERENCE_EXT:
  3647. return "VK_BLEND_OP_DIFFERENCE_EXT";
  3648. case VK_BLEND_OP_DST_ATOP_EXT:
  3649. return "VK_BLEND_OP_DST_ATOP_EXT";
  3650. case VK_BLEND_OP_DST_EXT:
  3651. return "VK_BLEND_OP_DST_EXT";
  3652. case VK_BLEND_OP_DST_IN_EXT:
  3653. return "VK_BLEND_OP_DST_IN_EXT";
  3654. case VK_BLEND_OP_DST_OUT_EXT:
  3655. return "VK_BLEND_OP_DST_OUT_EXT";
  3656. case VK_BLEND_OP_DST_OVER_EXT:
  3657. return "VK_BLEND_OP_DST_OVER_EXT";
  3658. case VK_BLEND_OP_EXCLUSION_EXT:
  3659. return "VK_BLEND_OP_EXCLUSION_EXT";
  3660. case VK_BLEND_OP_GREEN_EXT:
  3661. return "VK_BLEND_OP_GREEN_EXT";
  3662. case VK_BLEND_OP_HARDLIGHT_EXT:
  3663. return "VK_BLEND_OP_HARDLIGHT_EXT";
  3664. case VK_BLEND_OP_HARDMIX_EXT:
  3665. return "VK_BLEND_OP_HARDMIX_EXT";
  3666. case VK_BLEND_OP_HSL_COLOR_EXT:
  3667. return "VK_BLEND_OP_HSL_COLOR_EXT";
  3668. case VK_BLEND_OP_HSL_HUE_EXT:
  3669. return "VK_BLEND_OP_HSL_HUE_EXT";
  3670. case VK_BLEND_OP_HSL_LUMINOSITY_EXT:
  3671. return "VK_BLEND_OP_HSL_LUMINOSITY_EXT";
  3672. case VK_BLEND_OP_HSL_SATURATION_EXT:
  3673. return "VK_BLEND_OP_HSL_SATURATION_EXT";
  3674. case VK_BLEND_OP_INVERT_EXT:
  3675. return "VK_BLEND_OP_INVERT_EXT";
  3676. case VK_BLEND_OP_INVERT_OVG_EXT:
  3677. return "VK_BLEND_OP_INVERT_OVG_EXT";
  3678. case VK_BLEND_OP_INVERT_RGB_EXT:
  3679. return "VK_BLEND_OP_INVERT_RGB_EXT";
  3680. case VK_BLEND_OP_LIGHTEN_EXT:
  3681. return "VK_BLEND_OP_LIGHTEN_EXT";
  3682. case VK_BLEND_OP_LINEARBURN_EXT:
  3683. return "VK_BLEND_OP_LINEARBURN_EXT";
  3684. case VK_BLEND_OP_LINEARDODGE_EXT:
  3685. return "VK_BLEND_OP_LINEARDODGE_EXT";
  3686. case VK_BLEND_OP_LINEARLIGHT_EXT:
  3687. return "VK_BLEND_OP_LINEARLIGHT_EXT";
  3688. case VK_BLEND_OP_MAX:
  3689. return "VK_BLEND_OP_MAX";
  3690. case VK_BLEND_OP_MIN:
  3691. return "VK_BLEND_OP_MIN";
  3692. case VK_BLEND_OP_MINUS_CLAMPED_EXT:
  3693. return "VK_BLEND_OP_MINUS_CLAMPED_EXT";
  3694. case VK_BLEND_OP_MINUS_EXT:
  3695. return "VK_BLEND_OP_MINUS_EXT";
  3696. case VK_BLEND_OP_MULTIPLY_EXT:
  3697. return "VK_BLEND_OP_MULTIPLY_EXT";
  3698. case VK_BLEND_OP_OVERLAY_EXT:
  3699. return "VK_BLEND_OP_OVERLAY_EXT";
  3700. case VK_BLEND_OP_PINLIGHT_EXT:
  3701. return "VK_BLEND_OP_PINLIGHT_EXT";
  3702. case VK_BLEND_OP_PLUS_CLAMPED_ALPHA_EXT:
  3703. return "VK_BLEND_OP_PLUS_CLAMPED_ALPHA_EXT";
  3704. case VK_BLEND_OP_PLUS_CLAMPED_EXT:
  3705. return "VK_BLEND_OP_PLUS_CLAMPED_EXT";
  3706. case VK_BLEND_OP_PLUS_DARKER_EXT:
  3707. return "VK_BLEND_OP_PLUS_DARKER_EXT";
  3708. case VK_BLEND_OP_PLUS_EXT:
  3709. return "VK_BLEND_OP_PLUS_EXT";
  3710. case VK_BLEND_OP_RED_EXT:
  3711. return "VK_BLEND_OP_RED_EXT";
  3712. case VK_BLEND_OP_REVERSE_SUBTRACT:
  3713. return "VK_BLEND_OP_REVERSE_SUBTRACT";
  3714. case VK_BLEND_OP_SCREEN_EXT:
  3715. return "VK_BLEND_OP_SCREEN_EXT";
  3716. case VK_BLEND_OP_SOFTLIGHT_EXT:
  3717. return "VK_BLEND_OP_SOFTLIGHT_EXT";
  3718. case VK_BLEND_OP_SRC_ATOP_EXT:
  3719. return "VK_BLEND_OP_SRC_ATOP_EXT";
  3720. case VK_BLEND_OP_SRC_EXT:
  3721. return "VK_BLEND_OP_SRC_EXT";
  3722. case VK_BLEND_OP_SRC_IN_EXT:
  3723. return "VK_BLEND_OP_SRC_IN_EXT";
  3724. case VK_BLEND_OP_SRC_OUT_EXT:
  3725. return "VK_BLEND_OP_SRC_OUT_EXT";
  3726. case VK_BLEND_OP_SRC_OVER_EXT:
  3727. return "VK_BLEND_OP_SRC_OVER_EXT";
  3728. case VK_BLEND_OP_SUBTRACT:
  3729. return "VK_BLEND_OP_SUBTRACT";
  3730. case VK_BLEND_OP_VIVIDLIGHT_EXT:
  3731. return "VK_BLEND_OP_VIVIDLIGHT_EXT";
  3732. case VK_BLEND_OP_XOR_EXT:
  3733. return "VK_BLEND_OP_XOR_EXT";
  3734. case VK_BLEND_OP_ZERO_EXT:
  3735. return "VK_BLEND_OP_ZERO_EXT";
  3736. default:
  3737. return "Unhandled VkBlendOp";
  3738. }
  3739. }
  3740. static inline const char* string_VkColorComponentFlagBits(VkColorComponentFlagBits input_value)
  3741. {
  3742. switch (input_value)
  3743. {
  3744. case VK_COLOR_COMPONENT_A_BIT:
  3745. return "VK_COLOR_COMPONENT_A_BIT";
  3746. case VK_COLOR_COMPONENT_B_BIT:
  3747. return "VK_COLOR_COMPONENT_B_BIT";
  3748. case VK_COLOR_COMPONENT_G_BIT:
  3749. return "VK_COLOR_COMPONENT_G_BIT";
  3750. case VK_COLOR_COMPONENT_R_BIT:
  3751. return "VK_COLOR_COMPONENT_R_BIT";
  3752. default:
  3753. return "Unhandled VkColorComponentFlagBits";
  3754. }
  3755. }
  3756. static inline std::string string_VkColorComponentFlags(VkColorComponentFlags input_value)
  3757. {
  3758. std::string ret;
  3759. int index = 0;
  3760. while(input_value) {
  3761. if (input_value & 1) {
  3762. if( !ret.empty()) ret.append("|");
  3763. ret.append(string_VkColorComponentFlagBits(static_cast<VkColorComponentFlagBits>(1U << index)));
  3764. }
  3765. ++index;
  3766. input_value >>= 1;
  3767. }
  3768. if( ret.empty()) ret.append(string_VkColorComponentFlagBits(static_cast<VkColorComponentFlagBits>(0)));
  3769. return ret;
  3770. }
  3771. static inline const char* string_VkCompareOp(VkCompareOp input_value)
  3772. {
  3773. switch (input_value)
  3774. {
  3775. case VK_COMPARE_OP_ALWAYS:
  3776. return "VK_COMPARE_OP_ALWAYS";
  3777. case VK_COMPARE_OP_EQUAL:
  3778. return "VK_COMPARE_OP_EQUAL";
  3779. case VK_COMPARE_OP_GREATER:
  3780. return "VK_COMPARE_OP_GREATER";
  3781. case VK_COMPARE_OP_GREATER_OR_EQUAL:
  3782. return "VK_COMPARE_OP_GREATER_OR_EQUAL";
  3783. case VK_COMPARE_OP_LESS:
  3784. return "VK_COMPARE_OP_LESS";
  3785. case VK_COMPARE_OP_LESS_OR_EQUAL:
  3786. return "VK_COMPARE_OP_LESS_OR_EQUAL";
  3787. case VK_COMPARE_OP_NEVER:
  3788. return "VK_COMPARE_OP_NEVER";
  3789. case VK_COMPARE_OP_NOT_EQUAL:
  3790. return "VK_COMPARE_OP_NOT_EQUAL";
  3791. default:
  3792. return "Unhandled VkCompareOp";
  3793. }
  3794. }
  3795. static inline const char* string_VkPipelineCreateFlagBits(VkPipelineCreateFlagBits input_value)
  3796. {
  3797. switch (input_value)
  3798. {
  3799. case VK_PIPELINE_CREATE_ALLOW_DERIVATIVES_BIT:
  3800. return "VK_PIPELINE_CREATE_ALLOW_DERIVATIVES_BIT";
  3801. case VK_PIPELINE_CREATE_CAPTURE_INTERNAL_REPRESENTATIONS_BIT_KHR:
  3802. return "VK_PIPELINE_CREATE_CAPTURE_INTERNAL_REPRESENTATIONS_BIT_KHR";
  3803. case VK_PIPELINE_CREATE_CAPTURE_STATISTICS_BIT_KHR:
  3804. return "VK_PIPELINE_CREATE_CAPTURE_STATISTICS_BIT_KHR";
  3805. case VK_PIPELINE_CREATE_COLOR_ATTACHMENT_FEEDBACK_LOOP_BIT_EXT:
  3806. return "VK_PIPELINE_CREATE_COLOR_ATTACHMENT_FEEDBACK_LOOP_BIT_EXT";
  3807. case VK_PIPELINE_CREATE_DEFER_COMPILE_BIT_NV:
  3808. return "VK_PIPELINE_CREATE_DEFER_COMPILE_BIT_NV";
  3809. case VK_PIPELINE_CREATE_DEPTH_STENCIL_ATTACHMENT_FEEDBACK_LOOP_BIT_EXT:
  3810. return "VK_PIPELINE_CREATE_DEPTH_STENCIL_ATTACHMENT_FEEDBACK_LOOP_BIT_EXT";
  3811. case VK_PIPELINE_CREATE_DERIVATIVE_BIT:
  3812. return "VK_PIPELINE_CREATE_DERIVATIVE_BIT";
  3813. case VK_PIPELINE_CREATE_DISABLE_OPTIMIZATION_BIT:
  3814. return "VK_PIPELINE_CREATE_DISABLE_OPTIMIZATION_BIT";
  3815. case VK_PIPELINE_CREATE_DISPATCH_BASE_BIT:
  3816. return "VK_PIPELINE_CREATE_DISPATCH_BASE_BIT";
  3817. case VK_PIPELINE_CREATE_EARLY_RETURN_ON_FAILURE_BIT:
  3818. return "VK_PIPELINE_CREATE_EARLY_RETURN_ON_FAILURE_BIT";
  3819. case VK_PIPELINE_CREATE_FAIL_ON_PIPELINE_COMPILE_REQUIRED_BIT:
  3820. return "VK_PIPELINE_CREATE_FAIL_ON_PIPELINE_COMPILE_REQUIRED_BIT";
  3821. case VK_PIPELINE_CREATE_INDIRECT_BINDABLE_BIT_NV:
  3822. return "VK_PIPELINE_CREATE_INDIRECT_BINDABLE_BIT_NV";
  3823. case VK_PIPELINE_CREATE_LIBRARY_BIT_KHR:
  3824. return "VK_PIPELINE_CREATE_LIBRARY_BIT_KHR";
  3825. case VK_PIPELINE_CREATE_LINK_TIME_OPTIMIZATION_BIT_EXT:
  3826. return "VK_PIPELINE_CREATE_LINK_TIME_OPTIMIZATION_BIT_EXT";
  3827. case VK_PIPELINE_CREATE_NO_PROTECTED_ACCESS_BIT_EXT:
  3828. return "VK_PIPELINE_CREATE_NO_PROTECTED_ACCESS_BIT_EXT";
  3829. case VK_PIPELINE_CREATE_PROTECTED_ACCESS_ONLY_BIT_EXT:
  3830. return "VK_PIPELINE_CREATE_PROTECTED_ACCESS_ONLY_BIT_EXT";
  3831. case VK_PIPELINE_CREATE_RAY_TRACING_ALLOW_MOTION_BIT_NV:
  3832. return "VK_PIPELINE_CREATE_RAY_TRACING_ALLOW_MOTION_BIT_NV";
  3833. case VK_PIPELINE_CREATE_RAY_TRACING_NO_NULL_ANY_HIT_SHADERS_BIT_KHR:
  3834. return "VK_PIPELINE_CREATE_RAY_TRACING_NO_NULL_ANY_HIT_SHADERS_BIT_KHR";
  3835. case VK_PIPELINE_CREATE_RAY_TRACING_NO_NULL_CLOSEST_HIT_SHADERS_BIT_KHR:
  3836. return "VK_PIPELINE_CREATE_RAY_TRACING_NO_NULL_CLOSEST_HIT_SHADERS_BIT_KHR";
  3837. case VK_PIPELINE_CREATE_RAY_TRACING_NO_NULL_INTERSECTION_SHADERS_BIT_KHR:
  3838. return "VK_PIPELINE_CREATE_RAY_TRACING_NO_NULL_INTERSECTION_SHADERS_BIT_KHR";
  3839. case VK_PIPELINE_CREATE_RAY_TRACING_NO_NULL_MISS_SHADERS_BIT_KHR:
  3840. return "VK_PIPELINE_CREATE_RAY_TRACING_NO_NULL_MISS_SHADERS_BIT_KHR";
  3841. case VK_PIPELINE_CREATE_RAY_TRACING_OPACITY_MICROMAP_BIT_EXT:
  3842. return "VK_PIPELINE_CREATE_RAY_TRACING_OPACITY_MICROMAP_BIT_EXT";
  3843. case VK_PIPELINE_CREATE_RAY_TRACING_SHADER_GROUP_HANDLE_CAPTURE_REPLAY_BIT_KHR:
  3844. return "VK_PIPELINE_CREATE_RAY_TRACING_SHADER_GROUP_HANDLE_CAPTURE_REPLAY_BIT_KHR";
  3845. case VK_PIPELINE_CREATE_RAY_TRACING_SKIP_AABBS_BIT_KHR:
  3846. return "VK_PIPELINE_CREATE_RAY_TRACING_SKIP_AABBS_BIT_KHR";
  3847. case VK_PIPELINE_CREATE_RAY_TRACING_SKIP_TRIANGLES_BIT_KHR:
  3848. return "VK_PIPELINE_CREATE_RAY_TRACING_SKIP_TRIANGLES_BIT_KHR";
  3849. case VK_PIPELINE_CREATE_RENDERING_FRAGMENT_DENSITY_MAP_ATTACHMENT_BIT_EXT:
  3850. return "VK_PIPELINE_CREATE_RENDERING_FRAGMENT_DENSITY_MAP_ATTACHMENT_BIT_EXT";
  3851. case VK_PIPELINE_CREATE_RENDERING_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHR:
  3852. return "VK_PIPELINE_CREATE_RENDERING_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHR";
  3853. case VK_PIPELINE_CREATE_RETAIN_LINK_TIME_OPTIMIZATION_INFO_BIT_EXT:
  3854. return "VK_PIPELINE_CREATE_RETAIN_LINK_TIME_OPTIMIZATION_INFO_BIT_EXT";
  3855. case VK_PIPELINE_CREATE_VIEW_INDEX_FROM_DEVICE_INDEX_BIT:
  3856. return "VK_PIPELINE_CREATE_VIEW_INDEX_FROM_DEVICE_INDEX_BIT";
  3857. default:
  3858. return "Unhandled VkPipelineCreateFlagBits";
  3859. }
  3860. }
  3861. static inline std::string string_VkPipelineCreateFlags(VkPipelineCreateFlags input_value)
  3862. {
  3863. std::string ret;
  3864. int index = 0;
  3865. while(input_value) {
  3866. if (input_value & 1) {
  3867. if( !ret.empty()) ret.append("|");
  3868. ret.append(string_VkPipelineCreateFlagBits(static_cast<VkPipelineCreateFlagBits>(1U << index)));
  3869. }
  3870. ++index;
  3871. input_value >>= 1;
  3872. }
  3873. if( ret.empty()) ret.append(string_VkPipelineCreateFlagBits(static_cast<VkPipelineCreateFlagBits>(0)));
  3874. return ret;
  3875. }
  3876. static inline const char* string_VkPipelineShaderStageCreateFlagBits(VkPipelineShaderStageCreateFlagBits input_value)
  3877. {
  3878. switch (input_value)
  3879. {
  3880. case VK_PIPELINE_SHADER_STAGE_CREATE_ALLOW_VARYING_SUBGROUP_SIZE_BIT:
  3881. return "VK_PIPELINE_SHADER_STAGE_CREATE_ALLOW_VARYING_SUBGROUP_SIZE_BIT";
  3882. case VK_PIPELINE_SHADER_STAGE_CREATE_REQUIRE_FULL_SUBGROUPS_BIT:
  3883. return "VK_PIPELINE_SHADER_STAGE_CREATE_REQUIRE_FULL_SUBGROUPS_BIT";
  3884. default:
  3885. return "Unhandled VkPipelineShaderStageCreateFlagBits";
  3886. }
  3887. }
  3888. static inline std::string string_VkPipelineShaderStageCreateFlags(VkPipelineShaderStageCreateFlags input_value)
  3889. {
  3890. std::string ret;
  3891. int index = 0;
  3892. while(input_value) {
  3893. if (input_value & 1) {
  3894. if( !ret.empty()) ret.append("|");
  3895. ret.append(string_VkPipelineShaderStageCreateFlagBits(static_cast<VkPipelineShaderStageCreateFlagBits>(1U << index)));
  3896. }
  3897. ++index;
  3898. input_value >>= 1;
  3899. }
  3900. if( ret.empty()) ret.append(string_VkPipelineShaderStageCreateFlagBits(static_cast<VkPipelineShaderStageCreateFlagBits>(0)));
  3901. return ret;
  3902. }
  3903. static inline const char* string_VkShaderStageFlagBits(VkShaderStageFlagBits input_value)
  3904. {
  3905. switch (input_value)
  3906. {
  3907. case VK_SHADER_STAGE_ALL:
  3908. return "VK_SHADER_STAGE_ALL";
  3909. case VK_SHADER_STAGE_ALL_GRAPHICS:
  3910. return "VK_SHADER_STAGE_ALL_GRAPHICS";
  3911. case VK_SHADER_STAGE_ANY_HIT_BIT_KHR:
  3912. return "VK_SHADER_STAGE_ANY_HIT_BIT_KHR";
  3913. case VK_SHADER_STAGE_CALLABLE_BIT_KHR:
  3914. return "VK_SHADER_STAGE_CALLABLE_BIT_KHR";
  3915. case VK_SHADER_STAGE_CLOSEST_HIT_BIT_KHR:
  3916. return "VK_SHADER_STAGE_CLOSEST_HIT_BIT_KHR";
  3917. case VK_SHADER_STAGE_COMPUTE_BIT:
  3918. return "VK_SHADER_STAGE_COMPUTE_BIT";
  3919. case VK_SHADER_STAGE_FRAGMENT_BIT:
  3920. return "VK_SHADER_STAGE_FRAGMENT_BIT";
  3921. case VK_SHADER_STAGE_GEOMETRY_BIT:
  3922. return "VK_SHADER_STAGE_GEOMETRY_BIT";
  3923. case VK_SHADER_STAGE_INTERSECTION_BIT_KHR:
  3924. return "VK_SHADER_STAGE_INTERSECTION_BIT_KHR";
  3925. case VK_SHADER_STAGE_MESH_BIT_EXT:
  3926. return "VK_SHADER_STAGE_MESH_BIT_EXT";
  3927. case VK_SHADER_STAGE_MISS_BIT_KHR:
  3928. return "VK_SHADER_STAGE_MISS_BIT_KHR";
  3929. case VK_SHADER_STAGE_RAYGEN_BIT_KHR:
  3930. return "VK_SHADER_STAGE_RAYGEN_BIT_KHR";
  3931. case VK_SHADER_STAGE_SUBPASS_SHADING_BIT_HUAWEI:
  3932. return "VK_SHADER_STAGE_SUBPASS_SHADING_BIT_HUAWEI";
  3933. case VK_SHADER_STAGE_TASK_BIT_EXT:
  3934. return "VK_SHADER_STAGE_TASK_BIT_EXT";
  3935. case VK_SHADER_STAGE_TESSELLATION_CONTROL_BIT:
  3936. return "VK_SHADER_STAGE_TESSELLATION_CONTROL_BIT";
  3937. case VK_SHADER_STAGE_TESSELLATION_EVALUATION_BIT:
  3938. return "VK_SHADER_STAGE_TESSELLATION_EVALUATION_BIT";
  3939. case VK_SHADER_STAGE_VERTEX_BIT:
  3940. return "VK_SHADER_STAGE_VERTEX_BIT";
  3941. default:
  3942. return "Unhandled VkShaderStageFlagBits";
  3943. }
  3944. }
  3945. static inline std::string string_VkShaderStageFlags(VkShaderStageFlags input_value)
  3946. {
  3947. std::string ret;
  3948. int index = 0;
  3949. while(input_value) {
  3950. if (input_value & 1) {
  3951. if( !ret.empty()) ret.append("|");
  3952. ret.append(string_VkShaderStageFlagBits(static_cast<VkShaderStageFlagBits>(1U << index)));
  3953. }
  3954. ++index;
  3955. input_value >>= 1;
  3956. }
  3957. if( ret.empty()) ret.append(string_VkShaderStageFlagBits(static_cast<VkShaderStageFlagBits>(0)));
  3958. return ret;
  3959. }
  3960. static inline const char* string_VkCullModeFlagBits(VkCullModeFlagBits input_value)
  3961. {
  3962. switch (input_value)
  3963. {
  3964. case VK_CULL_MODE_BACK_BIT:
  3965. return "VK_CULL_MODE_BACK_BIT";
  3966. case VK_CULL_MODE_FRONT_AND_BACK:
  3967. return "VK_CULL_MODE_FRONT_AND_BACK";
  3968. case VK_CULL_MODE_FRONT_BIT:
  3969. return "VK_CULL_MODE_FRONT_BIT";
  3970. case VK_CULL_MODE_NONE:
  3971. return "VK_CULL_MODE_NONE";
  3972. default:
  3973. return "Unhandled VkCullModeFlagBits";
  3974. }
  3975. }
  3976. static inline std::string string_VkCullModeFlags(VkCullModeFlags input_value)
  3977. {
  3978. std::string ret;
  3979. int index = 0;
  3980. while(input_value) {
  3981. if (input_value & 1) {
  3982. if( !ret.empty()) ret.append("|");
  3983. ret.append(string_VkCullModeFlagBits(static_cast<VkCullModeFlagBits>(1U << index)));
  3984. }
  3985. ++index;
  3986. input_value >>= 1;
  3987. }
  3988. if( ret.empty()) ret.append(string_VkCullModeFlagBits(static_cast<VkCullModeFlagBits>(0)));
  3989. return ret;
  3990. }
  3991. static inline const char* string_VkDynamicState(VkDynamicState input_value)
  3992. {
  3993. switch (input_value)
  3994. {
  3995. case VK_DYNAMIC_STATE_ALPHA_TO_COVERAGE_ENABLE_EXT:
  3996. return "VK_DYNAMIC_STATE_ALPHA_TO_COVERAGE_ENABLE_EXT";
  3997. case VK_DYNAMIC_STATE_ALPHA_TO_ONE_ENABLE_EXT:
  3998. return "VK_DYNAMIC_STATE_ALPHA_TO_ONE_ENABLE_EXT";
  3999. case VK_DYNAMIC_STATE_BLEND_CONSTANTS:
  4000. return "VK_DYNAMIC_STATE_BLEND_CONSTANTS";
  4001. case VK_DYNAMIC_STATE_COLOR_BLEND_ADVANCED_EXT:
  4002. return "VK_DYNAMIC_STATE_COLOR_BLEND_ADVANCED_EXT";
  4003. case VK_DYNAMIC_STATE_COLOR_BLEND_ENABLE_EXT:
  4004. return "VK_DYNAMIC_STATE_COLOR_BLEND_ENABLE_EXT";
  4005. case VK_DYNAMIC_STATE_COLOR_BLEND_EQUATION_EXT:
  4006. return "VK_DYNAMIC_STATE_COLOR_BLEND_EQUATION_EXT";
  4007. case VK_DYNAMIC_STATE_COLOR_WRITE_ENABLE_EXT:
  4008. return "VK_DYNAMIC_STATE_COLOR_WRITE_ENABLE_EXT";
  4009. case VK_DYNAMIC_STATE_COLOR_WRITE_MASK_EXT:
  4010. return "VK_DYNAMIC_STATE_COLOR_WRITE_MASK_EXT";
  4011. case VK_DYNAMIC_STATE_CONSERVATIVE_RASTERIZATION_MODE_EXT:
  4012. return "VK_DYNAMIC_STATE_CONSERVATIVE_RASTERIZATION_MODE_EXT";
  4013. case VK_DYNAMIC_STATE_COVERAGE_MODULATION_MODE_NV:
  4014. return "VK_DYNAMIC_STATE_COVERAGE_MODULATION_MODE_NV";
  4015. case VK_DYNAMIC_STATE_COVERAGE_MODULATION_TABLE_ENABLE_NV:
  4016. return "VK_DYNAMIC_STATE_COVERAGE_MODULATION_TABLE_ENABLE_NV";
  4017. case VK_DYNAMIC_STATE_COVERAGE_MODULATION_TABLE_NV:
  4018. return "VK_DYNAMIC_STATE_COVERAGE_MODULATION_TABLE_NV";
  4019. case VK_DYNAMIC_STATE_COVERAGE_REDUCTION_MODE_NV:
  4020. return "VK_DYNAMIC_STATE_COVERAGE_REDUCTION_MODE_NV";
  4021. case VK_DYNAMIC_STATE_COVERAGE_TO_COLOR_ENABLE_NV:
  4022. return "VK_DYNAMIC_STATE_COVERAGE_TO_COLOR_ENABLE_NV";
  4023. case VK_DYNAMIC_STATE_COVERAGE_TO_COLOR_LOCATION_NV:
  4024. return "VK_DYNAMIC_STATE_COVERAGE_TO_COLOR_LOCATION_NV";
  4025. case VK_DYNAMIC_STATE_CULL_MODE:
  4026. return "VK_DYNAMIC_STATE_CULL_MODE";
  4027. case VK_DYNAMIC_STATE_DEPTH_BIAS:
  4028. return "VK_DYNAMIC_STATE_DEPTH_BIAS";
  4029. case VK_DYNAMIC_STATE_DEPTH_BIAS_ENABLE:
  4030. return "VK_DYNAMIC_STATE_DEPTH_BIAS_ENABLE";
  4031. case VK_DYNAMIC_STATE_DEPTH_BOUNDS:
  4032. return "VK_DYNAMIC_STATE_DEPTH_BOUNDS";
  4033. case VK_DYNAMIC_STATE_DEPTH_BOUNDS_TEST_ENABLE:
  4034. return "VK_DYNAMIC_STATE_DEPTH_BOUNDS_TEST_ENABLE";
  4035. case VK_DYNAMIC_STATE_DEPTH_CLAMP_ENABLE_EXT:
  4036. return "VK_DYNAMIC_STATE_DEPTH_CLAMP_ENABLE_EXT";
  4037. case VK_DYNAMIC_STATE_DEPTH_CLIP_ENABLE_EXT:
  4038. return "VK_DYNAMIC_STATE_DEPTH_CLIP_ENABLE_EXT";
  4039. case VK_DYNAMIC_STATE_DEPTH_CLIP_NEGATIVE_ONE_TO_ONE_EXT:
  4040. return "VK_DYNAMIC_STATE_DEPTH_CLIP_NEGATIVE_ONE_TO_ONE_EXT";
  4041. case VK_DYNAMIC_STATE_DEPTH_COMPARE_OP:
  4042. return "VK_DYNAMIC_STATE_DEPTH_COMPARE_OP";
  4043. case VK_DYNAMIC_STATE_DEPTH_TEST_ENABLE:
  4044. return "VK_DYNAMIC_STATE_DEPTH_TEST_ENABLE";
  4045. case VK_DYNAMIC_STATE_DEPTH_WRITE_ENABLE:
  4046. return "VK_DYNAMIC_STATE_DEPTH_WRITE_ENABLE";
  4047. case VK_DYNAMIC_STATE_DISCARD_RECTANGLE_EXT:
  4048. return "VK_DYNAMIC_STATE_DISCARD_RECTANGLE_EXT";
  4049. case VK_DYNAMIC_STATE_EXCLUSIVE_SCISSOR_NV:
  4050. return "VK_DYNAMIC_STATE_EXCLUSIVE_SCISSOR_NV";
  4051. case VK_DYNAMIC_STATE_EXTRA_PRIMITIVE_OVERESTIMATION_SIZE_EXT:
  4052. return "VK_DYNAMIC_STATE_EXTRA_PRIMITIVE_OVERESTIMATION_SIZE_EXT";
  4053. case VK_DYNAMIC_STATE_FRAGMENT_SHADING_RATE_KHR:
  4054. return "VK_DYNAMIC_STATE_FRAGMENT_SHADING_RATE_KHR";
  4055. case VK_DYNAMIC_STATE_FRONT_FACE:
  4056. return "VK_DYNAMIC_STATE_FRONT_FACE";
  4057. case VK_DYNAMIC_STATE_LINE_RASTERIZATION_MODE_EXT:
  4058. return "VK_DYNAMIC_STATE_LINE_RASTERIZATION_MODE_EXT";
  4059. case VK_DYNAMIC_STATE_LINE_STIPPLE_ENABLE_EXT:
  4060. return "VK_DYNAMIC_STATE_LINE_STIPPLE_ENABLE_EXT";
  4061. case VK_DYNAMIC_STATE_LINE_STIPPLE_EXT:
  4062. return "VK_DYNAMIC_STATE_LINE_STIPPLE_EXT";
  4063. case VK_DYNAMIC_STATE_LINE_WIDTH:
  4064. return "VK_DYNAMIC_STATE_LINE_WIDTH";
  4065. case VK_DYNAMIC_STATE_LOGIC_OP_ENABLE_EXT:
  4066. return "VK_DYNAMIC_STATE_LOGIC_OP_ENABLE_EXT";
  4067. case VK_DYNAMIC_STATE_LOGIC_OP_EXT:
  4068. return "VK_DYNAMIC_STATE_LOGIC_OP_EXT";
  4069. case VK_DYNAMIC_STATE_PATCH_CONTROL_POINTS_EXT:
  4070. return "VK_DYNAMIC_STATE_PATCH_CONTROL_POINTS_EXT";
  4071. case VK_DYNAMIC_STATE_POLYGON_MODE_EXT:
  4072. return "VK_DYNAMIC_STATE_POLYGON_MODE_EXT";
  4073. case VK_DYNAMIC_STATE_PRIMITIVE_RESTART_ENABLE:
  4074. return "VK_DYNAMIC_STATE_PRIMITIVE_RESTART_ENABLE";
  4075. case VK_DYNAMIC_STATE_PRIMITIVE_TOPOLOGY:
  4076. return "VK_DYNAMIC_STATE_PRIMITIVE_TOPOLOGY";
  4077. case VK_DYNAMIC_STATE_PROVOKING_VERTEX_MODE_EXT:
  4078. return "VK_DYNAMIC_STATE_PROVOKING_VERTEX_MODE_EXT";
  4079. case VK_DYNAMIC_STATE_RASTERIZATION_SAMPLES_EXT:
  4080. return "VK_DYNAMIC_STATE_RASTERIZATION_SAMPLES_EXT";
  4081. case VK_DYNAMIC_STATE_RASTERIZATION_STREAM_EXT:
  4082. return "VK_DYNAMIC_STATE_RASTERIZATION_STREAM_EXT";
  4083. case VK_DYNAMIC_STATE_RASTERIZER_DISCARD_ENABLE:
  4084. return "VK_DYNAMIC_STATE_RASTERIZER_DISCARD_ENABLE";
  4085. case VK_DYNAMIC_STATE_RAY_TRACING_PIPELINE_STACK_SIZE_KHR:
  4086. return "VK_DYNAMIC_STATE_RAY_TRACING_PIPELINE_STACK_SIZE_KHR";
  4087. case VK_DYNAMIC_STATE_REPRESENTATIVE_FRAGMENT_TEST_ENABLE_NV:
  4088. return "VK_DYNAMIC_STATE_REPRESENTATIVE_FRAGMENT_TEST_ENABLE_NV";
  4089. case VK_DYNAMIC_STATE_SAMPLE_LOCATIONS_ENABLE_EXT:
  4090. return "VK_DYNAMIC_STATE_SAMPLE_LOCATIONS_ENABLE_EXT";
  4091. case VK_DYNAMIC_STATE_SAMPLE_LOCATIONS_EXT:
  4092. return "VK_DYNAMIC_STATE_SAMPLE_LOCATIONS_EXT";
  4093. case VK_DYNAMIC_STATE_SAMPLE_MASK_EXT:
  4094. return "VK_DYNAMIC_STATE_SAMPLE_MASK_EXT";
  4095. case VK_DYNAMIC_STATE_SCISSOR:
  4096. return "VK_DYNAMIC_STATE_SCISSOR";
  4097. case VK_DYNAMIC_STATE_SCISSOR_WITH_COUNT:
  4098. return "VK_DYNAMIC_STATE_SCISSOR_WITH_COUNT";
  4099. case VK_DYNAMIC_STATE_SHADING_RATE_IMAGE_ENABLE_NV:
  4100. return "VK_DYNAMIC_STATE_SHADING_RATE_IMAGE_ENABLE_NV";
  4101. case VK_DYNAMIC_STATE_STENCIL_COMPARE_MASK:
  4102. return "VK_DYNAMIC_STATE_STENCIL_COMPARE_MASK";
  4103. case VK_DYNAMIC_STATE_STENCIL_OP:
  4104. return "VK_DYNAMIC_STATE_STENCIL_OP";
  4105. case VK_DYNAMIC_STATE_STENCIL_REFERENCE:
  4106. return "VK_DYNAMIC_STATE_STENCIL_REFERENCE";
  4107. case VK_DYNAMIC_STATE_STENCIL_TEST_ENABLE:
  4108. return "VK_DYNAMIC_STATE_STENCIL_TEST_ENABLE";
  4109. case VK_DYNAMIC_STATE_STENCIL_WRITE_MASK:
  4110. return "VK_DYNAMIC_STATE_STENCIL_WRITE_MASK";
  4111. case VK_DYNAMIC_STATE_TESSELLATION_DOMAIN_ORIGIN_EXT:
  4112. return "VK_DYNAMIC_STATE_TESSELLATION_DOMAIN_ORIGIN_EXT";
  4113. case VK_DYNAMIC_STATE_VERTEX_INPUT_BINDING_STRIDE:
  4114. return "VK_DYNAMIC_STATE_VERTEX_INPUT_BINDING_STRIDE";
  4115. case VK_DYNAMIC_STATE_VERTEX_INPUT_EXT:
  4116. return "VK_DYNAMIC_STATE_VERTEX_INPUT_EXT";
  4117. case VK_DYNAMIC_STATE_VIEWPORT:
  4118. return "VK_DYNAMIC_STATE_VIEWPORT";
  4119. case VK_DYNAMIC_STATE_VIEWPORT_COARSE_SAMPLE_ORDER_NV:
  4120. return "VK_DYNAMIC_STATE_VIEWPORT_COARSE_SAMPLE_ORDER_NV";
  4121. case VK_DYNAMIC_STATE_VIEWPORT_SHADING_RATE_PALETTE_NV:
  4122. return "VK_DYNAMIC_STATE_VIEWPORT_SHADING_RATE_PALETTE_NV";
  4123. case VK_DYNAMIC_STATE_VIEWPORT_SWIZZLE_NV:
  4124. return "VK_DYNAMIC_STATE_VIEWPORT_SWIZZLE_NV";
  4125. case VK_DYNAMIC_STATE_VIEWPORT_WITH_COUNT:
  4126. return "VK_DYNAMIC_STATE_VIEWPORT_WITH_COUNT";
  4127. case VK_DYNAMIC_STATE_VIEWPORT_W_SCALING_ENABLE_NV:
  4128. return "VK_DYNAMIC_STATE_VIEWPORT_W_SCALING_ENABLE_NV";
  4129. case VK_DYNAMIC_STATE_VIEWPORT_W_SCALING_NV:
  4130. return "VK_DYNAMIC_STATE_VIEWPORT_W_SCALING_NV";
  4131. default:
  4132. return "Unhandled VkDynamicState";
  4133. }
  4134. }
  4135. static inline const char* string_VkFrontFace(VkFrontFace input_value)
  4136. {
  4137. switch (input_value)
  4138. {
  4139. case VK_FRONT_FACE_CLOCKWISE:
  4140. return "VK_FRONT_FACE_CLOCKWISE";
  4141. case VK_FRONT_FACE_COUNTER_CLOCKWISE:
  4142. return "VK_FRONT_FACE_COUNTER_CLOCKWISE";
  4143. default:
  4144. return "Unhandled VkFrontFace";
  4145. }
  4146. }
  4147. static inline const char* string_VkVertexInputRate(VkVertexInputRate input_value)
  4148. {
  4149. switch (input_value)
  4150. {
  4151. case VK_VERTEX_INPUT_RATE_INSTANCE:
  4152. return "VK_VERTEX_INPUT_RATE_INSTANCE";
  4153. case VK_VERTEX_INPUT_RATE_VERTEX:
  4154. return "VK_VERTEX_INPUT_RATE_VERTEX";
  4155. default:
  4156. return "Unhandled VkVertexInputRate";
  4157. }
  4158. }
  4159. static inline const char* string_VkPrimitiveTopology(VkPrimitiveTopology input_value)
  4160. {
  4161. switch (input_value)
  4162. {
  4163. case VK_PRIMITIVE_TOPOLOGY_LINE_LIST:
  4164. return "VK_PRIMITIVE_TOPOLOGY_LINE_LIST";
  4165. case VK_PRIMITIVE_TOPOLOGY_LINE_LIST_WITH_ADJACENCY:
  4166. return "VK_PRIMITIVE_TOPOLOGY_LINE_LIST_WITH_ADJACENCY";
  4167. case VK_PRIMITIVE_TOPOLOGY_LINE_STRIP:
  4168. return "VK_PRIMITIVE_TOPOLOGY_LINE_STRIP";
  4169. case VK_PRIMITIVE_TOPOLOGY_LINE_STRIP_WITH_ADJACENCY:
  4170. return "VK_PRIMITIVE_TOPOLOGY_LINE_STRIP_WITH_ADJACENCY";
  4171. case VK_PRIMITIVE_TOPOLOGY_PATCH_LIST:
  4172. return "VK_PRIMITIVE_TOPOLOGY_PATCH_LIST";
  4173. case VK_PRIMITIVE_TOPOLOGY_POINT_LIST:
  4174. return "VK_PRIMITIVE_TOPOLOGY_POINT_LIST";
  4175. case VK_PRIMITIVE_TOPOLOGY_TRIANGLE_FAN:
  4176. return "VK_PRIMITIVE_TOPOLOGY_TRIANGLE_FAN";
  4177. case VK_PRIMITIVE_TOPOLOGY_TRIANGLE_LIST:
  4178. return "VK_PRIMITIVE_TOPOLOGY_TRIANGLE_LIST";
  4179. case VK_PRIMITIVE_TOPOLOGY_TRIANGLE_LIST_WITH_ADJACENCY:
  4180. return "VK_PRIMITIVE_TOPOLOGY_TRIANGLE_LIST_WITH_ADJACENCY";
  4181. case VK_PRIMITIVE_TOPOLOGY_TRIANGLE_STRIP:
  4182. return "VK_PRIMITIVE_TOPOLOGY_TRIANGLE_STRIP";
  4183. case VK_PRIMITIVE_TOPOLOGY_TRIANGLE_STRIP_WITH_ADJACENCY:
  4184. return "VK_PRIMITIVE_TOPOLOGY_TRIANGLE_STRIP_WITH_ADJACENCY";
  4185. default:
  4186. return "Unhandled VkPrimitiveTopology";
  4187. }
  4188. }
  4189. static inline const char* string_VkPolygonMode(VkPolygonMode input_value)
  4190. {
  4191. switch (input_value)
  4192. {
  4193. case VK_POLYGON_MODE_FILL:
  4194. return "VK_POLYGON_MODE_FILL";
  4195. case VK_POLYGON_MODE_FILL_RECTANGLE_NV:
  4196. return "VK_POLYGON_MODE_FILL_RECTANGLE_NV";
  4197. case VK_POLYGON_MODE_LINE:
  4198. return "VK_POLYGON_MODE_LINE";
  4199. case VK_POLYGON_MODE_POINT:
  4200. return "VK_POLYGON_MODE_POINT";
  4201. default:
  4202. return "Unhandled VkPolygonMode";
  4203. }
  4204. }
  4205. static inline const char* string_VkPipelineDepthStencilStateCreateFlagBits(VkPipelineDepthStencilStateCreateFlagBits input_value)
  4206. {
  4207. switch (input_value)
  4208. {
  4209. case VK_PIPELINE_DEPTH_STENCIL_STATE_CREATE_RASTERIZATION_ORDER_ATTACHMENT_DEPTH_ACCESS_BIT_EXT:
  4210. return "VK_PIPELINE_DEPTH_STENCIL_STATE_CREATE_RASTERIZATION_ORDER_ATTACHMENT_DEPTH_ACCESS_BIT_EXT";
  4211. case VK_PIPELINE_DEPTH_STENCIL_STATE_CREATE_RASTERIZATION_ORDER_ATTACHMENT_STENCIL_ACCESS_BIT_EXT:
  4212. return "VK_PIPELINE_DEPTH_STENCIL_STATE_CREATE_RASTERIZATION_ORDER_ATTACHMENT_STENCIL_ACCESS_BIT_EXT";
  4213. default:
  4214. return "Unhandled VkPipelineDepthStencilStateCreateFlagBits";
  4215. }
  4216. }
  4217. static inline std::string string_VkPipelineDepthStencilStateCreateFlags(VkPipelineDepthStencilStateCreateFlags input_value)
  4218. {
  4219. std::string ret;
  4220. int index = 0;
  4221. while(input_value) {
  4222. if (input_value & 1) {
  4223. if( !ret.empty()) ret.append("|");
  4224. ret.append(string_VkPipelineDepthStencilStateCreateFlagBits(static_cast<VkPipelineDepthStencilStateCreateFlagBits>(1U << index)));
  4225. }
  4226. ++index;
  4227. input_value >>= 1;
  4228. }
  4229. if( ret.empty()) ret.append(string_VkPipelineDepthStencilStateCreateFlagBits(static_cast<VkPipelineDepthStencilStateCreateFlagBits>(0)));
  4230. return ret;
  4231. }
  4232. static inline const char* string_VkStencilOp(VkStencilOp input_value)
  4233. {
  4234. switch (input_value)
  4235. {
  4236. case VK_STENCIL_OP_DECREMENT_AND_CLAMP:
  4237. return "VK_STENCIL_OP_DECREMENT_AND_CLAMP";
  4238. case VK_STENCIL_OP_DECREMENT_AND_WRAP:
  4239. return "VK_STENCIL_OP_DECREMENT_AND_WRAP";
  4240. case VK_STENCIL_OP_INCREMENT_AND_CLAMP:
  4241. return "VK_STENCIL_OP_INCREMENT_AND_CLAMP";
  4242. case VK_STENCIL_OP_INCREMENT_AND_WRAP:
  4243. return "VK_STENCIL_OP_INCREMENT_AND_WRAP";
  4244. case VK_STENCIL_OP_INVERT:
  4245. return "VK_STENCIL_OP_INVERT";
  4246. case VK_STENCIL_OP_KEEP:
  4247. return "VK_STENCIL_OP_KEEP";
  4248. case VK_STENCIL_OP_REPLACE:
  4249. return "VK_STENCIL_OP_REPLACE";
  4250. case VK_STENCIL_OP_ZERO:
  4251. return "VK_STENCIL_OP_ZERO";
  4252. default:
  4253. return "Unhandled VkStencilOp";
  4254. }
  4255. }
  4256. static inline const char* string_VkPipelineColorBlendStateCreateFlagBits(VkPipelineColorBlendStateCreateFlagBits input_value)
  4257. {
  4258. switch (input_value)
  4259. {
  4260. case VK_PIPELINE_COLOR_BLEND_STATE_CREATE_RASTERIZATION_ORDER_ATTACHMENT_ACCESS_BIT_EXT:
  4261. return "VK_PIPELINE_COLOR_BLEND_STATE_CREATE_RASTERIZATION_ORDER_ATTACHMENT_ACCESS_BIT_EXT";
  4262. default:
  4263. return "Unhandled VkPipelineColorBlendStateCreateFlagBits";
  4264. }
  4265. }
  4266. static inline std::string string_VkPipelineColorBlendStateCreateFlags(VkPipelineColorBlendStateCreateFlags input_value)
  4267. {
  4268. std::string ret;
  4269. int index = 0;
  4270. while(input_value) {
  4271. if (input_value & 1) {
  4272. if( !ret.empty()) ret.append("|");
  4273. ret.append(string_VkPipelineColorBlendStateCreateFlagBits(static_cast<VkPipelineColorBlendStateCreateFlagBits>(1U << index)));
  4274. }
  4275. ++index;
  4276. input_value >>= 1;
  4277. }
  4278. if( ret.empty()) ret.append(string_VkPipelineColorBlendStateCreateFlagBits(static_cast<VkPipelineColorBlendStateCreateFlagBits>(0)));
  4279. return ret;
  4280. }
  4281. static inline const char* string_VkLogicOp(VkLogicOp input_value)
  4282. {
  4283. switch (input_value)
  4284. {
  4285. case VK_LOGIC_OP_AND:
  4286. return "VK_LOGIC_OP_AND";
  4287. case VK_LOGIC_OP_AND_INVERTED:
  4288. return "VK_LOGIC_OP_AND_INVERTED";
  4289. case VK_LOGIC_OP_AND_REVERSE:
  4290. return "VK_LOGIC_OP_AND_REVERSE";
  4291. case VK_LOGIC_OP_CLEAR:
  4292. return "VK_LOGIC_OP_CLEAR";
  4293. case VK_LOGIC_OP_COPY:
  4294. return "VK_LOGIC_OP_COPY";
  4295. case VK_LOGIC_OP_COPY_INVERTED:
  4296. return "VK_LOGIC_OP_COPY_INVERTED";
  4297. case VK_LOGIC_OP_EQUIVALENT:
  4298. return "VK_LOGIC_OP_EQUIVALENT";
  4299. case VK_LOGIC_OP_INVERT:
  4300. return "VK_LOGIC_OP_INVERT";
  4301. case VK_LOGIC_OP_NAND:
  4302. return "VK_LOGIC_OP_NAND";
  4303. case VK_LOGIC_OP_NOR:
  4304. return "VK_LOGIC_OP_NOR";
  4305. case VK_LOGIC_OP_NO_OP:
  4306. return "VK_LOGIC_OP_NO_OP";
  4307. case VK_LOGIC_OP_OR:
  4308. return "VK_LOGIC_OP_OR";
  4309. case VK_LOGIC_OP_OR_INVERTED:
  4310. return "VK_LOGIC_OP_OR_INVERTED";
  4311. case VK_LOGIC_OP_OR_REVERSE:
  4312. return "VK_LOGIC_OP_OR_REVERSE";
  4313. case VK_LOGIC_OP_SET:
  4314. return "VK_LOGIC_OP_SET";
  4315. case VK_LOGIC_OP_XOR:
  4316. return "VK_LOGIC_OP_XOR";
  4317. default:
  4318. return "Unhandled VkLogicOp";
  4319. }
  4320. }
  4321. static inline const char* string_VkPipelineLayoutCreateFlagBits(VkPipelineLayoutCreateFlagBits input_value)
  4322. {
  4323. switch (input_value)
  4324. {
  4325. case VK_PIPELINE_LAYOUT_CREATE_INDEPENDENT_SETS_BIT_EXT:
  4326. return "VK_PIPELINE_LAYOUT_CREATE_INDEPENDENT_SETS_BIT_EXT";
  4327. default:
  4328. return "Unhandled VkPipelineLayoutCreateFlagBits";
  4329. }
  4330. }
  4331. static inline std::string string_VkPipelineLayoutCreateFlags(VkPipelineLayoutCreateFlags input_value)
  4332. {
  4333. std::string ret;
  4334. int index = 0;
  4335. while(input_value) {
  4336. if (input_value & 1) {
  4337. if( !ret.empty()) ret.append("|");
  4338. ret.append(string_VkPipelineLayoutCreateFlagBits(static_cast<VkPipelineLayoutCreateFlagBits>(1U << index)));
  4339. }
  4340. ++index;
  4341. input_value >>= 1;
  4342. }
  4343. if( ret.empty()) ret.append(string_VkPipelineLayoutCreateFlagBits(static_cast<VkPipelineLayoutCreateFlagBits>(0)));
  4344. return ret;
  4345. }
  4346. static inline const char* string_VkBorderColor(VkBorderColor input_value)
  4347. {
  4348. switch (input_value)
  4349. {
  4350. case VK_BORDER_COLOR_FLOAT_CUSTOM_EXT:
  4351. return "VK_BORDER_COLOR_FLOAT_CUSTOM_EXT";
  4352. case VK_BORDER_COLOR_FLOAT_OPAQUE_BLACK:
  4353. return "VK_BORDER_COLOR_FLOAT_OPAQUE_BLACK";
  4354. case VK_BORDER_COLOR_FLOAT_OPAQUE_WHITE:
  4355. return "VK_BORDER_COLOR_FLOAT_OPAQUE_WHITE";
  4356. case VK_BORDER_COLOR_FLOAT_TRANSPARENT_BLACK:
  4357. return "VK_BORDER_COLOR_FLOAT_TRANSPARENT_BLACK";
  4358. case VK_BORDER_COLOR_INT_CUSTOM_EXT:
  4359. return "VK_BORDER_COLOR_INT_CUSTOM_EXT";
  4360. case VK_BORDER_COLOR_INT_OPAQUE_BLACK:
  4361. return "VK_BORDER_COLOR_INT_OPAQUE_BLACK";
  4362. case VK_BORDER_COLOR_INT_OPAQUE_WHITE:
  4363. return "VK_BORDER_COLOR_INT_OPAQUE_WHITE";
  4364. case VK_BORDER_COLOR_INT_TRANSPARENT_BLACK:
  4365. return "VK_BORDER_COLOR_INT_TRANSPARENT_BLACK";
  4366. default:
  4367. return "Unhandled VkBorderColor";
  4368. }
  4369. }
  4370. static inline const char* string_VkFilter(VkFilter input_value)
  4371. {
  4372. switch (input_value)
  4373. {
  4374. case VK_FILTER_CUBIC_EXT:
  4375. return "VK_FILTER_CUBIC_EXT";
  4376. case VK_FILTER_LINEAR:
  4377. return "VK_FILTER_LINEAR";
  4378. case VK_FILTER_NEAREST:
  4379. return "VK_FILTER_NEAREST";
  4380. default:
  4381. return "Unhandled VkFilter";
  4382. }
  4383. }
  4384. static inline const char* string_VkSamplerAddressMode(VkSamplerAddressMode input_value)
  4385. {
  4386. switch (input_value)
  4387. {
  4388. case VK_SAMPLER_ADDRESS_MODE_CLAMP_TO_BORDER:
  4389. return "VK_SAMPLER_ADDRESS_MODE_CLAMP_TO_BORDER";
  4390. case VK_SAMPLER_ADDRESS_MODE_CLAMP_TO_EDGE:
  4391. return "VK_SAMPLER_ADDRESS_MODE_CLAMP_TO_EDGE";
  4392. case VK_SAMPLER_ADDRESS_MODE_MIRRORED_REPEAT:
  4393. return "VK_SAMPLER_ADDRESS_MODE_MIRRORED_REPEAT";
  4394. case VK_SAMPLER_ADDRESS_MODE_MIRROR_CLAMP_TO_EDGE:
  4395. return "VK_SAMPLER_ADDRESS_MODE_MIRROR_CLAMP_TO_EDGE";
  4396. case VK_SAMPLER_ADDRESS_MODE_REPEAT:
  4397. return "VK_SAMPLER_ADDRESS_MODE_REPEAT";
  4398. default:
  4399. return "Unhandled VkSamplerAddressMode";
  4400. }
  4401. }
  4402. static inline const char* string_VkSamplerCreateFlagBits(VkSamplerCreateFlagBits input_value)
  4403. {
  4404. switch (input_value)
  4405. {
  4406. case VK_SAMPLER_CREATE_IMAGE_PROCESSING_BIT_QCOM:
  4407. return "VK_SAMPLER_CREATE_IMAGE_PROCESSING_BIT_QCOM";
  4408. case VK_SAMPLER_CREATE_NON_SEAMLESS_CUBE_MAP_BIT_EXT:
  4409. return "VK_SAMPLER_CREATE_NON_SEAMLESS_CUBE_MAP_BIT_EXT";
  4410. case VK_SAMPLER_CREATE_SUBSAMPLED_BIT_EXT:
  4411. return "VK_SAMPLER_CREATE_SUBSAMPLED_BIT_EXT";
  4412. case VK_SAMPLER_CREATE_SUBSAMPLED_COARSE_RECONSTRUCTION_BIT_EXT:
  4413. return "VK_SAMPLER_CREATE_SUBSAMPLED_COARSE_RECONSTRUCTION_BIT_EXT";
  4414. default:
  4415. return "Unhandled VkSamplerCreateFlagBits";
  4416. }
  4417. }
  4418. static inline std::string string_VkSamplerCreateFlags(VkSamplerCreateFlags input_value)
  4419. {
  4420. std::string ret;
  4421. int index = 0;
  4422. while(input_value) {
  4423. if (input_value & 1) {
  4424. if( !ret.empty()) ret.append("|");
  4425. ret.append(string_VkSamplerCreateFlagBits(static_cast<VkSamplerCreateFlagBits>(1U << index)));
  4426. }
  4427. ++index;
  4428. input_value >>= 1;
  4429. }
  4430. if( ret.empty()) ret.append(string_VkSamplerCreateFlagBits(static_cast<VkSamplerCreateFlagBits>(0)));
  4431. return ret;
  4432. }
  4433. static inline const char* string_VkSamplerMipmapMode(VkSamplerMipmapMode input_value)
  4434. {
  4435. switch (input_value)
  4436. {
  4437. case VK_SAMPLER_MIPMAP_MODE_LINEAR:
  4438. return "VK_SAMPLER_MIPMAP_MODE_LINEAR";
  4439. case VK_SAMPLER_MIPMAP_MODE_NEAREST:
  4440. return "VK_SAMPLER_MIPMAP_MODE_NEAREST";
  4441. default:
  4442. return "Unhandled VkSamplerMipmapMode";
  4443. }
  4444. }
  4445. static inline const char* string_VkDescriptorPoolCreateFlagBits(VkDescriptorPoolCreateFlagBits input_value)
  4446. {
  4447. switch (input_value)
  4448. {
  4449. case VK_DESCRIPTOR_POOL_CREATE_FREE_DESCRIPTOR_SET_BIT:
  4450. return "VK_DESCRIPTOR_POOL_CREATE_FREE_DESCRIPTOR_SET_BIT";
  4451. case VK_DESCRIPTOR_POOL_CREATE_HOST_ONLY_BIT_EXT:
  4452. return "VK_DESCRIPTOR_POOL_CREATE_HOST_ONLY_BIT_EXT";
  4453. case VK_DESCRIPTOR_POOL_CREATE_UPDATE_AFTER_BIND_BIT:
  4454. return "VK_DESCRIPTOR_POOL_CREATE_UPDATE_AFTER_BIND_BIT";
  4455. default:
  4456. return "Unhandled VkDescriptorPoolCreateFlagBits";
  4457. }
  4458. }
  4459. static inline std::string string_VkDescriptorPoolCreateFlags(VkDescriptorPoolCreateFlags input_value)
  4460. {
  4461. std::string ret;
  4462. int index = 0;
  4463. while(input_value) {
  4464. if (input_value & 1) {
  4465. if( !ret.empty()) ret.append("|");
  4466. ret.append(string_VkDescriptorPoolCreateFlagBits(static_cast<VkDescriptorPoolCreateFlagBits>(1U << index)));
  4467. }
  4468. ++index;
  4469. input_value >>= 1;
  4470. }
  4471. if( ret.empty()) ret.append(string_VkDescriptorPoolCreateFlagBits(static_cast<VkDescriptorPoolCreateFlagBits>(0)));
  4472. return ret;
  4473. }
  4474. static inline const char* string_VkDescriptorType(VkDescriptorType input_value)
  4475. {
  4476. switch (input_value)
  4477. {
  4478. case VK_DESCRIPTOR_TYPE_ACCELERATION_STRUCTURE_KHR:
  4479. return "VK_DESCRIPTOR_TYPE_ACCELERATION_STRUCTURE_KHR";
  4480. case VK_DESCRIPTOR_TYPE_ACCELERATION_STRUCTURE_NV:
  4481. return "VK_DESCRIPTOR_TYPE_ACCELERATION_STRUCTURE_NV";
  4482. case VK_DESCRIPTOR_TYPE_BLOCK_MATCH_IMAGE_QCOM:
  4483. return "VK_DESCRIPTOR_TYPE_BLOCK_MATCH_IMAGE_QCOM";
  4484. case VK_DESCRIPTOR_TYPE_COMBINED_IMAGE_SAMPLER:
  4485. return "VK_DESCRIPTOR_TYPE_COMBINED_IMAGE_SAMPLER";
  4486. case VK_DESCRIPTOR_TYPE_INLINE_UNIFORM_BLOCK:
  4487. return "VK_DESCRIPTOR_TYPE_INLINE_UNIFORM_BLOCK";
  4488. case VK_DESCRIPTOR_TYPE_INPUT_ATTACHMENT:
  4489. return "VK_DESCRIPTOR_TYPE_INPUT_ATTACHMENT";
  4490. case VK_DESCRIPTOR_TYPE_MUTABLE_EXT:
  4491. return "VK_DESCRIPTOR_TYPE_MUTABLE_EXT";
  4492. case VK_DESCRIPTOR_TYPE_SAMPLED_IMAGE:
  4493. return "VK_DESCRIPTOR_TYPE_SAMPLED_IMAGE";
  4494. case VK_DESCRIPTOR_TYPE_SAMPLER:
  4495. return "VK_DESCRIPTOR_TYPE_SAMPLER";
  4496. case VK_DESCRIPTOR_TYPE_SAMPLE_WEIGHT_IMAGE_QCOM:
  4497. return "VK_DESCRIPTOR_TYPE_SAMPLE_WEIGHT_IMAGE_QCOM";
  4498. case VK_DESCRIPTOR_TYPE_STORAGE_BUFFER:
  4499. return "VK_DESCRIPTOR_TYPE_STORAGE_BUFFER";
  4500. case VK_DESCRIPTOR_TYPE_STORAGE_BUFFER_DYNAMIC:
  4501. return "VK_DESCRIPTOR_TYPE_STORAGE_BUFFER_DYNAMIC";
  4502. case VK_DESCRIPTOR_TYPE_STORAGE_IMAGE:
  4503. return "VK_DESCRIPTOR_TYPE_STORAGE_IMAGE";
  4504. case VK_DESCRIPTOR_TYPE_STORAGE_TEXEL_BUFFER:
  4505. return "VK_DESCRIPTOR_TYPE_STORAGE_TEXEL_BUFFER";
  4506. case VK_DESCRIPTOR_TYPE_UNIFORM_BUFFER:
  4507. return "VK_DESCRIPTOR_TYPE_UNIFORM_BUFFER";
  4508. case VK_DESCRIPTOR_TYPE_UNIFORM_BUFFER_DYNAMIC:
  4509. return "VK_DESCRIPTOR_TYPE_UNIFORM_BUFFER_DYNAMIC";
  4510. case VK_DESCRIPTOR_TYPE_UNIFORM_TEXEL_BUFFER:
  4511. return "VK_DESCRIPTOR_TYPE_UNIFORM_TEXEL_BUFFER";
  4512. default:
  4513. return "Unhandled VkDescriptorType";
  4514. }
  4515. }
  4516. static inline const char* string_VkDescriptorSetLayoutCreateFlagBits(VkDescriptorSetLayoutCreateFlagBits input_value)
  4517. {
  4518. switch (input_value)
  4519. {
  4520. case VK_DESCRIPTOR_SET_LAYOUT_CREATE_HOST_ONLY_POOL_BIT_EXT:
  4521. return "VK_DESCRIPTOR_SET_LAYOUT_CREATE_HOST_ONLY_POOL_BIT_EXT";
  4522. case VK_DESCRIPTOR_SET_LAYOUT_CREATE_PUSH_DESCRIPTOR_BIT_KHR:
  4523. return "VK_DESCRIPTOR_SET_LAYOUT_CREATE_PUSH_DESCRIPTOR_BIT_KHR";
  4524. case VK_DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BIT:
  4525. return "VK_DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BIT";
  4526. default:
  4527. return "Unhandled VkDescriptorSetLayoutCreateFlagBits";
  4528. }
  4529. }
  4530. static inline std::string string_VkDescriptorSetLayoutCreateFlags(VkDescriptorSetLayoutCreateFlags input_value)
  4531. {
  4532. std::string ret;
  4533. int index = 0;
  4534. while(input_value) {
  4535. if (input_value & 1) {
  4536. if( !ret.empty()) ret.append("|");
  4537. ret.append(string_VkDescriptorSetLayoutCreateFlagBits(static_cast<VkDescriptorSetLayoutCreateFlagBits>(1U << index)));
  4538. }
  4539. ++index;
  4540. input_value >>= 1;
  4541. }
  4542. if( ret.empty()) ret.append(string_VkDescriptorSetLayoutCreateFlagBits(static_cast<VkDescriptorSetLayoutCreateFlagBits>(0)));
  4543. return ret;
  4544. }
  4545. static inline const char* string_VkAttachmentDescriptionFlagBits(VkAttachmentDescriptionFlagBits input_value)
  4546. {
  4547. switch (input_value)
  4548. {
  4549. case VK_ATTACHMENT_DESCRIPTION_MAY_ALIAS_BIT:
  4550. return "VK_ATTACHMENT_DESCRIPTION_MAY_ALIAS_BIT";
  4551. default:
  4552. return "Unhandled VkAttachmentDescriptionFlagBits";
  4553. }
  4554. }
  4555. static inline std::string string_VkAttachmentDescriptionFlags(VkAttachmentDescriptionFlags input_value)
  4556. {
  4557. std::string ret;
  4558. int index = 0;
  4559. while(input_value) {
  4560. if (input_value & 1) {
  4561. if( !ret.empty()) ret.append("|");
  4562. ret.append(string_VkAttachmentDescriptionFlagBits(static_cast<VkAttachmentDescriptionFlagBits>(1U << index)));
  4563. }
  4564. ++index;
  4565. input_value >>= 1;
  4566. }
  4567. if( ret.empty()) ret.append(string_VkAttachmentDescriptionFlagBits(static_cast<VkAttachmentDescriptionFlagBits>(0)));
  4568. return ret;
  4569. }
  4570. static inline const char* string_VkAttachmentLoadOp(VkAttachmentLoadOp input_value)
  4571. {
  4572. switch (input_value)
  4573. {
  4574. case VK_ATTACHMENT_LOAD_OP_CLEAR:
  4575. return "VK_ATTACHMENT_LOAD_OP_CLEAR";
  4576. case VK_ATTACHMENT_LOAD_OP_DONT_CARE:
  4577. return "VK_ATTACHMENT_LOAD_OP_DONT_CARE";
  4578. case VK_ATTACHMENT_LOAD_OP_LOAD:
  4579. return "VK_ATTACHMENT_LOAD_OP_LOAD";
  4580. case VK_ATTACHMENT_LOAD_OP_NONE_EXT:
  4581. return "VK_ATTACHMENT_LOAD_OP_NONE_EXT";
  4582. default:
  4583. return "Unhandled VkAttachmentLoadOp";
  4584. }
  4585. }
  4586. static inline const char* string_VkAttachmentStoreOp(VkAttachmentStoreOp input_value)
  4587. {
  4588. switch (input_value)
  4589. {
  4590. case VK_ATTACHMENT_STORE_OP_DONT_CARE:
  4591. return "VK_ATTACHMENT_STORE_OP_DONT_CARE";
  4592. case VK_ATTACHMENT_STORE_OP_NONE:
  4593. return "VK_ATTACHMENT_STORE_OP_NONE";
  4594. case VK_ATTACHMENT_STORE_OP_STORE:
  4595. return "VK_ATTACHMENT_STORE_OP_STORE";
  4596. default:
  4597. return "Unhandled VkAttachmentStoreOp";
  4598. }
  4599. }
  4600. static inline const char* string_VkDependencyFlagBits(VkDependencyFlagBits input_value)
  4601. {
  4602. switch (input_value)
  4603. {
  4604. case VK_DEPENDENCY_BY_REGION_BIT:
  4605. return "VK_DEPENDENCY_BY_REGION_BIT";
  4606. case VK_DEPENDENCY_DEVICE_GROUP_BIT:
  4607. return "VK_DEPENDENCY_DEVICE_GROUP_BIT";
  4608. case VK_DEPENDENCY_FEEDBACK_LOOP_BIT_EXT:
  4609. return "VK_DEPENDENCY_FEEDBACK_LOOP_BIT_EXT";
  4610. case VK_DEPENDENCY_VIEW_LOCAL_BIT:
  4611. return "VK_DEPENDENCY_VIEW_LOCAL_BIT";
  4612. default:
  4613. return "Unhandled VkDependencyFlagBits";
  4614. }
  4615. }
  4616. static inline std::string string_VkDependencyFlags(VkDependencyFlags input_value)
  4617. {
  4618. std::string ret;
  4619. int index = 0;
  4620. while(input_value) {
  4621. if (input_value & 1) {
  4622. if( !ret.empty()) ret.append("|");
  4623. ret.append(string_VkDependencyFlagBits(static_cast<VkDependencyFlagBits>(1U << index)));
  4624. }
  4625. ++index;
  4626. input_value >>= 1;
  4627. }
  4628. if( ret.empty()) ret.append(string_VkDependencyFlagBits(static_cast<VkDependencyFlagBits>(0)));
  4629. return ret;
  4630. }
  4631. static inline const char* string_VkFramebufferCreateFlagBits(VkFramebufferCreateFlagBits input_value)
  4632. {
  4633. switch (input_value)
  4634. {
  4635. case VK_FRAMEBUFFER_CREATE_IMAGELESS_BIT:
  4636. return "VK_FRAMEBUFFER_CREATE_IMAGELESS_BIT";
  4637. default:
  4638. return "Unhandled VkFramebufferCreateFlagBits";
  4639. }
  4640. }
  4641. static inline std::string string_VkFramebufferCreateFlags(VkFramebufferCreateFlags input_value)
  4642. {
  4643. std::string ret;
  4644. int index = 0;
  4645. while(input_value) {
  4646. if (input_value & 1) {
  4647. if( !ret.empty()) ret.append("|");
  4648. ret.append(string_VkFramebufferCreateFlagBits(static_cast<VkFramebufferCreateFlagBits>(1U << index)));
  4649. }
  4650. ++index;
  4651. input_value >>= 1;
  4652. }
  4653. if( ret.empty()) ret.append(string_VkFramebufferCreateFlagBits(static_cast<VkFramebufferCreateFlagBits>(0)));
  4654. return ret;
  4655. }
  4656. static inline const char* string_VkPipelineBindPoint(VkPipelineBindPoint input_value)
  4657. {
  4658. switch (input_value)
  4659. {
  4660. case VK_PIPELINE_BIND_POINT_COMPUTE:
  4661. return "VK_PIPELINE_BIND_POINT_COMPUTE";
  4662. case VK_PIPELINE_BIND_POINT_GRAPHICS:
  4663. return "VK_PIPELINE_BIND_POINT_GRAPHICS";
  4664. case VK_PIPELINE_BIND_POINT_RAY_TRACING_KHR:
  4665. return "VK_PIPELINE_BIND_POINT_RAY_TRACING_KHR";
  4666. case VK_PIPELINE_BIND_POINT_SUBPASS_SHADING_HUAWEI:
  4667. return "VK_PIPELINE_BIND_POINT_SUBPASS_SHADING_HUAWEI";
  4668. default:
  4669. return "Unhandled VkPipelineBindPoint";
  4670. }
  4671. }
  4672. static inline const char* string_VkRenderPassCreateFlagBits(VkRenderPassCreateFlagBits input_value)
  4673. {
  4674. switch (input_value)
  4675. {
  4676. case VK_RENDER_PASS_CREATE_TRANSFORM_BIT_QCOM:
  4677. return "VK_RENDER_PASS_CREATE_TRANSFORM_BIT_QCOM";
  4678. default:
  4679. return "Unhandled VkRenderPassCreateFlagBits";
  4680. }
  4681. }
  4682. static inline std::string string_VkRenderPassCreateFlags(VkRenderPassCreateFlags input_value)
  4683. {
  4684. std::string ret;
  4685. int index = 0;
  4686. while(input_value) {
  4687. if (input_value & 1) {
  4688. if( !ret.empty()) ret.append("|");
  4689. ret.append(string_VkRenderPassCreateFlagBits(static_cast<VkRenderPassCreateFlagBits>(1U << index)));
  4690. }
  4691. ++index;
  4692. input_value >>= 1;
  4693. }
  4694. if( ret.empty()) ret.append(string_VkRenderPassCreateFlagBits(static_cast<VkRenderPassCreateFlagBits>(0)));
  4695. return ret;
  4696. }
  4697. static inline const char* string_VkSubpassDescriptionFlagBits(VkSubpassDescriptionFlagBits input_value)
  4698. {
  4699. switch (input_value)
  4700. {
  4701. case VK_SUBPASS_DESCRIPTION_ENABLE_LEGACY_DITHERING_BIT_EXT:
  4702. return "VK_SUBPASS_DESCRIPTION_ENABLE_LEGACY_DITHERING_BIT_EXT";
  4703. case VK_SUBPASS_DESCRIPTION_FRAGMENT_REGION_BIT_QCOM:
  4704. return "VK_SUBPASS_DESCRIPTION_FRAGMENT_REGION_BIT_QCOM";
  4705. case VK_SUBPASS_DESCRIPTION_PER_VIEW_ATTRIBUTES_BIT_NVX:
  4706. return "VK_SUBPASS_DESCRIPTION_PER_VIEW_ATTRIBUTES_BIT_NVX";
  4707. case VK_SUBPASS_DESCRIPTION_PER_VIEW_POSITION_X_ONLY_BIT_NVX:
  4708. return "VK_SUBPASS_DESCRIPTION_PER_VIEW_POSITION_X_ONLY_BIT_NVX";
  4709. case VK_SUBPASS_DESCRIPTION_RASTERIZATION_ORDER_ATTACHMENT_COLOR_ACCESS_BIT_EXT:
  4710. return "VK_SUBPASS_DESCRIPTION_RASTERIZATION_ORDER_ATTACHMENT_COLOR_ACCESS_BIT_EXT";
  4711. case VK_SUBPASS_DESCRIPTION_RASTERIZATION_ORDER_ATTACHMENT_DEPTH_ACCESS_BIT_EXT:
  4712. return "VK_SUBPASS_DESCRIPTION_RASTERIZATION_ORDER_ATTACHMENT_DEPTH_ACCESS_BIT_EXT";
  4713. case VK_SUBPASS_DESCRIPTION_RASTERIZATION_ORDER_ATTACHMENT_STENCIL_ACCESS_BIT_EXT:
  4714. return "VK_SUBPASS_DESCRIPTION_RASTERIZATION_ORDER_ATTACHMENT_STENCIL_ACCESS_BIT_EXT";
  4715. case VK_SUBPASS_DESCRIPTION_SHADER_RESOLVE_BIT_QCOM:
  4716. return "VK_SUBPASS_DESCRIPTION_SHADER_RESOLVE_BIT_QCOM";
  4717. default:
  4718. return "Unhandled VkSubpassDescriptionFlagBits";
  4719. }
  4720. }
  4721. static inline std::string string_VkSubpassDescriptionFlags(VkSubpassDescriptionFlags input_value)
  4722. {
  4723. std::string ret;
  4724. int index = 0;
  4725. while(input_value) {
  4726. if (input_value & 1) {
  4727. if( !ret.empty()) ret.append("|");
  4728. ret.append(string_VkSubpassDescriptionFlagBits(static_cast<VkSubpassDescriptionFlagBits>(1U << index)));
  4729. }
  4730. ++index;
  4731. input_value >>= 1;
  4732. }
  4733. if( ret.empty()) ret.append(string_VkSubpassDescriptionFlagBits(static_cast<VkSubpassDescriptionFlagBits>(0)));
  4734. return ret;
  4735. }
  4736. static inline const char* string_VkCommandPoolCreateFlagBits(VkCommandPoolCreateFlagBits input_value)
  4737. {
  4738. switch (input_value)
  4739. {
  4740. case VK_COMMAND_POOL_CREATE_PROTECTED_BIT:
  4741. return "VK_COMMAND_POOL_CREATE_PROTECTED_BIT";
  4742. case VK_COMMAND_POOL_CREATE_RESET_COMMAND_BUFFER_BIT:
  4743. return "VK_COMMAND_POOL_CREATE_RESET_COMMAND_BUFFER_BIT";
  4744. case VK_COMMAND_POOL_CREATE_TRANSIENT_BIT:
  4745. return "VK_COMMAND_POOL_CREATE_TRANSIENT_BIT";
  4746. default:
  4747. return "Unhandled VkCommandPoolCreateFlagBits";
  4748. }
  4749. }
  4750. static inline std::string string_VkCommandPoolCreateFlags(VkCommandPoolCreateFlags input_value)
  4751. {
  4752. std::string ret;
  4753. int index = 0;
  4754. while(input_value) {
  4755. if (input_value & 1) {
  4756. if( !ret.empty()) ret.append("|");
  4757. ret.append(string_VkCommandPoolCreateFlagBits(static_cast<VkCommandPoolCreateFlagBits>(1U << index)));
  4758. }
  4759. ++index;
  4760. input_value >>= 1;
  4761. }
  4762. if( ret.empty()) ret.append(string_VkCommandPoolCreateFlagBits(static_cast<VkCommandPoolCreateFlagBits>(0)));
  4763. return ret;
  4764. }
  4765. static inline const char* string_VkCommandPoolResetFlagBits(VkCommandPoolResetFlagBits input_value)
  4766. {
  4767. switch (input_value)
  4768. {
  4769. case VK_COMMAND_POOL_RESET_RELEASE_RESOURCES_BIT:
  4770. return "VK_COMMAND_POOL_RESET_RELEASE_RESOURCES_BIT";
  4771. default:
  4772. return "Unhandled VkCommandPoolResetFlagBits";
  4773. }
  4774. }
  4775. static inline std::string string_VkCommandPoolResetFlags(VkCommandPoolResetFlags input_value)
  4776. {
  4777. std::string ret;
  4778. int index = 0;
  4779. while(input_value) {
  4780. if (input_value & 1) {
  4781. if( !ret.empty()) ret.append("|");
  4782. ret.append(string_VkCommandPoolResetFlagBits(static_cast<VkCommandPoolResetFlagBits>(1U << index)));
  4783. }
  4784. ++index;
  4785. input_value >>= 1;
  4786. }
  4787. if( ret.empty()) ret.append(string_VkCommandPoolResetFlagBits(static_cast<VkCommandPoolResetFlagBits>(0)));
  4788. return ret;
  4789. }
  4790. static inline const char* string_VkCommandBufferLevel(VkCommandBufferLevel input_value)
  4791. {
  4792. switch (input_value)
  4793. {
  4794. case VK_COMMAND_BUFFER_LEVEL_PRIMARY:
  4795. return "VK_COMMAND_BUFFER_LEVEL_PRIMARY";
  4796. case VK_COMMAND_BUFFER_LEVEL_SECONDARY:
  4797. return "VK_COMMAND_BUFFER_LEVEL_SECONDARY";
  4798. default:
  4799. return "Unhandled VkCommandBufferLevel";
  4800. }
  4801. }
  4802. static inline const char* string_VkCommandBufferUsageFlagBits(VkCommandBufferUsageFlagBits input_value)
  4803. {
  4804. switch (input_value)
  4805. {
  4806. case VK_COMMAND_BUFFER_USAGE_ONE_TIME_SUBMIT_BIT:
  4807. return "VK_COMMAND_BUFFER_USAGE_ONE_TIME_SUBMIT_BIT";
  4808. case VK_COMMAND_BUFFER_USAGE_RENDER_PASS_CONTINUE_BIT:
  4809. return "VK_COMMAND_BUFFER_USAGE_RENDER_PASS_CONTINUE_BIT";
  4810. case VK_COMMAND_BUFFER_USAGE_SIMULTANEOUS_USE_BIT:
  4811. return "VK_COMMAND_BUFFER_USAGE_SIMULTANEOUS_USE_BIT";
  4812. default:
  4813. return "Unhandled VkCommandBufferUsageFlagBits";
  4814. }
  4815. }
  4816. static inline std::string string_VkCommandBufferUsageFlags(VkCommandBufferUsageFlags input_value)
  4817. {
  4818. std::string ret;
  4819. int index = 0;
  4820. while(input_value) {
  4821. if (input_value & 1) {
  4822. if( !ret.empty()) ret.append("|");
  4823. ret.append(string_VkCommandBufferUsageFlagBits(static_cast<VkCommandBufferUsageFlagBits>(1U << index)));
  4824. }
  4825. ++index;
  4826. input_value >>= 1;
  4827. }
  4828. if( ret.empty()) ret.append(string_VkCommandBufferUsageFlagBits(static_cast<VkCommandBufferUsageFlagBits>(0)));
  4829. return ret;
  4830. }
  4831. static inline const char* string_VkQueryControlFlagBits(VkQueryControlFlagBits input_value)
  4832. {
  4833. switch (input_value)
  4834. {
  4835. case VK_QUERY_CONTROL_PRECISE_BIT:
  4836. return "VK_QUERY_CONTROL_PRECISE_BIT";
  4837. default:
  4838. return "Unhandled VkQueryControlFlagBits";
  4839. }
  4840. }
  4841. static inline std::string string_VkQueryControlFlags(VkQueryControlFlags input_value)
  4842. {
  4843. std::string ret;
  4844. int index = 0;
  4845. while(input_value) {
  4846. if (input_value & 1) {
  4847. if( !ret.empty()) ret.append("|");
  4848. ret.append(string_VkQueryControlFlagBits(static_cast<VkQueryControlFlagBits>(1U << index)));
  4849. }
  4850. ++index;
  4851. input_value >>= 1;
  4852. }
  4853. if( ret.empty()) ret.append(string_VkQueryControlFlagBits(static_cast<VkQueryControlFlagBits>(0)));
  4854. return ret;
  4855. }
  4856. static inline const char* string_VkCommandBufferResetFlagBits(VkCommandBufferResetFlagBits input_value)
  4857. {
  4858. switch (input_value)
  4859. {
  4860. case VK_COMMAND_BUFFER_RESET_RELEASE_RESOURCES_BIT:
  4861. return "VK_COMMAND_BUFFER_RESET_RELEASE_RESOURCES_BIT";
  4862. default:
  4863. return "Unhandled VkCommandBufferResetFlagBits";
  4864. }
  4865. }
  4866. static inline std::string string_VkCommandBufferResetFlags(VkCommandBufferResetFlags input_value)
  4867. {
  4868. std::string ret;
  4869. int index = 0;
  4870. while(input_value) {
  4871. if (input_value & 1) {
  4872. if( !ret.empty()) ret.append("|");
  4873. ret.append(string_VkCommandBufferResetFlagBits(static_cast<VkCommandBufferResetFlagBits>(1U << index)));
  4874. }
  4875. ++index;
  4876. input_value >>= 1;
  4877. }
  4878. if( ret.empty()) ret.append(string_VkCommandBufferResetFlagBits(static_cast<VkCommandBufferResetFlagBits>(0)));
  4879. return ret;
  4880. }
  4881. static inline const char* string_VkIndexType(VkIndexType input_value)
  4882. {
  4883. switch (input_value)
  4884. {
  4885. case VK_INDEX_TYPE_NONE_KHR:
  4886. return "VK_INDEX_TYPE_NONE_KHR";
  4887. case VK_INDEX_TYPE_UINT16:
  4888. return "VK_INDEX_TYPE_UINT16";
  4889. case VK_INDEX_TYPE_UINT32:
  4890. return "VK_INDEX_TYPE_UINT32";
  4891. case VK_INDEX_TYPE_UINT8_EXT:
  4892. return "VK_INDEX_TYPE_UINT8_EXT";
  4893. default:
  4894. return "Unhandled VkIndexType";
  4895. }
  4896. }
  4897. static inline const char* string_VkStencilFaceFlagBits(VkStencilFaceFlagBits input_value)
  4898. {
  4899. switch (input_value)
  4900. {
  4901. case VK_STENCIL_FACE_BACK_BIT:
  4902. return "VK_STENCIL_FACE_BACK_BIT";
  4903. case VK_STENCIL_FACE_FRONT_AND_BACK:
  4904. return "VK_STENCIL_FACE_FRONT_AND_BACK";
  4905. case VK_STENCIL_FACE_FRONT_BIT:
  4906. return "VK_STENCIL_FACE_FRONT_BIT";
  4907. default:
  4908. return "Unhandled VkStencilFaceFlagBits";
  4909. }
  4910. }
  4911. static inline std::string string_VkStencilFaceFlags(VkStencilFaceFlags input_value)
  4912. {
  4913. std::string ret;
  4914. int index = 0;
  4915. while(input_value) {
  4916. if (input_value & 1) {
  4917. if( !ret.empty()) ret.append("|");
  4918. ret.append(string_VkStencilFaceFlagBits(static_cast<VkStencilFaceFlagBits>(1U << index)));
  4919. }
  4920. ++index;
  4921. input_value >>= 1;
  4922. }
  4923. if( ret.empty()) ret.append(string_VkStencilFaceFlagBits(static_cast<VkStencilFaceFlagBits>(0)));
  4924. return ret;
  4925. }
  4926. static inline const char* string_VkSubpassContents(VkSubpassContents input_value)
  4927. {
  4928. switch (input_value)
  4929. {
  4930. case VK_SUBPASS_CONTENTS_INLINE:
  4931. return "VK_SUBPASS_CONTENTS_INLINE";
  4932. case VK_SUBPASS_CONTENTS_SECONDARY_COMMAND_BUFFERS:
  4933. return "VK_SUBPASS_CONTENTS_SECONDARY_COMMAND_BUFFERS";
  4934. default:
  4935. return "Unhandled VkSubpassContents";
  4936. }
  4937. }
  4938. static inline const char* string_VkSubgroupFeatureFlagBits(VkSubgroupFeatureFlagBits input_value)
  4939. {
  4940. switch (input_value)
  4941. {
  4942. case VK_SUBGROUP_FEATURE_ARITHMETIC_BIT:
  4943. return "VK_SUBGROUP_FEATURE_ARITHMETIC_BIT";
  4944. case VK_SUBGROUP_FEATURE_BALLOT_BIT:
  4945. return "VK_SUBGROUP_FEATURE_BALLOT_BIT";
  4946. case VK_SUBGROUP_FEATURE_BASIC_BIT:
  4947. return "VK_SUBGROUP_FEATURE_BASIC_BIT";
  4948. case VK_SUBGROUP_FEATURE_CLUSTERED_BIT:
  4949. return "VK_SUBGROUP_FEATURE_CLUSTERED_BIT";
  4950. case VK_SUBGROUP_FEATURE_PARTITIONED_BIT_NV:
  4951. return "VK_SUBGROUP_FEATURE_PARTITIONED_BIT_NV";
  4952. case VK_SUBGROUP_FEATURE_QUAD_BIT:
  4953. return "VK_SUBGROUP_FEATURE_QUAD_BIT";
  4954. case VK_SUBGROUP_FEATURE_SHUFFLE_BIT:
  4955. return "VK_SUBGROUP_FEATURE_SHUFFLE_BIT";
  4956. case VK_SUBGROUP_FEATURE_SHUFFLE_RELATIVE_BIT:
  4957. return "VK_SUBGROUP_FEATURE_SHUFFLE_RELATIVE_BIT";
  4958. case VK_SUBGROUP_FEATURE_VOTE_BIT:
  4959. return "VK_SUBGROUP_FEATURE_VOTE_BIT";
  4960. default:
  4961. return "Unhandled VkSubgroupFeatureFlagBits";
  4962. }
  4963. }
  4964. static inline std::string string_VkSubgroupFeatureFlags(VkSubgroupFeatureFlags input_value)
  4965. {
  4966. std::string ret;
  4967. int index = 0;
  4968. while(input_value) {
  4969. if (input_value & 1) {
  4970. if( !ret.empty()) ret.append("|");
  4971. ret.append(string_VkSubgroupFeatureFlagBits(static_cast<VkSubgroupFeatureFlagBits>(1U << index)));
  4972. }
  4973. ++index;
  4974. input_value >>= 1;
  4975. }
  4976. if( ret.empty()) ret.append(string_VkSubgroupFeatureFlagBits(static_cast<VkSubgroupFeatureFlagBits>(0)));
  4977. return ret;
  4978. }
  4979. static inline const char* string_VkPeerMemoryFeatureFlagBits(VkPeerMemoryFeatureFlagBits input_value)
  4980. {
  4981. switch (input_value)
  4982. {
  4983. case VK_PEER_MEMORY_FEATURE_COPY_DST_BIT:
  4984. return "VK_PEER_MEMORY_FEATURE_COPY_DST_BIT";
  4985. case VK_PEER_MEMORY_FEATURE_COPY_SRC_BIT:
  4986. return "VK_PEER_MEMORY_FEATURE_COPY_SRC_BIT";
  4987. case VK_PEER_MEMORY_FEATURE_GENERIC_DST_BIT:
  4988. return "VK_PEER_MEMORY_FEATURE_GENERIC_DST_BIT";
  4989. case VK_PEER_MEMORY_FEATURE_GENERIC_SRC_BIT:
  4990. return "VK_PEER_MEMORY_FEATURE_GENERIC_SRC_BIT";
  4991. default:
  4992. return "Unhandled VkPeerMemoryFeatureFlagBits";
  4993. }
  4994. }
  4995. static inline std::string string_VkPeerMemoryFeatureFlags(VkPeerMemoryFeatureFlags input_value)
  4996. {
  4997. std::string ret;
  4998. int index = 0;
  4999. while(input_value) {
  5000. if (input_value & 1) {
  5001. if( !ret.empty()) ret.append("|");
  5002. ret.append(string_VkPeerMemoryFeatureFlagBits(static_cast<VkPeerMemoryFeatureFlagBits>(1U << index)));
  5003. }
  5004. ++index;
  5005. input_value >>= 1;
  5006. }
  5007. if( ret.empty()) ret.append(string_VkPeerMemoryFeatureFlagBits(static_cast<VkPeerMemoryFeatureFlagBits>(0)));
  5008. return ret;
  5009. }
  5010. static inline const char* string_VkMemoryAllocateFlagBits(VkMemoryAllocateFlagBits input_value)
  5011. {
  5012. switch (input_value)
  5013. {
  5014. case VK_MEMORY_ALLOCATE_DEVICE_ADDRESS_BIT:
  5015. return "VK_MEMORY_ALLOCATE_DEVICE_ADDRESS_BIT";
  5016. case VK_MEMORY_ALLOCATE_DEVICE_ADDRESS_CAPTURE_REPLAY_BIT:
  5017. return "VK_MEMORY_ALLOCATE_DEVICE_ADDRESS_CAPTURE_REPLAY_BIT";
  5018. case VK_MEMORY_ALLOCATE_DEVICE_MASK_BIT:
  5019. return "VK_MEMORY_ALLOCATE_DEVICE_MASK_BIT";
  5020. default:
  5021. return "Unhandled VkMemoryAllocateFlagBits";
  5022. }
  5023. }
  5024. static inline std::string string_VkMemoryAllocateFlags(VkMemoryAllocateFlags input_value)
  5025. {
  5026. std::string ret;
  5027. int index = 0;
  5028. while(input_value) {
  5029. if (input_value & 1) {
  5030. if( !ret.empty()) ret.append("|");
  5031. ret.append(string_VkMemoryAllocateFlagBits(static_cast<VkMemoryAllocateFlagBits>(1U << index)));
  5032. }
  5033. ++index;
  5034. input_value >>= 1;
  5035. }
  5036. if( ret.empty()) ret.append(string_VkMemoryAllocateFlagBits(static_cast<VkMemoryAllocateFlagBits>(0)));
  5037. return ret;
  5038. }
  5039. static inline const char* string_VkPointClippingBehavior(VkPointClippingBehavior input_value)
  5040. {
  5041. switch (input_value)
  5042. {
  5043. case VK_POINT_CLIPPING_BEHAVIOR_ALL_CLIP_PLANES:
  5044. return "VK_POINT_CLIPPING_BEHAVIOR_ALL_CLIP_PLANES";
  5045. case VK_POINT_CLIPPING_BEHAVIOR_USER_CLIP_PLANES_ONLY:
  5046. return "VK_POINT_CLIPPING_BEHAVIOR_USER_CLIP_PLANES_ONLY";
  5047. default:
  5048. return "Unhandled VkPointClippingBehavior";
  5049. }
  5050. }
  5051. static inline const char* string_VkTessellationDomainOrigin(VkTessellationDomainOrigin input_value)
  5052. {
  5053. switch (input_value)
  5054. {
  5055. case VK_TESSELLATION_DOMAIN_ORIGIN_LOWER_LEFT:
  5056. return "VK_TESSELLATION_DOMAIN_ORIGIN_LOWER_LEFT";
  5057. case VK_TESSELLATION_DOMAIN_ORIGIN_UPPER_LEFT:
  5058. return "VK_TESSELLATION_DOMAIN_ORIGIN_UPPER_LEFT";
  5059. default:
  5060. return "Unhandled VkTessellationDomainOrigin";
  5061. }
  5062. }
  5063. static inline const char* string_VkSamplerYcbcrModelConversion(VkSamplerYcbcrModelConversion input_value)
  5064. {
  5065. switch (input_value)
  5066. {
  5067. case VK_SAMPLER_YCBCR_MODEL_CONVERSION_RGB_IDENTITY:
  5068. return "VK_SAMPLER_YCBCR_MODEL_CONVERSION_RGB_IDENTITY";
  5069. case VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_2020:
  5070. return "VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_2020";
  5071. case VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_601:
  5072. return "VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_601";
  5073. case VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_709:
  5074. return "VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_709";
  5075. case VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_IDENTITY:
  5076. return "VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_IDENTITY";
  5077. default:
  5078. return "Unhandled VkSamplerYcbcrModelConversion";
  5079. }
  5080. }
  5081. static inline const char* string_VkSamplerYcbcrRange(VkSamplerYcbcrRange input_value)
  5082. {
  5083. switch (input_value)
  5084. {
  5085. case VK_SAMPLER_YCBCR_RANGE_ITU_FULL:
  5086. return "VK_SAMPLER_YCBCR_RANGE_ITU_FULL";
  5087. case VK_SAMPLER_YCBCR_RANGE_ITU_NARROW:
  5088. return "VK_SAMPLER_YCBCR_RANGE_ITU_NARROW";
  5089. default:
  5090. return "Unhandled VkSamplerYcbcrRange";
  5091. }
  5092. }
  5093. static inline const char* string_VkChromaLocation(VkChromaLocation input_value)
  5094. {
  5095. switch (input_value)
  5096. {
  5097. case VK_CHROMA_LOCATION_COSITED_EVEN:
  5098. return "VK_CHROMA_LOCATION_COSITED_EVEN";
  5099. case VK_CHROMA_LOCATION_MIDPOINT:
  5100. return "VK_CHROMA_LOCATION_MIDPOINT";
  5101. default:
  5102. return "Unhandled VkChromaLocation";
  5103. }
  5104. }
  5105. static inline const char* string_VkDescriptorUpdateTemplateType(VkDescriptorUpdateTemplateType input_value)
  5106. {
  5107. switch (input_value)
  5108. {
  5109. case VK_DESCRIPTOR_UPDATE_TEMPLATE_TYPE_DESCRIPTOR_SET:
  5110. return "VK_DESCRIPTOR_UPDATE_TEMPLATE_TYPE_DESCRIPTOR_SET";
  5111. case VK_DESCRIPTOR_UPDATE_TEMPLATE_TYPE_PUSH_DESCRIPTORS_KHR:
  5112. return "VK_DESCRIPTOR_UPDATE_TEMPLATE_TYPE_PUSH_DESCRIPTORS_KHR";
  5113. default:
  5114. return "Unhandled VkDescriptorUpdateTemplateType";
  5115. }
  5116. }
  5117. static inline const char* string_VkExternalMemoryHandleTypeFlagBits(VkExternalMemoryHandleTypeFlagBits input_value)
  5118. {
  5119. switch (input_value)
  5120. {
  5121. case VK_EXTERNAL_MEMORY_HANDLE_TYPE_ANDROID_HARDWARE_BUFFER_BIT_ANDROID:
  5122. return "VK_EXTERNAL_MEMORY_HANDLE_TYPE_ANDROID_HARDWARE_BUFFER_BIT_ANDROID";
  5123. case VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_TEXTURE_BIT:
  5124. return "VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_TEXTURE_BIT";
  5125. case VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_TEXTURE_KMT_BIT:
  5126. return "VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_TEXTURE_KMT_BIT";
  5127. case VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D12_HEAP_BIT:
  5128. return "VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D12_HEAP_BIT";
  5129. case VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D12_RESOURCE_BIT:
  5130. return "VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D12_RESOURCE_BIT";
  5131. case VK_EXTERNAL_MEMORY_HANDLE_TYPE_DMA_BUF_BIT_EXT:
  5132. return "VK_EXTERNAL_MEMORY_HANDLE_TYPE_DMA_BUF_BIT_EXT";
  5133. case VK_EXTERNAL_MEMORY_HANDLE_TYPE_HOST_ALLOCATION_BIT_EXT:
  5134. return "VK_EXTERNAL_MEMORY_HANDLE_TYPE_HOST_ALLOCATION_BIT_EXT";
  5135. case VK_EXTERNAL_MEMORY_HANDLE_TYPE_HOST_MAPPED_FOREIGN_MEMORY_BIT_EXT:
  5136. return "VK_EXTERNAL_MEMORY_HANDLE_TYPE_HOST_MAPPED_FOREIGN_MEMORY_BIT_EXT";
  5137. case VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_FD_BIT:
  5138. return "VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_FD_BIT";
  5139. case VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_BIT:
  5140. return "VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_BIT";
  5141. case VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT:
  5142. return "VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT";
  5143. case VK_EXTERNAL_MEMORY_HANDLE_TYPE_RDMA_ADDRESS_BIT_NV:
  5144. return "VK_EXTERNAL_MEMORY_HANDLE_TYPE_RDMA_ADDRESS_BIT_NV";
  5145. case VK_EXTERNAL_MEMORY_HANDLE_TYPE_ZIRCON_VMO_BIT_FUCHSIA:
  5146. return "VK_EXTERNAL_MEMORY_HANDLE_TYPE_ZIRCON_VMO_BIT_FUCHSIA";
  5147. default:
  5148. return "Unhandled VkExternalMemoryHandleTypeFlagBits";
  5149. }
  5150. }
  5151. static inline std::string string_VkExternalMemoryHandleTypeFlags(VkExternalMemoryHandleTypeFlags input_value)
  5152. {
  5153. std::string ret;
  5154. int index = 0;
  5155. while(input_value) {
  5156. if (input_value & 1) {
  5157. if( !ret.empty()) ret.append("|");
  5158. ret.append(string_VkExternalMemoryHandleTypeFlagBits(static_cast<VkExternalMemoryHandleTypeFlagBits>(1U << index)));
  5159. }
  5160. ++index;
  5161. input_value >>= 1;
  5162. }
  5163. if( ret.empty()) ret.append(string_VkExternalMemoryHandleTypeFlagBits(static_cast<VkExternalMemoryHandleTypeFlagBits>(0)));
  5164. return ret;
  5165. }
  5166. static inline const char* string_VkExternalMemoryFeatureFlagBits(VkExternalMemoryFeatureFlagBits input_value)
  5167. {
  5168. switch (input_value)
  5169. {
  5170. case VK_EXTERNAL_MEMORY_FEATURE_DEDICATED_ONLY_BIT:
  5171. return "VK_EXTERNAL_MEMORY_FEATURE_DEDICATED_ONLY_BIT";
  5172. case VK_EXTERNAL_MEMORY_FEATURE_EXPORTABLE_BIT:
  5173. return "VK_EXTERNAL_MEMORY_FEATURE_EXPORTABLE_BIT";
  5174. case VK_EXTERNAL_MEMORY_FEATURE_IMPORTABLE_BIT:
  5175. return "VK_EXTERNAL_MEMORY_FEATURE_IMPORTABLE_BIT";
  5176. default:
  5177. return "Unhandled VkExternalMemoryFeatureFlagBits";
  5178. }
  5179. }
  5180. static inline std::string string_VkExternalMemoryFeatureFlags(VkExternalMemoryFeatureFlags input_value)
  5181. {
  5182. std::string ret;
  5183. int index = 0;
  5184. while(input_value) {
  5185. if (input_value & 1) {
  5186. if( !ret.empty()) ret.append("|");
  5187. ret.append(string_VkExternalMemoryFeatureFlagBits(static_cast<VkExternalMemoryFeatureFlagBits>(1U << index)));
  5188. }
  5189. ++index;
  5190. input_value >>= 1;
  5191. }
  5192. if( ret.empty()) ret.append(string_VkExternalMemoryFeatureFlagBits(static_cast<VkExternalMemoryFeatureFlagBits>(0)));
  5193. return ret;
  5194. }
  5195. static inline const char* string_VkExternalFenceHandleTypeFlagBits(VkExternalFenceHandleTypeFlagBits input_value)
  5196. {
  5197. switch (input_value)
  5198. {
  5199. case VK_EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_FD_BIT:
  5200. return "VK_EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_FD_BIT";
  5201. case VK_EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_WIN32_BIT:
  5202. return "VK_EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_WIN32_BIT";
  5203. case VK_EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT:
  5204. return "VK_EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT";
  5205. case VK_EXTERNAL_FENCE_HANDLE_TYPE_SYNC_FD_BIT:
  5206. return "VK_EXTERNAL_FENCE_HANDLE_TYPE_SYNC_FD_BIT";
  5207. default:
  5208. return "Unhandled VkExternalFenceHandleTypeFlagBits";
  5209. }
  5210. }
  5211. static inline std::string string_VkExternalFenceHandleTypeFlags(VkExternalFenceHandleTypeFlags input_value)
  5212. {
  5213. std::string ret;
  5214. int index = 0;
  5215. while(input_value) {
  5216. if (input_value & 1) {
  5217. if( !ret.empty()) ret.append("|");
  5218. ret.append(string_VkExternalFenceHandleTypeFlagBits(static_cast<VkExternalFenceHandleTypeFlagBits>(1U << index)));
  5219. }
  5220. ++index;
  5221. input_value >>= 1;
  5222. }
  5223. if( ret.empty()) ret.append(string_VkExternalFenceHandleTypeFlagBits(static_cast<VkExternalFenceHandleTypeFlagBits>(0)));
  5224. return ret;
  5225. }
  5226. static inline const char* string_VkExternalFenceFeatureFlagBits(VkExternalFenceFeatureFlagBits input_value)
  5227. {
  5228. switch (input_value)
  5229. {
  5230. case VK_EXTERNAL_FENCE_FEATURE_EXPORTABLE_BIT:
  5231. return "VK_EXTERNAL_FENCE_FEATURE_EXPORTABLE_BIT";
  5232. case VK_EXTERNAL_FENCE_FEATURE_IMPORTABLE_BIT:
  5233. return "VK_EXTERNAL_FENCE_FEATURE_IMPORTABLE_BIT";
  5234. default:
  5235. return "Unhandled VkExternalFenceFeatureFlagBits";
  5236. }
  5237. }
  5238. static inline std::string string_VkExternalFenceFeatureFlags(VkExternalFenceFeatureFlags input_value)
  5239. {
  5240. std::string ret;
  5241. int index = 0;
  5242. while(input_value) {
  5243. if (input_value & 1) {
  5244. if( !ret.empty()) ret.append("|");
  5245. ret.append(string_VkExternalFenceFeatureFlagBits(static_cast<VkExternalFenceFeatureFlagBits>(1U << index)));
  5246. }
  5247. ++index;
  5248. input_value >>= 1;
  5249. }
  5250. if( ret.empty()) ret.append(string_VkExternalFenceFeatureFlagBits(static_cast<VkExternalFenceFeatureFlagBits>(0)));
  5251. return ret;
  5252. }
  5253. static inline const char* string_VkFenceImportFlagBits(VkFenceImportFlagBits input_value)
  5254. {
  5255. switch (input_value)
  5256. {
  5257. case VK_FENCE_IMPORT_TEMPORARY_BIT:
  5258. return "VK_FENCE_IMPORT_TEMPORARY_BIT";
  5259. default:
  5260. return "Unhandled VkFenceImportFlagBits";
  5261. }
  5262. }
  5263. static inline std::string string_VkFenceImportFlags(VkFenceImportFlags input_value)
  5264. {
  5265. std::string ret;
  5266. int index = 0;
  5267. while(input_value) {
  5268. if (input_value & 1) {
  5269. if( !ret.empty()) ret.append("|");
  5270. ret.append(string_VkFenceImportFlagBits(static_cast<VkFenceImportFlagBits>(1U << index)));
  5271. }
  5272. ++index;
  5273. input_value >>= 1;
  5274. }
  5275. if( ret.empty()) ret.append(string_VkFenceImportFlagBits(static_cast<VkFenceImportFlagBits>(0)));
  5276. return ret;
  5277. }
  5278. static inline const char* string_VkSemaphoreImportFlagBits(VkSemaphoreImportFlagBits input_value)
  5279. {
  5280. switch (input_value)
  5281. {
  5282. case VK_SEMAPHORE_IMPORT_TEMPORARY_BIT:
  5283. return "VK_SEMAPHORE_IMPORT_TEMPORARY_BIT";
  5284. default:
  5285. return "Unhandled VkSemaphoreImportFlagBits";
  5286. }
  5287. }
  5288. static inline std::string string_VkSemaphoreImportFlags(VkSemaphoreImportFlags input_value)
  5289. {
  5290. std::string ret;
  5291. int index = 0;
  5292. while(input_value) {
  5293. if (input_value & 1) {
  5294. if( !ret.empty()) ret.append("|");
  5295. ret.append(string_VkSemaphoreImportFlagBits(static_cast<VkSemaphoreImportFlagBits>(1U << index)));
  5296. }
  5297. ++index;
  5298. input_value >>= 1;
  5299. }
  5300. if( ret.empty()) ret.append(string_VkSemaphoreImportFlagBits(static_cast<VkSemaphoreImportFlagBits>(0)));
  5301. return ret;
  5302. }
  5303. static inline const char* string_VkExternalSemaphoreHandleTypeFlagBits(VkExternalSemaphoreHandleTypeFlagBits input_value)
  5304. {
  5305. switch (input_value)
  5306. {
  5307. case VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_D3D12_FENCE_BIT:
  5308. return "VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_D3D12_FENCE_BIT";
  5309. case VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_FD_BIT:
  5310. return "VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_FD_BIT";
  5311. case VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_WIN32_BIT:
  5312. return "VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_WIN32_BIT";
  5313. case VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT:
  5314. return "VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT";
  5315. case VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_SYNC_FD_BIT:
  5316. return "VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_SYNC_FD_BIT";
  5317. case VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_ZIRCON_EVENT_BIT_FUCHSIA:
  5318. return "VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_ZIRCON_EVENT_BIT_FUCHSIA";
  5319. default:
  5320. return "Unhandled VkExternalSemaphoreHandleTypeFlagBits";
  5321. }
  5322. }
  5323. static inline std::string string_VkExternalSemaphoreHandleTypeFlags(VkExternalSemaphoreHandleTypeFlags input_value)
  5324. {
  5325. std::string ret;
  5326. int index = 0;
  5327. while(input_value) {
  5328. if (input_value & 1) {
  5329. if( !ret.empty()) ret.append("|");
  5330. ret.append(string_VkExternalSemaphoreHandleTypeFlagBits(static_cast<VkExternalSemaphoreHandleTypeFlagBits>(1U << index)));
  5331. }
  5332. ++index;
  5333. input_value >>= 1;
  5334. }
  5335. if( ret.empty()) ret.append(string_VkExternalSemaphoreHandleTypeFlagBits(static_cast<VkExternalSemaphoreHandleTypeFlagBits>(0)));
  5336. return ret;
  5337. }
  5338. static inline const char* string_VkExternalSemaphoreFeatureFlagBits(VkExternalSemaphoreFeatureFlagBits input_value)
  5339. {
  5340. switch (input_value)
  5341. {
  5342. case VK_EXTERNAL_SEMAPHORE_FEATURE_EXPORTABLE_BIT:
  5343. return "VK_EXTERNAL_SEMAPHORE_FEATURE_EXPORTABLE_BIT";
  5344. case VK_EXTERNAL_SEMAPHORE_FEATURE_IMPORTABLE_BIT:
  5345. return "VK_EXTERNAL_SEMAPHORE_FEATURE_IMPORTABLE_BIT";
  5346. default:
  5347. return "Unhandled VkExternalSemaphoreFeatureFlagBits";
  5348. }
  5349. }
  5350. static inline std::string string_VkExternalSemaphoreFeatureFlags(VkExternalSemaphoreFeatureFlags input_value)
  5351. {
  5352. std::string ret;
  5353. int index = 0;
  5354. while(input_value) {
  5355. if (input_value & 1) {
  5356. if( !ret.empty()) ret.append("|");
  5357. ret.append(string_VkExternalSemaphoreFeatureFlagBits(static_cast<VkExternalSemaphoreFeatureFlagBits>(1U << index)));
  5358. }
  5359. ++index;
  5360. input_value >>= 1;
  5361. }
  5362. if( ret.empty()) ret.append(string_VkExternalSemaphoreFeatureFlagBits(static_cast<VkExternalSemaphoreFeatureFlagBits>(0)));
  5363. return ret;
  5364. }
  5365. static inline const char* string_VkDriverId(VkDriverId input_value)
  5366. {
  5367. switch (input_value)
  5368. {
  5369. case VK_DRIVER_ID_AMD_OPEN_SOURCE:
  5370. return "VK_DRIVER_ID_AMD_OPEN_SOURCE";
  5371. case VK_DRIVER_ID_AMD_PROPRIETARY:
  5372. return "VK_DRIVER_ID_AMD_PROPRIETARY";
  5373. case VK_DRIVER_ID_ARM_PROPRIETARY:
  5374. return "VK_DRIVER_ID_ARM_PROPRIETARY";
  5375. case VK_DRIVER_ID_BROADCOM_PROPRIETARY:
  5376. return "VK_DRIVER_ID_BROADCOM_PROPRIETARY";
  5377. case VK_DRIVER_ID_COREAVI_PROPRIETARY:
  5378. return "VK_DRIVER_ID_COREAVI_PROPRIETARY";
  5379. case VK_DRIVER_ID_GGP_PROPRIETARY:
  5380. return "VK_DRIVER_ID_GGP_PROPRIETARY";
  5381. case VK_DRIVER_ID_GOOGLE_SWIFTSHADER:
  5382. return "VK_DRIVER_ID_GOOGLE_SWIFTSHADER";
  5383. case VK_DRIVER_ID_IMAGINATION_PROPRIETARY:
  5384. return "VK_DRIVER_ID_IMAGINATION_PROPRIETARY";
  5385. case VK_DRIVER_ID_INTEL_OPEN_SOURCE_MESA:
  5386. return "VK_DRIVER_ID_INTEL_OPEN_SOURCE_MESA";
  5387. case VK_DRIVER_ID_INTEL_PROPRIETARY_WINDOWS:
  5388. return "VK_DRIVER_ID_INTEL_PROPRIETARY_WINDOWS";
  5389. case VK_DRIVER_ID_JUICE_PROPRIETARY:
  5390. return "VK_DRIVER_ID_JUICE_PROPRIETARY";
  5391. case VK_DRIVER_ID_MESA_DOZEN:
  5392. return "VK_DRIVER_ID_MESA_DOZEN";
  5393. case VK_DRIVER_ID_MESA_LLVMPIPE:
  5394. return "VK_DRIVER_ID_MESA_LLVMPIPE";
  5395. case VK_DRIVER_ID_MESA_PANVK:
  5396. return "VK_DRIVER_ID_MESA_PANVK";
  5397. case VK_DRIVER_ID_MESA_RADV:
  5398. return "VK_DRIVER_ID_MESA_RADV";
  5399. case VK_DRIVER_ID_MESA_TURNIP:
  5400. return "VK_DRIVER_ID_MESA_TURNIP";
  5401. case VK_DRIVER_ID_MESA_V3DV:
  5402. return "VK_DRIVER_ID_MESA_V3DV";
  5403. case VK_DRIVER_ID_MESA_VENUS:
  5404. return "VK_DRIVER_ID_MESA_VENUS";
  5405. case VK_DRIVER_ID_MOLTENVK:
  5406. return "VK_DRIVER_ID_MOLTENVK";
  5407. case VK_DRIVER_ID_NVIDIA_PROPRIETARY:
  5408. return "VK_DRIVER_ID_NVIDIA_PROPRIETARY";
  5409. case VK_DRIVER_ID_QUALCOMM_PROPRIETARY:
  5410. return "VK_DRIVER_ID_QUALCOMM_PROPRIETARY";
  5411. case VK_DRIVER_ID_SAMSUNG_PROPRIETARY:
  5412. return "VK_DRIVER_ID_SAMSUNG_PROPRIETARY";
  5413. case VK_DRIVER_ID_VERISILICON_PROPRIETARY:
  5414. return "VK_DRIVER_ID_VERISILICON_PROPRIETARY";
  5415. default:
  5416. return "Unhandled VkDriverId";
  5417. }
  5418. }
  5419. static inline const char* string_VkShaderFloatControlsIndependence(VkShaderFloatControlsIndependence input_value)
  5420. {
  5421. switch (input_value)
  5422. {
  5423. case VK_SHADER_FLOAT_CONTROLS_INDEPENDENCE_32_BIT_ONLY:
  5424. return "VK_SHADER_FLOAT_CONTROLS_INDEPENDENCE_32_BIT_ONLY";
  5425. case VK_SHADER_FLOAT_CONTROLS_INDEPENDENCE_ALL:
  5426. return "VK_SHADER_FLOAT_CONTROLS_INDEPENDENCE_ALL";
  5427. case VK_SHADER_FLOAT_CONTROLS_INDEPENDENCE_NONE:
  5428. return "VK_SHADER_FLOAT_CONTROLS_INDEPENDENCE_NONE";
  5429. default:
  5430. return "Unhandled VkShaderFloatControlsIndependence";
  5431. }
  5432. }
  5433. static inline const char* string_VkResolveModeFlagBits(VkResolveModeFlagBits input_value)
  5434. {
  5435. switch (input_value)
  5436. {
  5437. case VK_RESOLVE_MODE_AVERAGE_BIT:
  5438. return "VK_RESOLVE_MODE_AVERAGE_BIT";
  5439. case VK_RESOLVE_MODE_MAX_BIT:
  5440. return "VK_RESOLVE_MODE_MAX_BIT";
  5441. case VK_RESOLVE_MODE_MIN_BIT:
  5442. return "VK_RESOLVE_MODE_MIN_BIT";
  5443. case VK_RESOLVE_MODE_NONE:
  5444. return "VK_RESOLVE_MODE_NONE";
  5445. case VK_RESOLVE_MODE_SAMPLE_ZERO_BIT:
  5446. return "VK_RESOLVE_MODE_SAMPLE_ZERO_BIT";
  5447. default:
  5448. return "Unhandled VkResolveModeFlagBits";
  5449. }
  5450. }
  5451. static inline std::string string_VkResolveModeFlags(VkResolveModeFlags input_value)
  5452. {
  5453. std::string ret;
  5454. int index = 0;
  5455. while(input_value) {
  5456. if (input_value & 1) {
  5457. if( !ret.empty()) ret.append("|");
  5458. ret.append(string_VkResolveModeFlagBits(static_cast<VkResolveModeFlagBits>(1U << index)));
  5459. }
  5460. ++index;
  5461. input_value >>= 1;
  5462. }
  5463. if( ret.empty()) ret.append(string_VkResolveModeFlagBits(static_cast<VkResolveModeFlagBits>(0)));
  5464. return ret;
  5465. }
  5466. static inline const char* string_VkDescriptorBindingFlagBits(VkDescriptorBindingFlagBits input_value)
  5467. {
  5468. switch (input_value)
  5469. {
  5470. case VK_DESCRIPTOR_BINDING_PARTIALLY_BOUND_BIT:
  5471. return "VK_DESCRIPTOR_BINDING_PARTIALLY_BOUND_BIT";
  5472. case VK_DESCRIPTOR_BINDING_UPDATE_AFTER_BIND_BIT:
  5473. return "VK_DESCRIPTOR_BINDING_UPDATE_AFTER_BIND_BIT";
  5474. case VK_DESCRIPTOR_BINDING_UPDATE_UNUSED_WHILE_PENDING_BIT:
  5475. return "VK_DESCRIPTOR_BINDING_UPDATE_UNUSED_WHILE_PENDING_BIT";
  5476. case VK_DESCRIPTOR_BINDING_VARIABLE_DESCRIPTOR_COUNT_BIT:
  5477. return "VK_DESCRIPTOR_BINDING_VARIABLE_DESCRIPTOR_COUNT_BIT";
  5478. default:
  5479. return "Unhandled VkDescriptorBindingFlagBits";
  5480. }
  5481. }
  5482. static inline std::string string_VkDescriptorBindingFlags(VkDescriptorBindingFlags input_value)
  5483. {
  5484. std::string ret;
  5485. int index = 0;
  5486. while(input_value) {
  5487. if (input_value & 1) {
  5488. if( !ret.empty()) ret.append("|");
  5489. ret.append(string_VkDescriptorBindingFlagBits(static_cast<VkDescriptorBindingFlagBits>(1U << index)));
  5490. }
  5491. ++index;
  5492. input_value >>= 1;
  5493. }
  5494. if( ret.empty()) ret.append(string_VkDescriptorBindingFlagBits(static_cast<VkDescriptorBindingFlagBits>(0)));
  5495. return ret;
  5496. }
  5497. static inline const char* string_VkSamplerReductionMode(VkSamplerReductionMode input_value)
  5498. {
  5499. switch (input_value)
  5500. {
  5501. case VK_SAMPLER_REDUCTION_MODE_MAX:
  5502. return "VK_SAMPLER_REDUCTION_MODE_MAX";
  5503. case VK_SAMPLER_REDUCTION_MODE_MIN:
  5504. return "VK_SAMPLER_REDUCTION_MODE_MIN";
  5505. case VK_SAMPLER_REDUCTION_MODE_WEIGHTED_AVERAGE:
  5506. return "VK_SAMPLER_REDUCTION_MODE_WEIGHTED_AVERAGE";
  5507. default:
  5508. return "Unhandled VkSamplerReductionMode";
  5509. }
  5510. }
  5511. static inline const char* string_VkSemaphoreType(VkSemaphoreType input_value)
  5512. {
  5513. switch (input_value)
  5514. {
  5515. case VK_SEMAPHORE_TYPE_BINARY:
  5516. return "VK_SEMAPHORE_TYPE_BINARY";
  5517. case VK_SEMAPHORE_TYPE_TIMELINE:
  5518. return "VK_SEMAPHORE_TYPE_TIMELINE";
  5519. default:
  5520. return "Unhandled VkSemaphoreType";
  5521. }
  5522. }
  5523. static inline const char* string_VkSemaphoreWaitFlagBits(VkSemaphoreWaitFlagBits input_value)
  5524. {
  5525. switch (input_value)
  5526. {
  5527. case VK_SEMAPHORE_WAIT_ANY_BIT:
  5528. return "VK_SEMAPHORE_WAIT_ANY_BIT";
  5529. default:
  5530. return "Unhandled VkSemaphoreWaitFlagBits";
  5531. }
  5532. }
  5533. static inline std::string string_VkSemaphoreWaitFlags(VkSemaphoreWaitFlags input_value)
  5534. {
  5535. std::string ret;
  5536. int index = 0;
  5537. while(input_value) {
  5538. if (input_value & 1) {
  5539. if( !ret.empty()) ret.append("|");
  5540. ret.append(string_VkSemaphoreWaitFlagBits(static_cast<VkSemaphoreWaitFlagBits>(1U << index)));
  5541. }
  5542. ++index;
  5543. input_value >>= 1;
  5544. }
  5545. if( ret.empty()) ret.append(string_VkSemaphoreWaitFlagBits(static_cast<VkSemaphoreWaitFlagBits>(0)));
  5546. return ret;
  5547. }
  5548. static inline const char* string_VkPipelineCreationFeedbackFlagBits(VkPipelineCreationFeedbackFlagBits input_value)
  5549. {
  5550. switch (input_value)
  5551. {
  5552. case VK_PIPELINE_CREATION_FEEDBACK_APPLICATION_PIPELINE_CACHE_HIT_BIT:
  5553. return "VK_PIPELINE_CREATION_FEEDBACK_APPLICATION_PIPELINE_CACHE_HIT_BIT";
  5554. case VK_PIPELINE_CREATION_FEEDBACK_BASE_PIPELINE_ACCELERATION_BIT:
  5555. return "VK_PIPELINE_CREATION_FEEDBACK_BASE_PIPELINE_ACCELERATION_BIT";
  5556. case VK_PIPELINE_CREATION_FEEDBACK_VALID_BIT:
  5557. return "VK_PIPELINE_CREATION_FEEDBACK_VALID_BIT";
  5558. default:
  5559. return "Unhandled VkPipelineCreationFeedbackFlagBits";
  5560. }
  5561. }
  5562. static inline std::string string_VkPipelineCreationFeedbackFlags(VkPipelineCreationFeedbackFlags input_value)
  5563. {
  5564. std::string ret;
  5565. int index = 0;
  5566. while(input_value) {
  5567. if (input_value & 1) {
  5568. if( !ret.empty()) ret.append("|");
  5569. ret.append(string_VkPipelineCreationFeedbackFlagBits(static_cast<VkPipelineCreationFeedbackFlagBits>(1U << index)));
  5570. }
  5571. ++index;
  5572. input_value >>= 1;
  5573. }
  5574. if( ret.empty()) ret.append(string_VkPipelineCreationFeedbackFlagBits(static_cast<VkPipelineCreationFeedbackFlagBits>(0)));
  5575. return ret;
  5576. }
  5577. static inline const char* string_VkToolPurposeFlagBits(VkToolPurposeFlagBits input_value)
  5578. {
  5579. switch (input_value)
  5580. {
  5581. case VK_TOOL_PURPOSE_ADDITIONAL_FEATURES_BIT:
  5582. return "VK_TOOL_PURPOSE_ADDITIONAL_FEATURES_BIT";
  5583. case VK_TOOL_PURPOSE_DEBUG_MARKERS_BIT_EXT:
  5584. return "VK_TOOL_PURPOSE_DEBUG_MARKERS_BIT_EXT";
  5585. case VK_TOOL_PURPOSE_DEBUG_REPORTING_BIT_EXT:
  5586. return "VK_TOOL_PURPOSE_DEBUG_REPORTING_BIT_EXT";
  5587. case VK_TOOL_PURPOSE_MODIFYING_FEATURES_BIT:
  5588. return "VK_TOOL_PURPOSE_MODIFYING_FEATURES_BIT";
  5589. case VK_TOOL_PURPOSE_PROFILING_BIT:
  5590. return "VK_TOOL_PURPOSE_PROFILING_BIT";
  5591. case VK_TOOL_PURPOSE_TRACING_BIT:
  5592. return "VK_TOOL_PURPOSE_TRACING_BIT";
  5593. case VK_TOOL_PURPOSE_VALIDATION_BIT:
  5594. return "VK_TOOL_PURPOSE_VALIDATION_BIT";
  5595. default:
  5596. return "Unhandled VkToolPurposeFlagBits";
  5597. }
  5598. }
  5599. static inline std::string string_VkToolPurposeFlags(VkToolPurposeFlags input_value)
  5600. {
  5601. std::string ret;
  5602. int index = 0;
  5603. while(input_value) {
  5604. if (input_value & 1) {
  5605. if( !ret.empty()) ret.append("|");
  5606. ret.append(string_VkToolPurposeFlagBits(static_cast<VkToolPurposeFlagBits>(1U << index)));
  5607. }
  5608. ++index;
  5609. input_value >>= 1;
  5610. }
  5611. if( ret.empty()) ret.append(string_VkToolPurposeFlagBits(static_cast<VkToolPurposeFlagBits>(0)));
  5612. return ret;
  5613. }
  5614. static inline const char* string_VkPipelineStageFlagBits2(uint64_t input_value)
  5615. {
  5616. switch (input_value)
  5617. {
  5618. case VK_PIPELINE_STAGE_2_ACCELERATION_STRUCTURE_BUILD_BIT_KHR:
  5619. return "VK_PIPELINE_STAGE_2_ACCELERATION_STRUCTURE_BUILD_BIT_KHR";
  5620. case VK_PIPELINE_STAGE_2_ACCELERATION_STRUCTURE_COPY_BIT_KHR:
  5621. return "VK_PIPELINE_STAGE_2_ACCELERATION_STRUCTURE_COPY_BIT_KHR";
  5622. case VK_PIPELINE_STAGE_2_ALL_COMMANDS_BIT:
  5623. return "VK_PIPELINE_STAGE_2_ALL_COMMANDS_BIT";
  5624. case VK_PIPELINE_STAGE_2_ALL_GRAPHICS_BIT:
  5625. return "VK_PIPELINE_STAGE_2_ALL_GRAPHICS_BIT";
  5626. case VK_PIPELINE_STAGE_2_ALL_TRANSFER_BIT:
  5627. return "VK_PIPELINE_STAGE_2_ALL_TRANSFER_BIT";
  5628. case VK_PIPELINE_STAGE_2_BLIT_BIT:
  5629. return "VK_PIPELINE_STAGE_2_BLIT_BIT";
  5630. case VK_PIPELINE_STAGE_2_BOTTOM_OF_PIPE_BIT:
  5631. return "VK_PIPELINE_STAGE_2_BOTTOM_OF_PIPE_BIT";
  5632. case VK_PIPELINE_STAGE_2_CLEAR_BIT:
  5633. return "VK_PIPELINE_STAGE_2_CLEAR_BIT";
  5634. case VK_PIPELINE_STAGE_2_COLOR_ATTACHMENT_OUTPUT_BIT:
  5635. return "VK_PIPELINE_STAGE_2_COLOR_ATTACHMENT_OUTPUT_BIT";
  5636. case VK_PIPELINE_STAGE_2_COMMAND_PREPROCESS_BIT_NV:
  5637. return "VK_PIPELINE_STAGE_2_COMMAND_PREPROCESS_BIT_NV";
  5638. case VK_PIPELINE_STAGE_2_COMPUTE_SHADER_BIT:
  5639. return "VK_PIPELINE_STAGE_2_COMPUTE_SHADER_BIT";
  5640. case VK_PIPELINE_STAGE_2_CONDITIONAL_RENDERING_BIT_EXT:
  5641. return "VK_PIPELINE_STAGE_2_CONDITIONAL_RENDERING_BIT_EXT";
  5642. case VK_PIPELINE_STAGE_2_COPY_BIT:
  5643. return "VK_PIPELINE_STAGE_2_COPY_BIT";
  5644. case VK_PIPELINE_STAGE_2_DRAW_INDIRECT_BIT:
  5645. return "VK_PIPELINE_STAGE_2_DRAW_INDIRECT_BIT";
  5646. case VK_PIPELINE_STAGE_2_EARLY_FRAGMENT_TESTS_BIT:
  5647. return "VK_PIPELINE_STAGE_2_EARLY_FRAGMENT_TESTS_BIT";
  5648. case VK_PIPELINE_STAGE_2_FRAGMENT_DENSITY_PROCESS_BIT_EXT:
  5649. return "VK_PIPELINE_STAGE_2_FRAGMENT_DENSITY_PROCESS_BIT_EXT";
  5650. case VK_PIPELINE_STAGE_2_FRAGMENT_SHADER_BIT:
  5651. return "VK_PIPELINE_STAGE_2_FRAGMENT_SHADER_BIT";
  5652. case VK_PIPELINE_STAGE_2_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHR:
  5653. return "VK_PIPELINE_STAGE_2_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHR";
  5654. case VK_PIPELINE_STAGE_2_GEOMETRY_SHADER_BIT:
  5655. return "VK_PIPELINE_STAGE_2_GEOMETRY_SHADER_BIT";
  5656. case VK_PIPELINE_STAGE_2_HOST_BIT:
  5657. return "VK_PIPELINE_STAGE_2_HOST_BIT";
  5658. case VK_PIPELINE_STAGE_2_INDEX_INPUT_BIT:
  5659. return "VK_PIPELINE_STAGE_2_INDEX_INPUT_BIT";
  5660. case VK_PIPELINE_STAGE_2_INVOCATION_MASK_BIT_HUAWEI:
  5661. return "VK_PIPELINE_STAGE_2_INVOCATION_MASK_BIT_HUAWEI";
  5662. case VK_PIPELINE_STAGE_2_LATE_FRAGMENT_TESTS_BIT:
  5663. return "VK_PIPELINE_STAGE_2_LATE_FRAGMENT_TESTS_BIT";
  5664. case VK_PIPELINE_STAGE_2_MESH_SHADER_BIT_EXT:
  5665. return "VK_PIPELINE_STAGE_2_MESH_SHADER_BIT_EXT";
  5666. case VK_PIPELINE_STAGE_2_MICROMAP_BUILD_BIT_EXT:
  5667. return "VK_PIPELINE_STAGE_2_MICROMAP_BUILD_BIT_EXT";
  5668. case VK_PIPELINE_STAGE_2_NONE:
  5669. return "VK_PIPELINE_STAGE_2_NONE";
  5670. case VK_PIPELINE_STAGE_2_OPTICAL_FLOW_BIT_NV:
  5671. return "VK_PIPELINE_STAGE_2_OPTICAL_FLOW_BIT_NV";
  5672. case VK_PIPELINE_STAGE_2_PRE_RASTERIZATION_SHADERS_BIT:
  5673. return "VK_PIPELINE_STAGE_2_PRE_RASTERIZATION_SHADERS_BIT";
  5674. case VK_PIPELINE_STAGE_2_RAY_TRACING_SHADER_BIT_KHR:
  5675. return "VK_PIPELINE_STAGE_2_RAY_TRACING_SHADER_BIT_KHR";
  5676. case VK_PIPELINE_STAGE_2_RESOLVE_BIT:
  5677. return "VK_PIPELINE_STAGE_2_RESOLVE_BIT";
  5678. case VK_PIPELINE_STAGE_2_SUBPASS_SHADING_BIT_HUAWEI:
  5679. return "VK_PIPELINE_STAGE_2_SUBPASS_SHADING_BIT_HUAWEI";
  5680. case VK_PIPELINE_STAGE_2_TASK_SHADER_BIT_EXT:
  5681. return "VK_PIPELINE_STAGE_2_TASK_SHADER_BIT_EXT";
  5682. case VK_PIPELINE_STAGE_2_TESSELLATION_CONTROL_SHADER_BIT:
  5683. return "VK_PIPELINE_STAGE_2_TESSELLATION_CONTROL_SHADER_BIT";
  5684. case VK_PIPELINE_STAGE_2_TESSELLATION_EVALUATION_SHADER_BIT:
  5685. return "VK_PIPELINE_STAGE_2_TESSELLATION_EVALUATION_SHADER_BIT";
  5686. case VK_PIPELINE_STAGE_2_TOP_OF_PIPE_BIT:
  5687. return "VK_PIPELINE_STAGE_2_TOP_OF_PIPE_BIT";
  5688. case VK_PIPELINE_STAGE_2_TRANSFORM_FEEDBACK_BIT_EXT:
  5689. return "VK_PIPELINE_STAGE_2_TRANSFORM_FEEDBACK_BIT_EXT";
  5690. case VK_PIPELINE_STAGE_2_VERTEX_ATTRIBUTE_INPUT_BIT:
  5691. return "VK_PIPELINE_STAGE_2_VERTEX_ATTRIBUTE_INPUT_BIT";
  5692. case VK_PIPELINE_STAGE_2_VERTEX_INPUT_BIT:
  5693. return "VK_PIPELINE_STAGE_2_VERTEX_INPUT_BIT";
  5694. case VK_PIPELINE_STAGE_2_VERTEX_SHADER_BIT:
  5695. return "VK_PIPELINE_STAGE_2_VERTEX_SHADER_BIT";
  5696. #ifdef VK_ENABLE_BETA_EXTENSIONS
  5697. case VK_PIPELINE_STAGE_2_VIDEO_DECODE_BIT_KHR:
  5698. return "VK_PIPELINE_STAGE_2_VIDEO_DECODE_BIT_KHR";
  5699. #endif // VK_ENABLE_BETA_EXTENSIONS
  5700. #ifdef VK_ENABLE_BETA_EXTENSIONS
  5701. case VK_PIPELINE_STAGE_2_VIDEO_ENCODE_BIT_KHR:
  5702. return "VK_PIPELINE_STAGE_2_VIDEO_ENCODE_BIT_KHR";
  5703. #endif // VK_ENABLE_BETA_EXTENSIONS
  5704. default:
  5705. return "Unhandled VkPipelineStageFlagBits2";
  5706. }
  5707. }
  5708. static inline std::string string_VkPipelineStageFlags2(VkPipelineStageFlags2 input_value)
  5709. {
  5710. std::string ret;
  5711. int index = 0;
  5712. while(input_value) {
  5713. if (input_value & 1) {
  5714. if( !ret.empty()) ret.append("|");
  5715. ret.append(string_VkPipelineStageFlagBits2(static_cast<uint64_t>(1ULL << index)));
  5716. }
  5717. ++index;
  5718. input_value >>= 1;
  5719. }
  5720. if( ret.empty()) ret.append(string_VkPipelineStageFlagBits2(static_cast<uint64_t>(0)));
  5721. return ret;
  5722. }
  5723. static inline const char* string_VkAccessFlagBits2(uint64_t input_value)
  5724. {
  5725. switch (input_value)
  5726. {
  5727. case VK_ACCESS_2_ACCELERATION_STRUCTURE_READ_BIT_KHR:
  5728. return "VK_ACCESS_2_ACCELERATION_STRUCTURE_READ_BIT_KHR";
  5729. case VK_ACCESS_2_ACCELERATION_STRUCTURE_WRITE_BIT_KHR:
  5730. return "VK_ACCESS_2_ACCELERATION_STRUCTURE_WRITE_BIT_KHR";
  5731. case VK_ACCESS_2_COLOR_ATTACHMENT_READ_BIT:
  5732. return "VK_ACCESS_2_COLOR_ATTACHMENT_READ_BIT";
  5733. case VK_ACCESS_2_COLOR_ATTACHMENT_READ_NONCOHERENT_BIT_EXT:
  5734. return "VK_ACCESS_2_COLOR_ATTACHMENT_READ_NONCOHERENT_BIT_EXT";
  5735. case VK_ACCESS_2_COLOR_ATTACHMENT_WRITE_BIT:
  5736. return "VK_ACCESS_2_COLOR_ATTACHMENT_WRITE_BIT";
  5737. case VK_ACCESS_2_COMMAND_PREPROCESS_READ_BIT_NV:
  5738. return "VK_ACCESS_2_COMMAND_PREPROCESS_READ_BIT_NV";
  5739. case VK_ACCESS_2_COMMAND_PREPROCESS_WRITE_BIT_NV:
  5740. return "VK_ACCESS_2_COMMAND_PREPROCESS_WRITE_BIT_NV";
  5741. case VK_ACCESS_2_CONDITIONAL_RENDERING_READ_BIT_EXT:
  5742. return "VK_ACCESS_2_CONDITIONAL_RENDERING_READ_BIT_EXT";
  5743. case VK_ACCESS_2_DEPTH_STENCIL_ATTACHMENT_READ_BIT:
  5744. return "VK_ACCESS_2_DEPTH_STENCIL_ATTACHMENT_READ_BIT";
  5745. case VK_ACCESS_2_DEPTH_STENCIL_ATTACHMENT_WRITE_BIT:
  5746. return "VK_ACCESS_2_DEPTH_STENCIL_ATTACHMENT_WRITE_BIT";
  5747. case VK_ACCESS_2_FRAGMENT_DENSITY_MAP_READ_BIT_EXT:
  5748. return "VK_ACCESS_2_FRAGMENT_DENSITY_MAP_READ_BIT_EXT";
  5749. case VK_ACCESS_2_FRAGMENT_SHADING_RATE_ATTACHMENT_READ_BIT_KHR:
  5750. return "VK_ACCESS_2_FRAGMENT_SHADING_RATE_ATTACHMENT_READ_BIT_KHR";
  5751. case VK_ACCESS_2_HOST_READ_BIT:
  5752. return "VK_ACCESS_2_HOST_READ_BIT";
  5753. case VK_ACCESS_2_HOST_WRITE_BIT:
  5754. return "VK_ACCESS_2_HOST_WRITE_BIT";
  5755. case VK_ACCESS_2_INDEX_READ_BIT:
  5756. return "VK_ACCESS_2_INDEX_READ_BIT";
  5757. case VK_ACCESS_2_INDIRECT_COMMAND_READ_BIT:
  5758. return "VK_ACCESS_2_INDIRECT_COMMAND_READ_BIT";
  5759. case VK_ACCESS_2_INPUT_ATTACHMENT_READ_BIT:
  5760. return "VK_ACCESS_2_INPUT_ATTACHMENT_READ_BIT";
  5761. case VK_ACCESS_2_INVOCATION_MASK_READ_BIT_HUAWEI:
  5762. return "VK_ACCESS_2_INVOCATION_MASK_READ_BIT_HUAWEI";
  5763. case VK_ACCESS_2_MEMORY_READ_BIT:
  5764. return "VK_ACCESS_2_MEMORY_READ_BIT";
  5765. case VK_ACCESS_2_MEMORY_WRITE_BIT:
  5766. return "VK_ACCESS_2_MEMORY_WRITE_BIT";
  5767. case VK_ACCESS_2_MICROMAP_READ_BIT_EXT:
  5768. return "VK_ACCESS_2_MICROMAP_READ_BIT_EXT";
  5769. case VK_ACCESS_2_MICROMAP_WRITE_BIT_EXT:
  5770. return "VK_ACCESS_2_MICROMAP_WRITE_BIT_EXT";
  5771. case VK_ACCESS_2_NONE:
  5772. return "VK_ACCESS_2_NONE";
  5773. case VK_ACCESS_2_OPTICAL_FLOW_READ_BIT_NV:
  5774. return "VK_ACCESS_2_OPTICAL_FLOW_READ_BIT_NV";
  5775. case VK_ACCESS_2_OPTICAL_FLOW_WRITE_BIT_NV:
  5776. return "VK_ACCESS_2_OPTICAL_FLOW_WRITE_BIT_NV";
  5777. case VK_ACCESS_2_SHADER_BINDING_TABLE_READ_BIT_KHR:
  5778. return "VK_ACCESS_2_SHADER_BINDING_TABLE_READ_BIT_KHR";
  5779. case VK_ACCESS_2_SHADER_READ_BIT:
  5780. return "VK_ACCESS_2_SHADER_READ_BIT";
  5781. case VK_ACCESS_2_SHADER_SAMPLED_READ_BIT:
  5782. return "VK_ACCESS_2_SHADER_SAMPLED_READ_BIT";
  5783. case VK_ACCESS_2_SHADER_STORAGE_READ_BIT:
  5784. return "VK_ACCESS_2_SHADER_STORAGE_READ_BIT";
  5785. case VK_ACCESS_2_SHADER_STORAGE_WRITE_BIT:
  5786. return "VK_ACCESS_2_SHADER_STORAGE_WRITE_BIT";
  5787. case VK_ACCESS_2_SHADER_WRITE_BIT:
  5788. return "VK_ACCESS_2_SHADER_WRITE_BIT";
  5789. case VK_ACCESS_2_TRANSFER_READ_BIT:
  5790. return "VK_ACCESS_2_TRANSFER_READ_BIT";
  5791. case VK_ACCESS_2_TRANSFER_WRITE_BIT:
  5792. return "VK_ACCESS_2_TRANSFER_WRITE_BIT";
  5793. case VK_ACCESS_2_TRANSFORM_FEEDBACK_COUNTER_READ_BIT_EXT:
  5794. return "VK_ACCESS_2_TRANSFORM_FEEDBACK_COUNTER_READ_BIT_EXT";
  5795. case VK_ACCESS_2_TRANSFORM_FEEDBACK_COUNTER_WRITE_BIT_EXT:
  5796. return "VK_ACCESS_2_TRANSFORM_FEEDBACK_COUNTER_WRITE_BIT_EXT";
  5797. case VK_ACCESS_2_TRANSFORM_FEEDBACK_WRITE_BIT_EXT:
  5798. return "VK_ACCESS_2_TRANSFORM_FEEDBACK_WRITE_BIT_EXT";
  5799. case VK_ACCESS_2_UNIFORM_READ_BIT:
  5800. return "VK_ACCESS_2_UNIFORM_READ_BIT";
  5801. case VK_ACCESS_2_VERTEX_ATTRIBUTE_READ_BIT:
  5802. return "VK_ACCESS_2_VERTEX_ATTRIBUTE_READ_BIT";
  5803. #ifdef VK_ENABLE_BETA_EXTENSIONS
  5804. case VK_ACCESS_2_VIDEO_DECODE_READ_BIT_KHR:
  5805. return "VK_ACCESS_2_VIDEO_DECODE_READ_BIT_KHR";
  5806. #endif // VK_ENABLE_BETA_EXTENSIONS
  5807. #ifdef VK_ENABLE_BETA_EXTENSIONS
  5808. case VK_ACCESS_2_VIDEO_DECODE_WRITE_BIT_KHR:
  5809. return "VK_ACCESS_2_VIDEO_DECODE_WRITE_BIT_KHR";
  5810. #endif // VK_ENABLE_BETA_EXTENSIONS
  5811. #ifdef VK_ENABLE_BETA_EXTENSIONS
  5812. case VK_ACCESS_2_VIDEO_ENCODE_READ_BIT_KHR:
  5813. return "VK_ACCESS_2_VIDEO_ENCODE_READ_BIT_KHR";
  5814. #endif // VK_ENABLE_BETA_EXTENSIONS
  5815. #ifdef VK_ENABLE_BETA_EXTENSIONS
  5816. case VK_ACCESS_2_VIDEO_ENCODE_WRITE_BIT_KHR:
  5817. return "VK_ACCESS_2_VIDEO_ENCODE_WRITE_BIT_KHR";
  5818. #endif // VK_ENABLE_BETA_EXTENSIONS
  5819. default:
  5820. return "Unhandled VkAccessFlagBits2";
  5821. }
  5822. }
  5823. static inline std::string string_VkAccessFlags2(VkAccessFlags2 input_value)
  5824. {
  5825. std::string ret;
  5826. int index = 0;
  5827. while(input_value) {
  5828. if (input_value & 1) {
  5829. if( !ret.empty()) ret.append("|");
  5830. ret.append(string_VkAccessFlagBits2(static_cast<uint64_t>(1ULL << index)));
  5831. }
  5832. ++index;
  5833. input_value >>= 1;
  5834. }
  5835. if( ret.empty()) ret.append(string_VkAccessFlagBits2(static_cast<uint64_t>(0)));
  5836. return ret;
  5837. }
  5838. static inline const char* string_VkSubmitFlagBits(VkSubmitFlagBits input_value)
  5839. {
  5840. switch (input_value)
  5841. {
  5842. case VK_SUBMIT_PROTECTED_BIT:
  5843. return "VK_SUBMIT_PROTECTED_BIT";
  5844. default:
  5845. return "Unhandled VkSubmitFlagBits";
  5846. }
  5847. }
  5848. static inline std::string string_VkSubmitFlags(VkSubmitFlags input_value)
  5849. {
  5850. std::string ret;
  5851. int index = 0;
  5852. while(input_value) {
  5853. if (input_value & 1) {
  5854. if( !ret.empty()) ret.append("|");
  5855. ret.append(string_VkSubmitFlagBits(static_cast<VkSubmitFlagBits>(1U << index)));
  5856. }
  5857. ++index;
  5858. input_value >>= 1;
  5859. }
  5860. if( ret.empty()) ret.append(string_VkSubmitFlagBits(static_cast<VkSubmitFlagBits>(0)));
  5861. return ret;
  5862. }
  5863. static inline const char* string_VkRenderingFlagBits(VkRenderingFlagBits input_value)
  5864. {
  5865. switch (input_value)
  5866. {
  5867. case VK_RENDERING_CONTENTS_SECONDARY_COMMAND_BUFFERS_BIT:
  5868. return "VK_RENDERING_CONTENTS_SECONDARY_COMMAND_BUFFERS_BIT";
  5869. case VK_RENDERING_ENABLE_LEGACY_DITHERING_BIT_EXT:
  5870. return "VK_RENDERING_ENABLE_LEGACY_DITHERING_BIT_EXT";
  5871. case VK_RENDERING_RESUMING_BIT:
  5872. return "VK_RENDERING_RESUMING_BIT";
  5873. case VK_RENDERING_SUSPENDING_BIT:
  5874. return "VK_RENDERING_SUSPENDING_BIT";
  5875. default:
  5876. return "Unhandled VkRenderingFlagBits";
  5877. }
  5878. }
  5879. static inline std::string string_VkRenderingFlags(VkRenderingFlags input_value)
  5880. {
  5881. std::string ret;
  5882. int index = 0;
  5883. while(input_value) {
  5884. if (input_value & 1) {
  5885. if( !ret.empty()) ret.append("|");
  5886. ret.append(string_VkRenderingFlagBits(static_cast<VkRenderingFlagBits>(1U << index)));
  5887. }
  5888. ++index;
  5889. input_value >>= 1;
  5890. }
  5891. if( ret.empty()) ret.append(string_VkRenderingFlagBits(static_cast<VkRenderingFlagBits>(0)));
  5892. return ret;
  5893. }
  5894. static inline const char* string_VkFormatFeatureFlagBits2(uint64_t input_value)
  5895. {
  5896. switch (input_value)
  5897. {
  5898. case VK_FORMAT_FEATURE_2_ACCELERATION_STRUCTURE_VERTEX_BUFFER_BIT_KHR:
  5899. return "VK_FORMAT_FEATURE_2_ACCELERATION_STRUCTURE_VERTEX_BUFFER_BIT_KHR";
  5900. case VK_FORMAT_FEATURE_2_BLIT_DST_BIT:
  5901. return "VK_FORMAT_FEATURE_2_BLIT_DST_BIT";
  5902. case VK_FORMAT_FEATURE_2_BLIT_SRC_BIT:
  5903. return "VK_FORMAT_FEATURE_2_BLIT_SRC_BIT";
  5904. case VK_FORMAT_FEATURE_2_BLOCK_MATCHING_BIT_QCOM:
  5905. return "VK_FORMAT_FEATURE_2_BLOCK_MATCHING_BIT_QCOM";
  5906. case VK_FORMAT_FEATURE_2_BOX_FILTER_SAMPLED_BIT_QCOM:
  5907. return "VK_FORMAT_FEATURE_2_BOX_FILTER_SAMPLED_BIT_QCOM";
  5908. case VK_FORMAT_FEATURE_2_COLOR_ATTACHMENT_BIT:
  5909. return "VK_FORMAT_FEATURE_2_COLOR_ATTACHMENT_BIT";
  5910. case VK_FORMAT_FEATURE_2_COLOR_ATTACHMENT_BLEND_BIT:
  5911. return "VK_FORMAT_FEATURE_2_COLOR_ATTACHMENT_BLEND_BIT";
  5912. case VK_FORMAT_FEATURE_2_COSITED_CHROMA_SAMPLES_BIT:
  5913. return "VK_FORMAT_FEATURE_2_COSITED_CHROMA_SAMPLES_BIT";
  5914. case VK_FORMAT_FEATURE_2_DEPTH_STENCIL_ATTACHMENT_BIT:
  5915. return "VK_FORMAT_FEATURE_2_DEPTH_STENCIL_ATTACHMENT_BIT";
  5916. case VK_FORMAT_FEATURE_2_DISJOINT_BIT:
  5917. return "VK_FORMAT_FEATURE_2_DISJOINT_BIT";
  5918. case VK_FORMAT_FEATURE_2_FRAGMENT_DENSITY_MAP_BIT_EXT:
  5919. return "VK_FORMAT_FEATURE_2_FRAGMENT_DENSITY_MAP_BIT_EXT";
  5920. case VK_FORMAT_FEATURE_2_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHR:
  5921. return "VK_FORMAT_FEATURE_2_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHR";
  5922. case VK_FORMAT_FEATURE_2_LINEAR_COLOR_ATTACHMENT_BIT_NV:
  5923. return "VK_FORMAT_FEATURE_2_LINEAR_COLOR_ATTACHMENT_BIT_NV";
  5924. case VK_FORMAT_FEATURE_2_MIDPOINT_CHROMA_SAMPLES_BIT:
  5925. return "VK_FORMAT_FEATURE_2_MIDPOINT_CHROMA_SAMPLES_BIT";
  5926. case VK_FORMAT_FEATURE_2_OPTICAL_FLOW_COST_BIT_NV:
  5927. return "VK_FORMAT_FEATURE_2_OPTICAL_FLOW_COST_BIT_NV";
  5928. case VK_FORMAT_FEATURE_2_OPTICAL_FLOW_IMAGE_BIT_NV:
  5929. return "VK_FORMAT_FEATURE_2_OPTICAL_FLOW_IMAGE_BIT_NV";
  5930. case VK_FORMAT_FEATURE_2_OPTICAL_FLOW_VECTOR_BIT_NV:
  5931. return "VK_FORMAT_FEATURE_2_OPTICAL_FLOW_VECTOR_BIT_NV";
  5932. case VK_FORMAT_FEATURE_2_SAMPLED_IMAGE_BIT:
  5933. return "VK_FORMAT_FEATURE_2_SAMPLED_IMAGE_BIT";
  5934. case VK_FORMAT_FEATURE_2_SAMPLED_IMAGE_DEPTH_COMPARISON_BIT:
  5935. return "VK_FORMAT_FEATURE_2_SAMPLED_IMAGE_DEPTH_COMPARISON_BIT";
  5936. case VK_FORMAT_FEATURE_2_SAMPLED_IMAGE_FILTER_CUBIC_BIT:
  5937. return "VK_FORMAT_FEATURE_2_SAMPLED_IMAGE_FILTER_CUBIC_BIT";
  5938. case VK_FORMAT_FEATURE_2_SAMPLED_IMAGE_FILTER_LINEAR_BIT:
  5939. return "VK_FORMAT_FEATURE_2_SAMPLED_IMAGE_FILTER_LINEAR_BIT";
  5940. case VK_FORMAT_FEATURE_2_SAMPLED_IMAGE_FILTER_MINMAX_BIT:
  5941. return "VK_FORMAT_FEATURE_2_SAMPLED_IMAGE_FILTER_MINMAX_BIT";
  5942. case VK_FORMAT_FEATURE_2_SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_BIT:
  5943. return "VK_FORMAT_FEATURE_2_SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_BIT";
  5944. case VK_FORMAT_FEATURE_2_SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_FORCEABLE_BIT:
  5945. return "VK_FORMAT_FEATURE_2_SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_FORCEABLE_BIT";
  5946. case VK_FORMAT_FEATURE_2_SAMPLED_IMAGE_YCBCR_CONVERSION_LINEAR_FILTER_BIT:
  5947. return "VK_FORMAT_FEATURE_2_SAMPLED_IMAGE_YCBCR_CONVERSION_LINEAR_FILTER_BIT";
  5948. case VK_FORMAT_FEATURE_2_SAMPLED_IMAGE_YCBCR_CONVERSION_SEPARATE_RECONSTRUCTION_FILTER_BIT:
  5949. return "VK_FORMAT_FEATURE_2_SAMPLED_IMAGE_YCBCR_CONVERSION_SEPARATE_RECONSTRUCTION_FILTER_BIT";
  5950. case VK_FORMAT_FEATURE_2_STORAGE_IMAGE_ATOMIC_BIT:
  5951. return "VK_FORMAT_FEATURE_2_STORAGE_IMAGE_ATOMIC_BIT";
  5952. case VK_FORMAT_FEATURE_2_STORAGE_IMAGE_BIT:
  5953. return "VK_FORMAT_FEATURE_2_STORAGE_IMAGE_BIT";
  5954. case VK_FORMAT_FEATURE_2_STORAGE_READ_WITHOUT_FORMAT_BIT:
  5955. return "VK_FORMAT_FEATURE_2_STORAGE_READ_WITHOUT_FORMAT_BIT";
  5956. case VK_FORMAT_FEATURE_2_STORAGE_TEXEL_BUFFER_ATOMIC_BIT:
  5957. return "VK_FORMAT_FEATURE_2_STORAGE_TEXEL_BUFFER_ATOMIC_BIT";
  5958. case VK_FORMAT_FEATURE_2_STORAGE_TEXEL_BUFFER_BIT:
  5959. return "VK_FORMAT_FEATURE_2_STORAGE_TEXEL_BUFFER_BIT";
  5960. case VK_FORMAT_FEATURE_2_STORAGE_WRITE_WITHOUT_FORMAT_BIT:
  5961. return "VK_FORMAT_FEATURE_2_STORAGE_WRITE_WITHOUT_FORMAT_BIT";
  5962. case VK_FORMAT_FEATURE_2_TRANSFER_DST_BIT:
  5963. return "VK_FORMAT_FEATURE_2_TRANSFER_DST_BIT";
  5964. case VK_FORMAT_FEATURE_2_TRANSFER_SRC_BIT:
  5965. return "VK_FORMAT_FEATURE_2_TRANSFER_SRC_BIT";
  5966. case VK_FORMAT_FEATURE_2_UNIFORM_TEXEL_BUFFER_BIT:
  5967. return "VK_FORMAT_FEATURE_2_UNIFORM_TEXEL_BUFFER_BIT";
  5968. case VK_FORMAT_FEATURE_2_VERTEX_BUFFER_BIT:
  5969. return "VK_FORMAT_FEATURE_2_VERTEX_BUFFER_BIT";
  5970. #ifdef VK_ENABLE_BETA_EXTENSIONS
  5971. case VK_FORMAT_FEATURE_2_VIDEO_DECODE_DPB_BIT_KHR:
  5972. return "VK_FORMAT_FEATURE_2_VIDEO_DECODE_DPB_BIT_KHR";
  5973. #endif // VK_ENABLE_BETA_EXTENSIONS
  5974. #ifdef VK_ENABLE_BETA_EXTENSIONS
  5975. case VK_FORMAT_FEATURE_2_VIDEO_DECODE_OUTPUT_BIT_KHR:
  5976. return "VK_FORMAT_FEATURE_2_VIDEO_DECODE_OUTPUT_BIT_KHR";
  5977. #endif // VK_ENABLE_BETA_EXTENSIONS
  5978. #ifdef VK_ENABLE_BETA_EXTENSIONS
  5979. case VK_FORMAT_FEATURE_2_VIDEO_ENCODE_DPB_BIT_KHR:
  5980. return "VK_FORMAT_FEATURE_2_VIDEO_ENCODE_DPB_BIT_KHR";
  5981. #endif // VK_ENABLE_BETA_EXTENSIONS
  5982. #ifdef VK_ENABLE_BETA_EXTENSIONS
  5983. case VK_FORMAT_FEATURE_2_VIDEO_ENCODE_INPUT_BIT_KHR:
  5984. return "VK_FORMAT_FEATURE_2_VIDEO_ENCODE_INPUT_BIT_KHR";
  5985. #endif // VK_ENABLE_BETA_EXTENSIONS
  5986. case VK_FORMAT_FEATURE_2_WEIGHT_IMAGE_BIT_QCOM:
  5987. return "VK_FORMAT_FEATURE_2_WEIGHT_IMAGE_BIT_QCOM";
  5988. case VK_FORMAT_FEATURE_2_WEIGHT_SAMPLED_IMAGE_BIT_QCOM:
  5989. return "VK_FORMAT_FEATURE_2_WEIGHT_SAMPLED_IMAGE_BIT_QCOM";
  5990. default:
  5991. return "Unhandled VkFormatFeatureFlagBits2";
  5992. }
  5993. }
  5994. static inline std::string string_VkFormatFeatureFlags2(VkFormatFeatureFlags2 input_value)
  5995. {
  5996. std::string ret;
  5997. int index = 0;
  5998. while(input_value) {
  5999. if (input_value & 1) {
  6000. if( !ret.empty()) ret.append("|");
  6001. ret.append(string_VkFormatFeatureFlagBits2(static_cast<uint64_t>(1ULL << index)));
  6002. }
  6003. ++index;
  6004. input_value >>= 1;
  6005. }
  6006. if( ret.empty()) ret.append(string_VkFormatFeatureFlagBits2(static_cast<uint64_t>(0)));
  6007. return ret;
  6008. }
  6009. static inline const char* string_VkSurfaceTransformFlagBitsKHR(VkSurfaceTransformFlagBitsKHR input_value)
  6010. {
  6011. switch (input_value)
  6012. {
  6013. case VK_SURFACE_TRANSFORM_HORIZONTAL_MIRROR_BIT_KHR:
  6014. return "VK_SURFACE_TRANSFORM_HORIZONTAL_MIRROR_BIT_KHR";
  6015. case VK_SURFACE_TRANSFORM_HORIZONTAL_MIRROR_ROTATE_180_BIT_KHR:
  6016. return "VK_SURFACE_TRANSFORM_HORIZONTAL_MIRROR_ROTATE_180_BIT_KHR";
  6017. case VK_SURFACE_TRANSFORM_HORIZONTAL_MIRROR_ROTATE_270_BIT_KHR:
  6018. return "VK_SURFACE_TRANSFORM_HORIZONTAL_MIRROR_ROTATE_270_BIT_KHR";
  6019. case VK_SURFACE_TRANSFORM_HORIZONTAL_MIRROR_ROTATE_90_BIT_KHR:
  6020. return "VK_SURFACE_TRANSFORM_HORIZONTAL_MIRROR_ROTATE_90_BIT_KHR";
  6021. case VK_SURFACE_TRANSFORM_IDENTITY_BIT_KHR:
  6022. return "VK_SURFACE_TRANSFORM_IDENTITY_BIT_KHR";
  6023. case VK_SURFACE_TRANSFORM_INHERIT_BIT_KHR:
  6024. return "VK_SURFACE_TRANSFORM_INHERIT_BIT_KHR";
  6025. case VK_SURFACE_TRANSFORM_ROTATE_180_BIT_KHR:
  6026. return "VK_SURFACE_TRANSFORM_ROTATE_180_BIT_KHR";
  6027. case VK_SURFACE_TRANSFORM_ROTATE_270_BIT_KHR:
  6028. return "VK_SURFACE_TRANSFORM_ROTATE_270_BIT_KHR";
  6029. case VK_SURFACE_TRANSFORM_ROTATE_90_BIT_KHR:
  6030. return "VK_SURFACE_TRANSFORM_ROTATE_90_BIT_KHR";
  6031. default:
  6032. return "Unhandled VkSurfaceTransformFlagBitsKHR";
  6033. }
  6034. }
  6035. static inline std::string string_VkSurfaceTransformFlagsKHR(VkSurfaceTransformFlagsKHR input_value)
  6036. {
  6037. std::string ret;
  6038. int index = 0;
  6039. while(input_value) {
  6040. if (input_value & 1) {
  6041. if( !ret.empty()) ret.append("|");
  6042. ret.append(string_VkSurfaceTransformFlagBitsKHR(static_cast<VkSurfaceTransformFlagBitsKHR>(1U << index)));
  6043. }
  6044. ++index;
  6045. input_value >>= 1;
  6046. }
  6047. if( ret.empty()) ret.append(string_VkSurfaceTransformFlagBitsKHR(static_cast<VkSurfaceTransformFlagBitsKHR>(0)));
  6048. return ret;
  6049. }
  6050. static inline const char* string_VkPresentModeKHR(VkPresentModeKHR input_value)
  6051. {
  6052. switch (input_value)
  6053. {
  6054. case VK_PRESENT_MODE_FIFO_KHR:
  6055. return "VK_PRESENT_MODE_FIFO_KHR";
  6056. case VK_PRESENT_MODE_FIFO_RELAXED_KHR:
  6057. return "VK_PRESENT_MODE_FIFO_RELAXED_KHR";
  6058. case VK_PRESENT_MODE_IMMEDIATE_KHR:
  6059. return "VK_PRESENT_MODE_IMMEDIATE_KHR";
  6060. case VK_PRESENT_MODE_MAILBOX_KHR:
  6061. return "VK_PRESENT_MODE_MAILBOX_KHR";
  6062. case VK_PRESENT_MODE_SHARED_CONTINUOUS_REFRESH_KHR:
  6063. return "VK_PRESENT_MODE_SHARED_CONTINUOUS_REFRESH_KHR";
  6064. case VK_PRESENT_MODE_SHARED_DEMAND_REFRESH_KHR:
  6065. return "VK_PRESENT_MODE_SHARED_DEMAND_REFRESH_KHR";
  6066. default:
  6067. return "Unhandled VkPresentModeKHR";
  6068. }
  6069. }
  6070. static inline const char* string_VkColorSpaceKHR(VkColorSpaceKHR input_value)
  6071. {
  6072. switch (input_value)
  6073. {
  6074. case VK_COLOR_SPACE_ADOBERGB_LINEAR_EXT:
  6075. return "VK_COLOR_SPACE_ADOBERGB_LINEAR_EXT";
  6076. case VK_COLOR_SPACE_ADOBERGB_NONLINEAR_EXT:
  6077. return "VK_COLOR_SPACE_ADOBERGB_NONLINEAR_EXT";
  6078. case VK_COLOR_SPACE_BT2020_LINEAR_EXT:
  6079. return "VK_COLOR_SPACE_BT2020_LINEAR_EXT";
  6080. case VK_COLOR_SPACE_BT709_LINEAR_EXT:
  6081. return "VK_COLOR_SPACE_BT709_LINEAR_EXT";
  6082. case VK_COLOR_SPACE_BT709_NONLINEAR_EXT:
  6083. return "VK_COLOR_SPACE_BT709_NONLINEAR_EXT";
  6084. case VK_COLOR_SPACE_DCI_P3_NONLINEAR_EXT:
  6085. return "VK_COLOR_SPACE_DCI_P3_NONLINEAR_EXT";
  6086. case VK_COLOR_SPACE_DISPLAY_NATIVE_AMD:
  6087. return "VK_COLOR_SPACE_DISPLAY_NATIVE_AMD";
  6088. case VK_COLOR_SPACE_DISPLAY_P3_LINEAR_EXT:
  6089. return "VK_COLOR_SPACE_DISPLAY_P3_LINEAR_EXT";
  6090. case VK_COLOR_SPACE_DISPLAY_P3_NONLINEAR_EXT:
  6091. return "VK_COLOR_SPACE_DISPLAY_P3_NONLINEAR_EXT";
  6092. case VK_COLOR_SPACE_DOLBYVISION_EXT:
  6093. return "VK_COLOR_SPACE_DOLBYVISION_EXT";
  6094. case VK_COLOR_SPACE_EXTENDED_SRGB_LINEAR_EXT:
  6095. return "VK_COLOR_SPACE_EXTENDED_SRGB_LINEAR_EXT";
  6096. case VK_COLOR_SPACE_EXTENDED_SRGB_NONLINEAR_EXT:
  6097. return "VK_COLOR_SPACE_EXTENDED_SRGB_NONLINEAR_EXT";
  6098. case VK_COLOR_SPACE_HDR10_HLG_EXT:
  6099. return "VK_COLOR_SPACE_HDR10_HLG_EXT";
  6100. case VK_COLOR_SPACE_HDR10_ST2084_EXT:
  6101. return "VK_COLOR_SPACE_HDR10_ST2084_EXT";
  6102. case VK_COLOR_SPACE_PASS_THROUGH_EXT:
  6103. return "VK_COLOR_SPACE_PASS_THROUGH_EXT";
  6104. case VK_COLOR_SPACE_SRGB_NONLINEAR_KHR:
  6105. return "VK_COLOR_SPACE_SRGB_NONLINEAR_KHR";
  6106. default:
  6107. return "Unhandled VkColorSpaceKHR";
  6108. }
  6109. }
  6110. static inline const char* string_VkCompositeAlphaFlagBitsKHR(VkCompositeAlphaFlagBitsKHR input_value)
  6111. {
  6112. switch (input_value)
  6113. {
  6114. case VK_COMPOSITE_ALPHA_INHERIT_BIT_KHR:
  6115. return "VK_COMPOSITE_ALPHA_INHERIT_BIT_KHR";
  6116. case VK_COMPOSITE_ALPHA_OPAQUE_BIT_KHR:
  6117. return "VK_COMPOSITE_ALPHA_OPAQUE_BIT_KHR";
  6118. case VK_COMPOSITE_ALPHA_POST_MULTIPLIED_BIT_KHR:
  6119. return "VK_COMPOSITE_ALPHA_POST_MULTIPLIED_BIT_KHR";
  6120. case VK_COMPOSITE_ALPHA_PRE_MULTIPLIED_BIT_KHR:
  6121. return "VK_COMPOSITE_ALPHA_PRE_MULTIPLIED_BIT_KHR";
  6122. default:
  6123. return "Unhandled VkCompositeAlphaFlagBitsKHR";
  6124. }
  6125. }
  6126. static inline std::string string_VkCompositeAlphaFlagsKHR(VkCompositeAlphaFlagsKHR input_value)
  6127. {
  6128. std::string ret;
  6129. int index = 0;
  6130. while(input_value) {
  6131. if (input_value & 1) {
  6132. if( !ret.empty()) ret.append("|");
  6133. ret.append(string_VkCompositeAlphaFlagBitsKHR(static_cast<VkCompositeAlphaFlagBitsKHR>(1U << index)));
  6134. }
  6135. ++index;
  6136. input_value >>= 1;
  6137. }
  6138. if( ret.empty()) ret.append(string_VkCompositeAlphaFlagBitsKHR(static_cast<VkCompositeAlphaFlagBitsKHR>(0)));
  6139. return ret;
  6140. }
  6141. static inline const char* string_VkSwapchainCreateFlagBitsKHR(VkSwapchainCreateFlagBitsKHR input_value)
  6142. {
  6143. switch (input_value)
  6144. {
  6145. case VK_SWAPCHAIN_CREATE_MUTABLE_FORMAT_BIT_KHR:
  6146. return "VK_SWAPCHAIN_CREATE_MUTABLE_FORMAT_BIT_KHR";
  6147. case VK_SWAPCHAIN_CREATE_PROTECTED_BIT_KHR:
  6148. return "VK_SWAPCHAIN_CREATE_PROTECTED_BIT_KHR";
  6149. case VK_SWAPCHAIN_CREATE_SPLIT_INSTANCE_BIND_REGIONS_BIT_KHR:
  6150. return "VK_SWAPCHAIN_CREATE_SPLIT_INSTANCE_BIND_REGIONS_BIT_KHR";
  6151. default:
  6152. return "Unhandled VkSwapchainCreateFlagBitsKHR";
  6153. }
  6154. }
  6155. static inline std::string string_VkSwapchainCreateFlagsKHR(VkSwapchainCreateFlagsKHR input_value)
  6156. {
  6157. std::string ret;
  6158. int index = 0;
  6159. while(input_value) {
  6160. if (input_value & 1) {
  6161. if( !ret.empty()) ret.append("|");
  6162. ret.append(string_VkSwapchainCreateFlagBitsKHR(static_cast<VkSwapchainCreateFlagBitsKHR>(1U << index)));
  6163. }
  6164. ++index;
  6165. input_value >>= 1;
  6166. }
  6167. if( ret.empty()) ret.append(string_VkSwapchainCreateFlagBitsKHR(static_cast<VkSwapchainCreateFlagBitsKHR>(0)));
  6168. return ret;
  6169. }
  6170. static inline const char* string_VkDeviceGroupPresentModeFlagBitsKHR(VkDeviceGroupPresentModeFlagBitsKHR input_value)
  6171. {
  6172. switch (input_value)
  6173. {
  6174. case VK_DEVICE_GROUP_PRESENT_MODE_LOCAL_BIT_KHR:
  6175. return "VK_DEVICE_GROUP_PRESENT_MODE_LOCAL_BIT_KHR";
  6176. case VK_DEVICE_GROUP_PRESENT_MODE_LOCAL_MULTI_DEVICE_BIT_KHR:
  6177. return "VK_DEVICE_GROUP_PRESENT_MODE_LOCAL_MULTI_DEVICE_BIT_KHR";
  6178. case VK_DEVICE_GROUP_PRESENT_MODE_REMOTE_BIT_KHR:
  6179. return "VK_DEVICE_GROUP_PRESENT_MODE_REMOTE_BIT_KHR";
  6180. case VK_DEVICE_GROUP_PRESENT_MODE_SUM_BIT_KHR:
  6181. return "VK_DEVICE_GROUP_PRESENT_MODE_SUM_BIT_KHR";
  6182. default:
  6183. return "Unhandled VkDeviceGroupPresentModeFlagBitsKHR";
  6184. }
  6185. }
  6186. static inline std::string string_VkDeviceGroupPresentModeFlagsKHR(VkDeviceGroupPresentModeFlagsKHR input_value)
  6187. {
  6188. std::string ret;
  6189. int index = 0;
  6190. while(input_value) {
  6191. if (input_value & 1) {
  6192. if( !ret.empty()) ret.append("|");
  6193. ret.append(string_VkDeviceGroupPresentModeFlagBitsKHR(static_cast<VkDeviceGroupPresentModeFlagBitsKHR>(1U << index)));
  6194. }
  6195. ++index;
  6196. input_value >>= 1;
  6197. }
  6198. if( ret.empty()) ret.append(string_VkDeviceGroupPresentModeFlagBitsKHR(static_cast<VkDeviceGroupPresentModeFlagBitsKHR>(0)));
  6199. return ret;
  6200. }
  6201. static inline const char* string_VkDisplayPlaneAlphaFlagBitsKHR(VkDisplayPlaneAlphaFlagBitsKHR input_value)
  6202. {
  6203. switch (input_value)
  6204. {
  6205. case VK_DISPLAY_PLANE_ALPHA_GLOBAL_BIT_KHR:
  6206. return "VK_DISPLAY_PLANE_ALPHA_GLOBAL_BIT_KHR";
  6207. case VK_DISPLAY_PLANE_ALPHA_OPAQUE_BIT_KHR:
  6208. return "VK_DISPLAY_PLANE_ALPHA_OPAQUE_BIT_KHR";
  6209. case VK_DISPLAY_PLANE_ALPHA_PER_PIXEL_BIT_KHR:
  6210. return "VK_DISPLAY_PLANE_ALPHA_PER_PIXEL_BIT_KHR";
  6211. case VK_DISPLAY_PLANE_ALPHA_PER_PIXEL_PREMULTIPLIED_BIT_KHR:
  6212. return "VK_DISPLAY_PLANE_ALPHA_PER_PIXEL_PREMULTIPLIED_BIT_KHR";
  6213. default:
  6214. return "Unhandled VkDisplayPlaneAlphaFlagBitsKHR";
  6215. }
  6216. }
  6217. static inline std::string string_VkDisplayPlaneAlphaFlagsKHR(VkDisplayPlaneAlphaFlagsKHR input_value)
  6218. {
  6219. std::string ret;
  6220. int index = 0;
  6221. while(input_value) {
  6222. if (input_value & 1) {
  6223. if( !ret.empty()) ret.append("|");
  6224. ret.append(string_VkDisplayPlaneAlphaFlagBitsKHR(static_cast<VkDisplayPlaneAlphaFlagBitsKHR>(1U << index)));
  6225. }
  6226. ++index;
  6227. input_value >>= 1;
  6228. }
  6229. if( ret.empty()) ret.append(string_VkDisplayPlaneAlphaFlagBitsKHR(static_cast<VkDisplayPlaneAlphaFlagBitsKHR>(0)));
  6230. return ret;
  6231. }
  6232. #ifdef VK_ENABLE_BETA_EXTENSIONS
  6233. static inline const char* string_VkVideoCodecOperationFlagBitsKHR(VkVideoCodecOperationFlagBitsKHR input_value)
  6234. {
  6235. switch (input_value)
  6236. {
  6237. #ifdef VK_ENABLE_BETA_EXTENSIONS
  6238. case VK_VIDEO_CODEC_OPERATION_DECODE_H264_BIT_EXT:
  6239. return "VK_VIDEO_CODEC_OPERATION_DECODE_H264_BIT_EXT";
  6240. #endif // VK_ENABLE_BETA_EXTENSIONS
  6241. #ifdef VK_ENABLE_BETA_EXTENSIONS
  6242. case VK_VIDEO_CODEC_OPERATION_DECODE_H265_BIT_EXT:
  6243. return "VK_VIDEO_CODEC_OPERATION_DECODE_H265_BIT_EXT";
  6244. #endif // VK_ENABLE_BETA_EXTENSIONS
  6245. #ifdef VK_ENABLE_BETA_EXTENSIONS
  6246. case VK_VIDEO_CODEC_OPERATION_ENCODE_H264_BIT_EXT:
  6247. return "VK_VIDEO_CODEC_OPERATION_ENCODE_H264_BIT_EXT";
  6248. #endif // VK_ENABLE_BETA_EXTENSIONS
  6249. #ifdef VK_ENABLE_BETA_EXTENSIONS
  6250. case VK_VIDEO_CODEC_OPERATION_ENCODE_H265_BIT_EXT:
  6251. return "VK_VIDEO_CODEC_OPERATION_ENCODE_H265_BIT_EXT";
  6252. #endif // VK_ENABLE_BETA_EXTENSIONS
  6253. case VK_VIDEO_CODEC_OPERATION_NONE_KHR:
  6254. return "VK_VIDEO_CODEC_OPERATION_NONE_KHR";
  6255. default:
  6256. return "Unhandled VkVideoCodecOperationFlagBitsKHR";
  6257. }
  6258. }
  6259. static inline std::string string_VkVideoCodecOperationFlagsKHR(VkVideoCodecOperationFlagsKHR input_value)
  6260. {
  6261. std::string ret;
  6262. int index = 0;
  6263. while(input_value) {
  6264. if (input_value & 1) {
  6265. if( !ret.empty()) ret.append("|");
  6266. ret.append(string_VkVideoCodecOperationFlagBitsKHR(static_cast<VkVideoCodecOperationFlagBitsKHR>(1U << index)));
  6267. }
  6268. ++index;
  6269. input_value >>= 1;
  6270. }
  6271. if( ret.empty()) ret.append(string_VkVideoCodecOperationFlagBitsKHR(static_cast<VkVideoCodecOperationFlagBitsKHR>(0)));
  6272. return ret;
  6273. }
  6274. #endif // VK_ENABLE_BETA_EXTENSIONS
  6275. #ifdef VK_ENABLE_BETA_EXTENSIONS
  6276. static inline const char* string_VkVideoChromaSubsamplingFlagBitsKHR(VkVideoChromaSubsamplingFlagBitsKHR input_value)
  6277. {
  6278. switch (input_value)
  6279. {
  6280. case VK_VIDEO_CHROMA_SUBSAMPLING_420_BIT_KHR:
  6281. return "VK_VIDEO_CHROMA_SUBSAMPLING_420_BIT_KHR";
  6282. case VK_VIDEO_CHROMA_SUBSAMPLING_422_BIT_KHR:
  6283. return "VK_VIDEO_CHROMA_SUBSAMPLING_422_BIT_KHR";
  6284. case VK_VIDEO_CHROMA_SUBSAMPLING_444_BIT_KHR:
  6285. return "VK_VIDEO_CHROMA_SUBSAMPLING_444_BIT_KHR";
  6286. case VK_VIDEO_CHROMA_SUBSAMPLING_INVALID_KHR:
  6287. return "VK_VIDEO_CHROMA_SUBSAMPLING_INVALID_KHR";
  6288. case VK_VIDEO_CHROMA_SUBSAMPLING_MONOCHROME_BIT_KHR:
  6289. return "VK_VIDEO_CHROMA_SUBSAMPLING_MONOCHROME_BIT_KHR";
  6290. default:
  6291. return "Unhandled VkVideoChromaSubsamplingFlagBitsKHR";
  6292. }
  6293. }
  6294. static inline std::string string_VkVideoChromaSubsamplingFlagsKHR(VkVideoChromaSubsamplingFlagsKHR input_value)
  6295. {
  6296. std::string ret;
  6297. int index = 0;
  6298. while(input_value) {
  6299. if (input_value & 1) {
  6300. if( !ret.empty()) ret.append("|");
  6301. ret.append(string_VkVideoChromaSubsamplingFlagBitsKHR(static_cast<VkVideoChromaSubsamplingFlagBitsKHR>(1U << index)));
  6302. }
  6303. ++index;
  6304. input_value >>= 1;
  6305. }
  6306. if( ret.empty()) ret.append(string_VkVideoChromaSubsamplingFlagBitsKHR(static_cast<VkVideoChromaSubsamplingFlagBitsKHR>(0)));
  6307. return ret;
  6308. }
  6309. #endif // VK_ENABLE_BETA_EXTENSIONS
  6310. #ifdef VK_ENABLE_BETA_EXTENSIONS
  6311. static inline const char* string_VkVideoComponentBitDepthFlagBitsKHR(VkVideoComponentBitDepthFlagBitsKHR input_value)
  6312. {
  6313. switch (input_value)
  6314. {
  6315. case VK_VIDEO_COMPONENT_BIT_DEPTH_10_BIT_KHR:
  6316. return "VK_VIDEO_COMPONENT_BIT_DEPTH_10_BIT_KHR";
  6317. case VK_VIDEO_COMPONENT_BIT_DEPTH_12_BIT_KHR:
  6318. return "VK_VIDEO_COMPONENT_BIT_DEPTH_12_BIT_KHR";
  6319. case VK_VIDEO_COMPONENT_BIT_DEPTH_8_BIT_KHR:
  6320. return "VK_VIDEO_COMPONENT_BIT_DEPTH_8_BIT_KHR";
  6321. case VK_VIDEO_COMPONENT_BIT_DEPTH_INVALID_KHR:
  6322. return "VK_VIDEO_COMPONENT_BIT_DEPTH_INVALID_KHR";
  6323. default:
  6324. return "Unhandled VkVideoComponentBitDepthFlagBitsKHR";
  6325. }
  6326. }
  6327. static inline std::string string_VkVideoComponentBitDepthFlagsKHR(VkVideoComponentBitDepthFlagsKHR input_value)
  6328. {
  6329. std::string ret;
  6330. int index = 0;
  6331. while(input_value) {
  6332. if (input_value & 1) {
  6333. if( !ret.empty()) ret.append("|");
  6334. ret.append(string_VkVideoComponentBitDepthFlagBitsKHR(static_cast<VkVideoComponentBitDepthFlagBitsKHR>(1U << index)));
  6335. }
  6336. ++index;
  6337. input_value >>= 1;
  6338. }
  6339. if( ret.empty()) ret.append(string_VkVideoComponentBitDepthFlagBitsKHR(static_cast<VkVideoComponentBitDepthFlagBitsKHR>(0)));
  6340. return ret;
  6341. }
  6342. #endif // VK_ENABLE_BETA_EXTENSIONS
  6343. #ifdef VK_ENABLE_BETA_EXTENSIONS
  6344. static inline const char* string_VkVideoCapabilityFlagBitsKHR(VkVideoCapabilityFlagBitsKHR input_value)
  6345. {
  6346. switch (input_value)
  6347. {
  6348. case VK_VIDEO_CAPABILITY_PROTECTED_CONTENT_BIT_KHR:
  6349. return "VK_VIDEO_CAPABILITY_PROTECTED_CONTENT_BIT_KHR";
  6350. case VK_VIDEO_CAPABILITY_SEPARATE_REFERENCE_IMAGES_BIT_KHR:
  6351. return "VK_VIDEO_CAPABILITY_SEPARATE_REFERENCE_IMAGES_BIT_KHR";
  6352. default:
  6353. return "Unhandled VkVideoCapabilityFlagBitsKHR";
  6354. }
  6355. }
  6356. static inline std::string string_VkVideoCapabilityFlagsKHR(VkVideoCapabilityFlagsKHR input_value)
  6357. {
  6358. std::string ret;
  6359. int index = 0;
  6360. while(input_value) {
  6361. if (input_value & 1) {
  6362. if( !ret.empty()) ret.append("|");
  6363. ret.append(string_VkVideoCapabilityFlagBitsKHR(static_cast<VkVideoCapabilityFlagBitsKHR>(1U << index)));
  6364. }
  6365. ++index;
  6366. input_value >>= 1;
  6367. }
  6368. if( ret.empty()) ret.append(string_VkVideoCapabilityFlagBitsKHR(static_cast<VkVideoCapabilityFlagBitsKHR>(0)));
  6369. return ret;
  6370. }
  6371. #endif // VK_ENABLE_BETA_EXTENSIONS
  6372. #ifdef VK_ENABLE_BETA_EXTENSIONS
  6373. static inline const char* string_VkVideoSessionCreateFlagBitsKHR(VkVideoSessionCreateFlagBitsKHR input_value)
  6374. {
  6375. switch (input_value)
  6376. {
  6377. case VK_VIDEO_SESSION_CREATE_PROTECTED_CONTENT_BIT_KHR:
  6378. return "VK_VIDEO_SESSION_CREATE_PROTECTED_CONTENT_BIT_KHR";
  6379. default:
  6380. return "Unhandled VkVideoSessionCreateFlagBitsKHR";
  6381. }
  6382. }
  6383. static inline std::string string_VkVideoSessionCreateFlagsKHR(VkVideoSessionCreateFlagsKHR input_value)
  6384. {
  6385. std::string ret;
  6386. int index = 0;
  6387. while(input_value) {
  6388. if (input_value & 1) {
  6389. if( !ret.empty()) ret.append("|");
  6390. ret.append(string_VkVideoSessionCreateFlagBitsKHR(static_cast<VkVideoSessionCreateFlagBitsKHR>(1U << index)));
  6391. }
  6392. ++index;
  6393. input_value >>= 1;
  6394. }
  6395. if( ret.empty()) ret.append(string_VkVideoSessionCreateFlagBitsKHR(static_cast<VkVideoSessionCreateFlagBitsKHR>(0)));
  6396. return ret;
  6397. }
  6398. #endif // VK_ENABLE_BETA_EXTENSIONS
  6399. #ifdef VK_ENABLE_BETA_EXTENSIONS
  6400. static inline const char* string_VkVideoCodingControlFlagBitsKHR(VkVideoCodingControlFlagBitsKHR input_value)
  6401. {
  6402. switch (input_value)
  6403. {
  6404. #ifdef VK_ENABLE_BETA_EXTENSIONS
  6405. case VK_VIDEO_CODING_CONTROL_ENCODE_RATE_CONTROL_BIT_KHR:
  6406. return "VK_VIDEO_CODING_CONTROL_ENCODE_RATE_CONTROL_BIT_KHR";
  6407. #endif // VK_ENABLE_BETA_EXTENSIONS
  6408. #ifdef VK_ENABLE_BETA_EXTENSIONS
  6409. case VK_VIDEO_CODING_CONTROL_ENCODE_RATE_CONTROL_LAYER_BIT_KHR:
  6410. return "VK_VIDEO_CODING_CONTROL_ENCODE_RATE_CONTROL_LAYER_BIT_KHR";
  6411. #endif // VK_ENABLE_BETA_EXTENSIONS
  6412. case VK_VIDEO_CODING_CONTROL_RESET_BIT_KHR:
  6413. return "VK_VIDEO_CODING_CONTROL_RESET_BIT_KHR";
  6414. default:
  6415. return "Unhandled VkVideoCodingControlFlagBitsKHR";
  6416. }
  6417. }
  6418. static inline std::string string_VkVideoCodingControlFlagsKHR(VkVideoCodingControlFlagsKHR input_value)
  6419. {
  6420. std::string ret;
  6421. int index = 0;
  6422. while(input_value) {
  6423. if (input_value & 1) {
  6424. if( !ret.empty()) ret.append("|");
  6425. ret.append(string_VkVideoCodingControlFlagBitsKHR(static_cast<VkVideoCodingControlFlagBitsKHR>(1U << index)));
  6426. }
  6427. ++index;
  6428. input_value >>= 1;
  6429. }
  6430. if( ret.empty()) ret.append(string_VkVideoCodingControlFlagBitsKHR(static_cast<VkVideoCodingControlFlagBitsKHR>(0)));
  6431. return ret;
  6432. }
  6433. #endif // VK_ENABLE_BETA_EXTENSIONS
  6434. #ifdef VK_ENABLE_BETA_EXTENSIONS
  6435. static inline const char* string_VkQueryResultStatusKHR(VkQueryResultStatusKHR input_value)
  6436. {
  6437. switch (input_value)
  6438. {
  6439. case VK_QUERY_RESULT_STATUS_COMPLETE_KHR:
  6440. return "VK_QUERY_RESULT_STATUS_COMPLETE_KHR";
  6441. case VK_QUERY_RESULT_STATUS_ERROR_KHR:
  6442. return "VK_QUERY_RESULT_STATUS_ERROR_KHR";
  6443. case VK_QUERY_RESULT_STATUS_NOT_READY_KHR:
  6444. return "VK_QUERY_RESULT_STATUS_NOT_READY_KHR";
  6445. default:
  6446. return "Unhandled VkQueryResultStatusKHR";
  6447. }
  6448. }
  6449. #endif // VK_ENABLE_BETA_EXTENSIONS
  6450. #ifdef VK_ENABLE_BETA_EXTENSIONS
  6451. static inline const char* string_VkVideoDecodeCapabilityFlagBitsKHR(VkVideoDecodeCapabilityFlagBitsKHR input_value)
  6452. {
  6453. switch (input_value)
  6454. {
  6455. case VK_VIDEO_DECODE_CAPABILITY_DPB_AND_OUTPUT_COINCIDE_BIT_KHR:
  6456. return "VK_VIDEO_DECODE_CAPABILITY_DPB_AND_OUTPUT_COINCIDE_BIT_KHR";
  6457. case VK_VIDEO_DECODE_CAPABILITY_DPB_AND_OUTPUT_DISTINCT_BIT_KHR:
  6458. return "VK_VIDEO_DECODE_CAPABILITY_DPB_AND_OUTPUT_DISTINCT_BIT_KHR";
  6459. default:
  6460. return "Unhandled VkVideoDecodeCapabilityFlagBitsKHR";
  6461. }
  6462. }
  6463. static inline std::string string_VkVideoDecodeCapabilityFlagsKHR(VkVideoDecodeCapabilityFlagsKHR input_value)
  6464. {
  6465. std::string ret;
  6466. int index = 0;
  6467. while(input_value) {
  6468. if (input_value & 1) {
  6469. if( !ret.empty()) ret.append("|");
  6470. ret.append(string_VkVideoDecodeCapabilityFlagBitsKHR(static_cast<VkVideoDecodeCapabilityFlagBitsKHR>(1U << index)));
  6471. }
  6472. ++index;
  6473. input_value >>= 1;
  6474. }
  6475. if( ret.empty()) ret.append(string_VkVideoDecodeCapabilityFlagBitsKHR(static_cast<VkVideoDecodeCapabilityFlagBitsKHR>(0)));
  6476. return ret;
  6477. }
  6478. #endif // VK_ENABLE_BETA_EXTENSIONS
  6479. #ifdef VK_ENABLE_BETA_EXTENSIONS
  6480. static inline const char* string_VkVideoDecodeUsageFlagBitsKHR(VkVideoDecodeUsageFlagBitsKHR input_value)
  6481. {
  6482. switch (input_value)
  6483. {
  6484. case VK_VIDEO_DECODE_USAGE_DEFAULT_KHR:
  6485. return "VK_VIDEO_DECODE_USAGE_DEFAULT_KHR";
  6486. case VK_VIDEO_DECODE_USAGE_OFFLINE_BIT_KHR:
  6487. return "VK_VIDEO_DECODE_USAGE_OFFLINE_BIT_KHR";
  6488. case VK_VIDEO_DECODE_USAGE_STREAMING_BIT_KHR:
  6489. return "VK_VIDEO_DECODE_USAGE_STREAMING_BIT_KHR";
  6490. case VK_VIDEO_DECODE_USAGE_TRANSCODING_BIT_KHR:
  6491. return "VK_VIDEO_DECODE_USAGE_TRANSCODING_BIT_KHR";
  6492. default:
  6493. return "Unhandled VkVideoDecodeUsageFlagBitsKHR";
  6494. }
  6495. }
  6496. static inline std::string string_VkVideoDecodeUsageFlagsKHR(VkVideoDecodeUsageFlagsKHR input_value)
  6497. {
  6498. std::string ret;
  6499. int index = 0;
  6500. while(input_value) {
  6501. if (input_value & 1) {
  6502. if( !ret.empty()) ret.append("|");
  6503. ret.append(string_VkVideoDecodeUsageFlagBitsKHR(static_cast<VkVideoDecodeUsageFlagBitsKHR>(1U << index)));
  6504. }
  6505. ++index;
  6506. input_value >>= 1;
  6507. }
  6508. if( ret.empty()) ret.append(string_VkVideoDecodeUsageFlagBitsKHR(static_cast<VkVideoDecodeUsageFlagBitsKHR>(0)));
  6509. return ret;
  6510. }
  6511. #endif // VK_ENABLE_BETA_EXTENSIONS
  6512. static inline const char* string_VkRenderingFlagBitsKHR(VkRenderingFlagBitsKHR input_value)
  6513. {
  6514. switch (input_value)
  6515. {
  6516. case VK_RENDERING_CONTENTS_SECONDARY_COMMAND_BUFFERS_BIT:
  6517. return "VK_RENDERING_CONTENTS_SECONDARY_COMMAND_BUFFERS_BIT";
  6518. case VK_RENDERING_ENABLE_LEGACY_DITHERING_BIT_EXT:
  6519. return "VK_RENDERING_ENABLE_LEGACY_DITHERING_BIT_EXT";
  6520. case VK_RENDERING_RESUMING_BIT:
  6521. return "VK_RENDERING_RESUMING_BIT";
  6522. case VK_RENDERING_SUSPENDING_BIT:
  6523. return "VK_RENDERING_SUSPENDING_BIT";
  6524. default:
  6525. return "Unhandled VkRenderingFlagBitsKHR";
  6526. }
  6527. }
  6528. static inline std::string string_VkRenderingFlagsKHR(VkRenderingFlagsKHR input_value)
  6529. {
  6530. std::string ret;
  6531. int index = 0;
  6532. while(input_value) {
  6533. if (input_value & 1) {
  6534. if( !ret.empty()) ret.append("|");
  6535. ret.append(string_VkRenderingFlagBitsKHR(static_cast<VkRenderingFlagBitsKHR>(1U << index)));
  6536. }
  6537. ++index;
  6538. input_value >>= 1;
  6539. }
  6540. if( ret.empty()) ret.append(string_VkRenderingFlagBitsKHR(static_cast<VkRenderingFlagBitsKHR>(0)));
  6541. return ret;
  6542. }
  6543. static inline const char* string_VkPeerMemoryFeatureFlagBitsKHR(VkPeerMemoryFeatureFlagBitsKHR input_value)
  6544. {
  6545. switch (input_value)
  6546. {
  6547. case VK_PEER_MEMORY_FEATURE_COPY_DST_BIT:
  6548. return "VK_PEER_MEMORY_FEATURE_COPY_DST_BIT";
  6549. case VK_PEER_MEMORY_FEATURE_COPY_SRC_BIT:
  6550. return "VK_PEER_MEMORY_FEATURE_COPY_SRC_BIT";
  6551. case VK_PEER_MEMORY_FEATURE_GENERIC_DST_BIT:
  6552. return "VK_PEER_MEMORY_FEATURE_GENERIC_DST_BIT";
  6553. case VK_PEER_MEMORY_FEATURE_GENERIC_SRC_BIT:
  6554. return "VK_PEER_MEMORY_FEATURE_GENERIC_SRC_BIT";
  6555. default:
  6556. return "Unhandled VkPeerMemoryFeatureFlagBitsKHR";
  6557. }
  6558. }
  6559. static inline std::string string_VkPeerMemoryFeatureFlagsKHR(VkPeerMemoryFeatureFlagsKHR input_value)
  6560. {
  6561. std::string ret;
  6562. int index = 0;
  6563. while(input_value) {
  6564. if (input_value & 1) {
  6565. if( !ret.empty()) ret.append("|");
  6566. ret.append(string_VkPeerMemoryFeatureFlagBitsKHR(static_cast<VkPeerMemoryFeatureFlagBitsKHR>(1U << index)));
  6567. }
  6568. ++index;
  6569. input_value >>= 1;
  6570. }
  6571. if( ret.empty()) ret.append(string_VkPeerMemoryFeatureFlagBitsKHR(static_cast<VkPeerMemoryFeatureFlagBitsKHR>(0)));
  6572. return ret;
  6573. }
  6574. static inline const char* string_VkMemoryAllocateFlagBitsKHR(VkMemoryAllocateFlagBitsKHR input_value)
  6575. {
  6576. switch (input_value)
  6577. {
  6578. case VK_MEMORY_ALLOCATE_DEVICE_ADDRESS_BIT:
  6579. return "VK_MEMORY_ALLOCATE_DEVICE_ADDRESS_BIT";
  6580. case VK_MEMORY_ALLOCATE_DEVICE_ADDRESS_CAPTURE_REPLAY_BIT:
  6581. return "VK_MEMORY_ALLOCATE_DEVICE_ADDRESS_CAPTURE_REPLAY_BIT";
  6582. case VK_MEMORY_ALLOCATE_DEVICE_MASK_BIT:
  6583. return "VK_MEMORY_ALLOCATE_DEVICE_MASK_BIT";
  6584. default:
  6585. return "Unhandled VkMemoryAllocateFlagBitsKHR";
  6586. }
  6587. }
  6588. static inline std::string string_VkMemoryAllocateFlagsKHR(VkMemoryAllocateFlagsKHR input_value)
  6589. {
  6590. std::string ret;
  6591. int index = 0;
  6592. while(input_value) {
  6593. if (input_value & 1) {
  6594. if( !ret.empty()) ret.append("|");
  6595. ret.append(string_VkMemoryAllocateFlagBitsKHR(static_cast<VkMemoryAllocateFlagBitsKHR>(1U << index)));
  6596. }
  6597. ++index;
  6598. input_value >>= 1;
  6599. }
  6600. if( ret.empty()) ret.append(string_VkMemoryAllocateFlagBitsKHR(static_cast<VkMemoryAllocateFlagBitsKHR>(0)));
  6601. return ret;
  6602. }
  6603. static inline const char* string_VkExternalMemoryHandleTypeFlagBitsKHR(VkExternalMemoryHandleTypeFlagBitsKHR input_value)
  6604. {
  6605. switch (input_value)
  6606. {
  6607. case VK_EXTERNAL_MEMORY_HANDLE_TYPE_ANDROID_HARDWARE_BUFFER_BIT_ANDROID:
  6608. return "VK_EXTERNAL_MEMORY_HANDLE_TYPE_ANDROID_HARDWARE_BUFFER_BIT_ANDROID";
  6609. case VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_TEXTURE_BIT:
  6610. return "VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_TEXTURE_BIT";
  6611. case VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_TEXTURE_KMT_BIT:
  6612. return "VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_TEXTURE_KMT_BIT";
  6613. case VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D12_HEAP_BIT:
  6614. return "VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D12_HEAP_BIT";
  6615. case VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D12_RESOURCE_BIT:
  6616. return "VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D12_RESOURCE_BIT";
  6617. case VK_EXTERNAL_MEMORY_HANDLE_TYPE_DMA_BUF_BIT_EXT:
  6618. return "VK_EXTERNAL_MEMORY_HANDLE_TYPE_DMA_BUF_BIT_EXT";
  6619. case VK_EXTERNAL_MEMORY_HANDLE_TYPE_HOST_ALLOCATION_BIT_EXT:
  6620. return "VK_EXTERNAL_MEMORY_HANDLE_TYPE_HOST_ALLOCATION_BIT_EXT";
  6621. case VK_EXTERNAL_MEMORY_HANDLE_TYPE_HOST_MAPPED_FOREIGN_MEMORY_BIT_EXT:
  6622. return "VK_EXTERNAL_MEMORY_HANDLE_TYPE_HOST_MAPPED_FOREIGN_MEMORY_BIT_EXT";
  6623. case VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_FD_BIT:
  6624. return "VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_FD_BIT";
  6625. case VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_BIT:
  6626. return "VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_BIT";
  6627. case VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT:
  6628. return "VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT";
  6629. case VK_EXTERNAL_MEMORY_HANDLE_TYPE_RDMA_ADDRESS_BIT_NV:
  6630. return "VK_EXTERNAL_MEMORY_HANDLE_TYPE_RDMA_ADDRESS_BIT_NV";
  6631. case VK_EXTERNAL_MEMORY_HANDLE_TYPE_ZIRCON_VMO_BIT_FUCHSIA:
  6632. return "VK_EXTERNAL_MEMORY_HANDLE_TYPE_ZIRCON_VMO_BIT_FUCHSIA";
  6633. default:
  6634. return "Unhandled VkExternalMemoryHandleTypeFlagBitsKHR";
  6635. }
  6636. }
  6637. static inline std::string string_VkExternalMemoryHandleTypeFlagsKHR(VkExternalMemoryHandleTypeFlagsKHR input_value)
  6638. {
  6639. std::string ret;
  6640. int index = 0;
  6641. while(input_value) {
  6642. if (input_value & 1) {
  6643. if( !ret.empty()) ret.append("|");
  6644. ret.append(string_VkExternalMemoryHandleTypeFlagBitsKHR(static_cast<VkExternalMemoryHandleTypeFlagBitsKHR>(1U << index)));
  6645. }
  6646. ++index;
  6647. input_value >>= 1;
  6648. }
  6649. if( ret.empty()) ret.append(string_VkExternalMemoryHandleTypeFlagBitsKHR(static_cast<VkExternalMemoryHandleTypeFlagBitsKHR>(0)));
  6650. return ret;
  6651. }
  6652. static inline const char* string_VkExternalMemoryFeatureFlagBitsKHR(VkExternalMemoryFeatureFlagBitsKHR input_value)
  6653. {
  6654. switch (input_value)
  6655. {
  6656. case VK_EXTERNAL_MEMORY_FEATURE_DEDICATED_ONLY_BIT:
  6657. return "VK_EXTERNAL_MEMORY_FEATURE_DEDICATED_ONLY_BIT";
  6658. case VK_EXTERNAL_MEMORY_FEATURE_EXPORTABLE_BIT:
  6659. return "VK_EXTERNAL_MEMORY_FEATURE_EXPORTABLE_BIT";
  6660. case VK_EXTERNAL_MEMORY_FEATURE_IMPORTABLE_BIT:
  6661. return "VK_EXTERNAL_MEMORY_FEATURE_IMPORTABLE_BIT";
  6662. default:
  6663. return "Unhandled VkExternalMemoryFeatureFlagBitsKHR";
  6664. }
  6665. }
  6666. static inline std::string string_VkExternalMemoryFeatureFlagsKHR(VkExternalMemoryFeatureFlagsKHR input_value)
  6667. {
  6668. std::string ret;
  6669. int index = 0;
  6670. while(input_value) {
  6671. if (input_value & 1) {
  6672. if( !ret.empty()) ret.append("|");
  6673. ret.append(string_VkExternalMemoryFeatureFlagBitsKHR(static_cast<VkExternalMemoryFeatureFlagBitsKHR>(1U << index)));
  6674. }
  6675. ++index;
  6676. input_value >>= 1;
  6677. }
  6678. if( ret.empty()) ret.append(string_VkExternalMemoryFeatureFlagBitsKHR(static_cast<VkExternalMemoryFeatureFlagBitsKHR>(0)));
  6679. return ret;
  6680. }
  6681. static inline const char* string_VkExternalSemaphoreHandleTypeFlagBitsKHR(VkExternalSemaphoreHandleTypeFlagBitsKHR input_value)
  6682. {
  6683. switch (input_value)
  6684. {
  6685. case VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_D3D12_FENCE_BIT:
  6686. return "VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_D3D12_FENCE_BIT";
  6687. case VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_FD_BIT:
  6688. return "VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_FD_BIT";
  6689. case VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_WIN32_BIT:
  6690. return "VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_WIN32_BIT";
  6691. case VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT:
  6692. return "VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT";
  6693. case VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_SYNC_FD_BIT:
  6694. return "VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_SYNC_FD_BIT";
  6695. case VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_ZIRCON_EVENT_BIT_FUCHSIA:
  6696. return "VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_ZIRCON_EVENT_BIT_FUCHSIA";
  6697. default:
  6698. return "Unhandled VkExternalSemaphoreHandleTypeFlagBitsKHR";
  6699. }
  6700. }
  6701. static inline std::string string_VkExternalSemaphoreHandleTypeFlagsKHR(VkExternalSemaphoreHandleTypeFlagsKHR input_value)
  6702. {
  6703. std::string ret;
  6704. int index = 0;
  6705. while(input_value) {
  6706. if (input_value & 1) {
  6707. if( !ret.empty()) ret.append("|");
  6708. ret.append(string_VkExternalSemaphoreHandleTypeFlagBitsKHR(static_cast<VkExternalSemaphoreHandleTypeFlagBitsKHR>(1U << index)));
  6709. }
  6710. ++index;
  6711. input_value >>= 1;
  6712. }
  6713. if( ret.empty()) ret.append(string_VkExternalSemaphoreHandleTypeFlagBitsKHR(static_cast<VkExternalSemaphoreHandleTypeFlagBitsKHR>(0)));
  6714. return ret;
  6715. }
  6716. static inline const char* string_VkExternalSemaphoreFeatureFlagBitsKHR(VkExternalSemaphoreFeatureFlagBitsKHR input_value)
  6717. {
  6718. switch (input_value)
  6719. {
  6720. case VK_EXTERNAL_SEMAPHORE_FEATURE_EXPORTABLE_BIT:
  6721. return "VK_EXTERNAL_SEMAPHORE_FEATURE_EXPORTABLE_BIT";
  6722. case VK_EXTERNAL_SEMAPHORE_FEATURE_IMPORTABLE_BIT:
  6723. return "VK_EXTERNAL_SEMAPHORE_FEATURE_IMPORTABLE_BIT";
  6724. default:
  6725. return "Unhandled VkExternalSemaphoreFeatureFlagBitsKHR";
  6726. }
  6727. }
  6728. static inline std::string string_VkExternalSemaphoreFeatureFlagsKHR(VkExternalSemaphoreFeatureFlagsKHR input_value)
  6729. {
  6730. std::string ret;
  6731. int index = 0;
  6732. while(input_value) {
  6733. if (input_value & 1) {
  6734. if( !ret.empty()) ret.append("|");
  6735. ret.append(string_VkExternalSemaphoreFeatureFlagBitsKHR(static_cast<VkExternalSemaphoreFeatureFlagBitsKHR>(1U << index)));
  6736. }
  6737. ++index;
  6738. input_value >>= 1;
  6739. }
  6740. if( ret.empty()) ret.append(string_VkExternalSemaphoreFeatureFlagBitsKHR(static_cast<VkExternalSemaphoreFeatureFlagBitsKHR>(0)));
  6741. return ret;
  6742. }
  6743. static inline const char* string_VkSemaphoreImportFlagBitsKHR(VkSemaphoreImportFlagBitsKHR input_value)
  6744. {
  6745. switch (input_value)
  6746. {
  6747. case VK_SEMAPHORE_IMPORT_TEMPORARY_BIT:
  6748. return "VK_SEMAPHORE_IMPORT_TEMPORARY_BIT";
  6749. default:
  6750. return "Unhandled VkSemaphoreImportFlagBitsKHR";
  6751. }
  6752. }
  6753. static inline std::string string_VkSemaphoreImportFlagsKHR(VkSemaphoreImportFlagsKHR input_value)
  6754. {
  6755. std::string ret;
  6756. int index = 0;
  6757. while(input_value) {
  6758. if (input_value & 1) {
  6759. if( !ret.empty()) ret.append("|");
  6760. ret.append(string_VkSemaphoreImportFlagBitsKHR(static_cast<VkSemaphoreImportFlagBitsKHR>(1U << index)));
  6761. }
  6762. ++index;
  6763. input_value >>= 1;
  6764. }
  6765. if( ret.empty()) ret.append(string_VkSemaphoreImportFlagBitsKHR(static_cast<VkSemaphoreImportFlagBitsKHR>(0)));
  6766. return ret;
  6767. }
  6768. static inline const char* string_VkDescriptorUpdateTemplateTypeKHR(VkDescriptorUpdateTemplateTypeKHR input_value)
  6769. {
  6770. switch (input_value)
  6771. {
  6772. case VK_DESCRIPTOR_UPDATE_TEMPLATE_TYPE_DESCRIPTOR_SET:
  6773. return "VK_DESCRIPTOR_UPDATE_TEMPLATE_TYPE_DESCRIPTOR_SET";
  6774. case VK_DESCRIPTOR_UPDATE_TEMPLATE_TYPE_PUSH_DESCRIPTORS_KHR:
  6775. return "VK_DESCRIPTOR_UPDATE_TEMPLATE_TYPE_PUSH_DESCRIPTORS_KHR";
  6776. default:
  6777. return "Unhandled VkDescriptorUpdateTemplateTypeKHR";
  6778. }
  6779. }
  6780. static inline const char* string_VkExternalFenceHandleTypeFlagBitsKHR(VkExternalFenceHandleTypeFlagBitsKHR input_value)
  6781. {
  6782. switch (input_value)
  6783. {
  6784. case VK_EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_FD_BIT:
  6785. return "VK_EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_FD_BIT";
  6786. case VK_EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_WIN32_BIT:
  6787. return "VK_EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_WIN32_BIT";
  6788. case VK_EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT:
  6789. return "VK_EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT";
  6790. case VK_EXTERNAL_FENCE_HANDLE_TYPE_SYNC_FD_BIT:
  6791. return "VK_EXTERNAL_FENCE_HANDLE_TYPE_SYNC_FD_BIT";
  6792. default:
  6793. return "Unhandled VkExternalFenceHandleTypeFlagBitsKHR";
  6794. }
  6795. }
  6796. static inline std::string string_VkExternalFenceHandleTypeFlagsKHR(VkExternalFenceHandleTypeFlagsKHR input_value)
  6797. {
  6798. std::string ret;
  6799. int index = 0;
  6800. while(input_value) {
  6801. if (input_value & 1) {
  6802. if( !ret.empty()) ret.append("|");
  6803. ret.append(string_VkExternalFenceHandleTypeFlagBitsKHR(static_cast<VkExternalFenceHandleTypeFlagBitsKHR>(1U << index)));
  6804. }
  6805. ++index;
  6806. input_value >>= 1;
  6807. }
  6808. if( ret.empty()) ret.append(string_VkExternalFenceHandleTypeFlagBitsKHR(static_cast<VkExternalFenceHandleTypeFlagBitsKHR>(0)));
  6809. return ret;
  6810. }
  6811. static inline const char* string_VkExternalFenceFeatureFlagBitsKHR(VkExternalFenceFeatureFlagBitsKHR input_value)
  6812. {
  6813. switch (input_value)
  6814. {
  6815. case VK_EXTERNAL_FENCE_FEATURE_EXPORTABLE_BIT:
  6816. return "VK_EXTERNAL_FENCE_FEATURE_EXPORTABLE_BIT";
  6817. case VK_EXTERNAL_FENCE_FEATURE_IMPORTABLE_BIT:
  6818. return "VK_EXTERNAL_FENCE_FEATURE_IMPORTABLE_BIT";
  6819. default:
  6820. return "Unhandled VkExternalFenceFeatureFlagBitsKHR";
  6821. }
  6822. }
  6823. static inline std::string string_VkExternalFenceFeatureFlagsKHR(VkExternalFenceFeatureFlagsKHR input_value)
  6824. {
  6825. std::string ret;
  6826. int index = 0;
  6827. while(input_value) {
  6828. if (input_value & 1) {
  6829. if( !ret.empty()) ret.append("|");
  6830. ret.append(string_VkExternalFenceFeatureFlagBitsKHR(static_cast<VkExternalFenceFeatureFlagBitsKHR>(1U << index)));
  6831. }
  6832. ++index;
  6833. input_value >>= 1;
  6834. }
  6835. if( ret.empty()) ret.append(string_VkExternalFenceFeatureFlagBitsKHR(static_cast<VkExternalFenceFeatureFlagBitsKHR>(0)));
  6836. return ret;
  6837. }
  6838. static inline const char* string_VkFenceImportFlagBitsKHR(VkFenceImportFlagBitsKHR input_value)
  6839. {
  6840. switch (input_value)
  6841. {
  6842. case VK_FENCE_IMPORT_TEMPORARY_BIT:
  6843. return "VK_FENCE_IMPORT_TEMPORARY_BIT";
  6844. default:
  6845. return "Unhandled VkFenceImportFlagBitsKHR";
  6846. }
  6847. }
  6848. static inline std::string string_VkFenceImportFlagsKHR(VkFenceImportFlagsKHR input_value)
  6849. {
  6850. std::string ret;
  6851. int index = 0;
  6852. while(input_value) {
  6853. if (input_value & 1) {
  6854. if( !ret.empty()) ret.append("|");
  6855. ret.append(string_VkFenceImportFlagBitsKHR(static_cast<VkFenceImportFlagBitsKHR>(1U << index)));
  6856. }
  6857. ++index;
  6858. input_value >>= 1;
  6859. }
  6860. if( ret.empty()) ret.append(string_VkFenceImportFlagBitsKHR(static_cast<VkFenceImportFlagBitsKHR>(0)));
  6861. return ret;
  6862. }
  6863. static inline const char* string_VkPerformanceCounterUnitKHR(VkPerformanceCounterUnitKHR input_value)
  6864. {
  6865. switch (input_value)
  6866. {
  6867. case VK_PERFORMANCE_COUNTER_UNIT_AMPS_KHR:
  6868. return "VK_PERFORMANCE_COUNTER_UNIT_AMPS_KHR";
  6869. case VK_PERFORMANCE_COUNTER_UNIT_BYTES_KHR:
  6870. return "VK_PERFORMANCE_COUNTER_UNIT_BYTES_KHR";
  6871. case VK_PERFORMANCE_COUNTER_UNIT_BYTES_PER_SECOND_KHR:
  6872. return "VK_PERFORMANCE_COUNTER_UNIT_BYTES_PER_SECOND_KHR";
  6873. case VK_PERFORMANCE_COUNTER_UNIT_CYCLES_KHR:
  6874. return "VK_PERFORMANCE_COUNTER_UNIT_CYCLES_KHR";
  6875. case VK_PERFORMANCE_COUNTER_UNIT_GENERIC_KHR:
  6876. return "VK_PERFORMANCE_COUNTER_UNIT_GENERIC_KHR";
  6877. case VK_PERFORMANCE_COUNTER_UNIT_HERTZ_KHR:
  6878. return "VK_PERFORMANCE_COUNTER_UNIT_HERTZ_KHR";
  6879. case VK_PERFORMANCE_COUNTER_UNIT_KELVIN_KHR:
  6880. return "VK_PERFORMANCE_COUNTER_UNIT_KELVIN_KHR";
  6881. case VK_PERFORMANCE_COUNTER_UNIT_NANOSECONDS_KHR:
  6882. return "VK_PERFORMANCE_COUNTER_UNIT_NANOSECONDS_KHR";
  6883. case VK_PERFORMANCE_COUNTER_UNIT_PERCENTAGE_KHR:
  6884. return "VK_PERFORMANCE_COUNTER_UNIT_PERCENTAGE_KHR";
  6885. case VK_PERFORMANCE_COUNTER_UNIT_VOLTS_KHR:
  6886. return "VK_PERFORMANCE_COUNTER_UNIT_VOLTS_KHR";
  6887. case VK_PERFORMANCE_COUNTER_UNIT_WATTS_KHR:
  6888. return "VK_PERFORMANCE_COUNTER_UNIT_WATTS_KHR";
  6889. default:
  6890. return "Unhandled VkPerformanceCounterUnitKHR";
  6891. }
  6892. }
  6893. static inline const char* string_VkPerformanceCounterScopeKHR(VkPerformanceCounterScopeKHR input_value)
  6894. {
  6895. switch (input_value)
  6896. {
  6897. case VK_PERFORMANCE_COUNTER_SCOPE_COMMAND_BUFFER_KHR:
  6898. return "VK_PERFORMANCE_COUNTER_SCOPE_COMMAND_BUFFER_KHR";
  6899. case VK_PERFORMANCE_COUNTER_SCOPE_COMMAND_KHR:
  6900. return "VK_PERFORMANCE_COUNTER_SCOPE_COMMAND_KHR";
  6901. case VK_PERFORMANCE_COUNTER_SCOPE_RENDER_PASS_KHR:
  6902. return "VK_PERFORMANCE_COUNTER_SCOPE_RENDER_PASS_KHR";
  6903. default:
  6904. return "Unhandled VkPerformanceCounterScopeKHR";
  6905. }
  6906. }
  6907. static inline const char* string_VkPerformanceCounterStorageKHR(VkPerformanceCounterStorageKHR input_value)
  6908. {
  6909. switch (input_value)
  6910. {
  6911. case VK_PERFORMANCE_COUNTER_STORAGE_FLOAT32_KHR:
  6912. return "VK_PERFORMANCE_COUNTER_STORAGE_FLOAT32_KHR";
  6913. case VK_PERFORMANCE_COUNTER_STORAGE_FLOAT64_KHR:
  6914. return "VK_PERFORMANCE_COUNTER_STORAGE_FLOAT64_KHR";
  6915. case VK_PERFORMANCE_COUNTER_STORAGE_INT32_KHR:
  6916. return "VK_PERFORMANCE_COUNTER_STORAGE_INT32_KHR";
  6917. case VK_PERFORMANCE_COUNTER_STORAGE_INT64_KHR:
  6918. return "VK_PERFORMANCE_COUNTER_STORAGE_INT64_KHR";
  6919. case VK_PERFORMANCE_COUNTER_STORAGE_UINT32_KHR:
  6920. return "VK_PERFORMANCE_COUNTER_STORAGE_UINT32_KHR";
  6921. case VK_PERFORMANCE_COUNTER_STORAGE_UINT64_KHR:
  6922. return "VK_PERFORMANCE_COUNTER_STORAGE_UINT64_KHR";
  6923. default:
  6924. return "Unhandled VkPerformanceCounterStorageKHR";
  6925. }
  6926. }
  6927. static inline const char* string_VkPerformanceCounterDescriptionFlagBitsKHR(VkPerformanceCounterDescriptionFlagBitsKHR input_value)
  6928. {
  6929. switch (input_value)
  6930. {
  6931. case VK_PERFORMANCE_COUNTER_DESCRIPTION_CONCURRENTLY_IMPACTED_BIT_KHR:
  6932. return "VK_PERFORMANCE_COUNTER_DESCRIPTION_CONCURRENTLY_IMPACTED_BIT_KHR";
  6933. case VK_PERFORMANCE_COUNTER_DESCRIPTION_PERFORMANCE_IMPACTING_BIT_KHR:
  6934. return "VK_PERFORMANCE_COUNTER_DESCRIPTION_PERFORMANCE_IMPACTING_BIT_KHR";
  6935. default:
  6936. return "Unhandled VkPerformanceCounterDescriptionFlagBitsKHR";
  6937. }
  6938. }
  6939. static inline std::string string_VkPerformanceCounterDescriptionFlagsKHR(VkPerformanceCounterDescriptionFlagsKHR input_value)
  6940. {
  6941. std::string ret;
  6942. int index = 0;
  6943. while(input_value) {
  6944. if (input_value & 1) {
  6945. if( !ret.empty()) ret.append("|");
  6946. ret.append(string_VkPerformanceCounterDescriptionFlagBitsKHR(static_cast<VkPerformanceCounterDescriptionFlagBitsKHR>(1U << index)));
  6947. }
  6948. ++index;
  6949. input_value >>= 1;
  6950. }
  6951. if( ret.empty()) ret.append(string_VkPerformanceCounterDescriptionFlagBitsKHR(static_cast<VkPerformanceCounterDescriptionFlagBitsKHR>(0)));
  6952. return ret;
  6953. }
  6954. static inline const char* string_VkPointClippingBehaviorKHR(VkPointClippingBehaviorKHR input_value)
  6955. {
  6956. switch (input_value)
  6957. {
  6958. case VK_POINT_CLIPPING_BEHAVIOR_ALL_CLIP_PLANES:
  6959. return "VK_POINT_CLIPPING_BEHAVIOR_ALL_CLIP_PLANES";
  6960. case VK_POINT_CLIPPING_BEHAVIOR_USER_CLIP_PLANES_ONLY:
  6961. return "VK_POINT_CLIPPING_BEHAVIOR_USER_CLIP_PLANES_ONLY";
  6962. default:
  6963. return "Unhandled VkPointClippingBehaviorKHR";
  6964. }
  6965. }
  6966. static inline const char* string_VkTessellationDomainOriginKHR(VkTessellationDomainOriginKHR input_value)
  6967. {
  6968. switch (input_value)
  6969. {
  6970. case VK_TESSELLATION_DOMAIN_ORIGIN_LOWER_LEFT:
  6971. return "VK_TESSELLATION_DOMAIN_ORIGIN_LOWER_LEFT";
  6972. case VK_TESSELLATION_DOMAIN_ORIGIN_UPPER_LEFT:
  6973. return "VK_TESSELLATION_DOMAIN_ORIGIN_UPPER_LEFT";
  6974. default:
  6975. return "Unhandled VkTessellationDomainOriginKHR";
  6976. }
  6977. }
  6978. static inline const char* string_VkSamplerYcbcrModelConversionKHR(VkSamplerYcbcrModelConversionKHR input_value)
  6979. {
  6980. switch (input_value)
  6981. {
  6982. case VK_SAMPLER_YCBCR_MODEL_CONVERSION_RGB_IDENTITY:
  6983. return "VK_SAMPLER_YCBCR_MODEL_CONVERSION_RGB_IDENTITY";
  6984. case VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_2020:
  6985. return "VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_2020";
  6986. case VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_601:
  6987. return "VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_601";
  6988. case VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_709:
  6989. return "VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_709";
  6990. case VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_IDENTITY:
  6991. return "VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_IDENTITY";
  6992. default:
  6993. return "Unhandled VkSamplerYcbcrModelConversionKHR";
  6994. }
  6995. }
  6996. static inline const char* string_VkSamplerYcbcrRangeKHR(VkSamplerYcbcrRangeKHR input_value)
  6997. {
  6998. switch (input_value)
  6999. {
  7000. case VK_SAMPLER_YCBCR_RANGE_ITU_FULL:
  7001. return "VK_SAMPLER_YCBCR_RANGE_ITU_FULL";
  7002. case VK_SAMPLER_YCBCR_RANGE_ITU_NARROW:
  7003. return "VK_SAMPLER_YCBCR_RANGE_ITU_NARROW";
  7004. default:
  7005. return "Unhandled VkSamplerYcbcrRangeKHR";
  7006. }
  7007. }
  7008. static inline const char* string_VkChromaLocationKHR(VkChromaLocationKHR input_value)
  7009. {
  7010. switch (input_value)
  7011. {
  7012. case VK_CHROMA_LOCATION_COSITED_EVEN:
  7013. return "VK_CHROMA_LOCATION_COSITED_EVEN";
  7014. case VK_CHROMA_LOCATION_MIDPOINT:
  7015. return "VK_CHROMA_LOCATION_MIDPOINT";
  7016. default:
  7017. return "Unhandled VkChromaLocationKHR";
  7018. }
  7019. }
  7020. static inline const char* string_VkQueueGlobalPriorityKHR(VkQueueGlobalPriorityKHR input_value)
  7021. {
  7022. switch (input_value)
  7023. {
  7024. case VK_QUEUE_GLOBAL_PRIORITY_HIGH_KHR:
  7025. return "VK_QUEUE_GLOBAL_PRIORITY_HIGH_KHR";
  7026. case VK_QUEUE_GLOBAL_PRIORITY_LOW_KHR:
  7027. return "VK_QUEUE_GLOBAL_PRIORITY_LOW_KHR";
  7028. case VK_QUEUE_GLOBAL_PRIORITY_MEDIUM_KHR:
  7029. return "VK_QUEUE_GLOBAL_PRIORITY_MEDIUM_KHR";
  7030. case VK_QUEUE_GLOBAL_PRIORITY_REALTIME_KHR:
  7031. return "VK_QUEUE_GLOBAL_PRIORITY_REALTIME_KHR";
  7032. default:
  7033. return "Unhandled VkQueueGlobalPriorityKHR";
  7034. }
  7035. }
  7036. static inline const char* string_VkDriverIdKHR(VkDriverIdKHR input_value)
  7037. {
  7038. switch (input_value)
  7039. {
  7040. case VK_DRIVER_ID_AMD_OPEN_SOURCE:
  7041. return "VK_DRIVER_ID_AMD_OPEN_SOURCE";
  7042. case VK_DRIVER_ID_AMD_PROPRIETARY:
  7043. return "VK_DRIVER_ID_AMD_PROPRIETARY";
  7044. case VK_DRIVER_ID_ARM_PROPRIETARY:
  7045. return "VK_DRIVER_ID_ARM_PROPRIETARY";
  7046. case VK_DRIVER_ID_BROADCOM_PROPRIETARY:
  7047. return "VK_DRIVER_ID_BROADCOM_PROPRIETARY";
  7048. case VK_DRIVER_ID_COREAVI_PROPRIETARY:
  7049. return "VK_DRIVER_ID_COREAVI_PROPRIETARY";
  7050. case VK_DRIVER_ID_GGP_PROPRIETARY:
  7051. return "VK_DRIVER_ID_GGP_PROPRIETARY";
  7052. case VK_DRIVER_ID_GOOGLE_SWIFTSHADER:
  7053. return "VK_DRIVER_ID_GOOGLE_SWIFTSHADER";
  7054. case VK_DRIVER_ID_IMAGINATION_PROPRIETARY:
  7055. return "VK_DRIVER_ID_IMAGINATION_PROPRIETARY";
  7056. case VK_DRIVER_ID_INTEL_OPEN_SOURCE_MESA:
  7057. return "VK_DRIVER_ID_INTEL_OPEN_SOURCE_MESA";
  7058. case VK_DRIVER_ID_INTEL_PROPRIETARY_WINDOWS:
  7059. return "VK_DRIVER_ID_INTEL_PROPRIETARY_WINDOWS";
  7060. case VK_DRIVER_ID_JUICE_PROPRIETARY:
  7061. return "VK_DRIVER_ID_JUICE_PROPRIETARY";
  7062. case VK_DRIVER_ID_MESA_DOZEN:
  7063. return "VK_DRIVER_ID_MESA_DOZEN";
  7064. case VK_DRIVER_ID_MESA_LLVMPIPE:
  7065. return "VK_DRIVER_ID_MESA_LLVMPIPE";
  7066. case VK_DRIVER_ID_MESA_PANVK:
  7067. return "VK_DRIVER_ID_MESA_PANVK";
  7068. case VK_DRIVER_ID_MESA_RADV:
  7069. return "VK_DRIVER_ID_MESA_RADV";
  7070. case VK_DRIVER_ID_MESA_TURNIP:
  7071. return "VK_DRIVER_ID_MESA_TURNIP";
  7072. case VK_DRIVER_ID_MESA_V3DV:
  7073. return "VK_DRIVER_ID_MESA_V3DV";
  7074. case VK_DRIVER_ID_MESA_VENUS:
  7075. return "VK_DRIVER_ID_MESA_VENUS";
  7076. case VK_DRIVER_ID_MOLTENVK:
  7077. return "VK_DRIVER_ID_MOLTENVK";
  7078. case VK_DRIVER_ID_NVIDIA_PROPRIETARY:
  7079. return "VK_DRIVER_ID_NVIDIA_PROPRIETARY";
  7080. case VK_DRIVER_ID_QUALCOMM_PROPRIETARY:
  7081. return "VK_DRIVER_ID_QUALCOMM_PROPRIETARY";
  7082. case VK_DRIVER_ID_SAMSUNG_PROPRIETARY:
  7083. return "VK_DRIVER_ID_SAMSUNG_PROPRIETARY";
  7084. case VK_DRIVER_ID_VERISILICON_PROPRIETARY:
  7085. return "VK_DRIVER_ID_VERISILICON_PROPRIETARY";
  7086. default:
  7087. return "Unhandled VkDriverIdKHR";
  7088. }
  7089. }
  7090. static inline const char* string_VkShaderFloatControlsIndependenceKHR(VkShaderFloatControlsIndependenceKHR input_value)
  7091. {
  7092. switch (input_value)
  7093. {
  7094. case VK_SHADER_FLOAT_CONTROLS_INDEPENDENCE_32_BIT_ONLY:
  7095. return "VK_SHADER_FLOAT_CONTROLS_INDEPENDENCE_32_BIT_ONLY";
  7096. case VK_SHADER_FLOAT_CONTROLS_INDEPENDENCE_ALL:
  7097. return "VK_SHADER_FLOAT_CONTROLS_INDEPENDENCE_ALL";
  7098. case VK_SHADER_FLOAT_CONTROLS_INDEPENDENCE_NONE:
  7099. return "VK_SHADER_FLOAT_CONTROLS_INDEPENDENCE_NONE";
  7100. default:
  7101. return "Unhandled VkShaderFloatControlsIndependenceKHR";
  7102. }
  7103. }
  7104. static inline const char* string_VkResolveModeFlagBitsKHR(VkResolveModeFlagBitsKHR input_value)
  7105. {
  7106. switch (input_value)
  7107. {
  7108. case VK_RESOLVE_MODE_AVERAGE_BIT:
  7109. return "VK_RESOLVE_MODE_AVERAGE_BIT";
  7110. case VK_RESOLVE_MODE_MAX_BIT:
  7111. return "VK_RESOLVE_MODE_MAX_BIT";
  7112. case VK_RESOLVE_MODE_MIN_BIT:
  7113. return "VK_RESOLVE_MODE_MIN_BIT";
  7114. case VK_RESOLVE_MODE_NONE:
  7115. return "VK_RESOLVE_MODE_NONE";
  7116. case VK_RESOLVE_MODE_SAMPLE_ZERO_BIT:
  7117. return "VK_RESOLVE_MODE_SAMPLE_ZERO_BIT";
  7118. default:
  7119. return "Unhandled VkResolveModeFlagBitsKHR";
  7120. }
  7121. }
  7122. static inline std::string string_VkResolveModeFlagsKHR(VkResolveModeFlagsKHR input_value)
  7123. {
  7124. std::string ret;
  7125. int index = 0;
  7126. while(input_value) {
  7127. if (input_value & 1) {
  7128. if( !ret.empty()) ret.append("|");
  7129. ret.append(string_VkResolveModeFlagBitsKHR(static_cast<VkResolveModeFlagBitsKHR>(1U << index)));
  7130. }
  7131. ++index;
  7132. input_value >>= 1;
  7133. }
  7134. if( ret.empty()) ret.append(string_VkResolveModeFlagBitsKHR(static_cast<VkResolveModeFlagBitsKHR>(0)));
  7135. return ret;
  7136. }
  7137. static inline const char* string_VkSemaphoreTypeKHR(VkSemaphoreTypeKHR input_value)
  7138. {
  7139. switch (input_value)
  7140. {
  7141. case VK_SEMAPHORE_TYPE_BINARY:
  7142. return "VK_SEMAPHORE_TYPE_BINARY";
  7143. case VK_SEMAPHORE_TYPE_TIMELINE:
  7144. return "VK_SEMAPHORE_TYPE_TIMELINE";
  7145. default:
  7146. return "Unhandled VkSemaphoreTypeKHR";
  7147. }
  7148. }
  7149. static inline const char* string_VkSemaphoreWaitFlagBitsKHR(VkSemaphoreWaitFlagBitsKHR input_value)
  7150. {
  7151. switch (input_value)
  7152. {
  7153. case VK_SEMAPHORE_WAIT_ANY_BIT:
  7154. return "VK_SEMAPHORE_WAIT_ANY_BIT";
  7155. default:
  7156. return "Unhandled VkSemaphoreWaitFlagBitsKHR";
  7157. }
  7158. }
  7159. static inline std::string string_VkSemaphoreWaitFlagsKHR(VkSemaphoreWaitFlagsKHR input_value)
  7160. {
  7161. std::string ret;
  7162. int index = 0;
  7163. while(input_value) {
  7164. if (input_value & 1) {
  7165. if( !ret.empty()) ret.append("|");
  7166. ret.append(string_VkSemaphoreWaitFlagBitsKHR(static_cast<VkSemaphoreWaitFlagBitsKHR>(1U << index)));
  7167. }
  7168. ++index;
  7169. input_value >>= 1;
  7170. }
  7171. if( ret.empty()) ret.append(string_VkSemaphoreWaitFlagBitsKHR(static_cast<VkSemaphoreWaitFlagBitsKHR>(0)));
  7172. return ret;
  7173. }
  7174. static inline const char* string_VkFragmentShadingRateCombinerOpKHR(VkFragmentShadingRateCombinerOpKHR input_value)
  7175. {
  7176. switch (input_value)
  7177. {
  7178. case VK_FRAGMENT_SHADING_RATE_COMBINER_OP_KEEP_KHR:
  7179. return "VK_FRAGMENT_SHADING_RATE_COMBINER_OP_KEEP_KHR";
  7180. case VK_FRAGMENT_SHADING_RATE_COMBINER_OP_MAX_KHR:
  7181. return "VK_FRAGMENT_SHADING_RATE_COMBINER_OP_MAX_KHR";
  7182. case VK_FRAGMENT_SHADING_RATE_COMBINER_OP_MIN_KHR:
  7183. return "VK_FRAGMENT_SHADING_RATE_COMBINER_OP_MIN_KHR";
  7184. case VK_FRAGMENT_SHADING_RATE_COMBINER_OP_MUL_KHR:
  7185. return "VK_FRAGMENT_SHADING_RATE_COMBINER_OP_MUL_KHR";
  7186. case VK_FRAGMENT_SHADING_RATE_COMBINER_OP_REPLACE_KHR:
  7187. return "VK_FRAGMENT_SHADING_RATE_COMBINER_OP_REPLACE_KHR";
  7188. default:
  7189. return "Unhandled VkFragmentShadingRateCombinerOpKHR";
  7190. }
  7191. }
  7192. static inline const char* string_VkPipelineExecutableStatisticFormatKHR(VkPipelineExecutableStatisticFormatKHR input_value)
  7193. {
  7194. switch (input_value)
  7195. {
  7196. case VK_PIPELINE_EXECUTABLE_STATISTIC_FORMAT_BOOL32_KHR:
  7197. return "VK_PIPELINE_EXECUTABLE_STATISTIC_FORMAT_BOOL32_KHR";
  7198. case VK_PIPELINE_EXECUTABLE_STATISTIC_FORMAT_FLOAT64_KHR:
  7199. return "VK_PIPELINE_EXECUTABLE_STATISTIC_FORMAT_FLOAT64_KHR";
  7200. case VK_PIPELINE_EXECUTABLE_STATISTIC_FORMAT_INT64_KHR:
  7201. return "VK_PIPELINE_EXECUTABLE_STATISTIC_FORMAT_INT64_KHR";
  7202. case VK_PIPELINE_EXECUTABLE_STATISTIC_FORMAT_UINT64_KHR:
  7203. return "VK_PIPELINE_EXECUTABLE_STATISTIC_FORMAT_UINT64_KHR";
  7204. default:
  7205. return "Unhandled VkPipelineExecutableStatisticFormatKHR";
  7206. }
  7207. }
  7208. #ifdef VK_ENABLE_BETA_EXTENSIONS
  7209. static inline const char* string_VkVideoEncodeCapabilityFlagBitsKHR(VkVideoEncodeCapabilityFlagBitsKHR input_value)
  7210. {
  7211. switch (input_value)
  7212. {
  7213. case VK_VIDEO_ENCODE_CAPABILITY_PRECEDING_EXTERNALLY_ENCODED_BYTES_BIT_KHR:
  7214. return "VK_VIDEO_ENCODE_CAPABILITY_PRECEDING_EXTERNALLY_ENCODED_BYTES_BIT_KHR";
  7215. default:
  7216. return "Unhandled VkVideoEncodeCapabilityFlagBitsKHR";
  7217. }
  7218. }
  7219. static inline std::string string_VkVideoEncodeCapabilityFlagsKHR(VkVideoEncodeCapabilityFlagsKHR input_value)
  7220. {
  7221. std::string ret;
  7222. int index = 0;
  7223. while(input_value) {
  7224. if (input_value & 1) {
  7225. if( !ret.empty()) ret.append("|");
  7226. ret.append(string_VkVideoEncodeCapabilityFlagBitsKHR(static_cast<VkVideoEncodeCapabilityFlagBitsKHR>(1U << index)));
  7227. }
  7228. ++index;
  7229. input_value >>= 1;
  7230. }
  7231. if( ret.empty()) ret.append(string_VkVideoEncodeCapabilityFlagBitsKHR(static_cast<VkVideoEncodeCapabilityFlagBitsKHR>(0)));
  7232. return ret;
  7233. }
  7234. #endif // VK_ENABLE_BETA_EXTENSIONS
  7235. #ifdef VK_ENABLE_BETA_EXTENSIONS
  7236. static inline const char* string_VkVideoEncodeRateControlModeFlagBitsKHR(VkVideoEncodeRateControlModeFlagBitsKHR input_value)
  7237. {
  7238. switch (input_value)
  7239. {
  7240. case VK_VIDEO_ENCODE_RATE_CONTROL_MODE_CBR_BIT_KHR:
  7241. return "VK_VIDEO_ENCODE_RATE_CONTROL_MODE_CBR_BIT_KHR";
  7242. case VK_VIDEO_ENCODE_RATE_CONTROL_MODE_NONE_BIT_KHR:
  7243. return "VK_VIDEO_ENCODE_RATE_CONTROL_MODE_NONE_BIT_KHR";
  7244. case VK_VIDEO_ENCODE_RATE_CONTROL_MODE_VBR_BIT_KHR:
  7245. return "VK_VIDEO_ENCODE_RATE_CONTROL_MODE_VBR_BIT_KHR";
  7246. default:
  7247. return "Unhandled VkVideoEncodeRateControlModeFlagBitsKHR";
  7248. }
  7249. }
  7250. static inline std::string string_VkVideoEncodeRateControlModeFlagsKHR(VkVideoEncodeRateControlModeFlagsKHR input_value)
  7251. {
  7252. std::string ret;
  7253. int index = 0;
  7254. while(input_value) {
  7255. if (input_value & 1) {
  7256. if( !ret.empty()) ret.append("|");
  7257. ret.append(string_VkVideoEncodeRateControlModeFlagBitsKHR(static_cast<VkVideoEncodeRateControlModeFlagBitsKHR>(1U << index)));
  7258. }
  7259. ++index;
  7260. input_value >>= 1;
  7261. }
  7262. if( ret.empty()) ret.append(string_VkVideoEncodeRateControlModeFlagBitsKHR(static_cast<VkVideoEncodeRateControlModeFlagBitsKHR>(0)));
  7263. return ret;
  7264. }
  7265. #endif // VK_ENABLE_BETA_EXTENSIONS
  7266. #ifdef VK_ENABLE_BETA_EXTENSIONS
  7267. static inline const char* string_VkVideoEncodeUsageFlagBitsKHR(VkVideoEncodeUsageFlagBitsKHR input_value)
  7268. {
  7269. switch (input_value)
  7270. {
  7271. case VK_VIDEO_ENCODE_USAGE_CONFERENCING_BIT_KHR:
  7272. return "VK_VIDEO_ENCODE_USAGE_CONFERENCING_BIT_KHR";
  7273. case VK_VIDEO_ENCODE_USAGE_DEFAULT_KHR:
  7274. return "VK_VIDEO_ENCODE_USAGE_DEFAULT_KHR";
  7275. case VK_VIDEO_ENCODE_USAGE_RECORDING_BIT_KHR:
  7276. return "VK_VIDEO_ENCODE_USAGE_RECORDING_BIT_KHR";
  7277. case VK_VIDEO_ENCODE_USAGE_STREAMING_BIT_KHR:
  7278. return "VK_VIDEO_ENCODE_USAGE_STREAMING_BIT_KHR";
  7279. case VK_VIDEO_ENCODE_USAGE_TRANSCODING_BIT_KHR:
  7280. return "VK_VIDEO_ENCODE_USAGE_TRANSCODING_BIT_KHR";
  7281. default:
  7282. return "Unhandled VkVideoEncodeUsageFlagBitsKHR";
  7283. }
  7284. }
  7285. static inline std::string string_VkVideoEncodeUsageFlagsKHR(VkVideoEncodeUsageFlagsKHR input_value)
  7286. {
  7287. std::string ret;
  7288. int index = 0;
  7289. while(input_value) {
  7290. if (input_value & 1) {
  7291. if( !ret.empty()) ret.append("|");
  7292. ret.append(string_VkVideoEncodeUsageFlagBitsKHR(static_cast<VkVideoEncodeUsageFlagBitsKHR>(1U << index)));
  7293. }
  7294. ++index;
  7295. input_value >>= 1;
  7296. }
  7297. if( ret.empty()) ret.append(string_VkVideoEncodeUsageFlagBitsKHR(static_cast<VkVideoEncodeUsageFlagBitsKHR>(0)));
  7298. return ret;
  7299. }
  7300. #endif // VK_ENABLE_BETA_EXTENSIONS
  7301. #ifdef VK_ENABLE_BETA_EXTENSIONS
  7302. static inline const char* string_VkVideoEncodeContentFlagBitsKHR(VkVideoEncodeContentFlagBitsKHR input_value)
  7303. {
  7304. switch (input_value)
  7305. {
  7306. case VK_VIDEO_ENCODE_CONTENT_CAMERA_BIT_KHR:
  7307. return "VK_VIDEO_ENCODE_CONTENT_CAMERA_BIT_KHR";
  7308. case VK_VIDEO_ENCODE_CONTENT_DEFAULT_KHR:
  7309. return "VK_VIDEO_ENCODE_CONTENT_DEFAULT_KHR";
  7310. case VK_VIDEO_ENCODE_CONTENT_DESKTOP_BIT_KHR:
  7311. return "VK_VIDEO_ENCODE_CONTENT_DESKTOP_BIT_KHR";
  7312. case VK_VIDEO_ENCODE_CONTENT_RENDERED_BIT_KHR:
  7313. return "VK_VIDEO_ENCODE_CONTENT_RENDERED_BIT_KHR";
  7314. default:
  7315. return "Unhandled VkVideoEncodeContentFlagBitsKHR";
  7316. }
  7317. }
  7318. static inline std::string string_VkVideoEncodeContentFlagsKHR(VkVideoEncodeContentFlagsKHR input_value)
  7319. {
  7320. std::string ret;
  7321. int index = 0;
  7322. while(input_value) {
  7323. if (input_value & 1) {
  7324. if( !ret.empty()) ret.append("|");
  7325. ret.append(string_VkVideoEncodeContentFlagBitsKHR(static_cast<VkVideoEncodeContentFlagBitsKHR>(1U << index)));
  7326. }
  7327. ++index;
  7328. input_value >>= 1;
  7329. }
  7330. if( ret.empty()) ret.append(string_VkVideoEncodeContentFlagBitsKHR(static_cast<VkVideoEncodeContentFlagBitsKHR>(0)));
  7331. return ret;
  7332. }
  7333. #endif // VK_ENABLE_BETA_EXTENSIONS
  7334. #ifdef VK_ENABLE_BETA_EXTENSIONS
  7335. static inline const char* string_VkVideoEncodeTuningModeKHR(VkVideoEncodeTuningModeKHR input_value)
  7336. {
  7337. switch (input_value)
  7338. {
  7339. case VK_VIDEO_ENCODE_TUNING_MODE_DEFAULT_KHR:
  7340. return "VK_VIDEO_ENCODE_TUNING_MODE_DEFAULT_KHR";
  7341. case VK_VIDEO_ENCODE_TUNING_MODE_HIGH_QUALITY_KHR:
  7342. return "VK_VIDEO_ENCODE_TUNING_MODE_HIGH_QUALITY_KHR";
  7343. case VK_VIDEO_ENCODE_TUNING_MODE_LOSSLESS_KHR:
  7344. return "VK_VIDEO_ENCODE_TUNING_MODE_LOSSLESS_KHR";
  7345. case VK_VIDEO_ENCODE_TUNING_MODE_LOW_LATENCY_KHR:
  7346. return "VK_VIDEO_ENCODE_TUNING_MODE_LOW_LATENCY_KHR";
  7347. case VK_VIDEO_ENCODE_TUNING_MODE_ULTRA_LOW_LATENCY_KHR:
  7348. return "VK_VIDEO_ENCODE_TUNING_MODE_ULTRA_LOW_LATENCY_KHR";
  7349. default:
  7350. return "Unhandled VkVideoEncodeTuningModeKHR";
  7351. }
  7352. }
  7353. #endif // VK_ENABLE_BETA_EXTENSIONS
  7354. static inline const char* string_VkPipelineStageFlagBits2KHR(uint64_t input_value)
  7355. {
  7356. switch (input_value)
  7357. {
  7358. case VK_PIPELINE_STAGE_2_ACCELERATION_STRUCTURE_BUILD_BIT_KHR:
  7359. return "VK_PIPELINE_STAGE_2_ACCELERATION_STRUCTURE_BUILD_BIT_KHR";
  7360. case VK_PIPELINE_STAGE_2_ACCELERATION_STRUCTURE_COPY_BIT_KHR:
  7361. return "VK_PIPELINE_STAGE_2_ACCELERATION_STRUCTURE_COPY_BIT_KHR";
  7362. case VK_PIPELINE_STAGE_2_ALL_COMMANDS_BIT:
  7363. return "VK_PIPELINE_STAGE_2_ALL_COMMANDS_BIT";
  7364. case VK_PIPELINE_STAGE_2_ALL_GRAPHICS_BIT:
  7365. return "VK_PIPELINE_STAGE_2_ALL_GRAPHICS_BIT";
  7366. case VK_PIPELINE_STAGE_2_ALL_TRANSFER_BIT:
  7367. return "VK_PIPELINE_STAGE_2_ALL_TRANSFER_BIT";
  7368. case VK_PIPELINE_STAGE_2_BLIT_BIT:
  7369. return "VK_PIPELINE_STAGE_2_BLIT_BIT";
  7370. case VK_PIPELINE_STAGE_2_BOTTOM_OF_PIPE_BIT:
  7371. return "VK_PIPELINE_STAGE_2_BOTTOM_OF_PIPE_BIT";
  7372. case VK_PIPELINE_STAGE_2_CLEAR_BIT:
  7373. return "VK_PIPELINE_STAGE_2_CLEAR_BIT";
  7374. case VK_PIPELINE_STAGE_2_COLOR_ATTACHMENT_OUTPUT_BIT:
  7375. return "VK_PIPELINE_STAGE_2_COLOR_ATTACHMENT_OUTPUT_BIT";
  7376. case VK_PIPELINE_STAGE_2_COMMAND_PREPROCESS_BIT_NV:
  7377. return "VK_PIPELINE_STAGE_2_COMMAND_PREPROCESS_BIT_NV";
  7378. case VK_PIPELINE_STAGE_2_COMPUTE_SHADER_BIT:
  7379. return "VK_PIPELINE_STAGE_2_COMPUTE_SHADER_BIT";
  7380. case VK_PIPELINE_STAGE_2_CONDITIONAL_RENDERING_BIT_EXT:
  7381. return "VK_PIPELINE_STAGE_2_CONDITIONAL_RENDERING_BIT_EXT";
  7382. case VK_PIPELINE_STAGE_2_COPY_BIT:
  7383. return "VK_PIPELINE_STAGE_2_COPY_BIT";
  7384. case VK_PIPELINE_STAGE_2_DRAW_INDIRECT_BIT:
  7385. return "VK_PIPELINE_STAGE_2_DRAW_INDIRECT_BIT";
  7386. case VK_PIPELINE_STAGE_2_EARLY_FRAGMENT_TESTS_BIT:
  7387. return "VK_PIPELINE_STAGE_2_EARLY_FRAGMENT_TESTS_BIT";
  7388. case VK_PIPELINE_STAGE_2_FRAGMENT_DENSITY_PROCESS_BIT_EXT:
  7389. return "VK_PIPELINE_STAGE_2_FRAGMENT_DENSITY_PROCESS_BIT_EXT";
  7390. case VK_PIPELINE_STAGE_2_FRAGMENT_SHADER_BIT:
  7391. return "VK_PIPELINE_STAGE_2_FRAGMENT_SHADER_BIT";
  7392. case VK_PIPELINE_STAGE_2_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHR:
  7393. return "VK_PIPELINE_STAGE_2_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHR";
  7394. case VK_PIPELINE_STAGE_2_GEOMETRY_SHADER_BIT:
  7395. return "VK_PIPELINE_STAGE_2_GEOMETRY_SHADER_BIT";
  7396. case VK_PIPELINE_STAGE_2_HOST_BIT:
  7397. return "VK_PIPELINE_STAGE_2_HOST_BIT";
  7398. case VK_PIPELINE_STAGE_2_INDEX_INPUT_BIT:
  7399. return "VK_PIPELINE_STAGE_2_INDEX_INPUT_BIT";
  7400. case VK_PIPELINE_STAGE_2_INVOCATION_MASK_BIT_HUAWEI:
  7401. return "VK_PIPELINE_STAGE_2_INVOCATION_MASK_BIT_HUAWEI";
  7402. case VK_PIPELINE_STAGE_2_LATE_FRAGMENT_TESTS_BIT:
  7403. return "VK_PIPELINE_STAGE_2_LATE_FRAGMENT_TESTS_BIT";
  7404. case VK_PIPELINE_STAGE_2_MESH_SHADER_BIT_EXT:
  7405. return "VK_PIPELINE_STAGE_2_MESH_SHADER_BIT_EXT";
  7406. case VK_PIPELINE_STAGE_2_MICROMAP_BUILD_BIT_EXT:
  7407. return "VK_PIPELINE_STAGE_2_MICROMAP_BUILD_BIT_EXT";
  7408. case VK_PIPELINE_STAGE_2_NONE:
  7409. return "VK_PIPELINE_STAGE_2_NONE";
  7410. case VK_PIPELINE_STAGE_2_OPTICAL_FLOW_BIT_NV:
  7411. return "VK_PIPELINE_STAGE_2_OPTICAL_FLOW_BIT_NV";
  7412. case VK_PIPELINE_STAGE_2_PRE_RASTERIZATION_SHADERS_BIT:
  7413. return "VK_PIPELINE_STAGE_2_PRE_RASTERIZATION_SHADERS_BIT";
  7414. case VK_PIPELINE_STAGE_2_RAY_TRACING_SHADER_BIT_KHR:
  7415. return "VK_PIPELINE_STAGE_2_RAY_TRACING_SHADER_BIT_KHR";
  7416. case VK_PIPELINE_STAGE_2_RESOLVE_BIT:
  7417. return "VK_PIPELINE_STAGE_2_RESOLVE_BIT";
  7418. case VK_PIPELINE_STAGE_2_SUBPASS_SHADING_BIT_HUAWEI:
  7419. return "VK_PIPELINE_STAGE_2_SUBPASS_SHADING_BIT_HUAWEI";
  7420. case VK_PIPELINE_STAGE_2_TASK_SHADER_BIT_EXT:
  7421. return "VK_PIPELINE_STAGE_2_TASK_SHADER_BIT_EXT";
  7422. case VK_PIPELINE_STAGE_2_TESSELLATION_CONTROL_SHADER_BIT:
  7423. return "VK_PIPELINE_STAGE_2_TESSELLATION_CONTROL_SHADER_BIT";
  7424. case VK_PIPELINE_STAGE_2_TESSELLATION_EVALUATION_SHADER_BIT:
  7425. return "VK_PIPELINE_STAGE_2_TESSELLATION_EVALUATION_SHADER_BIT";
  7426. case VK_PIPELINE_STAGE_2_TOP_OF_PIPE_BIT:
  7427. return "VK_PIPELINE_STAGE_2_TOP_OF_PIPE_BIT";
  7428. case VK_PIPELINE_STAGE_2_TRANSFORM_FEEDBACK_BIT_EXT:
  7429. return "VK_PIPELINE_STAGE_2_TRANSFORM_FEEDBACK_BIT_EXT";
  7430. case VK_PIPELINE_STAGE_2_VERTEX_ATTRIBUTE_INPUT_BIT:
  7431. return "VK_PIPELINE_STAGE_2_VERTEX_ATTRIBUTE_INPUT_BIT";
  7432. case VK_PIPELINE_STAGE_2_VERTEX_INPUT_BIT:
  7433. return "VK_PIPELINE_STAGE_2_VERTEX_INPUT_BIT";
  7434. case VK_PIPELINE_STAGE_2_VERTEX_SHADER_BIT:
  7435. return "VK_PIPELINE_STAGE_2_VERTEX_SHADER_BIT";
  7436. #ifdef VK_ENABLE_BETA_EXTENSIONS
  7437. case VK_PIPELINE_STAGE_2_VIDEO_DECODE_BIT_KHR:
  7438. return "VK_PIPELINE_STAGE_2_VIDEO_DECODE_BIT_KHR";
  7439. #endif // VK_ENABLE_BETA_EXTENSIONS
  7440. #ifdef VK_ENABLE_BETA_EXTENSIONS
  7441. case VK_PIPELINE_STAGE_2_VIDEO_ENCODE_BIT_KHR:
  7442. return "VK_PIPELINE_STAGE_2_VIDEO_ENCODE_BIT_KHR";
  7443. #endif // VK_ENABLE_BETA_EXTENSIONS
  7444. default:
  7445. return "Unhandled VkPipelineStageFlagBits2KHR";
  7446. }
  7447. }
  7448. static inline std::string string_VkPipelineStageFlags2KHR(VkPipelineStageFlags2KHR input_value)
  7449. {
  7450. std::string ret;
  7451. int index = 0;
  7452. while(input_value) {
  7453. if (input_value & 1) {
  7454. if( !ret.empty()) ret.append("|");
  7455. ret.append(string_VkPipelineStageFlagBits2KHR(static_cast<uint64_t>(1ULL << index)));
  7456. }
  7457. ++index;
  7458. input_value >>= 1;
  7459. }
  7460. if( ret.empty()) ret.append(string_VkPipelineStageFlagBits2KHR(static_cast<uint64_t>(0)));
  7461. return ret;
  7462. }
  7463. static inline const char* string_VkAccessFlagBits2KHR(uint64_t input_value)
  7464. {
  7465. switch (input_value)
  7466. {
  7467. case VK_ACCESS_2_ACCELERATION_STRUCTURE_READ_BIT_KHR:
  7468. return "VK_ACCESS_2_ACCELERATION_STRUCTURE_READ_BIT_KHR";
  7469. case VK_ACCESS_2_ACCELERATION_STRUCTURE_WRITE_BIT_KHR:
  7470. return "VK_ACCESS_2_ACCELERATION_STRUCTURE_WRITE_BIT_KHR";
  7471. case VK_ACCESS_2_COLOR_ATTACHMENT_READ_BIT:
  7472. return "VK_ACCESS_2_COLOR_ATTACHMENT_READ_BIT";
  7473. case VK_ACCESS_2_COLOR_ATTACHMENT_READ_NONCOHERENT_BIT_EXT:
  7474. return "VK_ACCESS_2_COLOR_ATTACHMENT_READ_NONCOHERENT_BIT_EXT";
  7475. case VK_ACCESS_2_COLOR_ATTACHMENT_WRITE_BIT:
  7476. return "VK_ACCESS_2_COLOR_ATTACHMENT_WRITE_BIT";
  7477. case VK_ACCESS_2_COMMAND_PREPROCESS_READ_BIT_NV:
  7478. return "VK_ACCESS_2_COMMAND_PREPROCESS_READ_BIT_NV";
  7479. case VK_ACCESS_2_COMMAND_PREPROCESS_WRITE_BIT_NV:
  7480. return "VK_ACCESS_2_COMMAND_PREPROCESS_WRITE_BIT_NV";
  7481. case VK_ACCESS_2_CONDITIONAL_RENDERING_READ_BIT_EXT:
  7482. return "VK_ACCESS_2_CONDITIONAL_RENDERING_READ_BIT_EXT";
  7483. case VK_ACCESS_2_DEPTH_STENCIL_ATTACHMENT_READ_BIT:
  7484. return "VK_ACCESS_2_DEPTH_STENCIL_ATTACHMENT_READ_BIT";
  7485. case VK_ACCESS_2_DEPTH_STENCIL_ATTACHMENT_WRITE_BIT:
  7486. return "VK_ACCESS_2_DEPTH_STENCIL_ATTACHMENT_WRITE_BIT";
  7487. case VK_ACCESS_2_FRAGMENT_DENSITY_MAP_READ_BIT_EXT:
  7488. return "VK_ACCESS_2_FRAGMENT_DENSITY_MAP_READ_BIT_EXT";
  7489. case VK_ACCESS_2_FRAGMENT_SHADING_RATE_ATTACHMENT_READ_BIT_KHR:
  7490. return "VK_ACCESS_2_FRAGMENT_SHADING_RATE_ATTACHMENT_READ_BIT_KHR";
  7491. case VK_ACCESS_2_HOST_READ_BIT:
  7492. return "VK_ACCESS_2_HOST_READ_BIT";
  7493. case VK_ACCESS_2_HOST_WRITE_BIT:
  7494. return "VK_ACCESS_2_HOST_WRITE_BIT";
  7495. case VK_ACCESS_2_INDEX_READ_BIT:
  7496. return "VK_ACCESS_2_INDEX_READ_BIT";
  7497. case VK_ACCESS_2_INDIRECT_COMMAND_READ_BIT:
  7498. return "VK_ACCESS_2_INDIRECT_COMMAND_READ_BIT";
  7499. case VK_ACCESS_2_INPUT_ATTACHMENT_READ_BIT:
  7500. return "VK_ACCESS_2_INPUT_ATTACHMENT_READ_BIT";
  7501. case VK_ACCESS_2_INVOCATION_MASK_READ_BIT_HUAWEI:
  7502. return "VK_ACCESS_2_INVOCATION_MASK_READ_BIT_HUAWEI";
  7503. case VK_ACCESS_2_MEMORY_READ_BIT:
  7504. return "VK_ACCESS_2_MEMORY_READ_BIT";
  7505. case VK_ACCESS_2_MEMORY_WRITE_BIT:
  7506. return "VK_ACCESS_2_MEMORY_WRITE_BIT";
  7507. case VK_ACCESS_2_MICROMAP_READ_BIT_EXT:
  7508. return "VK_ACCESS_2_MICROMAP_READ_BIT_EXT";
  7509. case VK_ACCESS_2_MICROMAP_WRITE_BIT_EXT:
  7510. return "VK_ACCESS_2_MICROMAP_WRITE_BIT_EXT";
  7511. case VK_ACCESS_2_NONE:
  7512. return "VK_ACCESS_2_NONE";
  7513. case VK_ACCESS_2_OPTICAL_FLOW_READ_BIT_NV:
  7514. return "VK_ACCESS_2_OPTICAL_FLOW_READ_BIT_NV";
  7515. case VK_ACCESS_2_OPTICAL_FLOW_WRITE_BIT_NV:
  7516. return "VK_ACCESS_2_OPTICAL_FLOW_WRITE_BIT_NV";
  7517. case VK_ACCESS_2_SHADER_BINDING_TABLE_READ_BIT_KHR:
  7518. return "VK_ACCESS_2_SHADER_BINDING_TABLE_READ_BIT_KHR";
  7519. case VK_ACCESS_2_SHADER_READ_BIT:
  7520. return "VK_ACCESS_2_SHADER_READ_BIT";
  7521. case VK_ACCESS_2_SHADER_SAMPLED_READ_BIT:
  7522. return "VK_ACCESS_2_SHADER_SAMPLED_READ_BIT";
  7523. case VK_ACCESS_2_SHADER_STORAGE_READ_BIT:
  7524. return "VK_ACCESS_2_SHADER_STORAGE_READ_BIT";
  7525. case VK_ACCESS_2_SHADER_STORAGE_WRITE_BIT:
  7526. return "VK_ACCESS_2_SHADER_STORAGE_WRITE_BIT";
  7527. case VK_ACCESS_2_SHADER_WRITE_BIT:
  7528. return "VK_ACCESS_2_SHADER_WRITE_BIT";
  7529. case VK_ACCESS_2_TRANSFER_READ_BIT:
  7530. return "VK_ACCESS_2_TRANSFER_READ_BIT";
  7531. case VK_ACCESS_2_TRANSFER_WRITE_BIT:
  7532. return "VK_ACCESS_2_TRANSFER_WRITE_BIT";
  7533. case VK_ACCESS_2_TRANSFORM_FEEDBACK_COUNTER_READ_BIT_EXT:
  7534. return "VK_ACCESS_2_TRANSFORM_FEEDBACK_COUNTER_READ_BIT_EXT";
  7535. case VK_ACCESS_2_TRANSFORM_FEEDBACK_COUNTER_WRITE_BIT_EXT:
  7536. return "VK_ACCESS_2_TRANSFORM_FEEDBACK_COUNTER_WRITE_BIT_EXT";
  7537. case VK_ACCESS_2_TRANSFORM_FEEDBACK_WRITE_BIT_EXT:
  7538. return "VK_ACCESS_2_TRANSFORM_FEEDBACK_WRITE_BIT_EXT";
  7539. case VK_ACCESS_2_UNIFORM_READ_BIT:
  7540. return "VK_ACCESS_2_UNIFORM_READ_BIT";
  7541. case VK_ACCESS_2_VERTEX_ATTRIBUTE_READ_BIT:
  7542. return "VK_ACCESS_2_VERTEX_ATTRIBUTE_READ_BIT";
  7543. #ifdef VK_ENABLE_BETA_EXTENSIONS
  7544. case VK_ACCESS_2_VIDEO_DECODE_READ_BIT_KHR:
  7545. return "VK_ACCESS_2_VIDEO_DECODE_READ_BIT_KHR";
  7546. #endif // VK_ENABLE_BETA_EXTENSIONS
  7547. #ifdef VK_ENABLE_BETA_EXTENSIONS
  7548. case VK_ACCESS_2_VIDEO_DECODE_WRITE_BIT_KHR:
  7549. return "VK_ACCESS_2_VIDEO_DECODE_WRITE_BIT_KHR";
  7550. #endif // VK_ENABLE_BETA_EXTENSIONS
  7551. #ifdef VK_ENABLE_BETA_EXTENSIONS
  7552. case VK_ACCESS_2_VIDEO_ENCODE_READ_BIT_KHR:
  7553. return "VK_ACCESS_2_VIDEO_ENCODE_READ_BIT_KHR";
  7554. #endif // VK_ENABLE_BETA_EXTENSIONS
  7555. #ifdef VK_ENABLE_BETA_EXTENSIONS
  7556. case VK_ACCESS_2_VIDEO_ENCODE_WRITE_BIT_KHR:
  7557. return "VK_ACCESS_2_VIDEO_ENCODE_WRITE_BIT_KHR";
  7558. #endif // VK_ENABLE_BETA_EXTENSIONS
  7559. default:
  7560. return "Unhandled VkAccessFlagBits2KHR";
  7561. }
  7562. }
  7563. static inline std::string string_VkAccessFlags2KHR(VkAccessFlags2KHR input_value)
  7564. {
  7565. std::string ret;
  7566. int index = 0;
  7567. while(input_value) {
  7568. if (input_value & 1) {
  7569. if( !ret.empty()) ret.append("|");
  7570. ret.append(string_VkAccessFlagBits2KHR(static_cast<uint64_t>(1ULL << index)));
  7571. }
  7572. ++index;
  7573. input_value >>= 1;
  7574. }
  7575. if( ret.empty()) ret.append(string_VkAccessFlagBits2KHR(static_cast<uint64_t>(0)));
  7576. return ret;
  7577. }
  7578. static inline const char* string_VkSubmitFlagBitsKHR(VkSubmitFlagBitsKHR input_value)
  7579. {
  7580. switch (input_value)
  7581. {
  7582. case VK_SUBMIT_PROTECTED_BIT:
  7583. return "VK_SUBMIT_PROTECTED_BIT";
  7584. default:
  7585. return "Unhandled VkSubmitFlagBitsKHR";
  7586. }
  7587. }
  7588. static inline std::string string_VkSubmitFlagsKHR(VkSubmitFlagsKHR input_value)
  7589. {
  7590. std::string ret;
  7591. int index = 0;
  7592. while(input_value) {
  7593. if (input_value & 1) {
  7594. if( !ret.empty()) ret.append("|");
  7595. ret.append(string_VkSubmitFlagBitsKHR(static_cast<VkSubmitFlagBitsKHR>(1U << index)));
  7596. }
  7597. ++index;
  7598. input_value >>= 1;
  7599. }
  7600. if( ret.empty()) ret.append(string_VkSubmitFlagBitsKHR(static_cast<VkSubmitFlagBitsKHR>(0)));
  7601. return ret;
  7602. }
  7603. static inline const char* string_VkFormatFeatureFlagBits2KHR(uint64_t input_value)
  7604. {
  7605. switch (input_value)
  7606. {
  7607. case VK_FORMAT_FEATURE_2_ACCELERATION_STRUCTURE_VERTEX_BUFFER_BIT_KHR:
  7608. return "VK_FORMAT_FEATURE_2_ACCELERATION_STRUCTURE_VERTEX_BUFFER_BIT_KHR";
  7609. case VK_FORMAT_FEATURE_2_BLIT_DST_BIT:
  7610. return "VK_FORMAT_FEATURE_2_BLIT_DST_BIT";
  7611. case VK_FORMAT_FEATURE_2_BLIT_SRC_BIT:
  7612. return "VK_FORMAT_FEATURE_2_BLIT_SRC_BIT";
  7613. case VK_FORMAT_FEATURE_2_BLOCK_MATCHING_BIT_QCOM:
  7614. return "VK_FORMAT_FEATURE_2_BLOCK_MATCHING_BIT_QCOM";
  7615. case VK_FORMAT_FEATURE_2_BOX_FILTER_SAMPLED_BIT_QCOM:
  7616. return "VK_FORMAT_FEATURE_2_BOX_FILTER_SAMPLED_BIT_QCOM";
  7617. case VK_FORMAT_FEATURE_2_COLOR_ATTACHMENT_BIT:
  7618. return "VK_FORMAT_FEATURE_2_COLOR_ATTACHMENT_BIT";
  7619. case VK_FORMAT_FEATURE_2_COLOR_ATTACHMENT_BLEND_BIT:
  7620. return "VK_FORMAT_FEATURE_2_COLOR_ATTACHMENT_BLEND_BIT";
  7621. case VK_FORMAT_FEATURE_2_COSITED_CHROMA_SAMPLES_BIT:
  7622. return "VK_FORMAT_FEATURE_2_COSITED_CHROMA_SAMPLES_BIT";
  7623. case VK_FORMAT_FEATURE_2_DEPTH_STENCIL_ATTACHMENT_BIT:
  7624. return "VK_FORMAT_FEATURE_2_DEPTH_STENCIL_ATTACHMENT_BIT";
  7625. case VK_FORMAT_FEATURE_2_DISJOINT_BIT:
  7626. return "VK_FORMAT_FEATURE_2_DISJOINT_BIT";
  7627. case VK_FORMAT_FEATURE_2_FRAGMENT_DENSITY_MAP_BIT_EXT:
  7628. return "VK_FORMAT_FEATURE_2_FRAGMENT_DENSITY_MAP_BIT_EXT";
  7629. case VK_FORMAT_FEATURE_2_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHR:
  7630. return "VK_FORMAT_FEATURE_2_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHR";
  7631. case VK_FORMAT_FEATURE_2_LINEAR_COLOR_ATTACHMENT_BIT_NV:
  7632. return "VK_FORMAT_FEATURE_2_LINEAR_COLOR_ATTACHMENT_BIT_NV";
  7633. case VK_FORMAT_FEATURE_2_MIDPOINT_CHROMA_SAMPLES_BIT:
  7634. return "VK_FORMAT_FEATURE_2_MIDPOINT_CHROMA_SAMPLES_BIT";
  7635. case VK_FORMAT_FEATURE_2_OPTICAL_FLOW_COST_BIT_NV:
  7636. return "VK_FORMAT_FEATURE_2_OPTICAL_FLOW_COST_BIT_NV";
  7637. case VK_FORMAT_FEATURE_2_OPTICAL_FLOW_IMAGE_BIT_NV:
  7638. return "VK_FORMAT_FEATURE_2_OPTICAL_FLOW_IMAGE_BIT_NV";
  7639. case VK_FORMAT_FEATURE_2_OPTICAL_FLOW_VECTOR_BIT_NV:
  7640. return "VK_FORMAT_FEATURE_2_OPTICAL_FLOW_VECTOR_BIT_NV";
  7641. case VK_FORMAT_FEATURE_2_SAMPLED_IMAGE_BIT:
  7642. return "VK_FORMAT_FEATURE_2_SAMPLED_IMAGE_BIT";
  7643. case VK_FORMAT_FEATURE_2_SAMPLED_IMAGE_DEPTH_COMPARISON_BIT:
  7644. return "VK_FORMAT_FEATURE_2_SAMPLED_IMAGE_DEPTH_COMPARISON_BIT";
  7645. case VK_FORMAT_FEATURE_2_SAMPLED_IMAGE_FILTER_CUBIC_BIT:
  7646. return "VK_FORMAT_FEATURE_2_SAMPLED_IMAGE_FILTER_CUBIC_BIT";
  7647. case VK_FORMAT_FEATURE_2_SAMPLED_IMAGE_FILTER_LINEAR_BIT:
  7648. return "VK_FORMAT_FEATURE_2_SAMPLED_IMAGE_FILTER_LINEAR_BIT";
  7649. case VK_FORMAT_FEATURE_2_SAMPLED_IMAGE_FILTER_MINMAX_BIT:
  7650. return "VK_FORMAT_FEATURE_2_SAMPLED_IMAGE_FILTER_MINMAX_BIT";
  7651. case VK_FORMAT_FEATURE_2_SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_BIT:
  7652. return "VK_FORMAT_FEATURE_2_SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_BIT";
  7653. case VK_FORMAT_FEATURE_2_SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_FORCEABLE_BIT:
  7654. return "VK_FORMAT_FEATURE_2_SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_FORCEABLE_BIT";
  7655. case VK_FORMAT_FEATURE_2_SAMPLED_IMAGE_YCBCR_CONVERSION_LINEAR_FILTER_BIT:
  7656. return "VK_FORMAT_FEATURE_2_SAMPLED_IMAGE_YCBCR_CONVERSION_LINEAR_FILTER_BIT";
  7657. case VK_FORMAT_FEATURE_2_SAMPLED_IMAGE_YCBCR_CONVERSION_SEPARATE_RECONSTRUCTION_FILTER_BIT:
  7658. return "VK_FORMAT_FEATURE_2_SAMPLED_IMAGE_YCBCR_CONVERSION_SEPARATE_RECONSTRUCTION_FILTER_BIT";
  7659. case VK_FORMAT_FEATURE_2_STORAGE_IMAGE_ATOMIC_BIT:
  7660. return "VK_FORMAT_FEATURE_2_STORAGE_IMAGE_ATOMIC_BIT";
  7661. case VK_FORMAT_FEATURE_2_STORAGE_IMAGE_BIT:
  7662. return "VK_FORMAT_FEATURE_2_STORAGE_IMAGE_BIT";
  7663. case VK_FORMAT_FEATURE_2_STORAGE_READ_WITHOUT_FORMAT_BIT:
  7664. return "VK_FORMAT_FEATURE_2_STORAGE_READ_WITHOUT_FORMAT_BIT";
  7665. case VK_FORMAT_FEATURE_2_STORAGE_TEXEL_BUFFER_ATOMIC_BIT:
  7666. return "VK_FORMAT_FEATURE_2_STORAGE_TEXEL_BUFFER_ATOMIC_BIT";
  7667. case VK_FORMAT_FEATURE_2_STORAGE_TEXEL_BUFFER_BIT:
  7668. return "VK_FORMAT_FEATURE_2_STORAGE_TEXEL_BUFFER_BIT";
  7669. case VK_FORMAT_FEATURE_2_STORAGE_WRITE_WITHOUT_FORMAT_BIT:
  7670. return "VK_FORMAT_FEATURE_2_STORAGE_WRITE_WITHOUT_FORMAT_BIT";
  7671. case VK_FORMAT_FEATURE_2_TRANSFER_DST_BIT:
  7672. return "VK_FORMAT_FEATURE_2_TRANSFER_DST_BIT";
  7673. case VK_FORMAT_FEATURE_2_TRANSFER_SRC_BIT:
  7674. return "VK_FORMAT_FEATURE_2_TRANSFER_SRC_BIT";
  7675. case VK_FORMAT_FEATURE_2_UNIFORM_TEXEL_BUFFER_BIT:
  7676. return "VK_FORMAT_FEATURE_2_UNIFORM_TEXEL_BUFFER_BIT";
  7677. case VK_FORMAT_FEATURE_2_VERTEX_BUFFER_BIT:
  7678. return "VK_FORMAT_FEATURE_2_VERTEX_BUFFER_BIT";
  7679. #ifdef VK_ENABLE_BETA_EXTENSIONS
  7680. case VK_FORMAT_FEATURE_2_VIDEO_DECODE_DPB_BIT_KHR:
  7681. return "VK_FORMAT_FEATURE_2_VIDEO_DECODE_DPB_BIT_KHR";
  7682. #endif // VK_ENABLE_BETA_EXTENSIONS
  7683. #ifdef VK_ENABLE_BETA_EXTENSIONS
  7684. case VK_FORMAT_FEATURE_2_VIDEO_DECODE_OUTPUT_BIT_KHR:
  7685. return "VK_FORMAT_FEATURE_2_VIDEO_DECODE_OUTPUT_BIT_KHR";
  7686. #endif // VK_ENABLE_BETA_EXTENSIONS
  7687. #ifdef VK_ENABLE_BETA_EXTENSIONS
  7688. case VK_FORMAT_FEATURE_2_VIDEO_ENCODE_DPB_BIT_KHR:
  7689. return "VK_FORMAT_FEATURE_2_VIDEO_ENCODE_DPB_BIT_KHR";
  7690. #endif // VK_ENABLE_BETA_EXTENSIONS
  7691. #ifdef VK_ENABLE_BETA_EXTENSIONS
  7692. case VK_FORMAT_FEATURE_2_VIDEO_ENCODE_INPUT_BIT_KHR:
  7693. return "VK_FORMAT_FEATURE_2_VIDEO_ENCODE_INPUT_BIT_KHR";
  7694. #endif // VK_ENABLE_BETA_EXTENSIONS
  7695. case VK_FORMAT_FEATURE_2_WEIGHT_IMAGE_BIT_QCOM:
  7696. return "VK_FORMAT_FEATURE_2_WEIGHT_IMAGE_BIT_QCOM";
  7697. case VK_FORMAT_FEATURE_2_WEIGHT_SAMPLED_IMAGE_BIT_QCOM:
  7698. return "VK_FORMAT_FEATURE_2_WEIGHT_SAMPLED_IMAGE_BIT_QCOM";
  7699. default:
  7700. return "Unhandled VkFormatFeatureFlagBits2KHR";
  7701. }
  7702. }
  7703. static inline std::string string_VkFormatFeatureFlags2KHR(VkFormatFeatureFlags2KHR input_value)
  7704. {
  7705. std::string ret;
  7706. int index = 0;
  7707. while(input_value) {
  7708. if (input_value & 1) {
  7709. if( !ret.empty()) ret.append("|");
  7710. ret.append(string_VkFormatFeatureFlagBits2KHR(static_cast<uint64_t>(1ULL << index)));
  7711. }
  7712. ++index;
  7713. input_value >>= 1;
  7714. }
  7715. if( ret.empty()) ret.append(string_VkFormatFeatureFlagBits2KHR(static_cast<uint64_t>(0)));
  7716. return ret;
  7717. }
  7718. static inline const char* string_VkDebugReportFlagBitsEXT(VkDebugReportFlagBitsEXT input_value)
  7719. {
  7720. switch (input_value)
  7721. {
  7722. case VK_DEBUG_REPORT_DEBUG_BIT_EXT:
  7723. return "VK_DEBUG_REPORT_DEBUG_BIT_EXT";
  7724. case VK_DEBUG_REPORT_ERROR_BIT_EXT:
  7725. return "VK_DEBUG_REPORT_ERROR_BIT_EXT";
  7726. case VK_DEBUG_REPORT_INFORMATION_BIT_EXT:
  7727. return "VK_DEBUG_REPORT_INFORMATION_BIT_EXT";
  7728. case VK_DEBUG_REPORT_PERFORMANCE_WARNING_BIT_EXT:
  7729. return "VK_DEBUG_REPORT_PERFORMANCE_WARNING_BIT_EXT";
  7730. case VK_DEBUG_REPORT_WARNING_BIT_EXT:
  7731. return "VK_DEBUG_REPORT_WARNING_BIT_EXT";
  7732. default:
  7733. return "Unhandled VkDebugReportFlagBitsEXT";
  7734. }
  7735. }
  7736. static inline std::string string_VkDebugReportFlagsEXT(VkDebugReportFlagsEXT input_value)
  7737. {
  7738. std::string ret;
  7739. int index = 0;
  7740. while(input_value) {
  7741. if (input_value & 1) {
  7742. if( !ret.empty()) ret.append("|");
  7743. ret.append(string_VkDebugReportFlagBitsEXT(static_cast<VkDebugReportFlagBitsEXT>(1U << index)));
  7744. }
  7745. ++index;
  7746. input_value >>= 1;
  7747. }
  7748. if( ret.empty()) ret.append(string_VkDebugReportFlagBitsEXT(static_cast<VkDebugReportFlagBitsEXT>(0)));
  7749. return ret;
  7750. }
  7751. static inline const char* string_VkDebugReportObjectTypeEXT(VkDebugReportObjectTypeEXT input_value)
  7752. {
  7753. switch (input_value)
  7754. {
  7755. case VK_DEBUG_REPORT_OBJECT_TYPE_ACCELERATION_STRUCTURE_KHR_EXT:
  7756. return "VK_DEBUG_REPORT_OBJECT_TYPE_ACCELERATION_STRUCTURE_KHR_EXT";
  7757. case VK_DEBUG_REPORT_OBJECT_TYPE_ACCELERATION_STRUCTURE_NV_EXT:
  7758. return "VK_DEBUG_REPORT_OBJECT_TYPE_ACCELERATION_STRUCTURE_NV_EXT";
  7759. case VK_DEBUG_REPORT_OBJECT_TYPE_BUFFER_COLLECTION_FUCHSIA_EXT:
  7760. return "VK_DEBUG_REPORT_OBJECT_TYPE_BUFFER_COLLECTION_FUCHSIA_EXT";
  7761. case VK_DEBUG_REPORT_OBJECT_TYPE_BUFFER_EXT:
  7762. return "VK_DEBUG_REPORT_OBJECT_TYPE_BUFFER_EXT";
  7763. case VK_DEBUG_REPORT_OBJECT_TYPE_BUFFER_VIEW_EXT:
  7764. return "VK_DEBUG_REPORT_OBJECT_TYPE_BUFFER_VIEW_EXT";
  7765. case VK_DEBUG_REPORT_OBJECT_TYPE_COMMAND_BUFFER_EXT:
  7766. return "VK_DEBUG_REPORT_OBJECT_TYPE_COMMAND_BUFFER_EXT";
  7767. case VK_DEBUG_REPORT_OBJECT_TYPE_COMMAND_POOL_EXT:
  7768. return "VK_DEBUG_REPORT_OBJECT_TYPE_COMMAND_POOL_EXT";
  7769. case VK_DEBUG_REPORT_OBJECT_TYPE_CU_FUNCTION_NVX_EXT:
  7770. return "VK_DEBUG_REPORT_OBJECT_TYPE_CU_FUNCTION_NVX_EXT";
  7771. case VK_DEBUG_REPORT_OBJECT_TYPE_CU_MODULE_NVX_EXT:
  7772. return "VK_DEBUG_REPORT_OBJECT_TYPE_CU_MODULE_NVX_EXT";
  7773. case VK_DEBUG_REPORT_OBJECT_TYPE_DEBUG_REPORT_CALLBACK_EXT_EXT:
  7774. return "VK_DEBUG_REPORT_OBJECT_TYPE_DEBUG_REPORT_CALLBACK_EXT_EXT";
  7775. case VK_DEBUG_REPORT_OBJECT_TYPE_DESCRIPTOR_POOL_EXT:
  7776. return "VK_DEBUG_REPORT_OBJECT_TYPE_DESCRIPTOR_POOL_EXT";
  7777. case VK_DEBUG_REPORT_OBJECT_TYPE_DESCRIPTOR_SET_EXT:
  7778. return "VK_DEBUG_REPORT_OBJECT_TYPE_DESCRIPTOR_SET_EXT";
  7779. case VK_DEBUG_REPORT_OBJECT_TYPE_DESCRIPTOR_SET_LAYOUT_EXT:
  7780. return "VK_DEBUG_REPORT_OBJECT_TYPE_DESCRIPTOR_SET_LAYOUT_EXT";
  7781. case VK_DEBUG_REPORT_OBJECT_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_EXT:
  7782. return "VK_DEBUG_REPORT_OBJECT_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_EXT";
  7783. case VK_DEBUG_REPORT_OBJECT_TYPE_DEVICE_EXT:
  7784. return "VK_DEBUG_REPORT_OBJECT_TYPE_DEVICE_EXT";
  7785. case VK_DEBUG_REPORT_OBJECT_TYPE_DEVICE_MEMORY_EXT:
  7786. return "VK_DEBUG_REPORT_OBJECT_TYPE_DEVICE_MEMORY_EXT";
  7787. case VK_DEBUG_REPORT_OBJECT_TYPE_DISPLAY_KHR_EXT:
  7788. return "VK_DEBUG_REPORT_OBJECT_TYPE_DISPLAY_KHR_EXT";
  7789. case VK_DEBUG_REPORT_OBJECT_TYPE_DISPLAY_MODE_KHR_EXT:
  7790. return "VK_DEBUG_REPORT_OBJECT_TYPE_DISPLAY_MODE_KHR_EXT";
  7791. case VK_DEBUG_REPORT_OBJECT_TYPE_EVENT_EXT:
  7792. return "VK_DEBUG_REPORT_OBJECT_TYPE_EVENT_EXT";
  7793. case VK_DEBUG_REPORT_OBJECT_TYPE_FENCE_EXT:
  7794. return "VK_DEBUG_REPORT_OBJECT_TYPE_FENCE_EXT";
  7795. case VK_DEBUG_REPORT_OBJECT_TYPE_FRAMEBUFFER_EXT:
  7796. return "VK_DEBUG_REPORT_OBJECT_TYPE_FRAMEBUFFER_EXT";
  7797. case VK_DEBUG_REPORT_OBJECT_TYPE_IMAGE_EXT:
  7798. return "VK_DEBUG_REPORT_OBJECT_TYPE_IMAGE_EXT";
  7799. case VK_DEBUG_REPORT_OBJECT_TYPE_IMAGE_VIEW_EXT:
  7800. return "VK_DEBUG_REPORT_OBJECT_TYPE_IMAGE_VIEW_EXT";
  7801. case VK_DEBUG_REPORT_OBJECT_TYPE_INSTANCE_EXT:
  7802. return "VK_DEBUG_REPORT_OBJECT_TYPE_INSTANCE_EXT";
  7803. case VK_DEBUG_REPORT_OBJECT_TYPE_PHYSICAL_DEVICE_EXT:
  7804. return "VK_DEBUG_REPORT_OBJECT_TYPE_PHYSICAL_DEVICE_EXT";
  7805. case VK_DEBUG_REPORT_OBJECT_TYPE_PIPELINE_CACHE_EXT:
  7806. return "VK_DEBUG_REPORT_OBJECT_TYPE_PIPELINE_CACHE_EXT";
  7807. case VK_DEBUG_REPORT_OBJECT_TYPE_PIPELINE_EXT:
  7808. return "VK_DEBUG_REPORT_OBJECT_TYPE_PIPELINE_EXT";
  7809. case VK_DEBUG_REPORT_OBJECT_TYPE_PIPELINE_LAYOUT_EXT:
  7810. return "VK_DEBUG_REPORT_OBJECT_TYPE_PIPELINE_LAYOUT_EXT";
  7811. case VK_DEBUG_REPORT_OBJECT_TYPE_QUERY_POOL_EXT:
  7812. return "VK_DEBUG_REPORT_OBJECT_TYPE_QUERY_POOL_EXT";
  7813. case VK_DEBUG_REPORT_OBJECT_TYPE_QUEUE_EXT:
  7814. return "VK_DEBUG_REPORT_OBJECT_TYPE_QUEUE_EXT";
  7815. case VK_DEBUG_REPORT_OBJECT_TYPE_RENDER_PASS_EXT:
  7816. return "VK_DEBUG_REPORT_OBJECT_TYPE_RENDER_PASS_EXT";
  7817. case VK_DEBUG_REPORT_OBJECT_TYPE_SAMPLER_EXT:
  7818. return "VK_DEBUG_REPORT_OBJECT_TYPE_SAMPLER_EXT";
  7819. case VK_DEBUG_REPORT_OBJECT_TYPE_SAMPLER_YCBCR_CONVERSION_EXT:
  7820. return "VK_DEBUG_REPORT_OBJECT_TYPE_SAMPLER_YCBCR_CONVERSION_EXT";
  7821. case VK_DEBUG_REPORT_OBJECT_TYPE_SEMAPHORE_EXT:
  7822. return "VK_DEBUG_REPORT_OBJECT_TYPE_SEMAPHORE_EXT";
  7823. case VK_DEBUG_REPORT_OBJECT_TYPE_SHADER_MODULE_EXT:
  7824. return "VK_DEBUG_REPORT_OBJECT_TYPE_SHADER_MODULE_EXT";
  7825. case VK_DEBUG_REPORT_OBJECT_TYPE_SURFACE_KHR_EXT:
  7826. return "VK_DEBUG_REPORT_OBJECT_TYPE_SURFACE_KHR_EXT";
  7827. case VK_DEBUG_REPORT_OBJECT_TYPE_SWAPCHAIN_KHR_EXT:
  7828. return "VK_DEBUG_REPORT_OBJECT_TYPE_SWAPCHAIN_KHR_EXT";
  7829. case VK_DEBUG_REPORT_OBJECT_TYPE_UNKNOWN_EXT:
  7830. return "VK_DEBUG_REPORT_OBJECT_TYPE_UNKNOWN_EXT";
  7831. case VK_DEBUG_REPORT_OBJECT_TYPE_VALIDATION_CACHE_EXT_EXT:
  7832. return "VK_DEBUG_REPORT_OBJECT_TYPE_VALIDATION_CACHE_EXT_EXT";
  7833. default:
  7834. return "Unhandled VkDebugReportObjectTypeEXT";
  7835. }
  7836. }
  7837. static inline const char* string_VkRasterizationOrderAMD(VkRasterizationOrderAMD input_value)
  7838. {
  7839. switch (input_value)
  7840. {
  7841. case VK_RASTERIZATION_ORDER_RELAXED_AMD:
  7842. return "VK_RASTERIZATION_ORDER_RELAXED_AMD";
  7843. case VK_RASTERIZATION_ORDER_STRICT_AMD:
  7844. return "VK_RASTERIZATION_ORDER_STRICT_AMD";
  7845. default:
  7846. return "Unhandled VkRasterizationOrderAMD";
  7847. }
  7848. }
  7849. #ifdef VK_ENABLE_BETA_EXTENSIONS
  7850. static inline const char* string_VkVideoEncodeH264CapabilityFlagBitsEXT(VkVideoEncodeH264CapabilityFlagBitsEXT input_value)
  7851. {
  7852. switch (input_value)
  7853. {
  7854. case VK_VIDEO_ENCODE_H264_CAPABILITY_B_FRAME_IN_L1_LIST_BIT_EXT:
  7855. return "VK_VIDEO_ENCODE_H264_CAPABILITY_B_FRAME_IN_L1_LIST_BIT_EXT";
  7856. case VK_VIDEO_ENCODE_H264_CAPABILITY_CABAC_BIT_EXT:
  7857. return "VK_VIDEO_ENCODE_H264_CAPABILITY_CABAC_BIT_EXT";
  7858. case VK_VIDEO_ENCODE_H264_CAPABILITY_CAVLC_BIT_EXT:
  7859. return "VK_VIDEO_ENCODE_H264_CAPABILITY_CAVLC_BIT_EXT";
  7860. case VK_VIDEO_ENCODE_H264_CAPABILITY_CHROMA_QP_OFFSET_BIT_EXT:
  7861. return "VK_VIDEO_ENCODE_H264_CAPABILITY_CHROMA_QP_OFFSET_BIT_EXT";
  7862. case VK_VIDEO_ENCODE_H264_CAPABILITY_DEBLOCKING_FILTER_DISABLED_BIT_EXT:
  7863. return "VK_VIDEO_ENCODE_H264_CAPABILITY_DEBLOCKING_FILTER_DISABLED_BIT_EXT";
  7864. case VK_VIDEO_ENCODE_H264_CAPABILITY_DEBLOCKING_FILTER_ENABLED_BIT_EXT:
  7865. return "VK_VIDEO_ENCODE_H264_CAPABILITY_DEBLOCKING_FILTER_ENABLED_BIT_EXT";
  7866. case VK_VIDEO_ENCODE_H264_CAPABILITY_DEBLOCKING_FILTER_PARTIAL_BIT_EXT:
  7867. return "VK_VIDEO_ENCODE_H264_CAPABILITY_DEBLOCKING_FILTER_PARTIAL_BIT_EXT";
  7868. case VK_VIDEO_ENCODE_H264_CAPABILITY_DIFFERENT_SLICE_TYPE_BIT_EXT:
  7869. return "VK_VIDEO_ENCODE_H264_CAPABILITY_DIFFERENT_SLICE_TYPE_BIT_EXT";
  7870. case VK_VIDEO_ENCODE_H264_CAPABILITY_DIRECT_8X8_INFERENCE_DISABLED_BIT_EXT:
  7871. return "VK_VIDEO_ENCODE_H264_CAPABILITY_DIRECT_8X8_INFERENCE_DISABLED_BIT_EXT";
  7872. case VK_VIDEO_ENCODE_H264_CAPABILITY_DIRECT_8X8_INFERENCE_ENABLED_BIT_EXT:
  7873. return "VK_VIDEO_ENCODE_H264_CAPABILITY_DIRECT_8X8_INFERENCE_ENABLED_BIT_EXT";
  7874. case VK_VIDEO_ENCODE_H264_CAPABILITY_DISABLE_DIRECT_SPATIAL_MV_PRED_BIT_EXT:
  7875. return "VK_VIDEO_ENCODE_H264_CAPABILITY_DISABLE_DIRECT_SPATIAL_MV_PRED_BIT_EXT";
  7876. case VK_VIDEO_ENCODE_H264_CAPABILITY_HRD_COMPLIANCE_BIT_EXT:
  7877. return "VK_VIDEO_ENCODE_H264_CAPABILITY_HRD_COMPLIANCE_BIT_EXT";
  7878. case VK_VIDEO_ENCODE_H264_CAPABILITY_MULTIPLE_SLICE_PER_FRAME_BIT_EXT:
  7879. return "VK_VIDEO_ENCODE_H264_CAPABILITY_MULTIPLE_SLICE_PER_FRAME_BIT_EXT";
  7880. case VK_VIDEO_ENCODE_H264_CAPABILITY_PIC_INIT_QP_MINUS26_BIT_EXT:
  7881. return "VK_VIDEO_ENCODE_H264_CAPABILITY_PIC_INIT_QP_MINUS26_BIT_EXT";
  7882. case VK_VIDEO_ENCODE_H264_CAPABILITY_QPPRIME_Y_ZERO_TRANSFORM_BYPASS_BIT_EXT:
  7883. return "VK_VIDEO_ENCODE_H264_CAPABILITY_QPPRIME_Y_ZERO_TRANSFORM_BYPASS_BIT_EXT";
  7884. case VK_VIDEO_ENCODE_H264_CAPABILITY_ROW_UNALIGNED_SLICE_BIT_EXT:
  7885. return "VK_VIDEO_ENCODE_H264_CAPABILITY_ROW_UNALIGNED_SLICE_BIT_EXT";
  7886. case VK_VIDEO_ENCODE_H264_CAPABILITY_SCALING_LISTS_BIT_EXT:
  7887. return "VK_VIDEO_ENCODE_H264_CAPABILITY_SCALING_LISTS_BIT_EXT";
  7888. case VK_VIDEO_ENCODE_H264_CAPABILITY_SECOND_CHROMA_QP_OFFSET_BIT_EXT:
  7889. return "VK_VIDEO_ENCODE_H264_CAPABILITY_SECOND_CHROMA_QP_OFFSET_BIT_EXT";
  7890. case VK_VIDEO_ENCODE_H264_CAPABILITY_SEPARATE_COLOUR_PLANE_BIT_EXT:
  7891. return "VK_VIDEO_ENCODE_H264_CAPABILITY_SEPARATE_COLOUR_PLANE_BIT_EXT";
  7892. case VK_VIDEO_ENCODE_H264_CAPABILITY_SLICE_MB_COUNT_BIT_EXT:
  7893. return "VK_VIDEO_ENCODE_H264_CAPABILITY_SLICE_MB_COUNT_BIT_EXT";
  7894. case VK_VIDEO_ENCODE_H264_CAPABILITY_TRANSFORM_8X8_BIT_EXT:
  7895. return "VK_VIDEO_ENCODE_H264_CAPABILITY_TRANSFORM_8X8_BIT_EXT";
  7896. case VK_VIDEO_ENCODE_H264_CAPABILITY_WEIGHTED_BIPRED_EXPLICIT_BIT_EXT:
  7897. return "VK_VIDEO_ENCODE_H264_CAPABILITY_WEIGHTED_BIPRED_EXPLICIT_BIT_EXT";
  7898. case VK_VIDEO_ENCODE_H264_CAPABILITY_WEIGHTED_BIPRED_IMPLICIT_BIT_EXT:
  7899. return "VK_VIDEO_ENCODE_H264_CAPABILITY_WEIGHTED_BIPRED_IMPLICIT_BIT_EXT";
  7900. case VK_VIDEO_ENCODE_H264_CAPABILITY_WEIGHTED_PRED_BIT_EXT:
  7901. return "VK_VIDEO_ENCODE_H264_CAPABILITY_WEIGHTED_PRED_BIT_EXT";
  7902. case VK_VIDEO_ENCODE_H264_CAPABILITY_WEIGHTED_PRED_NO_TABLE_BIT_EXT:
  7903. return "VK_VIDEO_ENCODE_H264_CAPABILITY_WEIGHTED_PRED_NO_TABLE_BIT_EXT";
  7904. default:
  7905. return "Unhandled VkVideoEncodeH264CapabilityFlagBitsEXT";
  7906. }
  7907. }
  7908. static inline std::string string_VkVideoEncodeH264CapabilityFlagsEXT(VkVideoEncodeH264CapabilityFlagsEXT input_value)
  7909. {
  7910. std::string ret;
  7911. int index = 0;
  7912. while(input_value) {
  7913. if (input_value & 1) {
  7914. if( !ret.empty()) ret.append("|");
  7915. ret.append(string_VkVideoEncodeH264CapabilityFlagBitsEXT(static_cast<VkVideoEncodeH264CapabilityFlagBitsEXT>(1U << index)));
  7916. }
  7917. ++index;
  7918. input_value >>= 1;
  7919. }
  7920. if( ret.empty()) ret.append(string_VkVideoEncodeH264CapabilityFlagBitsEXT(static_cast<VkVideoEncodeH264CapabilityFlagBitsEXT>(0)));
  7921. return ret;
  7922. }
  7923. #endif // VK_ENABLE_BETA_EXTENSIONS
  7924. #ifdef VK_ENABLE_BETA_EXTENSIONS
  7925. static inline const char* string_VkVideoEncodeH264InputModeFlagBitsEXT(VkVideoEncodeH264InputModeFlagBitsEXT input_value)
  7926. {
  7927. switch (input_value)
  7928. {
  7929. case VK_VIDEO_ENCODE_H264_INPUT_MODE_FRAME_BIT_EXT:
  7930. return "VK_VIDEO_ENCODE_H264_INPUT_MODE_FRAME_BIT_EXT";
  7931. case VK_VIDEO_ENCODE_H264_INPUT_MODE_NON_VCL_BIT_EXT:
  7932. return "VK_VIDEO_ENCODE_H264_INPUT_MODE_NON_VCL_BIT_EXT";
  7933. case VK_VIDEO_ENCODE_H264_INPUT_MODE_SLICE_BIT_EXT:
  7934. return "VK_VIDEO_ENCODE_H264_INPUT_MODE_SLICE_BIT_EXT";
  7935. default:
  7936. return "Unhandled VkVideoEncodeH264InputModeFlagBitsEXT";
  7937. }
  7938. }
  7939. static inline std::string string_VkVideoEncodeH264InputModeFlagsEXT(VkVideoEncodeH264InputModeFlagsEXT input_value)
  7940. {
  7941. std::string ret;
  7942. int index = 0;
  7943. while(input_value) {
  7944. if (input_value & 1) {
  7945. if( !ret.empty()) ret.append("|");
  7946. ret.append(string_VkVideoEncodeH264InputModeFlagBitsEXT(static_cast<VkVideoEncodeH264InputModeFlagBitsEXT>(1U << index)));
  7947. }
  7948. ++index;
  7949. input_value >>= 1;
  7950. }
  7951. if( ret.empty()) ret.append(string_VkVideoEncodeH264InputModeFlagBitsEXT(static_cast<VkVideoEncodeH264InputModeFlagBitsEXT>(0)));
  7952. return ret;
  7953. }
  7954. #endif // VK_ENABLE_BETA_EXTENSIONS
  7955. #ifdef VK_ENABLE_BETA_EXTENSIONS
  7956. static inline const char* string_VkVideoEncodeH264OutputModeFlagBitsEXT(VkVideoEncodeH264OutputModeFlagBitsEXT input_value)
  7957. {
  7958. switch (input_value)
  7959. {
  7960. case VK_VIDEO_ENCODE_H264_OUTPUT_MODE_FRAME_BIT_EXT:
  7961. return "VK_VIDEO_ENCODE_H264_OUTPUT_MODE_FRAME_BIT_EXT";
  7962. case VK_VIDEO_ENCODE_H264_OUTPUT_MODE_NON_VCL_BIT_EXT:
  7963. return "VK_VIDEO_ENCODE_H264_OUTPUT_MODE_NON_VCL_BIT_EXT";
  7964. case VK_VIDEO_ENCODE_H264_OUTPUT_MODE_SLICE_BIT_EXT:
  7965. return "VK_VIDEO_ENCODE_H264_OUTPUT_MODE_SLICE_BIT_EXT";
  7966. default:
  7967. return "Unhandled VkVideoEncodeH264OutputModeFlagBitsEXT";
  7968. }
  7969. }
  7970. static inline std::string string_VkVideoEncodeH264OutputModeFlagsEXT(VkVideoEncodeH264OutputModeFlagsEXT input_value)
  7971. {
  7972. std::string ret;
  7973. int index = 0;
  7974. while(input_value) {
  7975. if (input_value & 1) {
  7976. if( !ret.empty()) ret.append("|");
  7977. ret.append(string_VkVideoEncodeH264OutputModeFlagBitsEXT(static_cast<VkVideoEncodeH264OutputModeFlagBitsEXT>(1U << index)));
  7978. }
  7979. ++index;
  7980. input_value >>= 1;
  7981. }
  7982. if( ret.empty()) ret.append(string_VkVideoEncodeH264OutputModeFlagBitsEXT(static_cast<VkVideoEncodeH264OutputModeFlagBitsEXT>(0)));
  7983. return ret;
  7984. }
  7985. #endif // VK_ENABLE_BETA_EXTENSIONS
  7986. #ifdef VK_ENABLE_BETA_EXTENSIONS
  7987. static inline const char* string_VkVideoEncodeH264RateControlStructureEXT(VkVideoEncodeH264RateControlStructureEXT input_value)
  7988. {
  7989. switch (input_value)
  7990. {
  7991. case VK_VIDEO_ENCODE_H264_RATE_CONTROL_STRUCTURE_DYADIC_EXT:
  7992. return "VK_VIDEO_ENCODE_H264_RATE_CONTROL_STRUCTURE_DYADIC_EXT";
  7993. case VK_VIDEO_ENCODE_H264_RATE_CONTROL_STRUCTURE_FLAT_EXT:
  7994. return "VK_VIDEO_ENCODE_H264_RATE_CONTROL_STRUCTURE_FLAT_EXT";
  7995. case VK_VIDEO_ENCODE_H264_RATE_CONTROL_STRUCTURE_UNKNOWN_EXT:
  7996. return "VK_VIDEO_ENCODE_H264_RATE_CONTROL_STRUCTURE_UNKNOWN_EXT";
  7997. default:
  7998. return "Unhandled VkVideoEncodeH264RateControlStructureEXT";
  7999. }
  8000. }
  8001. #endif // VK_ENABLE_BETA_EXTENSIONS
  8002. #ifdef VK_ENABLE_BETA_EXTENSIONS
  8003. static inline const char* string_VkVideoEncodeH265CapabilityFlagBitsEXT(VkVideoEncodeH265CapabilityFlagBitsEXT input_value)
  8004. {
  8005. switch (input_value)
  8006. {
  8007. case VK_VIDEO_ENCODE_H265_CAPABILITY_B_FRAME_IN_L1_LIST_BIT_EXT:
  8008. return "VK_VIDEO_ENCODE_H265_CAPABILITY_B_FRAME_IN_L1_LIST_BIT_EXT";
  8009. case VK_VIDEO_ENCODE_H265_CAPABILITY_DEBLOCKING_FILTER_OVERRIDE_ENABLED_BIT_EXT:
  8010. return "VK_VIDEO_ENCODE_H265_CAPABILITY_DEBLOCKING_FILTER_OVERRIDE_ENABLED_BIT_EXT";
  8011. case VK_VIDEO_ENCODE_H265_CAPABILITY_DEPENDENT_SLICE_SEGMENT_BIT_EXT:
  8012. return "VK_VIDEO_ENCODE_H265_CAPABILITY_DEPENDENT_SLICE_SEGMENT_BIT_EXT";
  8013. case VK_VIDEO_ENCODE_H265_CAPABILITY_DIFFERENT_SLICE_TYPE_BIT_EXT:
  8014. return "VK_VIDEO_ENCODE_H265_CAPABILITY_DIFFERENT_SLICE_TYPE_BIT_EXT";
  8015. case VK_VIDEO_ENCODE_H265_CAPABILITY_ENTROPY_CODING_SYNC_ENABLED_BIT_EXT:
  8016. return "VK_VIDEO_ENCODE_H265_CAPABILITY_ENTROPY_CODING_SYNC_ENABLED_BIT_EXT";
  8017. case VK_VIDEO_ENCODE_H265_CAPABILITY_HRD_COMPLIANCE_BIT_EXT:
  8018. return "VK_VIDEO_ENCODE_H265_CAPABILITY_HRD_COMPLIANCE_BIT_EXT";
  8019. case VK_VIDEO_ENCODE_H265_CAPABILITY_INIT_QP_MINUS26_BIT_EXT:
  8020. return "VK_VIDEO_ENCODE_H265_CAPABILITY_INIT_QP_MINUS26_BIT_EXT";
  8021. case VK_VIDEO_ENCODE_H265_CAPABILITY_LOG2_PARALLEL_MERGE_LEVEL_MINUS2_BIT_EXT:
  8022. return "VK_VIDEO_ENCODE_H265_CAPABILITY_LOG2_PARALLEL_MERGE_LEVEL_MINUS2_BIT_EXT";
  8023. case VK_VIDEO_ENCODE_H265_CAPABILITY_MULTIPLE_SLICE_PER_TILE_BIT_EXT:
  8024. return "VK_VIDEO_ENCODE_H265_CAPABILITY_MULTIPLE_SLICE_PER_TILE_BIT_EXT";
  8025. case VK_VIDEO_ENCODE_H265_CAPABILITY_MULTIPLE_TILE_PER_FRAME_BIT_EXT:
  8026. return "VK_VIDEO_ENCODE_H265_CAPABILITY_MULTIPLE_TILE_PER_FRAME_BIT_EXT";
  8027. case VK_VIDEO_ENCODE_H265_CAPABILITY_MULTIPLE_TILE_PER_SLICE_BIT_EXT:
  8028. return "VK_VIDEO_ENCODE_H265_CAPABILITY_MULTIPLE_TILE_PER_SLICE_BIT_EXT";
  8029. case VK_VIDEO_ENCODE_H265_CAPABILITY_PCM_ENABLE_BIT_EXT:
  8030. return "VK_VIDEO_ENCODE_H265_CAPABILITY_PCM_ENABLE_BIT_EXT";
  8031. case VK_VIDEO_ENCODE_H265_CAPABILITY_PPS_SLICE_CHROMA_QP_OFFSETS_PRESENT_BIT_EXT:
  8032. return "VK_VIDEO_ENCODE_H265_CAPABILITY_PPS_SLICE_CHROMA_QP_OFFSETS_PRESENT_BIT_EXT";
  8033. case VK_VIDEO_ENCODE_H265_CAPABILITY_ROW_UNALIGNED_SLICE_SEGMENT_BIT_EXT:
  8034. return "VK_VIDEO_ENCODE_H265_CAPABILITY_ROW_UNALIGNED_SLICE_SEGMENT_BIT_EXT";
  8035. case VK_VIDEO_ENCODE_H265_CAPABILITY_SAMPLE_ADAPTIVE_OFFSET_ENABLED_BIT_EXT:
  8036. return "VK_VIDEO_ENCODE_H265_CAPABILITY_SAMPLE_ADAPTIVE_OFFSET_ENABLED_BIT_EXT";
  8037. case VK_VIDEO_ENCODE_H265_CAPABILITY_SCALING_LISTS_BIT_EXT:
  8038. return "VK_VIDEO_ENCODE_H265_CAPABILITY_SCALING_LISTS_BIT_EXT";
  8039. case VK_VIDEO_ENCODE_H265_CAPABILITY_SEPARATE_COLOUR_PLANE_BIT_EXT:
  8040. return "VK_VIDEO_ENCODE_H265_CAPABILITY_SEPARATE_COLOUR_PLANE_BIT_EXT";
  8041. case VK_VIDEO_ENCODE_H265_CAPABILITY_SIGN_DATA_HIDING_ENABLED_BIT_EXT:
  8042. return "VK_VIDEO_ENCODE_H265_CAPABILITY_SIGN_DATA_HIDING_ENABLED_BIT_EXT";
  8043. case VK_VIDEO_ENCODE_H265_CAPABILITY_SLICE_SEGMENT_CTB_COUNT_BIT_EXT:
  8044. return "VK_VIDEO_ENCODE_H265_CAPABILITY_SLICE_SEGMENT_CTB_COUNT_BIT_EXT";
  8045. case VK_VIDEO_ENCODE_H265_CAPABILITY_SPS_TEMPORAL_MVP_ENABLED_BIT_EXT:
  8046. return "VK_VIDEO_ENCODE_H265_CAPABILITY_SPS_TEMPORAL_MVP_ENABLED_BIT_EXT";
  8047. case VK_VIDEO_ENCODE_H265_CAPABILITY_TRANSFORM_SKIP_DISABLED_BIT_EXT:
  8048. return "VK_VIDEO_ENCODE_H265_CAPABILITY_TRANSFORM_SKIP_DISABLED_BIT_EXT";
  8049. case VK_VIDEO_ENCODE_H265_CAPABILITY_TRANSFORM_SKIP_ENABLED_BIT_EXT:
  8050. return "VK_VIDEO_ENCODE_H265_CAPABILITY_TRANSFORM_SKIP_ENABLED_BIT_EXT";
  8051. case VK_VIDEO_ENCODE_H265_CAPABILITY_TRANSQUANT_BYPASS_ENABLED_BIT_EXT:
  8052. return "VK_VIDEO_ENCODE_H265_CAPABILITY_TRANSQUANT_BYPASS_ENABLED_BIT_EXT";
  8053. case VK_VIDEO_ENCODE_H265_CAPABILITY_WEIGHTED_BIPRED_BIT_EXT:
  8054. return "VK_VIDEO_ENCODE_H265_CAPABILITY_WEIGHTED_BIPRED_BIT_EXT";
  8055. case VK_VIDEO_ENCODE_H265_CAPABILITY_WEIGHTED_PRED_BIT_EXT:
  8056. return "VK_VIDEO_ENCODE_H265_CAPABILITY_WEIGHTED_PRED_BIT_EXT";
  8057. case VK_VIDEO_ENCODE_H265_CAPABILITY_WEIGHTED_PRED_NO_TABLE_BIT_EXT:
  8058. return "VK_VIDEO_ENCODE_H265_CAPABILITY_WEIGHTED_PRED_NO_TABLE_BIT_EXT";
  8059. default:
  8060. return "Unhandled VkVideoEncodeH265CapabilityFlagBitsEXT";
  8061. }
  8062. }
  8063. static inline std::string string_VkVideoEncodeH265CapabilityFlagsEXT(VkVideoEncodeH265CapabilityFlagsEXT input_value)
  8064. {
  8065. std::string ret;
  8066. int index = 0;
  8067. while(input_value) {
  8068. if (input_value & 1) {
  8069. if( !ret.empty()) ret.append("|");
  8070. ret.append(string_VkVideoEncodeH265CapabilityFlagBitsEXT(static_cast<VkVideoEncodeH265CapabilityFlagBitsEXT>(1U << index)));
  8071. }
  8072. ++index;
  8073. input_value >>= 1;
  8074. }
  8075. if( ret.empty()) ret.append(string_VkVideoEncodeH265CapabilityFlagBitsEXT(static_cast<VkVideoEncodeH265CapabilityFlagBitsEXT>(0)));
  8076. return ret;
  8077. }
  8078. #endif // VK_ENABLE_BETA_EXTENSIONS
  8079. #ifdef VK_ENABLE_BETA_EXTENSIONS
  8080. static inline const char* string_VkVideoEncodeH265InputModeFlagBitsEXT(VkVideoEncodeH265InputModeFlagBitsEXT input_value)
  8081. {
  8082. switch (input_value)
  8083. {
  8084. case VK_VIDEO_ENCODE_H265_INPUT_MODE_FRAME_BIT_EXT:
  8085. return "VK_VIDEO_ENCODE_H265_INPUT_MODE_FRAME_BIT_EXT";
  8086. case VK_VIDEO_ENCODE_H265_INPUT_MODE_NON_VCL_BIT_EXT:
  8087. return "VK_VIDEO_ENCODE_H265_INPUT_MODE_NON_VCL_BIT_EXT";
  8088. case VK_VIDEO_ENCODE_H265_INPUT_MODE_SLICE_SEGMENT_BIT_EXT:
  8089. return "VK_VIDEO_ENCODE_H265_INPUT_MODE_SLICE_SEGMENT_BIT_EXT";
  8090. default:
  8091. return "Unhandled VkVideoEncodeH265InputModeFlagBitsEXT";
  8092. }
  8093. }
  8094. static inline std::string string_VkVideoEncodeH265InputModeFlagsEXT(VkVideoEncodeH265InputModeFlagsEXT input_value)
  8095. {
  8096. std::string ret;
  8097. int index = 0;
  8098. while(input_value) {
  8099. if (input_value & 1) {
  8100. if( !ret.empty()) ret.append("|");
  8101. ret.append(string_VkVideoEncodeH265InputModeFlagBitsEXT(static_cast<VkVideoEncodeH265InputModeFlagBitsEXT>(1U << index)));
  8102. }
  8103. ++index;
  8104. input_value >>= 1;
  8105. }
  8106. if( ret.empty()) ret.append(string_VkVideoEncodeH265InputModeFlagBitsEXT(static_cast<VkVideoEncodeH265InputModeFlagBitsEXT>(0)));
  8107. return ret;
  8108. }
  8109. #endif // VK_ENABLE_BETA_EXTENSIONS
  8110. #ifdef VK_ENABLE_BETA_EXTENSIONS
  8111. static inline const char* string_VkVideoEncodeH265OutputModeFlagBitsEXT(VkVideoEncodeH265OutputModeFlagBitsEXT input_value)
  8112. {
  8113. switch (input_value)
  8114. {
  8115. case VK_VIDEO_ENCODE_H265_OUTPUT_MODE_FRAME_BIT_EXT:
  8116. return "VK_VIDEO_ENCODE_H265_OUTPUT_MODE_FRAME_BIT_EXT";
  8117. case VK_VIDEO_ENCODE_H265_OUTPUT_MODE_NON_VCL_BIT_EXT:
  8118. return "VK_VIDEO_ENCODE_H265_OUTPUT_MODE_NON_VCL_BIT_EXT";
  8119. case VK_VIDEO_ENCODE_H265_OUTPUT_MODE_SLICE_SEGMENT_BIT_EXT:
  8120. return "VK_VIDEO_ENCODE_H265_OUTPUT_MODE_SLICE_SEGMENT_BIT_EXT";
  8121. default:
  8122. return "Unhandled VkVideoEncodeH265OutputModeFlagBitsEXT";
  8123. }
  8124. }
  8125. static inline std::string string_VkVideoEncodeH265OutputModeFlagsEXT(VkVideoEncodeH265OutputModeFlagsEXT input_value)
  8126. {
  8127. std::string ret;
  8128. int index = 0;
  8129. while(input_value) {
  8130. if (input_value & 1) {
  8131. if( !ret.empty()) ret.append("|");
  8132. ret.append(string_VkVideoEncodeH265OutputModeFlagBitsEXT(static_cast<VkVideoEncodeH265OutputModeFlagBitsEXT>(1U << index)));
  8133. }
  8134. ++index;
  8135. input_value >>= 1;
  8136. }
  8137. if( ret.empty()) ret.append(string_VkVideoEncodeH265OutputModeFlagBitsEXT(static_cast<VkVideoEncodeH265OutputModeFlagBitsEXT>(0)));
  8138. return ret;
  8139. }
  8140. #endif // VK_ENABLE_BETA_EXTENSIONS
  8141. #ifdef VK_ENABLE_BETA_EXTENSIONS
  8142. static inline const char* string_VkVideoEncodeH265CtbSizeFlagBitsEXT(VkVideoEncodeH265CtbSizeFlagBitsEXT input_value)
  8143. {
  8144. switch (input_value)
  8145. {
  8146. case VK_VIDEO_ENCODE_H265_CTB_SIZE_16_BIT_EXT:
  8147. return "VK_VIDEO_ENCODE_H265_CTB_SIZE_16_BIT_EXT";
  8148. case VK_VIDEO_ENCODE_H265_CTB_SIZE_32_BIT_EXT:
  8149. return "VK_VIDEO_ENCODE_H265_CTB_SIZE_32_BIT_EXT";
  8150. case VK_VIDEO_ENCODE_H265_CTB_SIZE_64_BIT_EXT:
  8151. return "VK_VIDEO_ENCODE_H265_CTB_SIZE_64_BIT_EXT";
  8152. default:
  8153. return "Unhandled VkVideoEncodeH265CtbSizeFlagBitsEXT";
  8154. }
  8155. }
  8156. static inline std::string string_VkVideoEncodeH265CtbSizeFlagsEXT(VkVideoEncodeH265CtbSizeFlagsEXT input_value)
  8157. {
  8158. std::string ret;
  8159. int index = 0;
  8160. while(input_value) {
  8161. if (input_value & 1) {
  8162. if( !ret.empty()) ret.append("|");
  8163. ret.append(string_VkVideoEncodeH265CtbSizeFlagBitsEXT(static_cast<VkVideoEncodeH265CtbSizeFlagBitsEXT>(1U << index)));
  8164. }
  8165. ++index;
  8166. input_value >>= 1;
  8167. }
  8168. if( ret.empty()) ret.append(string_VkVideoEncodeH265CtbSizeFlagBitsEXT(static_cast<VkVideoEncodeH265CtbSizeFlagBitsEXT>(0)));
  8169. return ret;
  8170. }
  8171. #endif // VK_ENABLE_BETA_EXTENSIONS
  8172. #ifdef VK_ENABLE_BETA_EXTENSIONS
  8173. static inline const char* string_VkVideoEncodeH265TransformBlockSizeFlagBitsEXT(VkVideoEncodeH265TransformBlockSizeFlagBitsEXT input_value)
  8174. {
  8175. switch (input_value)
  8176. {
  8177. case VK_VIDEO_ENCODE_H265_TRANSFORM_BLOCK_SIZE_16_BIT_EXT:
  8178. return "VK_VIDEO_ENCODE_H265_TRANSFORM_BLOCK_SIZE_16_BIT_EXT";
  8179. case VK_VIDEO_ENCODE_H265_TRANSFORM_BLOCK_SIZE_32_BIT_EXT:
  8180. return "VK_VIDEO_ENCODE_H265_TRANSFORM_BLOCK_SIZE_32_BIT_EXT";
  8181. case VK_VIDEO_ENCODE_H265_TRANSFORM_BLOCK_SIZE_4_BIT_EXT:
  8182. return "VK_VIDEO_ENCODE_H265_TRANSFORM_BLOCK_SIZE_4_BIT_EXT";
  8183. case VK_VIDEO_ENCODE_H265_TRANSFORM_BLOCK_SIZE_8_BIT_EXT:
  8184. return "VK_VIDEO_ENCODE_H265_TRANSFORM_BLOCK_SIZE_8_BIT_EXT";
  8185. default:
  8186. return "Unhandled VkVideoEncodeH265TransformBlockSizeFlagBitsEXT";
  8187. }
  8188. }
  8189. static inline std::string string_VkVideoEncodeH265TransformBlockSizeFlagsEXT(VkVideoEncodeH265TransformBlockSizeFlagsEXT input_value)
  8190. {
  8191. std::string ret;
  8192. int index = 0;
  8193. while(input_value) {
  8194. if (input_value & 1) {
  8195. if( !ret.empty()) ret.append("|");
  8196. ret.append(string_VkVideoEncodeH265TransformBlockSizeFlagBitsEXT(static_cast<VkVideoEncodeH265TransformBlockSizeFlagBitsEXT>(1U << index)));
  8197. }
  8198. ++index;
  8199. input_value >>= 1;
  8200. }
  8201. if( ret.empty()) ret.append(string_VkVideoEncodeH265TransformBlockSizeFlagBitsEXT(static_cast<VkVideoEncodeH265TransformBlockSizeFlagBitsEXT>(0)));
  8202. return ret;
  8203. }
  8204. #endif // VK_ENABLE_BETA_EXTENSIONS
  8205. #ifdef VK_ENABLE_BETA_EXTENSIONS
  8206. static inline const char* string_VkVideoEncodeH265RateControlStructureEXT(VkVideoEncodeH265RateControlStructureEXT input_value)
  8207. {
  8208. switch (input_value)
  8209. {
  8210. case VK_VIDEO_ENCODE_H265_RATE_CONTROL_STRUCTURE_DYADIC_EXT:
  8211. return "VK_VIDEO_ENCODE_H265_RATE_CONTROL_STRUCTURE_DYADIC_EXT";
  8212. case VK_VIDEO_ENCODE_H265_RATE_CONTROL_STRUCTURE_FLAT_EXT:
  8213. return "VK_VIDEO_ENCODE_H265_RATE_CONTROL_STRUCTURE_FLAT_EXT";
  8214. case VK_VIDEO_ENCODE_H265_RATE_CONTROL_STRUCTURE_UNKNOWN_EXT:
  8215. return "VK_VIDEO_ENCODE_H265_RATE_CONTROL_STRUCTURE_UNKNOWN_EXT";
  8216. default:
  8217. return "Unhandled VkVideoEncodeH265RateControlStructureEXT";
  8218. }
  8219. }
  8220. #endif // VK_ENABLE_BETA_EXTENSIONS
  8221. #ifdef VK_ENABLE_BETA_EXTENSIONS
  8222. static inline const char* string_VkVideoDecodeH264PictureLayoutFlagBitsEXT(VkVideoDecodeH264PictureLayoutFlagBitsEXT input_value)
  8223. {
  8224. switch (input_value)
  8225. {
  8226. case VK_VIDEO_DECODE_H264_PICTURE_LAYOUT_INTERLACED_INTERLEAVED_LINES_BIT_EXT:
  8227. return "VK_VIDEO_DECODE_H264_PICTURE_LAYOUT_INTERLACED_INTERLEAVED_LINES_BIT_EXT";
  8228. case VK_VIDEO_DECODE_H264_PICTURE_LAYOUT_INTERLACED_SEPARATE_PLANES_BIT_EXT:
  8229. return "VK_VIDEO_DECODE_H264_PICTURE_LAYOUT_INTERLACED_SEPARATE_PLANES_BIT_EXT";
  8230. case VK_VIDEO_DECODE_H264_PICTURE_LAYOUT_PROGRESSIVE_EXT:
  8231. return "VK_VIDEO_DECODE_H264_PICTURE_LAYOUT_PROGRESSIVE_EXT";
  8232. default:
  8233. return "Unhandled VkVideoDecodeH264PictureLayoutFlagBitsEXT";
  8234. }
  8235. }
  8236. static inline std::string string_VkVideoDecodeH264PictureLayoutFlagsEXT(VkVideoDecodeH264PictureLayoutFlagsEXT input_value)
  8237. {
  8238. std::string ret;
  8239. int index = 0;
  8240. while(input_value) {
  8241. if (input_value & 1) {
  8242. if( !ret.empty()) ret.append("|");
  8243. ret.append(string_VkVideoDecodeH264PictureLayoutFlagBitsEXT(static_cast<VkVideoDecodeH264PictureLayoutFlagBitsEXT>(1U << index)));
  8244. }
  8245. ++index;
  8246. input_value >>= 1;
  8247. }
  8248. if( ret.empty()) ret.append(string_VkVideoDecodeH264PictureLayoutFlagBitsEXT(static_cast<VkVideoDecodeH264PictureLayoutFlagBitsEXT>(0)));
  8249. return ret;
  8250. }
  8251. #endif // VK_ENABLE_BETA_EXTENSIONS
  8252. static inline const char* string_VkShaderInfoTypeAMD(VkShaderInfoTypeAMD input_value)
  8253. {
  8254. switch (input_value)
  8255. {
  8256. case VK_SHADER_INFO_TYPE_BINARY_AMD:
  8257. return "VK_SHADER_INFO_TYPE_BINARY_AMD";
  8258. case VK_SHADER_INFO_TYPE_DISASSEMBLY_AMD:
  8259. return "VK_SHADER_INFO_TYPE_DISASSEMBLY_AMD";
  8260. case VK_SHADER_INFO_TYPE_STATISTICS_AMD:
  8261. return "VK_SHADER_INFO_TYPE_STATISTICS_AMD";
  8262. default:
  8263. return "Unhandled VkShaderInfoTypeAMD";
  8264. }
  8265. }
  8266. static inline const char* string_VkExternalMemoryHandleTypeFlagBitsNV(VkExternalMemoryHandleTypeFlagBitsNV input_value)
  8267. {
  8268. switch (input_value)
  8269. {
  8270. case VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_IMAGE_BIT_NV:
  8271. return "VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_IMAGE_BIT_NV";
  8272. case VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_IMAGE_KMT_BIT_NV:
  8273. return "VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_IMAGE_KMT_BIT_NV";
  8274. case VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_BIT_NV:
  8275. return "VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_BIT_NV";
  8276. case VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT_NV:
  8277. return "VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT_NV";
  8278. default:
  8279. return "Unhandled VkExternalMemoryHandleTypeFlagBitsNV";
  8280. }
  8281. }
  8282. static inline std::string string_VkExternalMemoryHandleTypeFlagsNV(VkExternalMemoryHandleTypeFlagsNV input_value)
  8283. {
  8284. std::string ret;
  8285. int index = 0;
  8286. while(input_value) {
  8287. if (input_value & 1) {
  8288. if( !ret.empty()) ret.append("|");
  8289. ret.append(string_VkExternalMemoryHandleTypeFlagBitsNV(static_cast<VkExternalMemoryHandleTypeFlagBitsNV>(1U << index)));
  8290. }
  8291. ++index;
  8292. input_value >>= 1;
  8293. }
  8294. if( ret.empty()) ret.append(string_VkExternalMemoryHandleTypeFlagBitsNV(static_cast<VkExternalMemoryHandleTypeFlagBitsNV>(0)));
  8295. return ret;
  8296. }
  8297. static inline const char* string_VkExternalMemoryFeatureFlagBitsNV(VkExternalMemoryFeatureFlagBitsNV input_value)
  8298. {
  8299. switch (input_value)
  8300. {
  8301. case VK_EXTERNAL_MEMORY_FEATURE_DEDICATED_ONLY_BIT_NV:
  8302. return "VK_EXTERNAL_MEMORY_FEATURE_DEDICATED_ONLY_BIT_NV";
  8303. case VK_EXTERNAL_MEMORY_FEATURE_EXPORTABLE_BIT_NV:
  8304. return "VK_EXTERNAL_MEMORY_FEATURE_EXPORTABLE_BIT_NV";
  8305. case VK_EXTERNAL_MEMORY_FEATURE_IMPORTABLE_BIT_NV:
  8306. return "VK_EXTERNAL_MEMORY_FEATURE_IMPORTABLE_BIT_NV";
  8307. default:
  8308. return "Unhandled VkExternalMemoryFeatureFlagBitsNV";
  8309. }
  8310. }
  8311. static inline std::string string_VkExternalMemoryFeatureFlagsNV(VkExternalMemoryFeatureFlagsNV input_value)
  8312. {
  8313. std::string ret;
  8314. int index = 0;
  8315. while(input_value) {
  8316. if (input_value & 1) {
  8317. if( !ret.empty()) ret.append("|");
  8318. ret.append(string_VkExternalMemoryFeatureFlagBitsNV(static_cast<VkExternalMemoryFeatureFlagBitsNV>(1U << index)));
  8319. }
  8320. ++index;
  8321. input_value >>= 1;
  8322. }
  8323. if( ret.empty()) ret.append(string_VkExternalMemoryFeatureFlagBitsNV(static_cast<VkExternalMemoryFeatureFlagBitsNV>(0)));
  8324. return ret;
  8325. }
  8326. static inline const char* string_VkValidationCheckEXT(VkValidationCheckEXT input_value)
  8327. {
  8328. switch (input_value)
  8329. {
  8330. case VK_VALIDATION_CHECK_ALL_EXT:
  8331. return "VK_VALIDATION_CHECK_ALL_EXT";
  8332. case VK_VALIDATION_CHECK_SHADERS_EXT:
  8333. return "VK_VALIDATION_CHECK_SHADERS_EXT";
  8334. default:
  8335. return "Unhandled VkValidationCheckEXT";
  8336. }
  8337. }
  8338. static inline const char* string_VkPipelineRobustnessBufferBehaviorEXT(VkPipelineRobustnessBufferBehaviorEXT input_value)
  8339. {
  8340. switch (input_value)
  8341. {
  8342. case VK_PIPELINE_ROBUSTNESS_BUFFER_BEHAVIOR_DEVICE_DEFAULT_EXT:
  8343. return "VK_PIPELINE_ROBUSTNESS_BUFFER_BEHAVIOR_DEVICE_DEFAULT_EXT";
  8344. case VK_PIPELINE_ROBUSTNESS_BUFFER_BEHAVIOR_DISABLED_EXT:
  8345. return "VK_PIPELINE_ROBUSTNESS_BUFFER_BEHAVIOR_DISABLED_EXT";
  8346. case VK_PIPELINE_ROBUSTNESS_BUFFER_BEHAVIOR_ROBUST_BUFFER_ACCESS_2_EXT:
  8347. return "VK_PIPELINE_ROBUSTNESS_BUFFER_BEHAVIOR_ROBUST_BUFFER_ACCESS_2_EXT";
  8348. case VK_PIPELINE_ROBUSTNESS_BUFFER_BEHAVIOR_ROBUST_BUFFER_ACCESS_EXT:
  8349. return "VK_PIPELINE_ROBUSTNESS_BUFFER_BEHAVIOR_ROBUST_BUFFER_ACCESS_EXT";
  8350. default:
  8351. return "Unhandled VkPipelineRobustnessBufferBehaviorEXT";
  8352. }
  8353. }
  8354. static inline const char* string_VkPipelineRobustnessImageBehaviorEXT(VkPipelineRobustnessImageBehaviorEXT input_value)
  8355. {
  8356. switch (input_value)
  8357. {
  8358. case VK_PIPELINE_ROBUSTNESS_IMAGE_BEHAVIOR_DEVICE_DEFAULT_EXT:
  8359. return "VK_PIPELINE_ROBUSTNESS_IMAGE_BEHAVIOR_DEVICE_DEFAULT_EXT";
  8360. case VK_PIPELINE_ROBUSTNESS_IMAGE_BEHAVIOR_DISABLED_EXT:
  8361. return "VK_PIPELINE_ROBUSTNESS_IMAGE_BEHAVIOR_DISABLED_EXT";
  8362. case VK_PIPELINE_ROBUSTNESS_IMAGE_BEHAVIOR_ROBUST_IMAGE_ACCESS_2_EXT:
  8363. return "VK_PIPELINE_ROBUSTNESS_IMAGE_BEHAVIOR_ROBUST_IMAGE_ACCESS_2_EXT";
  8364. case VK_PIPELINE_ROBUSTNESS_IMAGE_BEHAVIOR_ROBUST_IMAGE_ACCESS_EXT:
  8365. return "VK_PIPELINE_ROBUSTNESS_IMAGE_BEHAVIOR_ROBUST_IMAGE_ACCESS_EXT";
  8366. default:
  8367. return "Unhandled VkPipelineRobustnessImageBehaviorEXT";
  8368. }
  8369. }
  8370. static inline const char* string_VkConditionalRenderingFlagBitsEXT(VkConditionalRenderingFlagBitsEXT input_value)
  8371. {
  8372. switch (input_value)
  8373. {
  8374. case VK_CONDITIONAL_RENDERING_INVERTED_BIT_EXT:
  8375. return "VK_CONDITIONAL_RENDERING_INVERTED_BIT_EXT";
  8376. default:
  8377. return "Unhandled VkConditionalRenderingFlagBitsEXT";
  8378. }
  8379. }
  8380. static inline std::string string_VkConditionalRenderingFlagsEXT(VkConditionalRenderingFlagsEXT input_value)
  8381. {
  8382. std::string ret;
  8383. int index = 0;
  8384. while(input_value) {
  8385. if (input_value & 1) {
  8386. if( !ret.empty()) ret.append("|");
  8387. ret.append(string_VkConditionalRenderingFlagBitsEXT(static_cast<VkConditionalRenderingFlagBitsEXT>(1U << index)));
  8388. }
  8389. ++index;
  8390. input_value >>= 1;
  8391. }
  8392. if( ret.empty()) ret.append(string_VkConditionalRenderingFlagBitsEXT(static_cast<VkConditionalRenderingFlagBitsEXT>(0)));
  8393. return ret;
  8394. }
  8395. static inline const char* string_VkSurfaceCounterFlagBitsEXT(VkSurfaceCounterFlagBitsEXT input_value)
  8396. {
  8397. switch (input_value)
  8398. {
  8399. case VK_SURFACE_COUNTER_VBLANK_BIT_EXT:
  8400. return "VK_SURFACE_COUNTER_VBLANK_BIT_EXT";
  8401. default:
  8402. return "Unhandled VkSurfaceCounterFlagBitsEXT";
  8403. }
  8404. }
  8405. static inline std::string string_VkSurfaceCounterFlagsEXT(VkSurfaceCounterFlagsEXT input_value)
  8406. {
  8407. std::string ret;
  8408. int index = 0;
  8409. while(input_value) {
  8410. if (input_value & 1) {
  8411. if( !ret.empty()) ret.append("|");
  8412. ret.append(string_VkSurfaceCounterFlagBitsEXT(static_cast<VkSurfaceCounterFlagBitsEXT>(1U << index)));
  8413. }
  8414. ++index;
  8415. input_value >>= 1;
  8416. }
  8417. if( ret.empty()) ret.append(string_VkSurfaceCounterFlagBitsEXT(static_cast<VkSurfaceCounterFlagBitsEXT>(0)));
  8418. return ret;
  8419. }
  8420. static inline const char* string_VkDisplayPowerStateEXT(VkDisplayPowerStateEXT input_value)
  8421. {
  8422. switch (input_value)
  8423. {
  8424. case VK_DISPLAY_POWER_STATE_OFF_EXT:
  8425. return "VK_DISPLAY_POWER_STATE_OFF_EXT";
  8426. case VK_DISPLAY_POWER_STATE_ON_EXT:
  8427. return "VK_DISPLAY_POWER_STATE_ON_EXT";
  8428. case VK_DISPLAY_POWER_STATE_SUSPEND_EXT:
  8429. return "VK_DISPLAY_POWER_STATE_SUSPEND_EXT";
  8430. default:
  8431. return "Unhandled VkDisplayPowerStateEXT";
  8432. }
  8433. }
  8434. static inline const char* string_VkDeviceEventTypeEXT(VkDeviceEventTypeEXT input_value)
  8435. {
  8436. switch (input_value)
  8437. {
  8438. case VK_DEVICE_EVENT_TYPE_DISPLAY_HOTPLUG_EXT:
  8439. return "VK_DEVICE_EVENT_TYPE_DISPLAY_HOTPLUG_EXT";
  8440. default:
  8441. return "Unhandled VkDeviceEventTypeEXT";
  8442. }
  8443. }
  8444. static inline const char* string_VkDisplayEventTypeEXT(VkDisplayEventTypeEXT input_value)
  8445. {
  8446. switch (input_value)
  8447. {
  8448. case VK_DISPLAY_EVENT_TYPE_FIRST_PIXEL_OUT_EXT:
  8449. return "VK_DISPLAY_EVENT_TYPE_FIRST_PIXEL_OUT_EXT";
  8450. default:
  8451. return "Unhandled VkDisplayEventTypeEXT";
  8452. }
  8453. }
  8454. static inline const char* string_VkViewportCoordinateSwizzleNV(VkViewportCoordinateSwizzleNV input_value)
  8455. {
  8456. switch (input_value)
  8457. {
  8458. case VK_VIEWPORT_COORDINATE_SWIZZLE_NEGATIVE_W_NV:
  8459. return "VK_VIEWPORT_COORDINATE_SWIZZLE_NEGATIVE_W_NV";
  8460. case VK_VIEWPORT_COORDINATE_SWIZZLE_NEGATIVE_X_NV:
  8461. return "VK_VIEWPORT_COORDINATE_SWIZZLE_NEGATIVE_X_NV";
  8462. case VK_VIEWPORT_COORDINATE_SWIZZLE_NEGATIVE_Y_NV:
  8463. return "VK_VIEWPORT_COORDINATE_SWIZZLE_NEGATIVE_Y_NV";
  8464. case VK_VIEWPORT_COORDINATE_SWIZZLE_NEGATIVE_Z_NV:
  8465. return "VK_VIEWPORT_COORDINATE_SWIZZLE_NEGATIVE_Z_NV";
  8466. case VK_VIEWPORT_COORDINATE_SWIZZLE_POSITIVE_W_NV:
  8467. return "VK_VIEWPORT_COORDINATE_SWIZZLE_POSITIVE_W_NV";
  8468. case VK_VIEWPORT_COORDINATE_SWIZZLE_POSITIVE_X_NV:
  8469. return "VK_VIEWPORT_COORDINATE_SWIZZLE_POSITIVE_X_NV";
  8470. case VK_VIEWPORT_COORDINATE_SWIZZLE_POSITIVE_Y_NV:
  8471. return "VK_VIEWPORT_COORDINATE_SWIZZLE_POSITIVE_Y_NV";
  8472. case VK_VIEWPORT_COORDINATE_SWIZZLE_POSITIVE_Z_NV:
  8473. return "VK_VIEWPORT_COORDINATE_SWIZZLE_POSITIVE_Z_NV";
  8474. default:
  8475. return "Unhandled VkViewportCoordinateSwizzleNV";
  8476. }
  8477. }
  8478. static inline const char* string_VkDiscardRectangleModeEXT(VkDiscardRectangleModeEXT input_value)
  8479. {
  8480. switch (input_value)
  8481. {
  8482. case VK_DISCARD_RECTANGLE_MODE_EXCLUSIVE_EXT:
  8483. return "VK_DISCARD_RECTANGLE_MODE_EXCLUSIVE_EXT";
  8484. case VK_DISCARD_RECTANGLE_MODE_INCLUSIVE_EXT:
  8485. return "VK_DISCARD_RECTANGLE_MODE_INCLUSIVE_EXT";
  8486. default:
  8487. return "Unhandled VkDiscardRectangleModeEXT";
  8488. }
  8489. }
  8490. static inline const char* string_VkConservativeRasterizationModeEXT(VkConservativeRasterizationModeEXT input_value)
  8491. {
  8492. switch (input_value)
  8493. {
  8494. case VK_CONSERVATIVE_RASTERIZATION_MODE_DISABLED_EXT:
  8495. return "VK_CONSERVATIVE_RASTERIZATION_MODE_DISABLED_EXT";
  8496. case VK_CONSERVATIVE_RASTERIZATION_MODE_OVERESTIMATE_EXT:
  8497. return "VK_CONSERVATIVE_RASTERIZATION_MODE_OVERESTIMATE_EXT";
  8498. case VK_CONSERVATIVE_RASTERIZATION_MODE_UNDERESTIMATE_EXT:
  8499. return "VK_CONSERVATIVE_RASTERIZATION_MODE_UNDERESTIMATE_EXT";
  8500. default:
  8501. return "Unhandled VkConservativeRasterizationModeEXT";
  8502. }
  8503. }
  8504. static inline const char* string_VkDebugUtilsMessageSeverityFlagBitsEXT(VkDebugUtilsMessageSeverityFlagBitsEXT input_value)
  8505. {
  8506. switch (input_value)
  8507. {
  8508. case VK_DEBUG_UTILS_MESSAGE_SEVERITY_ERROR_BIT_EXT:
  8509. return "VK_DEBUG_UTILS_MESSAGE_SEVERITY_ERROR_BIT_EXT";
  8510. case VK_DEBUG_UTILS_MESSAGE_SEVERITY_INFO_BIT_EXT:
  8511. return "VK_DEBUG_UTILS_MESSAGE_SEVERITY_INFO_BIT_EXT";
  8512. case VK_DEBUG_UTILS_MESSAGE_SEVERITY_VERBOSE_BIT_EXT:
  8513. return "VK_DEBUG_UTILS_MESSAGE_SEVERITY_VERBOSE_BIT_EXT";
  8514. case VK_DEBUG_UTILS_MESSAGE_SEVERITY_WARNING_BIT_EXT:
  8515. return "VK_DEBUG_UTILS_MESSAGE_SEVERITY_WARNING_BIT_EXT";
  8516. default:
  8517. return "Unhandled VkDebugUtilsMessageSeverityFlagBitsEXT";
  8518. }
  8519. }
  8520. static inline std::string string_VkDebugUtilsMessageSeverityFlagsEXT(VkDebugUtilsMessageSeverityFlagsEXT input_value)
  8521. {
  8522. std::string ret;
  8523. int index = 0;
  8524. while(input_value) {
  8525. if (input_value & 1) {
  8526. if( !ret.empty()) ret.append("|");
  8527. ret.append(string_VkDebugUtilsMessageSeverityFlagBitsEXT(static_cast<VkDebugUtilsMessageSeverityFlagBitsEXT>(1U << index)));
  8528. }
  8529. ++index;
  8530. input_value >>= 1;
  8531. }
  8532. if( ret.empty()) ret.append(string_VkDebugUtilsMessageSeverityFlagBitsEXT(static_cast<VkDebugUtilsMessageSeverityFlagBitsEXT>(0)));
  8533. return ret;
  8534. }
  8535. static inline const char* string_VkDebugUtilsMessageTypeFlagBitsEXT(VkDebugUtilsMessageTypeFlagBitsEXT input_value)
  8536. {
  8537. switch (input_value)
  8538. {
  8539. case VK_DEBUG_UTILS_MESSAGE_TYPE_DEVICE_ADDRESS_BINDING_BIT_EXT:
  8540. return "VK_DEBUG_UTILS_MESSAGE_TYPE_DEVICE_ADDRESS_BINDING_BIT_EXT";
  8541. case VK_DEBUG_UTILS_MESSAGE_TYPE_GENERAL_BIT_EXT:
  8542. return "VK_DEBUG_UTILS_MESSAGE_TYPE_GENERAL_BIT_EXT";
  8543. case VK_DEBUG_UTILS_MESSAGE_TYPE_PERFORMANCE_BIT_EXT:
  8544. return "VK_DEBUG_UTILS_MESSAGE_TYPE_PERFORMANCE_BIT_EXT";
  8545. case VK_DEBUG_UTILS_MESSAGE_TYPE_VALIDATION_BIT_EXT:
  8546. return "VK_DEBUG_UTILS_MESSAGE_TYPE_VALIDATION_BIT_EXT";
  8547. default:
  8548. return "Unhandled VkDebugUtilsMessageTypeFlagBitsEXT";
  8549. }
  8550. }
  8551. static inline std::string string_VkDebugUtilsMessageTypeFlagsEXT(VkDebugUtilsMessageTypeFlagsEXT input_value)
  8552. {
  8553. std::string ret;
  8554. int index = 0;
  8555. while(input_value) {
  8556. if (input_value & 1) {
  8557. if( !ret.empty()) ret.append("|");
  8558. ret.append(string_VkDebugUtilsMessageTypeFlagBitsEXT(static_cast<VkDebugUtilsMessageTypeFlagBitsEXT>(1U << index)));
  8559. }
  8560. ++index;
  8561. input_value >>= 1;
  8562. }
  8563. if( ret.empty()) ret.append(string_VkDebugUtilsMessageTypeFlagBitsEXT(static_cast<VkDebugUtilsMessageTypeFlagBitsEXT>(0)));
  8564. return ret;
  8565. }
  8566. static inline const char* string_VkSamplerReductionModeEXT(VkSamplerReductionModeEXT input_value)
  8567. {
  8568. switch (input_value)
  8569. {
  8570. case VK_SAMPLER_REDUCTION_MODE_MAX:
  8571. return "VK_SAMPLER_REDUCTION_MODE_MAX";
  8572. case VK_SAMPLER_REDUCTION_MODE_MIN:
  8573. return "VK_SAMPLER_REDUCTION_MODE_MIN";
  8574. case VK_SAMPLER_REDUCTION_MODE_WEIGHTED_AVERAGE:
  8575. return "VK_SAMPLER_REDUCTION_MODE_WEIGHTED_AVERAGE";
  8576. default:
  8577. return "Unhandled VkSamplerReductionModeEXT";
  8578. }
  8579. }
  8580. static inline const char* string_VkBlendOverlapEXT(VkBlendOverlapEXT input_value)
  8581. {
  8582. switch (input_value)
  8583. {
  8584. case VK_BLEND_OVERLAP_CONJOINT_EXT:
  8585. return "VK_BLEND_OVERLAP_CONJOINT_EXT";
  8586. case VK_BLEND_OVERLAP_DISJOINT_EXT:
  8587. return "VK_BLEND_OVERLAP_DISJOINT_EXT";
  8588. case VK_BLEND_OVERLAP_UNCORRELATED_EXT:
  8589. return "VK_BLEND_OVERLAP_UNCORRELATED_EXT";
  8590. default:
  8591. return "Unhandled VkBlendOverlapEXT";
  8592. }
  8593. }
  8594. static inline const char* string_VkCoverageModulationModeNV(VkCoverageModulationModeNV input_value)
  8595. {
  8596. switch (input_value)
  8597. {
  8598. case VK_COVERAGE_MODULATION_MODE_ALPHA_NV:
  8599. return "VK_COVERAGE_MODULATION_MODE_ALPHA_NV";
  8600. case VK_COVERAGE_MODULATION_MODE_NONE_NV:
  8601. return "VK_COVERAGE_MODULATION_MODE_NONE_NV";
  8602. case VK_COVERAGE_MODULATION_MODE_RGBA_NV:
  8603. return "VK_COVERAGE_MODULATION_MODE_RGBA_NV";
  8604. case VK_COVERAGE_MODULATION_MODE_RGB_NV:
  8605. return "VK_COVERAGE_MODULATION_MODE_RGB_NV";
  8606. default:
  8607. return "Unhandled VkCoverageModulationModeNV";
  8608. }
  8609. }
  8610. static inline const char* string_VkValidationCacheHeaderVersionEXT(VkValidationCacheHeaderVersionEXT input_value)
  8611. {
  8612. switch (input_value)
  8613. {
  8614. case VK_VALIDATION_CACHE_HEADER_VERSION_ONE_EXT:
  8615. return "VK_VALIDATION_CACHE_HEADER_VERSION_ONE_EXT";
  8616. default:
  8617. return "Unhandled VkValidationCacheHeaderVersionEXT";
  8618. }
  8619. }
  8620. static inline const char* string_VkDescriptorBindingFlagBitsEXT(VkDescriptorBindingFlagBitsEXT input_value)
  8621. {
  8622. switch (input_value)
  8623. {
  8624. case VK_DESCRIPTOR_BINDING_PARTIALLY_BOUND_BIT:
  8625. return "VK_DESCRIPTOR_BINDING_PARTIALLY_BOUND_BIT";
  8626. case VK_DESCRIPTOR_BINDING_UPDATE_AFTER_BIND_BIT:
  8627. return "VK_DESCRIPTOR_BINDING_UPDATE_AFTER_BIND_BIT";
  8628. case VK_DESCRIPTOR_BINDING_UPDATE_UNUSED_WHILE_PENDING_BIT:
  8629. return "VK_DESCRIPTOR_BINDING_UPDATE_UNUSED_WHILE_PENDING_BIT";
  8630. case VK_DESCRIPTOR_BINDING_VARIABLE_DESCRIPTOR_COUNT_BIT:
  8631. return "VK_DESCRIPTOR_BINDING_VARIABLE_DESCRIPTOR_COUNT_BIT";
  8632. default:
  8633. return "Unhandled VkDescriptorBindingFlagBitsEXT";
  8634. }
  8635. }
  8636. static inline std::string string_VkDescriptorBindingFlagsEXT(VkDescriptorBindingFlagsEXT input_value)
  8637. {
  8638. std::string ret;
  8639. int index = 0;
  8640. while(input_value) {
  8641. if (input_value & 1) {
  8642. if( !ret.empty()) ret.append("|");
  8643. ret.append(string_VkDescriptorBindingFlagBitsEXT(static_cast<VkDescriptorBindingFlagBitsEXT>(1U << index)));
  8644. }
  8645. ++index;
  8646. input_value >>= 1;
  8647. }
  8648. if( ret.empty()) ret.append(string_VkDescriptorBindingFlagBitsEXT(static_cast<VkDescriptorBindingFlagBitsEXT>(0)));
  8649. return ret;
  8650. }
  8651. static inline const char* string_VkShadingRatePaletteEntryNV(VkShadingRatePaletteEntryNV input_value)
  8652. {
  8653. switch (input_value)
  8654. {
  8655. case VK_SHADING_RATE_PALETTE_ENTRY_16_INVOCATIONS_PER_PIXEL_NV:
  8656. return "VK_SHADING_RATE_PALETTE_ENTRY_16_INVOCATIONS_PER_PIXEL_NV";
  8657. case VK_SHADING_RATE_PALETTE_ENTRY_1_INVOCATION_PER_1X2_PIXELS_NV:
  8658. return "VK_SHADING_RATE_PALETTE_ENTRY_1_INVOCATION_PER_1X2_PIXELS_NV";
  8659. case VK_SHADING_RATE_PALETTE_ENTRY_1_INVOCATION_PER_2X1_PIXELS_NV:
  8660. return "VK_SHADING_RATE_PALETTE_ENTRY_1_INVOCATION_PER_2X1_PIXELS_NV";
  8661. case VK_SHADING_RATE_PALETTE_ENTRY_1_INVOCATION_PER_2X2_PIXELS_NV:
  8662. return "VK_SHADING_RATE_PALETTE_ENTRY_1_INVOCATION_PER_2X2_PIXELS_NV";
  8663. case VK_SHADING_RATE_PALETTE_ENTRY_1_INVOCATION_PER_2X4_PIXELS_NV:
  8664. return "VK_SHADING_RATE_PALETTE_ENTRY_1_INVOCATION_PER_2X4_PIXELS_NV";
  8665. case VK_SHADING_RATE_PALETTE_ENTRY_1_INVOCATION_PER_4X2_PIXELS_NV:
  8666. return "VK_SHADING_RATE_PALETTE_ENTRY_1_INVOCATION_PER_4X2_PIXELS_NV";
  8667. case VK_SHADING_RATE_PALETTE_ENTRY_1_INVOCATION_PER_4X4_PIXELS_NV:
  8668. return "VK_SHADING_RATE_PALETTE_ENTRY_1_INVOCATION_PER_4X4_PIXELS_NV";
  8669. case VK_SHADING_RATE_PALETTE_ENTRY_1_INVOCATION_PER_PIXEL_NV:
  8670. return "VK_SHADING_RATE_PALETTE_ENTRY_1_INVOCATION_PER_PIXEL_NV";
  8671. case VK_SHADING_RATE_PALETTE_ENTRY_2_INVOCATIONS_PER_PIXEL_NV:
  8672. return "VK_SHADING_RATE_PALETTE_ENTRY_2_INVOCATIONS_PER_PIXEL_NV";
  8673. case VK_SHADING_RATE_PALETTE_ENTRY_4_INVOCATIONS_PER_PIXEL_NV:
  8674. return "VK_SHADING_RATE_PALETTE_ENTRY_4_INVOCATIONS_PER_PIXEL_NV";
  8675. case VK_SHADING_RATE_PALETTE_ENTRY_8_INVOCATIONS_PER_PIXEL_NV:
  8676. return "VK_SHADING_RATE_PALETTE_ENTRY_8_INVOCATIONS_PER_PIXEL_NV";
  8677. case VK_SHADING_RATE_PALETTE_ENTRY_NO_INVOCATIONS_NV:
  8678. return "VK_SHADING_RATE_PALETTE_ENTRY_NO_INVOCATIONS_NV";
  8679. default:
  8680. return "Unhandled VkShadingRatePaletteEntryNV";
  8681. }
  8682. }
  8683. static inline const char* string_VkCoarseSampleOrderTypeNV(VkCoarseSampleOrderTypeNV input_value)
  8684. {
  8685. switch (input_value)
  8686. {
  8687. case VK_COARSE_SAMPLE_ORDER_TYPE_CUSTOM_NV:
  8688. return "VK_COARSE_SAMPLE_ORDER_TYPE_CUSTOM_NV";
  8689. case VK_COARSE_SAMPLE_ORDER_TYPE_DEFAULT_NV:
  8690. return "VK_COARSE_SAMPLE_ORDER_TYPE_DEFAULT_NV";
  8691. case VK_COARSE_SAMPLE_ORDER_TYPE_PIXEL_MAJOR_NV:
  8692. return "VK_COARSE_SAMPLE_ORDER_TYPE_PIXEL_MAJOR_NV";
  8693. case VK_COARSE_SAMPLE_ORDER_TYPE_SAMPLE_MAJOR_NV:
  8694. return "VK_COARSE_SAMPLE_ORDER_TYPE_SAMPLE_MAJOR_NV";
  8695. default:
  8696. return "Unhandled VkCoarseSampleOrderTypeNV";
  8697. }
  8698. }
  8699. static inline const char* string_VkRayTracingShaderGroupTypeKHR(VkRayTracingShaderGroupTypeKHR input_value)
  8700. {
  8701. switch (input_value)
  8702. {
  8703. case VK_RAY_TRACING_SHADER_GROUP_TYPE_GENERAL_KHR:
  8704. return "VK_RAY_TRACING_SHADER_GROUP_TYPE_GENERAL_KHR";
  8705. case VK_RAY_TRACING_SHADER_GROUP_TYPE_PROCEDURAL_HIT_GROUP_KHR:
  8706. return "VK_RAY_TRACING_SHADER_GROUP_TYPE_PROCEDURAL_HIT_GROUP_KHR";
  8707. case VK_RAY_TRACING_SHADER_GROUP_TYPE_TRIANGLES_HIT_GROUP_KHR:
  8708. return "VK_RAY_TRACING_SHADER_GROUP_TYPE_TRIANGLES_HIT_GROUP_KHR";
  8709. default:
  8710. return "Unhandled VkRayTracingShaderGroupTypeKHR";
  8711. }
  8712. }
  8713. static inline const char* string_VkRayTracingShaderGroupTypeNV(VkRayTracingShaderGroupTypeNV input_value)
  8714. {
  8715. switch (input_value)
  8716. {
  8717. case VK_RAY_TRACING_SHADER_GROUP_TYPE_GENERAL_KHR:
  8718. return "VK_RAY_TRACING_SHADER_GROUP_TYPE_GENERAL_KHR";
  8719. case VK_RAY_TRACING_SHADER_GROUP_TYPE_PROCEDURAL_HIT_GROUP_KHR:
  8720. return "VK_RAY_TRACING_SHADER_GROUP_TYPE_PROCEDURAL_HIT_GROUP_KHR";
  8721. case VK_RAY_TRACING_SHADER_GROUP_TYPE_TRIANGLES_HIT_GROUP_KHR:
  8722. return "VK_RAY_TRACING_SHADER_GROUP_TYPE_TRIANGLES_HIT_GROUP_KHR";
  8723. default:
  8724. return "Unhandled VkRayTracingShaderGroupTypeNV";
  8725. }
  8726. }
  8727. static inline const char* string_VkGeometryTypeKHR(VkGeometryTypeKHR input_value)
  8728. {
  8729. switch (input_value)
  8730. {
  8731. case VK_GEOMETRY_TYPE_AABBS_KHR:
  8732. return "VK_GEOMETRY_TYPE_AABBS_KHR";
  8733. case VK_GEOMETRY_TYPE_INSTANCES_KHR:
  8734. return "VK_GEOMETRY_TYPE_INSTANCES_KHR";
  8735. case VK_GEOMETRY_TYPE_TRIANGLES_KHR:
  8736. return "VK_GEOMETRY_TYPE_TRIANGLES_KHR";
  8737. default:
  8738. return "Unhandled VkGeometryTypeKHR";
  8739. }
  8740. }
  8741. static inline const char* string_VkGeometryTypeNV(VkGeometryTypeNV input_value)
  8742. {
  8743. switch (input_value)
  8744. {
  8745. case VK_GEOMETRY_TYPE_AABBS_KHR:
  8746. return "VK_GEOMETRY_TYPE_AABBS_KHR";
  8747. case VK_GEOMETRY_TYPE_INSTANCES_KHR:
  8748. return "VK_GEOMETRY_TYPE_INSTANCES_KHR";
  8749. case VK_GEOMETRY_TYPE_TRIANGLES_KHR:
  8750. return "VK_GEOMETRY_TYPE_TRIANGLES_KHR";
  8751. default:
  8752. return "Unhandled VkGeometryTypeNV";
  8753. }
  8754. }
  8755. static inline const char* string_VkAccelerationStructureTypeKHR(VkAccelerationStructureTypeKHR input_value)
  8756. {
  8757. switch (input_value)
  8758. {
  8759. case VK_ACCELERATION_STRUCTURE_TYPE_BOTTOM_LEVEL_KHR:
  8760. return "VK_ACCELERATION_STRUCTURE_TYPE_BOTTOM_LEVEL_KHR";
  8761. case VK_ACCELERATION_STRUCTURE_TYPE_GENERIC_KHR:
  8762. return "VK_ACCELERATION_STRUCTURE_TYPE_GENERIC_KHR";
  8763. case VK_ACCELERATION_STRUCTURE_TYPE_TOP_LEVEL_KHR:
  8764. return "VK_ACCELERATION_STRUCTURE_TYPE_TOP_LEVEL_KHR";
  8765. default:
  8766. return "Unhandled VkAccelerationStructureTypeKHR";
  8767. }
  8768. }
  8769. static inline const char* string_VkAccelerationStructureTypeNV(VkAccelerationStructureTypeNV input_value)
  8770. {
  8771. switch (input_value)
  8772. {
  8773. case VK_ACCELERATION_STRUCTURE_TYPE_BOTTOM_LEVEL_KHR:
  8774. return "VK_ACCELERATION_STRUCTURE_TYPE_BOTTOM_LEVEL_KHR";
  8775. case VK_ACCELERATION_STRUCTURE_TYPE_GENERIC_KHR:
  8776. return "VK_ACCELERATION_STRUCTURE_TYPE_GENERIC_KHR";
  8777. case VK_ACCELERATION_STRUCTURE_TYPE_TOP_LEVEL_KHR:
  8778. return "VK_ACCELERATION_STRUCTURE_TYPE_TOP_LEVEL_KHR";
  8779. default:
  8780. return "Unhandled VkAccelerationStructureTypeNV";
  8781. }
  8782. }
  8783. static inline const char* string_VkGeometryFlagBitsKHR(VkGeometryFlagBitsKHR input_value)
  8784. {
  8785. switch (input_value)
  8786. {
  8787. case VK_GEOMETRY_NO_DUPLICATE_ANY_HIT_INVOCATION_BIT_KHR:
  8788. return "VK_GEOMETRY_NO_DUPLICATE_ANY_HIT_INVOCATION_BIT_KHR";
  8789. case VK_GEOMETRY_OPAQUE_BIT_KHR:
  8790. return "VK_GEOMETRY_OPAQUE_BIT_KHR";
  8791. default:
  8792. return "Unhandled VkGeometryFlagBitsKHR";
  8793. }
  8794. }
  8795. static inline std::string string_VkGeometryFlagsKHR(VkGeometryFlagsKHR input_value)
  8796. {
  8797. std::string ret;
  8798. int index = 0;
  8799. while(input_value) {
  8800. if (input_value & 1) {
  8801. if( !ret.empty()) ret.append("|");
  8802. ret.append(string_VkGeometryFlagBitsKHR(static_cast<VkGeometryFlagBitsKHR>(1U << index)));
  8803. }
  8804. ++index;
  8805. input_value >>= 1;
  8806. }
  8807. if( ret.empty()) ret.append(string_VkGeometryFlagBitsKHR(static_cast<VkGeometryFlagBitsKHR>(0)));
  8808. return ret;
  8809. }
  8810. static inline const char* string_VkGeometryFlagBitsNV(VkGeometryFlagBitsNV input_value)
  8811. {
  8812. switch (input_value)
  8813. {
  8814. case VK_GEOMETRY_NO_DUPLICATE_ANY_HIT_INVOCATION_BIT_KHR:
  8815. return "VK_GEOMETRY_NO_DUPLICATE_ANY_HIT_INVOCATION_BIT_KHR";
  8816. case VK_GEOMETRY_OPAQUE_BIT_KHR:
  8817. return "VK_GEOMETRY_OPAQUE_BIT_KHR";
  8818. default:
  8819. return "Unhandled VkGeometryFlagBitsNV";
  8820. }
  8821. }
  8822. static inline std::string string_VkGeometryFlagsNV(VkGeometryFlagsNV input_value)
  8823. {
  8824. std::string ret;
  8825. int index = 0;
  8826. while(input_value) {
  8827. if (input_value & 1) {
  8828. if( !ret.empty()) ret.append("|");
  8829. ret.append(string_VkGeometryFlagBitsNV(static_cast<VkGeometryFlagBitsNV>(1U << index)));
  8830. }
  8831. ++index;
  8832. input_value >>= 1;
  8833. }
  8834. if( ret.empty()) ret.append(string_VkGeometryFlagBitsNV(static_cast<VkGeometryFlagBitsNV>(0)));
  8835. return ret;
  8836. }
  8837. static inline const char* string_VkGeometryInstanceFlagBitsKHR(VkGeometryInstanceFlagBitsKHR input_value)
  8838. {
  8839. switch (input_value)
  8840. {
  8841. case VK_GEOMETRY_INSTANCE_DISABLE_OPACITY_MICROMAPS_EXT:
  8842. return "VK_GEOMETRY_INSTANCE_DISABLE_OPACITY_MICROMAPS_EXT";
  8843. case VK_GEOMETRY_INSTANCE_FORCE_NO_OPAQUE_BIT_KHR:
  8844. return "VK_GEOMETRY_INSTANCE_FORCE_NO_OPAQUE_BIT_KHR";
  8845. case VK_GEOMETRY_INSTANCE_FORCE_OPACITY_MICROMAP_2_STATE_EXT:
  8846. return "VK_GEOMETRY_INSTANCE_FORCE_OPACITY_MICROMAP_2_STATE_EXT";
  8847. case VK_GEOMETRY_INSTANCE_FORCE_OPAQUE_BIT_KHR:
  8848. return "VK_GEOMETRY_INSTANCE_FORCE_OPAQUE_BIT_KHR";
  8849. case VK_GEOMETRY_INSTANCE_TRIANGLE_FACING_CULL_DISABLE_BIT_KHR:
  8850. return "VK_GEOMETRY_INSTANCE_TRIANGLE_FACING_CULL_DISABLE_BIT_KHR";
  8851. case VK_GEOMETRY_INSTANCE_TRIANGLE_FLIP_FACING_BIT_KHR:
  8852. return "VK_GEOMETRY_INSTANCE_TRIANGLE_FLIP_FACING_BIT_KHR";
  8853. default:
  8854. return "Unhandled VkGeometryInstanceFlagBitsKHR";
  8855. }
  8856. }
  8857. static inline std::string string_VkGeometryInstanceFlagsKHR(VkGeometryInstanceFlagsKHR input_value)
  8858. {
  8859. std::string ret;
  8860. int index = 0;
  8861. while(input_value) {
  8862. if (input_value & 1) {
  8863. if( !ret.empty()) ret.append("|");
  8864. ret.append(string_VkGeometryInstanceFlagBitsKHR(static_cast<VkGeometryInstanceFlagBitsKHR>(1U << index)));
  8865. }
  8866. ++index;
  8867. input_value >>= 1;
  8868. }
  8869. if( ret.empty()) ret.append(string_VkGeometryInstanceFlagBitsKHR(static_cast<VkGeometryInstanceFlagBitsKHR>(0)));
  8870. return ret;
  8871. }
  8872. static inline const char* string_VkGeometryInstanceFlagBitsNV(VkGeometryInstanceFlagBitsNV input_value)
  8873. {
  8874. switch (input_value)
  8875. {
  8876. case VK_GEOMETRY_INSTANCE_DISABLE_OPACITY_MICROMAPS_EXT:
  8877. return "VK_GEOMETRY_INSTANCE_DISABLE_OPACITY_MICROMAPS_EXT";
  8878. case VK_GEOMETRY_INSTANCE_FORCE_NO_OPAQUE_BIT_KHR:
  8879. return "VK_GEOMETRY_INSTANCE_FORCE_NO_OPAQUE_BIT_KHR";
  8880. case VK_GEOMETRY_INSTANCE_FORCE_OPACITY_MICROMAP_2_STATE_EXT:
  8881. return "VK_GEOMETRY_INSTANCE_FORCE_OPACITY_MICROMAP_2_STATE_EXT";
  8882. case VK_GEOMETRY_INSTANCE_FORCE_OPAQUE_BIT_KHR:
  8883. return "VK_GEOMETRY_INSTANCE_FORCE_OPAQUE_BIT_KHR";
  8884. case VK_GEOMETRY_INSTANCE_TRIANGLE_FACING_CULL_DISABLE_BIT_KHR:
  8885. return "VK_GEOMETRY_INSTANCE_TRIANGLE_FACING_CULL_DISABLE_BIT_KHR";
  8886. case VK_GEOMETRY_INSTANCE_TRIANGLE_FLIP_FACING_BIT_KHR:
  8887. return "VK_GEOMETRY_INSTANCE_TRIANGLE_FLIP_FACING_BIT_KHR";
  8888. default:
  8889. return "Unhandled VkGeometryInstanceFlagBitsNV";
  8890. }
  8891. }
  8892. static inline std::string string_VkGeometryInstanceFlagsNV(VkGeometryInstanceFlagsNV input_value)
  8893. {
  8894. std::string ret;
  8895. int index = 0;
  8896. while(input_value) {
  8897. if (input_value & 1) {
  8898. if( !ret.empty()) ret.append("|");
  8899. ret.append(string_VkGeometryInstanceFlagBitsNV(static_cast<VkGeometryInstanceFlagBitsNV>(1U << index)));
  8900. }
  8901. ++index;
  8902. input_value >>= 1;
  8903. }
  8904. if( ret.empty()) ret.append(string_VkGeometryInstanceFlagBitsNV(static_cast<VkGeometryInstanceFlagBitsNV>(0)));
  8905. return ret;
  8906. }
  8907. static inline const char* string_VkBuildAccelerationStructureFlagBitsKHR(VkBuildAccelerationStructureFlagBitsKHR input_value)
  8908. {
  8909. switch (input_value)
  8910. {
  8911. case VK_BUILD_ACCELERATION_STRUCTURE_ALLOW_COMPACTION_BIT_KHR:
  8912. return "VK_BUILD_ACCELERATION_STRUCTURE_ALLOW_COMPACTION_BIT_KHR";
  8913. case VK_BUILD_ACCELERATION_STRUCTURE_ALLOW_DISABLE_OPACITY_MICROMAPS_EXT:
  8914. return "VK_BUILD_ACCELERATION_STRUCTURE_ALLOW_DISABLE_OPACITY_MICROMAPS_EXT";
  8915. case VK_BUILD_ACCELERATION_STRUCTURE_ALLOW_OPACITY_MICROMAP_DATA_UPDATE_EXT:
  8916. return "VK_BUILD_ACCELERATION_STRUCTURE_ALLOW_OPACITY_MICROMAP_DATA_UPDATE_EXT";
  8917. case VK_BUILD_ACCELERATION_STRUCTURE_ALLOW_OPACITY_MICROMAP_UPDATE_EXT:
  8918. return "VK_BUILD_ACCELERATION_STRUCTURE_ALLOW_OPACITY_MICROMAP_UPDATE_EXT";
  8919. case VK_BUILD_ACCELERATION_STRUCTURE_ALLOW_UPDATE_BIT_KHR:
  8920. return "VK_BUILD_ACCELERATION_STRUCTURE_ALLOW_UPDATE_BIT_KHR";
  8921. case VK_BUILD_ACCELERATION_STRUCTURE_LOW_MEMORY_BIT_KHR:
  8922. return "VK_BUILD_ACCELERATION_STRUCTURE_LOW_MEMORY_BIT_KHR";
  8923. case VK_BUILD_ACCELERATION_STRUCTURE_MOTION_BIT_NV:
  8924. return "VK_BUILD_ACCELERATION_STRUCTURE_MOTION_BIT_NV";
  8925. case VK_BUILD_ACCELERATION_STRUCTURE_PREFER_FAST_BUILD_BIT_KHR:
  8926. return "VK_BUILD_ACCELERATION_STRUCTURE_PREFER_FAST_BUILD_BIT_KHR";
  8927. case VK_BUILD_ACCELERATION_STRUCTURE_PREFER_FAST_TRACE_BIT_KHR:
  8928. return "VK_BUILD_ACCELERATION_STRUCTURE_PREFER_FAST_TRACE_BIT_KHR";
  8929. default:
  8930. return "Unhandled VkBuildAccelerationStructureFlagBitsKHR";
  8931. }
  8932. }
  8933. static inline std::string string_VkBuildAccelerationStructureFlagsKHR(VkBuildAccelerationStructureFlagsKHR input_value)
  8934. {
  8935. std::string ret;
  8936. int index = 0;
  8937. while(input_value) {
  8938. if (input_value & 1) {
  8939. if( !ret.empty()) ret.append("|");
  8940. ret.append(string_VkBuildAccelerationStructureFlagBitsKHR(static_cast<VkBuildAccelerationStructureFlagBitsKHR>(1U << index)));
  8941. }
  8942. ++index;
  8943. input_value >>= 1;
  8944. }
  8945. if( ret.empty()) ret.append(string_VkBuildAccelerationStructureFlagBitsKHR(static_cast<VkBuildAccelerationStructureFlagBitsKHR>(0)));
  8946. return ret;
  8947. }
  8948. static inline const char* string_VkBuildAccelerationStructureFlagBitsNV(VkBuildAccelerationStructureFlagBitsNV input_value)
  8949. {
  8950. switch (input_value)
  8951. {
  8952. case VK_BUILD_ACCELERATION_STRUCTURE_ALLOW_COMPACTION_BIT_KHR:
  8953. return "VK_BUILD_ACCELERATION_STRUCTURE_ALLOW_COMPACTION_BIT_KHR";
  8954. case VK_BUILD_ACCELERATION_STRUCTURE_ALLOW_DISABLE_OPACITY_MICROMAPS_EXT:
  8955. return "VK_BUILD_ACCELERATION_STRUCTURE_ALLOW_DISABLE_OPACITY_MICROMAPS_EXT";
  8956. case VK_BUILD_ACCELERATION_STRUCTURE_ALLOW_OPACITY_MICROMAP_DATA_UPDATE_EXT:
  8957. return "VK_BUILD_ACCELERATION_STRUCTURE_ALLOW_OPACITY_MICROMAP_DATA_UPDATE_EXT";
  8958. case VK_BUILD_ACCELERATION_STRUCTURE_ALLOW_OPACITY_MICROMAP_UPDATE_EXT:
  8959. return "VK_BUILD_ACCELERATION_STRUCTURE_ALLOW_OPACITY_MICROMAP_UPDATE_EXT";
  8960. case VK_BUILD_ACCELERATION_STRUCTURE_ALLOW_UPDATE_BIT_KHR:
  8961. return "VK_BUILD_ACCELERATION_STRUCTURE_ALLOW_UPDATE_BIT_KHR";
  8962. case VK_BUILD_ACCELERATION_STRUCTURE_LOW_MEMORY_BIT_KHR:
  8963. return "VK_BUILD_ACCELERATION_STRUCTURE_LOW_MEMORY_BIT_KHR";
  8964. case VK_BUILD_ACCELERATION_STRUCTURE_MOTION_BIT_NV:
  8965. return "VK_BUILD_ACCELERATION_STRUCTURE_MOTION_BIT_NV";
  8966. case VK_BUILD_ACCELERATION_STRUCTURE_PREFER_FAST_BUILD_BIT_KHR:
  8967. return "VK_BUILD_ACCELERATION_STRUCTURE_PREFER_FAST_BUILD_BIT_KHR";
  8968. case VK_BUILD_ACCELERATION_STRUCTURE_PREFER_FAST_TRACE_BIT_KHR:
  8969. return "VK_BUILD_ACCELERATION_STRUCTURE_PREFER_FAST_TRACE_BIT_KHR";
  8970. default:
  8971. return "Unhandled VkBuildAccelerationStructureFlagBitsNV";
  8972. }
  8973. }
  8974. static inline std::string string_VkBuildAccelerationStructureFlagsNV(VkBuildAccelerationStructureFlagsNV input_value)
  8975. {
  8976. std::string ret;
  8977. int index = 0;
  8978. while(input_value) {
  8979. if (input_value & 1) {
  8980. if( !ret.empty()) ret.append("|");
  8981. ret.append(string_VkBuildAccelerationStructureFlagBitsNV(static_cast<VkBuildAccelerationStructureFlagBitsNV>(1U << index)));
  8982. }
  8983. ++index;
  8984. input_value >>= 1;
  8985. }
  8986. if( ret.empty()) ret.append(string_VkBuildAccelerationStructureFlagBitsNV(static_cast<VkBuildAccelerationStructureFlagBitsNV>(0)));
  8987. return ret;
  8988. }
  8989. static inline const char* string_VkCopyAccelerationStructureModeKHR(VkCopyAccelerationStructureModeKHR input_value)
  8990. {
  8991. switch (input_value)
  8992. {
  8993. case VK_COPY_ACCELERATION_STRUCTURE_MODE_CLONE_KHR:
  8994. return "VK_COPY_ACCELERATION_STRUCTURE_MODE_CLONE_KHR";
  8995. case VK_COPY_ACCELERATION_STRUCTURE_MODE_COMPACT_KHR:
  8996. return "VK_COPY_ACCELERATION_STRUCTURE_MODE_COMPACT_KHR";
  8997. case VK_COPY_ACCELERATION_STRUCTURE_MODE_DESERIALIZE_KHR:
  8998. return "VK_COPY_ACCELERATION_STRUCTURE_MODE_DESERIALIZE_KHR";
  8999. case VK_COPY_ACCELERATION_STRUCTURE_MODE_SERIALIZE_KHR:
  9000. return "VK_COPY_ACCELERATION_STRUCTURE_MODE_SERIALIZE_KHR";
  9001. default:
  9002. return "Unhandled VkCopyAccelerationStructureModeKHR";
  9003. }
  9004. }
  9005. static inline const char* string_VkCopyAccelerationStructureModeNV(VkCopyAccelerationStructureModeNV input_value)
  9006. {
  9007. switch (input_value)
  9008. {
  9009. case VK_COPY_ACCELERATION_STRUCTURE_MODE_CLONE_KHR:
  9010. return "VK_COPY_ACCELERATION_STRUCTURE_MODE_CLONE_KHR";
  9011. case VK_COPY_ACCELERATION_STRUCTURE_MODE_COMPACT_KHR:
  9012. return "VK_COPY_ACCELERATION_STRUCTURE_MODE_COMPACT_KHR";
  9013. case VK_COPY_ACCELERATION_STRUCTURE_MODE_DESERIALIZE_KHR:
  9014. return "VK_COPY_ACCELERATION_STRUCTURE_MODE_DESERIALIZE_KHR";
  9015. case VK_COPY_ACCELERATION_STRUCTURE_MODE_SERIALIZE_KHR:
  9016. return "VK_COPY_ACCELERATION_STRUCTURE_MODE_SERIALIZE_KHR";
  9017. default:
  9018. return "Unhandled VkCopyAccelerationStructureModeNV";
  9019. }
  9020. }
  9021. static inline const char* string_VkAccelerationStructureMemoryRequirementsTypeNV(VkAccelerationStructureMemoryRequirementsTypeNV input_value)
  9022. {
  9023. switch (input_value)
  9024. {
  9025. case VK_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_TYPE_BUILD_SCRATCH_NV:
  9026. return "VK_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_TYPE_BUILD_SCRATCH_NV";
  9027. case VK_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_TYPE_OBJECT_NV:
  9028. return "VK_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_TYPE_OBJECT_NV";
  9029. case VK_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_TYPE_UPDATE_SCRATCH_NV:
  9030. return "VK_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_TYPE_UPDATE_SCRATCH_NV";
  9031. default:
  9032. return "Unhandled VkAccelerationStructureMemoryRequirementsTypeNV";
  9033. }
  9034. }
  9035. static inline const char* string_VkQueueGlobalPriorityEXT(VkQueueGlobalPriorityEXT input_value)
  9036. {
  9037. switch (input_value)
  9038. {
  9039. case VK_QUEUE_GLOBAL_PRIORITY_HIGH_KHR:
  9040. return "VK_QUEUE_GLOBAL_PRIORITY_HIGH_KHR";
  9041. case VK_QUEUE_GLOBAL_PRIORITY_LOW_KHR:
  9042. return "VK_QUEUE_GLOBAL_PRIORITY_LOW_KHR";
  9043. case VK_QUEUE_GLOBAL_PRIORITY_MEDIUM_KHR:
  9044. return "VK_QUEUE_GLOBAL_PRIORITY_MEDIUM_KHR";
  9045. case VK_QUEUE_GLOBAL_PRIORITY_REALTIME_KHR:
  9046. return "VK_QUEUE_GLOBAL_PRIORITY_REALTIME_KHR";
  9047. default:
  9048. return "Unhandled VkQueueGlobalPriorityEXT";
  9049. }
  9050. }
  9051. static inline const char* string_VkTimeDomainEXT(VkTimeDomainEXT input_value)
  9052. {
  9053. switch (input_value)
  9054. {
  9055. case VK_TIME_DOMAIN_CLOCK_MONOTONIC_EXT:
  9056. return "VK_TIME_DOMAIN_CLOCK_MONOTONIC_EXT";
  9057. case VK_TIME_DOMAIN_CLOCK_MONOTONIC_RAW_EXT:
  9058. return "VK_TIME_DOMAIN_CLOCK_MONOTONIC_RAW_EXT";
  9059. case VK_TIME_DOMAIN_DEVICE_EXT:
  9060. return "VK_TIME_DOMAIN_DEVICE_EXT";
  9061. case VK_TIME_DOMAIN_QUERY_PERFORMANCE_COUNTER_EXT:
  9062. return "VK_TIME_DOMAIN_QUERY_PERFORMANCE_COUNTER_EXT";
  9063. default:
  9064. return "Unhandled VkTimeDomainEXT";
  9065. }
  9066. }
  9067. static inline const char* string_VkMemoryOverallocationBehaviorAMD(VkMemoryOverallocationBehaviorAMD input_value)
  9068. {
  9069. switch (input_value)
  9070. {
  9071. case VK_MEMORY_OVERALLOCATION_BEHAVIOR_ALLOWED_AMD:
  9072. return "VK_MEMORY_OVERALLOCATION_BEHAVIOR_ALLOWED_AMD";
  9073. case VK_MEMORY_OVERALLOCATION_BEHAVIOR_DEFAULT_AMD:
  9074. return "VK_MEMORY_OVERALLOCATION_BEHAVIOR_DEFAULT_AMD";
  9075. case VK_MEMORY_OVERALLOCATION_BEHAVIOR_DISALLOWED_AMD:
  9076. return "VK_MEMORY_OVERALLOCATION_BEHAVIOR_DISALLOWED_AMD";
  9077. default:
  9078. return "Unhandled VkMemoryOverallocationBehaviorAMD";
  9079. }
  9080. }
  9081. static inline const char* string_VkPipelineCreationFeedbackFlagBitsEXT(VkPipelineCreationFeedbackFlagBitsEXT input_value)
  9082. {
  9083. switch (input_value)
  9084. {
  9085. case VK_PIPELINE_CREATION_FEEDBACK_APPLICATION_PIPELINE_CACHE_HIT_BIT:
  9086. return "VK_PIPELINE_CREATION_FEEDBACK_APPLICATION_PIPELINE_CACHE_HIT_BIT";
  9087. case VK_PIPELINE_CREATION_FEEDBACK_BASE_PIPELINE_ACCELERATION_BIT:
  9088. return "VK_PIPELINE_CREATION_FEEDBACK_BASE_PIPELINE_ACCELERATION_BIT";
  9089. case VK_PIPELINE_CREATION_FEEDBACK_VALID_BIT:
  9090. return "VK_PIPELINE_CREATION_FEEDBACK_VALID_BIT";
  9091. default:
  9092. return "Unhandled VkPipelineCreationFeedbackFlagBitsEXT";
  9093. }
  9094. }
  9095. static inline std::string string_VkPipelineCreationFeedbackFlagsEXT(VkPipelineCreationFeedbackFlagsEXT input_value)
  9096. {
  9097. std::string ret;
  9098. int index = 0;
  9099. while(input_value) {
  9100. if (input_value & 1) {
  9101. if( !ret.empty()) ret.append("|");
  9102. ret.append(string_VkPipelineCreationFeedbackFlagBitsEXT(static_cast<VkPipelineCreationFeedbackFlagBitsEXT>(1U << index)));
  9103. }
  9104. ++index;
  9105. input_value >>= 1;
  9106. }
  9107. if( ret.empty()) ret.append(string_VkPipelineCreationFeedbackFlagBitsEXT(static_cast<VkPipelineCreationFeedbackFlagBitsEXT>(0)));
  9108. return ret;
  9109. }
  9110. static inline const char* string_VkPerformanceConfigurationTypeINTEL(VkPerformanceConfigurationTypeINTEL input_value)
  9111. {
  9112. switch (input_value)
  9113. {
  9114. case VK_PERFORMANCE_CONFIGURATION_TYPE_COMMAND_QUEUE_METRICS_DISCOVERY_ACTIVATED_INTEL:
  9115. return "VK_PERFORMANCE_CONFIGURATION_TYPE_COMMAND_QUEUE_METRICS_DISCOVERY_ACTIVATED_INTEL";
  9116. default:
  9117. return "Unhandled VkPerformanceConfigurationTypeINTEL";
  9118. }
  9119. }
  9120. static inline const char* string_VkQueryPoolSamplingModeINTEL(VkQueryPoolSamplingModeINTEL input_value)
  9121. {
  9122. switch (input_value)
  9123. {
  9124. case VK_QUERY_POOL_SAMPLING_MODE_MANUAL_INTEL:
  9125. return "VK_QUERY_POOL_SAMPLING_MODE_MANUAL_INTEL";
  9126. default:
  9127. return "Unhandled VkQueryPoolSamplingModeINTEL";
  9128. }
  9129. }
  9130. static inline const char* string_VkPerformanceOverrideTypeINTEL(VkPerformanceOverrideTypeINTEL input_value)
  9131. {
  9132. switch (input_value)
  9133. {
  9134. case VK_PERFORMANCE_OVERRIDE_TYPE_FLUSH_GPU_CACHES_INTEL:
  9135. return "VK_PERFORMANCE_OVERRIDE_TYPE_FLUSH_GPU_CACHES_INTEL";
  9136. case VK_PERFORMANCE_OVERRIDE_TYPE_NULL_HARDWARE_INTEL:
  9137. return "VK_PERFORMANCE_OVERRIDE_TYPE_NULL_HARDWARE_INTEL";
  9138. default:
  9139. return "Unhandled VkPerformanceOverrideTypeINTEL";
  9140. }
  9141. }
  9142. static inline const char* string_VkPerformanceParameterTypeINTEL(VkPerformanceParameterTypeINTEL input_value)
  9143. {
  9144. switch (input_value)
  9145. {
  9146. case VK_PERFORMANCE_PARAMETER_TYPE_HW_COUNTERS_SUPPORTED_INTEL:
  9147. return "VK_PERFORMANCE_PARAMETER_TYPE_HW_COUNTERS_SUPPORTED_INTEL";
  9148. case VK_PERFORMANCE_PARAMETER_TYPE_STREAM_MARKER_VALID_BITS_INTEL:
  9149. return "VK_PERFORMANCE_PARAMETER_TYPE_STREAM_MARKER_VALID_BITS_INTEL";
  9150. default:
  9151. return "Unhandled VkPerformanceParameterTypeINTEL";
  9152. }
  9153. }
  9154. static inline const char* string_VkPerformanceValueTypeINTEL(VkPerformanceValueTypeINTEL input_value)
  9155. {
  9156. switch (input_value)
  9157. {
  9158. case VK_PERFORMANCE_VALUE_TYPE_BOOL_INTEL:
  9159. return "VK_PERFORMANCE_VALUE_TYPE_BOOL_INTEL";
  9160. case VK_PERFORMANCE_VALUE_TYPE_FLOAT_INTEL:
  9161. return "VK_PERFORMANCE_VALUE_TYPE_FLOAT_INTEL";
  9162. case VK_PERFORMANCE_VALUE_TYPE_STRING_INTEL:
  9163. return "VK_PERFORMANCE_VALUE_TYPE_STRING_INTEL";
  9164. case VK_PERFORMANCE_VALUE_TYPE_UINT32_INTEL:
  9165. return "VK_PERFORMANCE_VALUE_TYPE_UINT32_INTEL";
  9166. case VK_PERFORMANCE_VALUE_TYPE_UINT64_INTEL:
  9167. return "VK_PERFORMANCE_VALUE_TYPE_UINT64_INTEL";
  9168. default:
  9169. return "Unhandled VkPerformanceValueTypeINTEL";
  9170. }
  9171. }
  9172. static inline const char* string_VkToolPurposeFlagBitsEXT(VkToolPurposeFlagBitsEXT input_value)
  9173. {
  9174. switch (input_value)
  9175. {
  9176. case VK_TOOL_PURPOSE_ADDITIONAL_FEATURES_BIT:
  9177. return "VK_TOOL_PURPOSE_ADDITIONAL_FEATURES_BIT";
  9178. case VK_TOOL_PURPOSE_DEBUG_MARKERS_BIT_EXT:
  9179. return "VK_TOOL_PURPOSE_DEBUG_MARKERS_BIT_EXT";
  9180. case VK_TOOL_PURPOSE_DEBUG_REPORTING_BIT_EXT:
  9181. return "VK_TOOL_PURPOSE_DEBUG_REPORTING_BIT_EXT";
  9182. case VK_TOOL_PURPOSE_MODIFYING_FEATURES_BIT:
  9183. return "VK_TOOL_PURPOSE_MODIFYING_FEATURES_BIT";
  9184. case VK_TOOL_PURPOSE_PROFILING_BIT:
  9185. return "VK_TOOL_PURPOSE_PROFILING_BIT";
  9186. case VK_TOOL_PURPOSE_TRACING_BIT:
  9187. return "VK_TOOL_PURPOSE_TRACING_BIT";
  9188. case VK_TOOL_PURPOSE_VALIDATION_BIT:
  9189. return "VK_TOOL_PURPOSE_VALIDATION_BIT";
  9190. default:
  9191. return "Unhandled VkToolPurposeFlagBitsEXT";
  9192. }
  9193. }
  9194. static inline std::string string_VkToolPurposeFlagsEXT(VkToolPurposeFlagsEXT input_value)
  9195. {
  9196. std::string ret;
  9197. int index = 0;
  9198. while(input_value) {
  9199. if (input_value & 1) {
  9200. if( !ret.empty()) ret.append("|");
  9201. ret.append(string_VkToolPurposeFlagBitsEXT(static_cast<VkToolPurposeFlagBitsEXT>(1U << index)));
  9202. }
  9203. ++index;
  9204. input_value >>= 1;
  9205. }
  9206. if( ret.empty()) ret.append(string_VkToolPurposeFlagBitsEXT(static_cast<VkToolPurposeFlagBitsEXT>(0)));
  9207. return ret;
  9208. }
  9209. static inline const char* string_VkValidationFeatureEnableEXT(VkValidationFeatureEnableEXT input_value)
  9210. {
  9211. switch (input_value)
  9212. {
  9213. case VK_VALIDATION_FEATURE_ENABLE_BEST_PRACTICES_EXT:
  9214. return "VK_VALIDATION_FEATURE_ENABLE_BEST_PRACTICES_EXT";
  9215. case VK_VALIDATION_FEATURE_ENABLE_DEBUG_PRINTF_EXT:
  9216. return "VK_VALIDATION_FEATURE_ENABLE_DEBUG_PRINTF_EXT";
  9217. case VK_VALIDATION_FEATURE_ENABLE_GPU_ASSISTED_EXT:
  9218. return "VK_VALIDATION_FEATURE_ENABLE_GPU_ASSISTED_EXT";
  9219. case VK_VALIDATION_FEATURE_ENABLE_GPU_ASSISTED_RESERVE_BINDING_SLOT_EXT:
  9220. return "VK_VALIDATION_FEATURE_ENABLE_GPU_ASSISTED_RESERVE_BINDING_SLOT_EXT";
  9221. case VK_VALIDATION_FEATURE_ENABLE_SYNCHRONIZATION_VALIDATION_EXT:
  9222. return "VK_VALIDATION_FEATURE_ENABLE_SYNCHRONIZATION_VALIDATION_EXT";
  9223. default:
  9224. return "Unhandled VkValidationFeatureEnableEXT";
  9225. }
  9226. }
  9227. static inline const char* string_VkValidationFeatureDisableEXT(VkValidationFeatureDisableEXT input_value)
  9228. {
  9229. switch (input_value)
  9230. {
  9231. case VK_VALIDATION_FEATURE_DISABLE_ALL_EXT:
  9232. return "VK_VALIDATION_FEATURE_DISABLE_ALL_EXT";
  9233. case VK_VALIDATION_FEATURE_DISABLE_API_PARAMETERS_EXT:
  9234. return "VK_VALIDATION_FEATURE_DISABLE_API_PARAMETERS_EXT";
  9235. case VK_VALIDATION_FEATURE_DISABLE_CORE_CHECKS_EXT:
  9236. return "VK_VALIDATION_FEATURE_DISABLE_CORE_CHECKS_EXT";
  9237. case VK_VALIDATION_FEATURE_DISABLE_OBJECT_LIFETIMES_EXT:
  9238. return "VK_VALIDATION_FEATURE_DISABLE_OBJECT_LIFETIMES_EXT";
  9239. case VK_VALIDATION_FEATURE_DISABLE_SHADERS_EXT:
  9240. return "VK_VALIDATION_FEATURE_DISABLE_SHADERS_EXT";
  9241. case VK_VALIDATION_FEATURE_DISABLE_SHADER_VALIDATION_CACHE_EXT:
  9242. return "VK_VALIDATION_FEATURE_DISABLE_SHADER_VALIDATION_CACHE_EXT";
  9243. case VK_VALIDATION_FEATURE_DISABLE_THREAD_SAFETY_EXT:
  9244. return "VK_VALIDATION_FEATURE_DISABLE_THREAD_SAFETY_EXT";
  9245. case VK_VALIDATION_FEATURE_DISABLE_UNIQUE_HANDLES_EXT:
  9246. return "VK_VALIDATION_FEATURE_DISABLE_UNIQUE_HANDLES_EXT";
  9247. default:
  9248. return "Unhandled VkValidationFeatureDisableEXT";
  9249. }
  9250. }
  9251. static inline const char* string_VkComponentTypeNV(VkComponentTypeNV input_value)
  9252. {
  9253. switch (input_value)
  9254. {
  9255. case VK_COMPONENT_TYPE_FLOAT16_NV:
  9256. return "VK_COMPONENT_TYPE_FLOAT16_NV";
  9257. case VK_COMPONENT_TYPE_FLOAT32_NV:
  9258. return "VK_COMPONENT_TYPE_FLOAT32_NV";
  9259. case VK_COMPONENT_TYPE_FLOAT64_NV:
  9260. return "VK_COMPONENT_TYPE_FLOAT64_NV";
  9261. case VK_COMPONENT_TYPE_SINT16_NV:
  9262. return "VK_COMPONENT_TYPE_SINT16_NV";
  9263. case VK_COMPONENT_TYPE_SINT32_NV:
  9264. return "VK_COMPONENT_TYPE_SINT32_NV";
  9265. case VK_COMPONENT_TYPE_SINT64_NV:
  9266. return "VK_COMPONENT_TYPE_SINT64_NV";
  9267. case VK_COMPONENT_TYPE_SINT8_NV:
  9268. return "VK_COMPONENT_TYPE_SINT8_NV";
  9269. case VK_COMPONENT_TYPE_UINT16_NV:
  9270. return "VK_COMPONENT_TYPE_UINT16_NV";
  9271. case VK_COMPONENT_TYPE_UINT32_NV:
  9272. return "VK_COMPONENT_TYPE_UINT32_NV";
  9273. case VK_COMPONENT_TYPE_UINT64_NV:
  9274. return "VK_COMPONENT_TYPE_UINT64_NV";
  9275. case VK_COMPONENT_TYPE_UINT8_NV:
  9276. return "VK_COMPONENT_TYPE_UINT8_NV";
  9277. default:
  9278. return "Unhandled VkComponentTypeNV";
  9279. }
  9280. }
  9281. static inline const char* string_VkScopeNV(VkScopeNV input_value)
  9282. {
  9283. switch (input_value)
  9284. {
  9285. case VK_SCOPE_DEVICE_NV:
  9286. return "VK_SCOPE_DEVICE_NV";
  9287. case VK_SCOPE_QUEUE_FAMILY_NV:
  9288. return "VK_SCOPE_QUEUE_FAMILY_NV";
  9289. case VK_SCOPE_SUBGROUP_NV:
  9290. return "VK_SCOPE_SUBGROUP_NV";
  9291. case VK_SCOPE_WORKGROUP_NV:
  9292. return "VK_SCOPE_WORKGROUP_NV";
  9293. default:
  9294. return "Unhandled VkScopeNV";
  9295. }
  9296. }
  9297. static inline const char* string_VkCoverageReductionModeNV(VkCoverageReductionModeNV input_value)
  9298. {
  9299. switch (input_value)
  9300. {
  9301. case VK_COVERAGE_REDUCTION_MODE_MERGE_NV:
  9302. return "VK_COVERAGE_REDUCTION_MODE_MERGE_NV";
  9303. case VK_COVERAGE_REDUCTION_MODE_TRUNCATE_NV:
  9304. return "VK_COVERAGE_REDUCTION_MODE_TRUNCATE_NV";
  9305. default:
  9306. return "Unhandled VkCoverageReductionModeNV";
  9307. }
  9308. }
  9309. static inline const char* string_VkProvokingVertexModeEXT(VkProvokingVertexModeEXT input_value)
  9310. {
  9311. switch (input_value)
  9312. {
  9313. case VK_PROVOKING_VERTEX_MODE_FIRST_VERTEX_EXT:
  9314. return "VK_PROVOKING_VERTEX_MODE_FIRST_VERTEX_EXT";
  9315. case VK_PROVOKING_VERTEX_MODE_LAST_VERTEX_EXT:
  9316. return "VK_PROVOKING_VERTEX_MODE_LAST_VERTEX_EXT";
  9317. default:
  9318. return "Unhandled VkProvokingVertexModeEXT";
  9319. }
  9320. }
  9321. #ifdef VK_USE_PLATFORM_WIN32_KHR
  9322. static inline const char* string_VkFullScreenExclusiveEXT(VkFullScreenExclusiveEXT input_value)
  9323. {
  9324. switch (input_value)
  9325. {
  9326. case VK_FULL_SCREEN_EXCLUSIVE_ALLOWED_EXT:
  9327. return "VK_FULL_SCREEN_EXCLUSIVE_ALLOWED_EXT";
  9328. case VK_FULL_SCREEN_EXCLUSIVE_APPLICATION_CONTROLLED_EXT:
  9329. return "VK_FULL_SCREEN_EXCLUSIVE_APPLICATION_CONTROLLED_EXT";
  9330. case VK_FULL_SCREEN_EXCLUSIVE_DEFAULT_EXT:
  9331. return "VK_FULL_SCREEN_EXCLUSIVE_DEFAULT_EXT";
  9332. case VK_FULL_SCREEN_EXCLUSIVE_DISALLOWED_EXT:
  9333. return "VK_FULL_SCREEN_EXCLUSIVE_DISALLOWED_EXT";
  9334. default:
  9335. return "Unhandled VkFullScreenExclusiveEXT";
  9336. }
  9337. }
  9338. #endif // VK_USE_PLATFORM_WIN32_KHR
  9339. static inline const char* string_VkLineRasterizationModeEXT(VkLineRasterizationModeEXT input_value)
  9340. {
  9341. switch (input_value)
  9342. {
  9343. case VK_LINE_RASTERIZATION_MODE_BRESENHAM_EXT:
  9344. return "VK_LINE_RASTERIZATION_MODE_BRESENHAM_EXT";
  9345. case VK_LINE_RASTERIZATION_MODE_DEFAULT_EXT:
  9346. return "VK_LINE_RASTERIZATION_MODE_DEFAULT_EXT";
  9347. case VK_LINE_RASTERIZATION_MODE_RECTANGULAR_EXT:
  9348. return "VK_LINE_RASTERIZATION_MODE_RECTANGULAR_EXT";
  9349. case VK_LINE_RASTERIZATION_MODE_RECTANGULAR_SMOOTH_EXT:
  9350. return "VK_LINE_RASTERIZATION_MODE_RECTANGULAR_SMOOTH_EXT";
  9351. default:
  9352. return "Unhandled VkLineRasterizationModeEXT";
  9353. }
  9354. }
  9355. static inline const char* string_VkIndirectStateFlagBitsNV(VkIndirectStateFlagBitsNV input_value)
  9356. {
  9357. switch (input_value)
  9358. {
  9359. case VK_INDIRECT_STATE_FLAG_FRONTFACE_BIT_NV:
  9360. return "VK_INDIRECT_STATE_FLAG_FRONTFACE_BIT_NV";
  9361. default:
  9362. return "Unhandled VkIndirectStateFlagBitsNV";
  9363. }
  9364. }
  9365. static inline std::string string_VkIndirectStateFlagsNV(VkIndirectStateFlagsNV input_value)
  9366. {
  9367. std::string ret;
  9368. int index = 0;
  9369. while(input_value) {
  9370. if (input_value & 1) {
  9371. if( !ret.empty()) ret.append("|");
  9372. ret.append(string_VkIndirectStateFlagBitsNV(static_cast<VkIndirectStateFlagBitsNV>(1U << index)));
  9373. }
  9374. ++index;
  9375. input_value >>= 1;
  9376. }
  9377. if( ret.empty()) ret.append(string_VkIndirectStateFlagBitsNV(static_cast<VkIndirectStateFlagBitsNV>(0)));
  9378. return ret;
  9379. }
  9380. static inline const char* string_VkIndirectCommandsTokenTypeNV(VkIndirectCommandsTokenTypeNV input_value)
  9381. {
  9382. switch (input_value)
  9383. {
  9384. case VK_INDIRECT_COMMANDS_TOKEN_TYPE_DRAW_INDEXED_NV:
  9385. return "VK_INDIRECT_COMMANDS_TOKEN_TYPE_DRAW_INDEXED_NV";
  9386. case VK_INDIRECT_COMMANDS_TOKEN_TYPE_DRAW_MESH_TASKS_NV:
  9387. return "VK_INDIRECT_COMMANDS_TOKEN_TYPE_DRAW_MESH_TASKS_NV";
  9388. case VK_INDIRECT_COMMANDS_TOKEN_TYPE_DRAW_NV:
  9389. return "VK_INDIRECT_COMMANDS_TOKEN_TYPE_DRAW_NV";
  9390. case VK_INDIRECT_COMMANDS_TOKEN_TYPE_DRAW_TASKS_NV:
  9391. return "VK_INDIRECT_COMMANDS_TOKEN_TYPE_DRAW_TASKS_NV";
  9392. case VK_INDIRECT_COMMANDS_TOKEN_TYPE_INDEX_BUFFER_NV:
  9393. return "VK_INDIRECT_COMMANDS_TOKEN_TYPE_INDEX_BUFFER_NV";
  9394. case VK_INDIRECT_COMMANDS_TOKEN_TYPE_PUSH_CONSTANT_NV:
  9395. return "VK_INDIRECT_COMMANDS_TOKEN_TYPE_PUSH_CONSTANT_NV";
  9396. case VK_INDIRECT_COMMANDS_TOKEN_TYPE_SHADER_GROUP_NV:
  9397. return "VK_INDIRECT_COMMANDS_TOKEN_TYPE_SHADER_GROUP_NV";
  9398. case VK_INDIRECT_COMMANDS_TOKEN_TYPE_STATE_FLAGS_NV:
  9399. return "VK_INDIRECT_COMMANDS_TOKEN_TYPE_STATE_FLAGS_NV";
  9400. case VK_INDIRECT_COMMANDS_TOKEN_TYPE_VERTEX_BUFFER_NV:
  9401. return "VK_INDIRECT_COMMANDS_TOKEN_TYPE_VERTEX_BUFFER_NV";
  9402. default:
  9403. return "Unhandled VkIndirectCommandsTokenTypeNV";
  9404. }
  9405. }
  9406. static inline const char* string_VkIndirectCommandsLayoutUsageFlagBitsNV(VkIndirectCommandsLayoutUsageFlagBitsNV input_value)
  9407. {
  9408. switch (input_value)
  9409. {
  9410. case VK_INDIRECT_COMMANDS_LAYOUT_USAGE_EXPLICIT_PREPROCESS_BIT_NV:
  9411. return "VK_INDIRECT_COMMANDS_LAYOUT_USAGE_EXPLICIT_PREPROCESS_BIT_NV";
  9412. case VK_INDIRECT_COMMANDS_LAYOUT_USAGE_INDEXED_SEQUENCES_BIT_NV:
  9413. return "VK_INDIRECT_COMMANDS_LAYOUT_USAGE_INDEXED_SEQUENCES_BIT_NV";
  9414. case VK_INDIRECT_COMMANDS_LAYOUT_USAGE_UNORDERED_SEQUENCES_BIT_NV:
  9415. return "VK_INDIRECT_COMMANDS_LAYOUT_USAGE_UNORDERED_SEQUENCES_BIT_NV";
  9416. default:
  9417. return "Unhandled VkIndirectCommandsLayoutUsageFlagBitsNV";
  9418. }
  9419. }
  9420. static inline std::string string_VkIndirectCommandsLayoutUsageFlagsNV(VkIndirectCommandsLayoutUsageFlagsNV input_value)
  9421. {
  9422. std::string ret;
  9423. int index = 0;
  9424. while(input_value) {
  9425. if (input_value & 1) {
  9426. if( !ret.empty()) ret.append("|");
  9427. ret.append(string_VkIndirectCommandsLayoutUsageFlagBitsNV(static_cast<VkIndirectCommandsLayoutUsageFlagBitsNV>(1U << index)));
  9428. }
  9429. ++index;
  9430. input_value >>= 1;
  9431. }
  9432. if( ret.empty()) ret.append(string_VkIndirectCommandsLayoutUsageFlagBitsNV(static_cast<VkIndirectCommandsLayoutUsageFlagBitsNV>(0)));
  9433. return ret;
  9434. }
  9435. static inline const char* string_VkDeviceMemoryReportEventTypeEXT(VkDeviceMemoryReportEventTypeEXT input_value)
  9436. {
  9437. switch (input_value)
  9438. {
  9439. case VK_DEVICE_MEMORY_REPORT_EVENT_TYPE_ALLOCATE_EXT:
  9440. return "VK_DEVICE_MEMORY_REPORT_EVENT_TYPE_ALLOCATE_EXT";
  9441. case VK_DEVICE_MEMORY_REPORT_EVENT_TYPE_ALLOCATION_FAILED_EXT:
  9442. return "VK_DEVICE_MEMORY_REPORT_EVENT_TYPE_ALLOCATION_FAILED_EXT";
  9443. case VK_DEVICE_MEMORY_REPORT_EVENT_TYPE_FREE_EXT:
  9444. return "VK_DEVICE_MEMORY_REPORT_EVENT_TYPE_FREE_EXT";
  9445. case VK_DEVICE_MEMORY_REPORT_EVENT_TYPE_IMPORT_EXT:
  9446. return "VK_DEVICE_MEMORY_REPORT_EVENT_TYPE_IMPORT_EXT";
  9447. case VK_DEVICE_MEMORY_REPORT_EVENT_TYPE_UNIMPORT_EXT:
  9448. return "VK_DEVICE_MEMORY_REPORT_EVENT_TYPE_UNIMPORT_EXT";
  9449. default:
  9450. return "Unhandled VkDeviceMemoryReportEventTypeEXT";
  9451. }
  9452. }
  9453. static inline const char* string_VkDeviceDiagnosticsConfigFlagBitsNV(VkDeviceDiagnosticsConfigFlagBitsNV input_value)
  9454. {
  9455. switch (input_value)
  9456. {
  9457. case VK_DEVICE_DIAGNOSTICS_CONFIG_ENABLE_AUTOMATIC_CHECKPOINTS_BIT_NV:
  9458. return "VK_DEVICE_DIAGNOSTICS_CONFIG_ENABLE_AUTOMATIC_CHECKPOINTS_BIT_NV";
  9459. case VK_DEVICE_DIAGNOSTICS_CONFIG_ENABLE_RESOURCE_TRACKING_BIT_NV:
  9460. return "VK_DEVICE_DIAGNOSTICS_CONFIG_ENABLE_RESOURCE_TRACKING_BIT_NV";
  9461. case VK_DEVICE_DIAGNOSTICS_CONFIG_ENABLE_SHADER_DEBUG_INFO_BIT_NV:
  9462. return "VK_DEVICE_DIAGNOSTICS_CONFIG_ENABLE_SHADER_DEBUG_INFO_BIT_NV";
  9463. case VK_DEVICE_DIAGNOSTICS_CONFIG_ENABLE_SHADER_ERROR_REPORTING_BIT_NV:
  9464. return "VK_DEVICE_DIAGNOSTICS_CONFIG_ENABLE_SHADER_ERROR_REPORTING_BIT_NV";
  9465. default:
  9466. return "Unhandled VkDeviceDiagnosticsConfigFlagBitsNV";
  9467. }
  9468. }
  9469. static inline std::string string_VkDeviceDiagnosticsConfigFlagsNV(VkDeviceDiagnosticsConfigFlagsNV input_value)
  9470. {
  9471. std::string ret;
  9472. int index = 0;
  9473. while(input_value) {
  9474. if (input_value & 1) {
  9475. if( !ret.empty()) ret.append("|");
  9476. ret.append(string_VkDeviceDiagnosticsConfigFlagBitsNV(static_cast<VkDeviceDiagnosticsConfigFlagBitsNV>(1U << index)));
  9477. }
  9478. ++index;
  9479. input_value >>= 1;
  9480. }
  9481. if( ret.empty()) ret.append(string_VkDeviceDiagnosticsConfigFlagBitsNV(static_cast<VkDeviceDiagnosticsConfigFlagBitsNV>(0)));
  9482. return ret;
  9483. }
  9484. #ifdef VK_USE_PLATFORM_METAL_EXT
  9485. static inline const char* string_VkExportMetalObjectTypeFlagBitsEXT(VkExportMetalObjectTypeFlagBitsEXT input_value)
  9486. {
  9487. switch (input_value)
  9488. {
  9489. case VK_EXPORT_METAL_OBJECT_TYPE_METAL_BUFFER_BIT_EXT:
  9490. return "VK_EXPORT_METAL_OBJECT_TYPE_METAL_BUFFER_BIT_EXT";
  9491. case VK_EXPORT_METAL_OBJECT_TYPE_METAL_COMMAND_QUEUE_BIT_EXT:
  9492. return "VK_EXPORT_METAL_OBJECT_TYPE_METAL_COMMAND_QUEUE_BIT_EXT";
  9493. case VK_EXPORT_METAL_OBJECT_TYPE_METAL_DEVICE_BIT_EXT:
  9494. return "VK_EXPORT_METAL_OBJECT_TYPE_METAL_DEVICE_BIT_EXT";
  9495. case VK_EXPORT_METAL_OBJECT_TYPE_METAL_IOSURFACE_BIT_EXT:
  9496. return "VK_EXPORT_METAL_OBJECT_TYPE_METAL_IOSURFACE_BIT_EXT";
  9497. case VK_EXPORT_METAL_OBJECT_TYPE_METAL_SHARED_EVENT_BIT_EXT:
  9498. return "VK_EXPORT_METAL_OBJECT_TYPE_METAL_SHARED_EVENT_BIT_EXT";
  9499. case VK_EXPORT_METAL_OBJECT_TYPE_METAL_TEXTURE_BIT_EXT:
  9500. return "VK_EXPORT_METAL_OBJECT_TYPE_METAL_TEXTURE_BIT_EXT";
  9501. default:
  9502. return "Unhandled VkExportMetalObjectTypeFlagBitsEXT";
  9503. }
  9504. }
  9505. static inline std::string string_VkExportMetalObjectTypeFlagsEXT(VkExportMetalObjectTypeFlagsEXT input_value)
  9506. {
  9507. std::string ret;
  9508. int index = 0;
  9509. while(input_value) {
  9510. if (input_value & 1) {
  9511. if( !ret.empty()) ret.append("|");
  9512. ret.append(string_VkExportMetalObjectTypeFlagBitsEXT(static_cast<VkExportMetalObjectTypeFlagBitsEXT>(1U << index)));
  9513. }
  9514. ++index;
  9515. input_value >>= 1;
  9516. }
  9517. if( ret.empty()) ret.append(string_VkExportMetalObjectTypeFlagBitsEXT(static_cast<VkExportMetalObjectTypeFlagBitsEXT>(0)));
  9518. return ret;
  9519. }
  9520. #endif // VK_USE_PLATFORM_METAL_EXT
  9521. static inline const char* string_VkGraphicsPipelineLibraryFlagBitsEXT(VkGraphicsPipelineLibraryFlagBitsEXT input_value)
  9522. {
  9523. switch (input_value)
  9524. {
  9525. case VK_GRAPHICS_PIPELINE_LIBRARY_FRAGMENT_OUTPUT_INTERFACE_BIT_EXT:
  9526. return "VK_GRAPHICS_PIPELINE_LIBRARY_FRAGMENT_OUTPUT_INTERFACE_BIT_EXT";
  9527. case VK_GRAPHICS_PIPELINE_LIBRARY_FRAGMENT_SHADER_BIT_EXT:
  9528. return "VK_GRAPHICS_PIPELINE_LIBRARY_FRAGMENT_SHADER_BIT_EXT";
  9529. case VK_GRAPHICS_PIPELINE_LIBRARY_PRE_RASTERIZATION_SHADERS_BIT_EXT:
  9530. return "VK_GRAPHICS_PIPELINE_LIBRARY_PRE_RASTERIZATION_SHADERS_BIT_EXT";
  9531. case VK_GRAPHICS_PIPELINE_LIBRARY_VERTEX_INPUT_INTERFACE_BIT_EXT:
  9532. return "VK_GRAPHICS_PIPELINE_LIBRARY_VERTEX_INPUT_INTERFACE_BIT_EXT";
  9533. default:
  9534. return "Unhandled VkGraphicsPipelineLibraryFlagBitsEXT";
  9535. }
  9536. }
  9537. static inline std::string string_VkGraphicsPipelineLibraryFlagsEXT(VkGraphicsPipelineLibraryFlagsEXT input_value)
  9538. {
  9539. std::string ret;
  9540. int index = 0;
  9541. while(input_value) {
  9542. if (input_value & 1) {
  9543. if( !ret.empty()) ret.append("|");
  9544. ret.append(string_VkGraphicsPipelineLibraryFlagBitsEXT(static_cast<VkGraphicsPipelineLibraryFlagBitsEXT>(1U << index)));
  9545. }
  9546. ++index;
  9547. input_value >>= 1;
  9548. }
  9549. if( ret.empty()) ret.append(string_VkGraphicsPipelineLibraryFlagBitsEXT(static_cast<VkGraphicsPipelineLibraryFlagBitsEXT>(0)));
  9550. return ret;
  9551. }
  9552. static inline const char* string_VkFragmentShadingRateTypeNV(VkFragmentShadingRateTypeNV input_value)
  9553. {
  9554. switch (input_value)
  9555. {
  9556. case VK_FRAGMENT_SHADING_RATE_TYPE_ENUMS_NV:
  9557. return "VK_FRAGMENT_SHADING_RATE_TYPE_ENUMS_NV";
  9558. case VK_FRAGMENT_SHADING_RATE_TYPE_FRAGMENT_SIZE_NV:
  9559. return "VK_FRAGMENT_SHADING_RATE_TYPE_FRAGMENT_SIZE_NV";
  9560. default:
  9561. return "Unhandled VkFragmentShadingRateTypeNV";
  9562. }
  9563. }
  9564. static inline const char* string_VkFragmentShadingRateNV(VkFragmentShadingRateNV input_value)
  9565. {
  9566. switch (input_value)
  9567. {
  9568. case VK_FRAGMENT_SHADING_RATE_16_INVOCATIONS_PER_PIXEL_NV:
  9569. return "VK_FRAGMENT_SHADING_RATE_16_INVOCATIONS_PER_PIXEL_NV";
  9570. case VK_FRAGMENT_SHADING_RATE_1_INVOCATION_PER_1X2_PIXELS_NV:
  9571. return "VK_FRAGMENT_SHADING_RATE_1_INVOCATION_PER_1X2_PIXELS_NV";
  9572. case VK_FRAGMENT_SHADING_RATE_1_INVOCATION_PER_2X1_PIXELS_NV:
  9573. return "VK_FRAGMENT_SHADING_RATE_1_INVOCATION_PER_2X1_PIXELS_NV";
  9574. case VK_FRAGMENT_SHADING_RATE_1_INVOCATION_PER_2X2_PIXELS_NV:
  9575. return "VK_FRAGMENT_SHADING_RATE_1_INVOCATION_PER_2X2_PIXELS_NV";
  9576. case VK_FRAGMENT_SHADING_RATE_1_INVOCATION_PER_2X4_PIXELS_NV:
  9577. return "VK_FRAGMENT_SHADING_RATE_1_INVOCATION_PER_2X4_PIXELS_NV";
  9578. case VK_FRAGMENT_SHADING_RATE_1_INVOCATION_PER_4X2_PIXELS_NV:
  9579. return "VK_FRAGMENT_SHADING_RATE_1_INVOCATION_PER_4X2_PIXELS_NV";
  9580. case VK_FRAGMENT_SHADING_RATE_1_INVOCATION_PER_4X4_PIXELS_NV:
  9581. return "VK_FRAGMENT_SHADING_RATE_1_INVOCATION_PER_4X4_PIXELS_NV";
  9582. case VK_FRAGMENT_SHADING_RATE_1_INVOCATION_PER_PIXEL_NV:
  9583. return "VK_FRAGMENT_SHADING_RATE_1_INVOCATION_PER_PIXEL_NV";
  9584. case VK_FRAGMENT_SHADING_RATE_2_INVOCATIONS_PER_PIXEL_NV:
  9585. return "VK_FRAGMENT_SHADING_RATE_2_INVOCATIONS_PER_PIXEL_NV";
  9586. case VK_FRAGMENT_SHADING_RATE_4_INVOCATIONS_PER_PIXEL_NV:
  9587. return "VK_FRAGMENT_SHADING_RATE_4_INVOCATIONS_PER_PIXEL_NV";
  9588. case VK_FRAGMENT_SHADING_RATE_8_INVOCATIONS_PER_PIXEL_NV:
  9589. return "VK_FRAGMENT_SHADING_RATE_8_INVOCATIONS_PER_PIXEL_NV";
  9590. case VK_FRAGMENT_SHADING_RATE_NO_INVOCATIONS_NV:
  9591. return "VK_FRAGMENT_SHADING_RATE_NO_INVOCATIONS_NV";
  9592. default:
  9593. return "Unhandled VkFragmentShadingRateNV";
  9594. }
  9595. }
  9596. static inline const char* string_VkAccelerationStructureMotionInstanceTypeNV(VkAccelerationStructureMotionInstanceTypeNV input_value)
  9597. {
  9598. switch (input_value)
  9599. {
  9600. case VK_ACCELERATION_STRUCTURE_MOTION_INSTANCE_TYPE_MATRIX_MOTION_NV:
  9601. return "VK_ACCELERATION_STRUCTURE_MOTION_INSTANCE_TYPE_MATRIX_MOTION_NV";
  9602. case VK_ACCELERATION_STRUCTURE_MOTION_INSTANCE_TYPE_SRT_MOTION_NV:
  9603. return "VK_ACCELERATION_STRUCTURE_MOTION_INSTANCE_TYPE_SRT_MOTION_NV";
  9604. case VK_ACCELERATION_STRUCTURE_MOTION_INSTANCE_TYPE_STATIC_NV:
  9605. return "VK_ACCELERATION_STRUCTURE_MOTION_INSTANCE_TYPE_STATIC_NV";
  9606. default:
  9607. return "Unhandled VkAccelerationStructureMotionInstanceTypeNV";
  9608. }
  9609. }
  9610. static inline const char* string_VkImageCompressionFlagBitsEXT(VkImageCompressionFlagBitsEXT input_value)
  9611. {
  9612. switch (input_value)
  9613. {
  9614. case VK_IMAGE_COMPRESSION_DEFAULT_EXT:
  9615. return "VK_IMAGE_COMPRESSION_DEFAULT_EXT";
  9616. case VK_IMAGE_COMPRESSION_DISABLED_EXT:
  9617. return "VK_IMAGE_COMPRESSION_DISABLED_EXT";
  9618. case VK_IMAGE_COMPRESSION_FIXED_RATE_DEFAULT_EXT:
  9619. return "VK_IMAGE_COMPRESSION_FIXED_RATE_DEFAULT_EXT";
  9620. case VK_IMAGE_COMPRESSION_FIXED_RATE_EXPLICIT_EXT:
  9621. return "VK_IMAGE_COMPRESSION_FIXED_RATE_EXPLICIT_EXT";
  9622. default:
  9623. return "Unhandled VkImageCompressionFlagBitsEXT";
  9624. }
  9625. }
  9626. static inline std::string string_VkImageCompressionFlagsEXT(VkImageCompressionFlagsEXT input_value)
  9627. {
  9628. std::string ret;
  9629. int index = 0;
  9630. while(input_value) {
  9631. if (input_value & 1) {
  9632. if( !ret.empty()) ret.append("|");
  9633. ret.append(string_VkImageCompressionFlagBitsEXT(static_cast<VkImageCompressionFlagBitsEXT>(1U << index)));
  9634. }
  9635. ++index;
  9636. input_value >>= 1;
  9637. }
  9638. if( ret.empty()) ret.append(string_VkImageCompressionFlagBitsEXT(static_cast<VkImageCompressionFlagBitsEXT>(0)));
  9639. return ret;
  9640. }
  9641. static inline const char* string_VkImageCompressionFixedRateFlagBitsEXT(VkImageCompressionFixedRateFlagBitsEXT input_value)
  9642. {
  9643. switch (input_value)
  9644. {
  9645. case VK_IMAGE_COMPRESSION_FIXED_RATE_10BPC_BIT_EXT:
  9646. return "VK_IMAGE_COMPRESSION_FIXED_RATE_10BPC_BIT_EXT";
  9647. case VK_IMAGE_COMPRESSION_FIXED_RATE_11BPC_BIT_EXT:
  9648. return "VK_IMAGE_COMPRESSION_FIXED_RATE_11BPC_BIT_EXT";
  9649. case VK_IMAGE_COMPRESSION_FIXED_RATE_12BPC_BIT_EXT:
  9650. return "VK_IMAGE_COMPRESSION_FIXED_RATE_12BPC_BIT_EXT";
  9651. case VK_IMAGE_COMPRESSION_FIXED_RATE_13BPC_BIT_EXT:
  9652. return "VK_IMAGE_COMPRESSION_FIXED_RATE_13BPC_BIT_EXT";
  9653. case VK_IMAGE_COMPRESSION_FIXED_RATE_14BPC_BIT_EXT:
  9654. return "VK_IMAGE_COMPRESSION_FIXED_RATE_14BPC_BIT_EXT";
  9655. case VK_IMAGE_COMPRESSION_FIXED_RATE_15BPC_BIT_EXT:
  9656. return "VK_IMAGE_COMPRESSION_FIXED_RATE_15BPC_BIT_EXT";
  9657. case VK_IMAGE_COMPRESSION_FIXED_RATE_16BPC_BIT_EXT:
  9658. return "VK_IMAGE_COMPRESSION_FIXED_RATE_16BPC_BIT_EXT";
  9659. case VK_IMAGE_COMPRESSION_FIXED_RATE_17BPC_BIT_EXT:
  9660. return "VK_IMAGE_COMPRESSION_FIXED_RATE_17BPC_BIT_EXT";
  9661. case VK_IMAGE_COMPRESSION_FIXED_RATE_18BPC_BIT_EXT:
  9662. return "VK_IMAGE_COMPRESSION_FIXED_RATE_18BPC_BIT_EXT";
  9663. case VK_IMAGE_COMPRESSION_FIXED_RATE_19BPC_BIT_EXT:
  9664. return "VK_IMAGE_COMPRESSION_FIXED_RATE_19BPC_BIT_EXT";
  9665. case VK_IMAGE_COMPRESSION_FIXED_RATE_1BPC_BIT_EXT:
  9666. return "VK_IMAGE_COMPRESSION_FIXED_RATE_1BPC_BIT_EXT";
  9667. case VK_IMAGE_COMPRESSION_FIXED_RATE_20BPC_BIT_EXT:
  9668. return "VK_IMAGE_COMPRESSION_FIXED_RATE_20BPC_BIT_EXT";
  9669. case VK_IMAGE_COMPRESSION_FIXED_RATE_21BPC_BIT_EXT:
  9670. return "VK_IMAGE_COMPRESSION_FIXED_RATE_21BPC_BIT_EXT";
  9671. case VK_IMAGE_COMPRESSION_FIXED_RATE_22BPC_BIT_EXT:
  9672. return "VK_IMAGE_COMPRESSION_FIXED_RATE_22BPC_BIT_EXT";
  9673. case VK_IMAGE_COMPRESSION_FIXED_RATE_23BPC_BIT_EXT:
  9674. return "VK_IMAGE_COMPRESSION_FIXED_RATE_23BPC_BIT_EXT";
  9675. case VK_IMAGE_COMPRESSION_FIXED_RATE_24BPC_BIT_EXT:
  9676. return "VK_IMAGE_COMPRESSION_FIXED_RATE_24BPC_BIT_EXT";
  9677. case VK_IMAGE_COMPRESSION_FIXED_RATE_2BPC_BIT_EXT:
  9678. return "VK_IMAGE_COMPRESSION_FIXED_RATE_2BPC_BIT_EXT";
  9679. case VK_IMAGE_COMPRESSION_FIXED_RATE_3BPC_BIT_EXT:
  9680. return "VK_IMAGE_COMPRESSION_FIXED_RATE_3BPC_BIT_EXT";
  9681. case VK_IMAGE_COMPRESSION_FIXED_RATE_4BPC_BIT_EXT:
  9682. return "VK_IMAGE_COMPRESSION_FIXED_RATE_4BPC_BIT_EXT";
  9683. case VK_IMAGE_COMPRESSION_FIXED_RATE_5BPC_BIT_EXT:
  9684. return "VK_IMAGE_COMPRESSION_FIXED_RATE_5BPC_BIT_EXT";
  9685. case VK_IMAGE_COMPRESSION_FIXED_RATE_6BPC_BIT_EXT:
  9686. return "VK_IMAGE_COMPRESSION_FIXED_RATE_6BPC_BIT_EXT";
  9687. case VK_IMAGE_COMPRESSION_FIXED_RATE_7BPC_BIT_EXT:
  9688. return "VK_IMAGE_COMPRESSION_FIXED_RATE_7BPC_BIT_EXT";
  9689. case VK_IMAGE_COMPRESSION_FIXED_RATE_8BPC_BIT_EXT:
  9690. return "VK_IMAGE_COMPRESSION_FIXED_RATE_8BPC_BIT_EXT";
  9691. case VK_IMAGE_COMPRESSION_FIXED_RATE_9BPC_BIT_EXT:
  9692. return "VK_IMAGE_COMPRESSION_FIXED_RATE_9BPC_BIT_EXT";
  9693. case VK_IMAGE_COMPRESSION_FIXED_RATE_NONE_EXT:
  9694. return "VK_IMAGE_COMPRESSION_FIXED_RATE_NONE_EXT";
  9695. default:
  9696. return "Unhandled VkImageCompressionFixedRateFlagBitsEXT";
  9697. }
  9698. }
  9699. static inline std::string string_VkImageCompressionFixedRateFlagsEXT(VkImageCompressionFixedRateFlagsEXT input_value)
  9700. {
  9701. std::string ret;
  9702. int index = 0;
  9703. while(input_value) {
  9704. if (input_value & 1) {
  9705. if( !ret.empty()) ret.append("|");
  9706. ret.append(string_VkImageCompressionFixedRateFlagBitsEXT(static_cast<VkImageCompressionFixedRateFlagBitsEXT>(1U << index)));
  9707. }
  9708. ++index;
  9709. input_value >>= 1;
  9710. }
  9711. if( ret.empty()) ret.append(string_VkImageCompressionFixedRateFlagBitsEXT(static_cast<VkImageCompressionFixedRateFlagBitsEXT>(0)));
  9712. return ret;
  9713. }
  9714. static inline const char* string_VkDeviceFaultAddressTypeEXT(VkDeviceFaultAddressTypeEXT input_value)
  9715. {
  9716. switch (input_value)
  9717. {
  9718. case VK_DEVICE_FAULT_ADDRESS_TYPE_EXECUTE_INVALID_EXT:
  9719. return "VK_DEVICE_FAULT_ADDRESS_TYPE_EXECUTE_INVALID_EXT";
  9720. case VK_DEVICE_FAULT_ADDRESS_TYPE_INSTRUCTION_POINTER_FAULT_EXT:
  9721. return "VK_DEVICE_FAULT_ADDRESS_TYPE_INSTRUCTION_POINTER_FAULT_EXT";
  9722. case VK_DEVICE_FAULT_ADDRESS_TYPE_INSTRUCTION_POINTER_INVALID_EXT:
  9723. return "VK_DEVICE_FAULT_ADDRESS_TYPE_INSTRUCTION_POINTER_INVALID_EXT";
  9724. case VK_DEVICE_FAULT_ADDRESS_TYPE_INSTRUCTION_POINTER_UNKNOWN_EXT:
  9725. return "VK_DEVICE_FAULT_ADDRESS_TYPE_INSTRUCTION_POINTER_UNKNOWN_EXT";
  9726. case VK_DEVICE_FAULT_ADDRESS_TYPE_NONE_EXT:
  9727. return "VK_DEVICE_FAULT_ADDRESS_TYPE_NONE_EXT";
  9728. case VK_DEVICE_FAULT_ADDRESS_TYPE_READ_INVALID_EXT:
  9729. return "VK_DEVICE_FAULT_ADDRESS_TYPE_READ_INVALID_EXT";
  9730. case VK_DEVICE_FAULT_ADDRESS_TYPE_WRITE_INVALID_EXT:
  9731. return "VK_DEVICE_FAULT_ADDRESS_TYPE_WRITE_INVALID_EXT";
  9732. default:
  9733. return "Unhandled VkDeviceFaultAddressTypeEXT";
  9734. }
  9735. }
  9736. static inline const char* string_VkDeviceFaultVendorBinaryHeaderVersionEXT(VkDeviceFaultVendorBinaryHeaderVersionEXT input_value)
  9737. {
  9738. switch (input_value)
  9739. {
  9740. case VK_DEVICE_FAULT_VENDOR_BINARY_HEADER_VERSION_ONE_EXT:
  9741. return "VK_DEVICE_FAULT_VENDOR_BINARY_HEADER_VERSION_ONE_EXT";
  9742. default:
  9743. return "Unhandled VkDeviceFaultVendorBinaryHeaderVersionEXT";
  9744. }
  9745. }
  9746. static inline const char* string_VkDeviceAddressBindingFlagBitsEXT(VkDeviceAddressBindingFlagBitsEXT input_value)
  9747. {
  9748. switch (input_value)
  9749. {
  9750. case VK_DEVICE_ADDRESS_BINDING_INTERNAL_OBJECT_BIT_EXT:
  9751. return "VK_DEVICE_ADDRESS_BINDING_INTERNAL_OBJECT_BIT_EXT";
  9752. default:
  9753. return "Unhandled VkDeviceAddressBindingFlagBitsEXT";
  9754. }
  9755. }
  9756. static inline std::string string_VkDeviceAddressBindingFlagsEXT(VkDeviceAddressBindingFlagsEXT input_value)
  9757. {
  9758. std::string ret;
  9759. int index = 0;
  9760. while(input_value) {
  9761. if (input_value & 1) {
  9762. if( !ret.empty()) ret.append("|");
  9763. ret.append(string_VkDeviceAddressBindingFlagBitsEXT(static_cast<VkDeviceAddressBindingFlagBitsEXT>(1U << index)));
  9764. }
  9765. ++index;
  9766. input_value >>= 1;
  9767. }
  9768. if( ret.empty()) ret.append(string_VkDeviceAddressBindingFlagBitsEXT(static_cast<VkDeviceAddressBindingFlagBitsEXT>(0)));
  9769. return ret;
  9770. }
  9771. static inline const char* string_VkDeviceAddressBindingTypeEXT(VkDeviceAddressBindingTypeEXT input_value)
  9772. {
  9773. switch (input_value)
  9774. {
  9775. case VK_DEVICE_ADDRESS_BINDING_TYPE_BIND_EXT:
  9776. return "VK_DEVICE_ADDRESS_BINDING_TYPE_BIND_EXT";
  9777. case VK_DEVICE_ADDRESS_BINDING_TYPE_UNBIND_EXT:
  9778. return "VK_DEVICE_ADDRESS_BINDING_TYPE_UNBIND_EXT";
  9779. default:
  9780. return "Unhandled VkDeviceAddressBindingTypeEXT";
  9781. }
  9782. }
  9783. #ifdef VK_USE_PLATFORM_FUCHSIA
  9784. static inline const char* string_VkImageConstraintsInfoFlagBitsFUCHSIA(VkImageConstraintsInfoFlagBitsFUCHSIA input_value)
  9785. {
  9786. switch (input_value)
  9787. {
  9788. case VK_IMAGE_CONSTRAINTS_INFO_CPU_READ_OFTEN_FUCHSIA:
  9789. return "VK_IMAGE_CONSTRAINTS_INFO_CPU_READ_OFTEN_FUCHSIA";
  9790. case VK_IMAGE_CONSTRAINTS_INFO_CPU_READ_RARELY_FUCHSIA:
  9791. return "VK_IMAGE_CONSTRAINTS_INFO_CPU_READ_RARELY_FUCHSIA";
  9792. case VK_IMAGE_CONSTRAINTS_INFO_CPU_WRITE_OFTEN_FUCHSIA:
  9793. return "VK_IMAGE_CONSTRAINTS_INFO_CPU_WRITE_OFTEN_FUCHSIA";
  9794. case VK_IMAGE_CONSTRAINTS_INFO_CPU_WRITE_RARELY_FUCHSIA:
  9795. return "VK_IMAGE_CONSTRAINTS_INFO_CPU_WRITE_RARELY_FUCHSIA";
  9796. case VK_IMAGE_CONSTRAINTS_INFO_PROTECTED_OPTIONAL_FUCHSIA:
  9797. return "VK_IMAGE_CONSTRAINTS_INFO_PROTECTED_OPTIONAL_FUCHSIA";
  9798. default:
  9799. return "Unhandled VkImageConstraintsInfoFlagBitsFUCHSIA";
  9800. }
  9801. }
  9802. static inline std::string string_VkImageConstraintsInfoFlagsFUCHSIA(VkImageConstraintsInfoFlagsFUCHSIA input_value)
  9803. {
  9804. std::string ret;
  9805. int index = 0;
  9806. while(input_value) {
  9807. if (input_value & 1) {
  9808. if( !ret.empty()) ret.append("|");
  9809. ret.append(string_VkImageConstraintsInfoFlagBitsFUCHSIA(static_cast<VkImageConstraintsInfoFlagBitsFUCHSIA>(1U << index)));
  9810. }
  9811. ++index;
  9812. input_value >>= 1;
  9813. }
  9814. if( ret.empty()) ret.append(string_VkImageConstraintsInfoFlagBitsFUCHSIA(static_cast<VkImageConstraintsInfoFlagBitsFUCHSIA>(0)));
  9815. return ret;
  9816. }
  9817. #endif // VK_USE_PLATFORM_FUCHSIA
  9818. static inline const char* string_VkMicromapTypeEXT(VkMicromapTypeEXT input_value)
  9819. {
  9820. switch (input_value)
  9821. {
  9822. case VK_MICROMAP_TYPE_OPACITY_MICROMAP_EXT:
  9823. return "VK_MICROMAP_TYPE_OPACITY_MICROMAP_EXT";
  9824. default:
  9825. return "Unhandled VkMicromapTypeEXT";
  9826. }
  9827. }
  9828. static inline const char* string_VkBuildMicromapFlagBitsEXT(VkBuildMicromapFlagBitsEXT input_value)
  9829. {
  9830. switch (input_value)
  9831. {
  9832. case VK_BUILD_MICROMAP_ALLOW_COMPACTION_BIT_EXT:
  9833. return "VK_BUILD_MICROMAP_ALLOW_COMPACTION_BIT_EXT";
  9834. case VK_BUILD_MICROMAP_PREFER_FAST_BUILD_BIT_EXT:
  9835. return "VK_BUILD_MICROMAP_PREFER_FAST_BUILD_BIT_EXT";
  9836. case VK_BUILD_MICROMAP_PREFER_FAST_TRACE_BIT_EXT:
  9837. return "VK_BUILD_MICROMAP_PREFER_FAST_TRACE_BIT_EXT";
  9838. default:
  9839. return "Unhandled VkBuildMicromapFlagBitsEXT";
  9840. }
  9841. }
  9842. static inline std::string string_VkBuildMicromapFlagsEXT(VkBuildMicromapFlagsEXT input_value)
  9843. {
  9844. std::string ret;
  9845. int index = 0;
  9846. while(input_value) {
  9847. if (input_value & 1) {
  9848. if( !ret.empty()) ret.append("|");
  9849. ret.append(string_VkBuildMicromapFlagBitsEXT(static_cast<VkBuildMicromapFlagBitsEXT>(1U << index)));
  9850. }
  9851. ++index;
  9852. input_value >>= 1;
  9853. }
  9854. if( ret.empty()) ret.append(string_VkBuildMicromapFlagBitsEXT(static_cast<VkBuildMicromapFlagBitsEXT>(0)));
  9855. return ret;
  9856. }
  9857. static inline const char* string_VkBuildMicromapModeEXT(VkBuildMicromapModeEXT input_value)
  9858. {
  9859. switch (input_value)
  9860. {
  9861. case VK_BUILD_MICROMAP_MODE_BUILD_EXT:
  9862. return "VK_BUILD_MICROMAP_MODE_BUILD_EXT";
  9863. default:
  9864. return "Unhandled VkBuildMicromapModeEXT";
  9865. }
  9866. }
  9867. static inline const char* string_VkMicromapCreateFlagBitsEXT(VkMicromapCreateFlagBitsEXT input_value)
  9868. {
  9869. switch (input_value)
  9870. {
  9871. case VK_MICROMAP_CREATE_DEVICE_ADDRESS_CAPTURE_REPLAY_BIT_EXT:
  9872. return "VK_MICROMAP_CREATE_DEVICE_ADDRESS_CAPTURE_REPLAY_BIT_EXT";
  9873. default:
  9874. return "Unhandled VkMicromapCreateFlagBitsEXT";
  9875. }
  9876. }
  9877. static inline std::string string_VkMicromapCreateFlagsEXT(VkMicromapCreateFlagsEXT input_value)
  9878. {
  9879. std::string ret;
  9880. int index = 0;
  9881. while(input_value) {
  9882. if (input_value & 1) {
  9883. if( !ret.empty()) ret.append("|");
  9884. ret.append(string_VkMicromapCreateFlagBitsEXT(static_cast<VkMicromapCreateFlagBitsEXT>(1U << index)));
  9885. }
  9886. ++index;
  9887. input_value >>= 1;
  9888. }
  9889. if( ret.empty()) ret.append(string_VkMicromapCreateFlagBitsEXT(static_cast<VkMicromapCreateFlagBitsEXT>(0)));
  9890. return ret;
  9891. }
  9892. static inline const char* string_VkCopyMicromapModeEXT(VkCopyMicromapModeEXT input_value)
  9893. {
  9894. switch (input_value)
  9895. {
  9896. case VK_COPY_MICROMAP_MODE_CLONE_EXT:
  9897. return "VK_COPY_MICROMAP_MODE_CLONE_EXT";
  9898. case VK_COPY_MICROMAP_MODE_COMPACT_EXT:
  9899. return "VK_COPY_MICROMAP_MODE_COMPACT_EXT";
  9900. case VK_COPY_MICROMAP_MODE_DESERIALIZE_EXT:
  9901. return "VK_COPY_MICROMAP_MODE_DESERIALIZE_EXT";
  9902. case VK_COPY_MICROMAP_MODE_SERIALIZE_EXT:
  9903. return "VK_COPY_MICROMAP_MODE_SERIALIZE_EXT";
  9904. default:
  9905. return "Unhandled VkCopyMicromapModeEXT";
  9906. }
  9907. }
  9908. static inline const char* string_VkOpacityMicromapFormatEXT(VkOpacityMicromapFormatEXT input_value)
  9909. {
  9910. switch (input_value)
  9911. {
  9912. case VK_OPACITY_MICROMAP_FORMAT_2_STATE_EXT:
  9913. return "VK_OPACITY_MICROMAP_FORMAT_2_STATE_EXT";
  9914. case VK_OPACITY_MICROMAP_FORMAT_4_STATE_EXT:
  9915. return "VK_OPACITY_MICROMAP_FORMAT_4_STATE_EXT";
  9916. default:
  9917. return "Unhandled VkOpacityMicromapFormatEXT";
  9918. }
  9919. }
  9920. static inline const char* string_VkOpacityMicromapSpecialIndexEXT(VkOpacityMicromapSpecialIndexEXT input_value)
  9921. {
  9922. switch (input_value)
  9923. {
  9924. case VK_OPACITY_MICROMAP_SPECIAL_INDEX_FULLY_OPAQUE_EXT:
  9925. return "VK_OPACITY_MICROMAP_SPECIAL_INDEX_FULLY_OPAQUE_EXT";
  9926. case VK_OPACITY_MICROMAP_SPECIAL_INDEX_FULLY_TRANSPARENT_EXT:
  9927. return "VK_OPACITY_MICROMAP_SPECIAL_INDEX_FULLY_TRANSPARENT_EXT";
  9928. case VK_OPACITY_MICROMAP_SPECIAL_INDEX_FULLY_UNKNOWN_OPAQUE_EXT:
  9929. return "VK_OPACITY_MICROMAP_SPECIAL_INDEX_FULLY_UNKNOWN_OPAQUE_EXT";
  9930. case VK_OPACITY_MICROMAP_SPECIAL_INDEX_FULLY_UNKNOWN_TRANSPARENT_EXT:
  9931. return "VK_OPACITY_MICROMAP_SPECIAL_INDEX_FULLY_UNKNOWN_TRANSPARENT_EXT";
  9932. default:
  9933. return "Unhandled VkOpacityMicromapSpecialIndexEXT";
  9934. }
  9935. }
  9936. static inline const char* string_VkAccelerationStructureCompatibilityKHR(VkAccelerationStructureCompatibilityKHR input_value)
  9937. {
  9938. switch (input_value)
  9939. {
  9940. case VK_ACCELERATION_STRUCTURE_COMPATIBILITY_COMPATIBLE_KHR:
  9941. return "VK_ACCELERATION_STRUCTURE_COMPATIBILITY_COMPATIBLE_KHR";
  9942. case VK_ACCELERATION_STRUCTURE_COMPATIBILITY_INCOMPATIBLE_KHR:
  9943. return "VK_ACCELERATION_STRUCTURE_COMPATIBILITY_INCOMPATIBLE_KHR";
  9944. default:
  9945. return "Unhandled VkAccelerationStructureCompatibilityKHR";
  9946. }
  9947. }
  9948. static inline const char* string_VkAccelerationStructureBuildTypeKHR(VkAccelerationStructureBuildTypeKHR input_value)
  9949. {
  9950. switch (input_value)
  9951. {
  9952. case VK_ACCELERATION_STRUCTURE_BUILD_TYPE_DEVICE_KHR:
  9953. return "VK_ACCELERATION_STRUCTURE_BUILD_TYPE_DEVICE_KHR";
  9954. case VK_ACCELERATION_STRUCTURE_BUILD_TYPE_HOST_KHR:
  9955. return "VK_ACCELERATION_STRUCTURE_BUILD_TYPE_HOST_KHR";
  9956. case VK_ACCELERATION_STRUCTURE_BUILD_TYPE_HOST_OR_DEVICE_KHR:
  9957. return "VK_ACCELERATION_STRUCTURE_BUILD_TYPE_HOST_OR_DEVICE_KHR";
  9958. default:
  9959. return "Unhandled VkAccelerationStructureBuildTypeKHR";
  9960. }
  9961. }
  9962. static inline const char* string_VkSubpassMergeStatusEXT(VkSubpassMergeStatusEXT input_value)
  9963. {
  9964. switch (input_value)
  9965. {
  9966. case VK_SUBPASS_MERGE_STATUS_DISALLOWED_EXT:
  9967. return "VK_SUBPASS_MERGE_STATUS_DISALLOWED_EXT";
  9968. case VK_SUBPASS_MERGE_STATUS_MERGED_EXT:
  9969. return "VK_SUBPASS_MERGE_STATUS_MERGED_EXT";
  9970. case VK_SUBPASS_MERGE_STATUS_NOT_MERGED_ALIASING_EXT:
  9971. return "VK_SUBPASS_MERGE_STATUS_NOT_MERGED_ALIASING_EXT";
  9972. case VK_SUBPASS_MERGE_STATUS_NOT_MERGED_DEPENDENCIES_EXT:
  9973. return "VK_SUBPASS_MERGE_STATUS_NOT_MERGED_DEPENDENCIES_EXT";
  9974. case VK_SUBPASS_MERGE_STATUS_NOT_MERGED_DEPTH_STENCIL_COUNT_EXT:
  9975. return "VK_SUBPASS_MERGE_STATUS_NOT_MERGED_DEPTH_STENCIL_COUNT_EXT";
  9976. case VK_SUBPASS_MERGE_STATUS_NOT_MERGED_INCOMPATIBLE_INPUT_ATTACHMENT_EXT:
  9977. return "VK_SUBPASS_MERGE_STATUS_NOT_MERGED_INCOMPATIBLE_INPUT_ATTACHMENT_EXT";
  9978. case VK_SUBPASS_MERGE_STATUS_NOT_MERGED_INSUFFICIENT_STORAGE_EXT:
  9979. return "VK_SUBPASS_MERGE_STATUS_NOT_MERGED_INSUFFICIENT_STORAGE_EXT";
  9980. case VK_SUBPASS_MERGE_STATUS_NOT_MERGED_RESOLVE_ATTACHMENT_REUSE_EXT:
  9981. return "VK_SUBPASS_MERGE_STATUS_NOT_MERGED_RESOLVE_ATTACHMENT_REUSE_EXT";
  9982. case VK_SUBPASS_MERGE_STATUS_NOT_MERGED_SAMPLES_MISMATCH_EXT:
  9983. return "VK_SUBPASS_MERGE_STATUS_NOT_MERGED_SAMPLES_MISMATCH_EXT";
  9984. case VK_SUBPASS_MERGE_STATUS_NOT_MERGED_SIDE_EFFECTS_EXT:
  9985. return "VK_SUBPASS_MERGE_STATUS_NOT_MERGED_SIDE_EFFECTS_EXT";
  9986. case VK_SUBPASS_MERGE_STATUS_NOT_MERGED_SINGLE_SUBPASS_EXT:
  9987. return "VK_SUBPASS_MERGE_STATUS_NOT_MERGED_SINGLE_SUBPASS_EXT";
  9988. case VK_SUBPASS_MERGE_STATUS_NOT_MERGED_TOO_MANY_ATTACHMENTS_EXT:
  9989. return "VK_SUBPASS_MERGE_STATUS_NOT_MERGED_TOO_MANY_ATTACHMENTS_EXT";
  9990. case VK_SUBPASS_MERGE_STATUS_NOT_MERGED_UNSPECIFIED_EXT:
  9991. return "VK_SUBPASS_MERGE_STATUS_NOT_MERGED_UNSPECIFIED_EXT";
  9992. case VK_SUBPASS_MERGE_STATUS_NOT_MERGED_VIEWS_MISMATCH_EXT:
  9993. return "VK_SUBPASS_MERGE_STATUS_NOT_MERGED_VIEWS_MISMATCH_EXT";
  9994. default:
  9995. return "Unhandled VkSubpassMergeStatusEXT";
  9996. }
  9997. }
  9998. static inline const char* string_VkOpticalFlowGridSizeFlagBitsNV(VkOpticalFlowGridSizeFlagBitsNV input_value)
  9999. {
  10000. switch (input_value)
  10001. {
  10002. case VK_OPTICAL_FLOW_GRID_SIZE_1X1_BIT_NV:
  10003. return "VK_OPTICAL_FLOW_GRID_SIZE_1X1_BIT_NV";
  10004. case VK_OPTICAL_FLOW_GRID_SIZE_2X2_BIT_NV:
  10005. return "VK_OPTICAL_FLOW_GRID_SIZE_2X2_BIT_NV";
  10006. case VK_OPTICAL_FLOW_GRID_SIZE_4X4_BIT_NV:
  10007. return "VK_OPTICAL_FLOW_GRID_SIZE_4X4_BIT_NV";
  10008. case VK_OPTICAL_FLOW_GRID_SIZE_8X8_BIT_NV:
  10009. return "VK_OPTICAL_FLOW_GRID_SIZE_8X8_BIT_NV";
  10010. case VK_OPTICAL_FLOW_GRID_SIZE_UNKNOWN_NV:
  10011. return "VK_OPTICAL_FLOW_GRID_SIZE_UNKNOWN_NV";
  10012. default:
  10013. return "Unhandled VkOpticalFlowGridSizeFlagBitsNV";
  10014. }
  10015. }
  10016. static inline std::string string_VkOpticalFlowGridSizeFlagsNV(VkOpticalFlowGridSizeFlagsNV input_value)
  10017. {
  10018. std::string ret;
  10019. int index = 0;
  10020. while(input_value) {
  10021. if (input_value & 1) {
  10022. if( !ret.empty()) ret.append("|");
  10023. ret.append(string_VkOpticalFlowGridSizeFlagBitsNV(static_cast<VkOpticalFlowGridSizeFlagBitsNV>(1U << index)));
  10024. }
  10025. ++index;
  10026. input_value >>= 1;
  10027. }
  10028. if( ret.empty()) ret.append(string_VkOpticalFlowGridSizeFlagBitsNV(static_cast<VkOpticalFlowGridSizeFlagBitsNV>(0)));
  10029. return ret;
  10030. }
  10031. static inline const char* string_VkOpticalFlowUsageFlagBitsNV(VkOpticalFlowUsageFlagBitsNV input_value)
  10032. {
  10033. switch (input_value)
  10034. {
  10035. case VK_OPTICAL_FLOW_USAGE_COST_BIT_NV:
  10036. return "VK_OPTICAL_FLOW_USAGE_COST_BIT_NV";
  10037. case VK_OPTICAL_FLOW_USAGE_GLOBAL_FLOW_BIT_NV:
  10038. return "VK_OPTICAL_FLOW_USAGE_GLOBAL_FLOW_BIT_NV";
  10039. case VK_OPTICAL_FLOW_USAGE_HINT_BIT_NV:
  10040. return "VK_OPTICAL_FLOW_USAGE_HINT_BIT_NV";
  10041. case VK_OPTICAL_FLOW_USAGE_INPUT_BIT_NV:
  10042. return "VK_OPTICAL_FLOW_USAGE_INPUT_BIT_NV";
  10043. case VK_OPTICAL_FLOW_USAGE_OUTPUT_BIT_NV:
  10044. return "VK_OPTICAL_FLOW_USAGE_OUTPUT_BIT_NV";
  10045. case VK_OPTICAL_FLOW_USAGE_UNKNOWN_NV:
  10046. return "VK_OPTICAL_FLOW_USAGE_UNKNOWN_NV";
  10047. default:
  10048. return "Unhandled VkOpticalFlowUsageFlagBitsNV";
  10049. }
  10050. }
  10051. static inline std::string string_VkOpticalFlowUsageFlagsNV(VkOpticalFlowUsageFlagsNV input_value)
  10052. {
  10053. std::string ret;
  10054. int index = 0;
  10055. while(input_value) {
  10056. if (input_value & 1) {
  10057. if( !ret.empty()) ret.append("|");
  10058. ret.append(string_VkOpticalFlowUsageFlagBitsNV(static_cast<VkOpticalFlowUsageFlagBitsNV>(1U << index)));
  10059. }
  10060. ++index;
  10061. input_value >>= 1;
  10062. }
  10063. if( ret.empty()) ret.append(string_VkOpticalFlowUsageFlagBitsNV(static_cast<VkOpticalFlowUsageFlagBitsNV>(0)));
  10064. return ret;
  10065. }
  10066. static inline const char* string_VkOpticalFlowPerformanceLevelNV(VkOpticalFlowPerformanceLevelNV input_value)
  10067. {
  10068. switch (input_value)
  10069. {
  10070. case VK_OPTICAL_FLOW_PERFORMANCE_LEVEL_FAST_NV:
  10071. return "VK_OPTICAL_FLOW_PERFORMANCE_LEVEL_FAST_NV";
  10072. case VK_OPTICAL_FLOW_PERFORMANCE_LEVEL_MEDIUM_NV:
  10073. return "VK_OPTICAL_FLOW_PERFORMANCE_LEVEL_MEDIUM_NV";
  10074. case VK_OPTICAL_FLOW_PERFORMANCE_LEVEL_SLOW_NV:
  10075. return "VK_OPTICAL_FLOW_PERFORMANCE_LEVEL_SLOW_NV";
  10076. case VK_OPTICAL_FLOW_PERFORMANCE_LEVEL_UNKNOWN_NV:
  10077. return "VK_OPTICAL_FLOW_PERFORMANCE_LEVEL_UNKNOWN_NV";
  10078. default:
  10079. return "Unhandled VkOpticalFlowPerformanceLevelNV";
  10080. }
  10081. }
  10082. static inline const char* string_VkOpticalFlowSessionBindingPointNV(VkOpticalFlowSessionBindingPointNV input_value)
  10083. {
  10084. switch (input_value)
  10085. {
  10086. case VK_OPTICAL_FLOW_SESSION_BINDING_POINT_BACKWARD_COST_NV:
  10087. return "VK_OPTICAL_FLOW_SESSION_BINDING_POINT_BACKWARD_COST_NV";
  10088. case VK_OPTICAL_FLOW_SESSION_BINDING_POINT_BACKWARD_FLOW_VECTOR_NV:
  10089. return "VK_OPTICAL_FLOW_SESSION_BINDING_POINT_BACKWARD_FLOW_VECTOR_NV";
  10090. case VK_OPTICAL_FLOW_SESSION_BINDING_POINT_COST_NV:
  10091. return "VK_OPTICAL_FLOW_SESSION_BINDING_POINT_COST_NV";
  10092. case VK_OPTICAL_FLOW_SESSION_BINDING_POINT_FLOW_VECTOR_NV:
  10093. return "VK_OPTICAL_FLOW_SESSION_BINDING_POINT_FLOW_VECTOR_NV";
  10094. case VK_OPTICAL_FLOW_SESSION_BINDING_POINT_GLOBAL_FLOW_NV:
  10095. return "VK_OPTICAL_FLOW_SESSION_BINDING_POINT_GLOBAL_FLOW_NV";
  10096. case VK_OPTICAL_FLOW_SESSION_BINDING_POINT_HINT_NV:
  10097. return "VK_OPTICAL_FLOW_SESSION_BINDING_POINT_HINT_NV";
  10098. case VK_OPTICAL_FLOW_SESSION_BINDING_POINT_INPUT_NV:
  10099. return "VK_OPTICAL_FLOW_SESSION_BINDING_POINT_INPUT_NV";
  10100. case VK_OPTICAL_FLOW_SESSION_BINDING_POINT_REFERENCE_NV:
  10101. return "VK_OPTICAL_FLOW_SESSION_BINDING_POINT_REFERENCE_NV";
  10102. case VK_OPTICAL_FLOW_SESSION_BINDING_POINT_UNKNOWN_NV:
  10103. return "VK_OPTICAL_FLOW_SESSION_BINDING_POINT_UNKNOWN_NV";
  10104. default:
  10105. return "Unhandled VkOpticalFlowSessionBindingPointNV";
  10106. }
  10107. }
  10108. static inline const char* string_VkOpticalFlowSessionCreateFlagBitsNV(VkOpticalFlowSessionCreateFlagBitsNV input_value)
  10109. {
  10110. switch (input_value)
  10111. {
  10112. case VK_OPTICAL_FLOW_SESSION_CREATE_ALLOW_REGIONS_BIT_NV:
  10113. return "VK_OPTICAL_FLOW_SESSION_CREATE_ALLOW_REGIONS_BIT_NV";
  10114. case VK_OPTICAL_FLOW_SESSION_CREATE_BOTH_DIRECTIONS_BIT_NV:
  10115. return "VK_OPTICAL_FLOW_SESSION_CREATE_BOTH_DIRECTIONS_BIT_NV";
  10116. case VK_OPTICAL_FLOW_SESSION_CREATE_ENABLE_COST_BIT_NV:
  10117. return "VK_OPTICAL_FLOW_SESSION_CREATE_ENABLE_COST_BIT_NV";
  10118. case VK_OPTICAL_FLOW_SESSION_CREATE_ENABLE_GLOBAL_FLOW_BIT_NV:
  10119. return "VK_OPTICAL_FLOW_SESSION_CREATE_ENABLE_GLOBAL_FLOW_BIT_NV";
  10120. case VK_OPTICAL_FLOW_SESSION_CREATE_ENABLE_HINT_BIT_NV:
  10121. return "VK_OPTICAL_FLOW_SESSION_CREATE_ENABLE_HINT_BIT_NV";
  10122. default:
  10123. return "Unhandled VkOpticalFlowSessionCreateFlagBitsNV";
  10124. }
  10125. }
  10126. static inline std::string string_VkOpticalFlowSessionCreateFlagsNV(VkOpticalFlowSessionCreateFlagsNV input_value)
  10127. {
  10128. std::string ret;
  10129. int index = 0;
  10130. while(input_value) {
  10131. if (input_value & 1) {
  10132. if( !ret.empty()) ret.append("|");
  10133. ret.append(string_VkOpticalFlowSessionCreateFlagBitsNV(static_cast<VkOpticalFlowSessionCreateFlagBitsNV>(1U << index)));
  10134. }
  10135. ++index;
  10136. input_value >>= 1;
  10137. }
  10138. if( ret.empty()) ret.append(string_VkOpticalFlowSessionCreateFlagBitsNV(static_cast<VkOpticalFlowSessionCreateFlagBitsNV>(0)));
  10139. return ret;
  10140. }
  10141. static inline const char* string_VkOpticalFlowExecuteFlagBitsNV(VkOpticalFlowExecuteFlagBitsNV input_value)
  10142. {
  10143. switch (input_value)
  10144. {
  10145. case VK_OPTICAL_FLOW_EXECUTE_DISABLE_TEMPORAL_HINTS_BIT_NV:
  10146. return "VK_OPTICAL_FLOW_EXECUTE_DISABLE_TEMPORAL_HINTS_BIT_NV";
  10147. default:
  10148. return "Unhandled VkOpticalFlowExecuteFlagBitsNV";
  10149. }
  10150. }
  10151. static inline std::string string_VkOpticalFlowExecuteFlagsNV(VkOpticalFlowExecuteFlagsNV input_value)
  10152. {
  10153. std::string ret;
  10154. int index = 0;
  10155. while(input_value) {
  10156. if (input_value & 1) {
  10157. if( !ret.empty()) ret.append("|");
  10158. ret.append(string_VkOpticalFlowExecuteFlagBitsNV(static_cast<VkOpticalFlowExecuteFlagBitsNV>(1U << index)));
  10159. }
  10160. ++index;
  10161. input_value >>= 1;
  10162. }
  10163. if( ret.empty()) ret.append(string_VkOpticalFlowExecuteFlagBitsNV(static_cast<VkOpticalFlowExecuteFlagBitsNV>(0)));
  10164. return ret;
  10165. }
  10166. static inline const char* string_VkBuildAccelerationStructureModeKHR(VkBuildAccelerationStructureModeKHR input_value)
  10167. {
  10168. switch (input_value)
  10169. {
  10170. case VK_BUILD_ACCELERATION_STRUCTURE_MODE_BUILD_KHR:
  10171. return "VK_BUILD_ACCELERATION_STRUCTURE_MODE_BUILD_KHR";
  10172. case VK_BUILD_ACCELERATION_STRUCTURE_MODE_UPDATE_KHR:
  10173. return "VK_BUILD_ACCELERATION_STRUCTURE_MODE_UPDATE_KHR";
  10174. default:
  10175. return "Unhandled VkBuildAccelerationStructureModeKHR";
  10176. }
  10177. }
  10178. static inline const char* string_VkAccelerationStructureCreateFlagBitsKHR(VkAccelerationStructureCreateFlagBitsKHR input_value)
  10179. {
  10180. switch (input_value)
  10181. {
  10182. case VK_ACCELERATION_STRUCTURE_CREATE_DEVICE_ADDRESS_CAPTURE_REPLAY_BIT_KHR:
  10183. return "VK_ACCELERATION_STRUCTURE_CREATE_DEVICE_ADDRESS_CAPTURE_REPLAY_BIT_KHR";
  10184. case VK_ACCELERATION_STRUCTURE_CREATE_MOTION_BIT_NV:
  10185. return "VK_ACCELERATION_STRUCTURE_CREATE_MOTION_BIT_NV";
  10186. default:
  10187. return "Unhandled VkAccelerationStructureCreateFlagBitsKHR";
  10188. }
  10189. }
  10190. static inline std::string string_VkAccelerationStructureCreateFlagsKHR(VkAccelerationStructureCreateFlagsKHR input_value)
  10191. {
  10192. std::string ret;
  10193. int index = 0;
  10194. while(input_value) {
  10195. if (input_value & 1) {
  10196. if( !ret.empty()) ret.append("|");
  10197. ret.append(string_VkAccelerationStructureCreateFlagBitsKHR(static_cast<VkAccelerationStructureCreateFlagBitsKHR>(1U << index)));
  10198. }
  10199. ++index;
  10200. input_value >>= 1;
  10201. }
  10202. if( ret.empty()) ret.append(string_VkAccelerationStructureCreateFlagBitsKHR(static_cast<VkAccelerationStructureCreateFlagBitsKHR>(0)));
  10203. return ret;
  10204. }
  10205. static inline const char* string_VkShaderGroupShaderKHR(VkShaderGroupShaderKHR input_value)
  10206. {
  10207. switch (input_value)
  10208. {
  10209. case VK_SHADER_GROUP_SHADER_ANY_HIT_KHR:
  10210. return "VK_SHADER_GROUP_SHADER_ANY_HIT_KHR";
  10211. case VK_SHADER_GROUP_SHADER_CLOSEST_HIT_KHR:
  10212. return "VK_SHADER_GROUP_SHADER_CLOSEST_HIT_KHR";
  10213. case VK_SHADER_GROUP_SHADER_GENERAL_KHR:
  10214. return "VK_SHADER_GROUP_SHADER_GENERAL_KHR";
  10215. case VK_SHADER_GROUP_SHADER_INTERSECTION_KHR:
  10216. return "VK_SHADER_GROUP_SHADER_INTERSECTION_KHR";
  10217. default:
  10218. return "Unhandled VkShaderGroupShaderKHR";
  10219. }
  10220. }
  10221. static inline const char * GetPhysDevFeatureString(uint32_t index) {
  10222. const char * IndexToPhysDevFeatureString[] = {
  10223. "robustBufferAccess",
  10224. "fullDrawIndexUint32",
  10225. "imageCubeArray",
  10226. "independentBlend",
  10227. "geometryShader",
  10228. "tessellationShader",
  10229. "sampleRateShading",
  10230. "dualSrcBlend",
  10231. "logicOp",
  10232. "multiDrawIndirect",
  10233. "drawIndirectFirstInstance",
  10234. "depthClamp",
  10235. "depthBiasClamp",
  10236. "fillModeNonSolid",
  10237. "depthBounds",
  10238. "wideLines",
  10239. "largePoints",
  10240. "alphaToOne",
  10241. "multiViewport",
  10242. "samplerAnisotropy",
  10243. "textureCompressionETC2",
  10244. "textureCompressionASTC_LDR",
  10245. "textureCompressionBC",
  10246. "occlusionQueryPrecise",
  10247. "pipelineStatisticsQuery",
  10248. "vertexPipelineStoresAndAtomics",
  10249. "fragmentStoresAndAtomics",
  10250. "shaderTessellationAndGeometryPointSize",
  10251. "shaderImageGatherExtended",
  10252. "shaderStorageImageExtendedFormats",
  10253. "shaderStorageImageMultisample",
  10254. "shaderStorageImageReadWithoutFormat",
  10255. "shaderStorageImageWriteWithoutFormat",
  10256. "shaderUniformBufferArrayDynamicIndexing",
  10257. "shaderSampledImageArrayDynamicIndexing",
  10258. "shaderStorageBufferArrayDynamicIndexing",
  10259. "shaderStorageImageArrayDynamicIndexing",
  10260. "shaderClipDistance",
  10261. "shaderCullDistance",
  10262. "shaderFloat64",
  10263. "shaderInt64",
  10264. "shaderInt16",
  10265. "shaderResourceResidency",
  10266. "shaderResourceMinLod",
  10267. "sparseBinding",
  10268. "sparseResidencyBuffer",
  10269. "sparseResidencyImage2D",
  10270. "sparseResidencyImage3D",
  10271. "sparseResidency2Samples",
  10272. "sparseResidency4Samples",
  10273. "sparseResidency8Samples",
  10274. "sparseResidency16Samples",
  10275. "sparseResidencyAliased",
  10276. "variableMultisampleRate",
  10277. "inheritedQueries",
  10278. };
  10279. return IndexToPhysDevFeatureString[index];
  10280. }
  10281. static inline bool IsDuplicatePnext(VkStructureType input_value)
  10282. {
  10283. switch (input_value)
  10284. {
  10285. case VK_STRUCTURE_TYPE_DEBUG_UTILS_MESSENGER_CREATE_INFO_EXT:
  10286. case VK_STRUCTURE_TYPE_DEVICE_DEVICE_MEMORY_REPORT_CREATE_INFO_EXT:
  10287. case VK_STRUCTURE_TYPE_DEVICE_PRIVATE_DATA_CREATE_INFO:
  10288. case VK_STRUCTURE_TYPE_EXPORT_METAL_BUFFER_INFO_EXT:
  10289. case VK_STRUCTURE_TYPE_EXPORT_METAL_COMMAND_QUEUE_INFO_EXT:
  10290. case VK_STRUCTURE_TYPE_EXPORT_METAL_IO_SURFACE_INFO_EXT:
  10291. case VK_STRUCTURE_TYPE_EXPORT_METAL_OBJECT_CREATE_INFO_EXT:
  10292. case VK_STRUCTURE_TYPE_EXPORT_METAL_SHARED_EVENT_INFO_EXT:
  10293. case VK_STRUCTURE_TYPE_EXPORT_METAL_TEXTURE_INFO_EXT:
  10294. case VK_STRUCTURE_TYPE_IMPORT_METAL_TEXTURE_INFO_EXT:
  10295. return true;
  10296. default:
  10297. return false;
  10298. }
  10299. }